Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Issue with my report information

Status
Not open for further replies.

AnnetteB1305

Technical User
Aug 17, 2011
166
GB
Hello,

I have a report which I've posted about before it is a subreport within another report. It shows the calls that were still open at the end of each day for a period of the last 8 days. It shows these by priority. i.e. High, Med, Low and calls that are on hold.

The report is selected from a command. The command is as follows:-


SELECT `opencall1`.`priority`,`opencall1`.`callref`, `opencall1`.`priority`, `opencall1`.`logdate`, `opencall1`.`closedate`, `mdis_status1`.`status_description`, `opencall1`.`cust_id`, `opencall1`.`suppgroup`, `updatedb1`.`updatetxt`,`company1`.`custom_f`,`company1`.`companyname`
FROM (`swdata`.`opencall` `opencall1` INNER JOIN `swdata`.`updatedb` `updatedb1` ON `opencall1`.`callref`=`updatedb1`.`callref`) INNER JOIN `swdata`.`mdis_status` `mdis_status1` ON `opencall1`.`status`=`mdis_status1`.`status_code` INNER JOIN `swdata`.`company` `company1` ON `opencall1`.`companyname`=`company1`.`companyname`
WHERE `opencall1`.`priority`<>'NL-MDIS SALES OFF SEND'
and (`opencall1`.`closedate`='' or
(concat(substring(`opencall1`.`closedate`,7,4),'-',substring(`opencall1`.`closedate`,4,2),'-',substring(`opencall1`.`closedate`,1,2),' ',
substring(`opencall1`.`closedate`,12,2),':',substring(`opencall1`.`closedate`,15,2),':',substring(`opencall1`.`closedate`,18,2))
>date_format(date_add(curdate(),interval -8 day),'%Y-%m-%d %H:%i:%S')
) =1)
union all
SELECT 'All',`opencall1`.`callref`, `opencall1`.`priority`, `opencall1`.`logdate`, `opencall1`.`closedate`, `mdis_status1`.`status_description`, `opencall1`.`cust_id`, `opencall1`.`suppgroup`, `updatedb1`.`updatetxt`,`company1`.`custom_f`,`company1`.`companyname`
FROM (`swdata`.`opencall` `opencall1` INNER JOIN `swdata`.`updatedb` `updatedb1` ON `opencall1`.`callref`=`updatedb1`.`callref`) INNER JOIN `swdata`.`mdis_status` `mdis_status1` ON `opencall1`.`status`=`mdis_status1`.`status_code` INNER JOIN `swdata`.`company` `company1` ON `opencall1`.`companyname`=`company1`.`companyname`
WHERE `opencall1`.`priority`<>'NL-MDIS SALES OFF SEND'
and (`opencall1`.`closedate`='' or
(concat(substring(`opencall1`.`closedate`,7,4),'-',substring(`opencall1`.`closedate`,4,2),'-',substring(`opencall1`.`closedate`,1,2),' ',
substring(`opencall1`.`closedate`,12,2),':',substring(`opencall1`.`closedate`,15,2),':',substring(`opencall1`.`closedate`,18,2))
>date_format(date_add(curdate(),interval -8 day),'%Y-%m-%d %H:%i:%S')
) =1)
union all
Select 'Hold',`opencall1`.`callref`, `opencall1`.`priority`, `opencall1`.`logdate`, `opencall1`.`closedate`, `mdis_status1`.`status_description`, `opencall1`.`cust_id`, `opencall1`.`suppgroup`, `updatedb1`.`updatetxt`,`company1`.`custom_f`,`company1`.`companyname`
FROM (`swdata`.`opencall` `opencall1` INNER JOIN `swdata`.`updatedb` `updatedb1` ON `opencall1`.`callref`=`updatedb1`.`callref`) INNER JOIN `swdata`.`mdis_status` `mdis_status1` ON `opencall1`.`status`=`mdis_status1`.`status_code` INNER JOIN `swdata`.`company` `company1` ON `opencall1`.`companyname`=`company1`.`companyname`
WHERE `opencall1`.`priority`<>'NL-MDIS SALES OFF SEND' and `updatedb1`.`updatetxt` like "%placed on hold%"
and (`opencall1`.`closedate`='' or
(concat(substring(`opencall1`.`closedate`,7,4),'-',substring(`opencall1`.`closedate`,4,2),'-',substring(`opencall1`.`closedate`,1,2),' ',
substring(`opencall1`.`closedate`,12,2),':',substring(`opencall1`.`closedate`,15,2),':',substring(`opencall1`.`closedate`,18,2))
>date_format(date_add(curdate(),interval -8 day),'%Y-%m-%d %H:%i:%S')
) =1)
and
(concat(substring(`updatedb1`.`updatetime`,7,4),'-',substring(`updatedb1`.`updatetime`,4,2),'-',substring(`updatedb1`.`updatetime`,1,2),' ',
substring(`updatedb1`.`updatetime`,12,2),':',substring(`updatedb1`.`updatetime`,15,2),':',substring(`updatedb1`.`updatetime`,18,2))
>date_format(date_add(curdate(),interval -8 day),'%Y-%m-%d %H:%i:%S')
=1)
ORDER BY 1


The report is then a graph and a manual crosstab. The graph is on change of command.priority and then summarising Distinct count of @count1, @count2,@count3,@count4,@count5,@count6,@count7,@count8

The @count1-@count8 formulas are:-

//@count1
If {@logdate}<=dateadd("d",-8,CurrentDate)and ({Command.closedate}='' or {@Closedate}>dateadd("d",-8,CurrentDate))
then {Command.callref} else tonumber ({@@null})

up to
//@count8
If {@logdate}<=(DateAdd("d",-1,CurrentDate))and ({Command.closedate}='' or
{@Closedate}>(DateAdd("d",-1,CurrentDate)))then {Command.callref}else tonumber ({@@null})

The @logdate formula is
date({Command.logdate})

The @closedate formula is
If {Command.closedate}<>'' then Date({Command.closedate})

The @null is a blank formula


The manual crosstab is again showing the distinct counts of the above formulas in the group footer (grouped by {Command.priority})
With the column headers being
//@date1
date(dateadd("d",-8,CurrentDate))
and so on


My problem is I am getting different data when scheduling the report daily at the same time for the days. i.e. when ran off the report on 21/09 the calls for the 20/09 were 12,58,43,34 and 113 however when the report was ran today at the same time the calls for the 20/09 were 13,60,43,36 and 116. Please see attached.

I get the feeling I've over complicated the formulas but I can't see where the issue is....and I may have been staring at this too long!

Any help would be greatly appreciated.

Annette
 
I would look at the details of the two reports and compare the 12 cases on one day to the 13 cases on the next to see which one is extra. It could be that someone entered a late record or changed a date in the system (unlikely) but either way you will probably see why that record is on one and not on the other and it will give you a clue to what is wrong.

Ken Hamady, On-site Custom Crystal Reports Training & Consulting
Public classes and individual training.
Guides to Formulas, Parameters, Subreports, Cross-tabs, VB, Tips and Tricks
 
Unfortunately there aren't any details on the reports and this is just one day that I have picked all of the days are like this. I may change the date of the system and run them and see what I come up with

Thanks,

Annette
 
If I change the print date times it just shows the same figures from the last report that is on the image which is attached here.
 
so looking at the details should help you figure out which record is not being counted correctly.

Ken Hamady, On-site Custom Crystal Reports Training & Consulting
Public classes and individual training.
Guides to Formulas, Parameters, Subreports, Cross-tabs, VB, Tips and Tricks
 
There are no details and I can't show details and print retrospectively as the report is now showing the numbers that were on showing on the second half of the image regardless of the print date
 
I think Ken may be suggesting that you add a detail section to the report and run the report today and then compare tomorrow or the next day. Save the report with data or export it and then compare with new instances to see what was added. If there is an issue, it will keep recurring with new report instances. I'm guessing that this does have to do with late data entry. If you have some sort of data entry date available, you should add that to the details to help troubleshoot this issue.

-LB
 
I will do this but I'm assured people can't backdate the calls but I'll let you know how I get on over the next couple of days

Thanks,

Annette
 
hello,

My report seems to be including calls that have been opened and closed in the same day but this should not be the case. Would I be better off using dateserial rather than dateadd or am I barking up the wrong tree????
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top