No F986110 Records for a Called Report While Processing

Falah_Thamir

Member
I'm trying to retrieve the pdf file name from F986110 while a report is
processing by searching F986110 with status = P (Processing). I do this
in the initialize section of the report with F986110 datasource override
(report R1).

The method works if I submit R1 to the batch server.

However, if I call report R1 from R2 (Asynchronous is not checked), the
method does not work.

If I submit R2 (which calls R1 multiple times), then immediately go to
Submitted Jobs, and click Find multiple times while R2 is processing, I
do not see R1 with Status = W or S or P.
I only see a record with Status = D (Done) after each call is finished.

Why does a record in F986110 not get created when a report is called
just like the record of the report that called it ?

OW B7333 with Windows batch server
 
Hi Falah,

I have never looked that closely at the submitted reports tables to that level of detail i.e when the RI report is called. That said I would be surprised if the report is not written to the F986110 table on the submission in the same way as a normal UBE. Are you sure this is not a timing issue and that the called report is finishing before you get time to view it in a status P on the file?
The best way to verify this is to run the two reports in Interactive debug and put a break point at the start of processing of the called report. This way you can pause its processing and then check for if it has a F986110 record.

Let me know how you go.\
Dave
 
Once upon a time, I had a project (with Xe) to track finishing jobs to print PDF. So, i wanted to use F986110 triggers to do this. What suprised was I when I discovered that I need to trigger 'Update Event' AND 'Insert Event' to track 'D' status.
I never know why but it's a fact.

That's not an answer just to say i had this bevahior too.

--> I forgot this solution to use a periodic F986110 scanner to search 'D' jobs not printed and flag (with priority field) the record to print only once.
Regards,
 
My experience has been that child UBE's enter the F986110 after they have completed. Catching them as inserts therefore required. They will be inserted in either "D" or "E" status.
 
Oh, that makes me sad. I've been working on an automatic e-mail solution, and just yesterday ran into the issue with F986110 & the child UBE (at least I got this posting so I don't have to take 3 days to figure it out).

Does anyone know the exact timing of when the child UBE row would be inserted into F986110? I'm wondering if it would be there at the Report Level ER, End Report (future) event. I need to retrieve the PDF string from FNDFUF2, to e-mail it.
 
Hello

I'm agree with Justin, and with you Falah : "child UBE's enter the F986110 after they have completed."

But you can retrieve the JobNumber of the current batch : I just put today a solution in the download forum. I hope it will working for your version of E1.

With the JobNumber, you will be able to recreate PDF name by concatenation : "[ReportId]_[VersionId]_[JobNumber]_PDF"
... without fetching F986110...

Good luck
Christophe
 
Thank you very much Christophe !

Question: As you said, the returned file name is the log file when you
run the ube locally (on a fat client). I tried this and the returned
value included the path name + file name + ".log" (for example
C:\B7\PrintQueue\R55123_V001_D1061005_T115533123.log)

Does the same thing apply when the ube is run on a server (i.e. the
report file name is returned in the log file parameter) ?

Thank you
 
Falah,

No : on the server, LogFile and PdfFile are not stored in the same directory.
On our system, LogFile is "/ONEWORLD/b7333/log/jdedebug_450600.log"
... and PdfFile is "/ONEWORLD/b7333/PrintQueue/R55TEST_TC0002_530186_PDF"

Note that the LogFile is not named with the JobNumber, but with the ProcessId (because of there is only ONE log for ALL batches running on the same ProcessId...)

But you could retrieve the path to PdfFiles with the JdeAPI "GetPrintQueueDirectoryPathName(lpDS->szPdfPath);". This function works on Local and on Server, and returns in both cases the terminating "/" or "\"

Christophe
 
I had same objective in one of my report.

What I did was in the Child report I went for B0001060, this report gives process id which is same for parent and child report. Then I went for Table I/O on F986110 in parent report wherein I passed this process id, Status as 'D' and time submitted as more than the time when this report was called. Here the assumption was that I will not be running report midnight.

That works.
 
For Auto emails, You do not need to read the F98 file.

Submit the child report using the BSFN.
You will make that Business function "Include in Transaction"
After that, Just get the Job # and get the PDF file when it is done and pass that as an attachment in the emailing BSFN.

I did it three years agao now I can not rememember which BSFns I used. But one to submit the UBE, second to email.
I cannot test it here so this is all the info i have for you. I wish I had a ER listing.

Good Luck !

Mali
 
Thank you for the information !

I used Christophe's method where I call a function (he posted it on the
jdelist web site last week) to fetch the Job Number.

If Job Number = zero, the report is running locally, and the file name
is what's returned by the function for the log file (replace ".log" with
".pdf")

If Job Number > zero, the report is running on the server, and the pdf
name is constructed as:
R12345_VER001_JobNumber_PDF.pdf

Thank you
 
Synch RIs never go thru W and S status. Those status are used by the jde job queueing process to decide when to run the job. A synch report is running inside the same process id as its parent report, and so doesn't need this queueing to happen. So, it only shows up in the D status.
 
Hello Falah,

Please can you confirm me that on the server, your PDF file is named "R12345_VER001_JobNumber_PDF.pdf" and not "R12345_VER001_JobNumber_PDF" ?

On our OW Xe running on AIX, there is no ".pdf" at the end of PDF file name (stored on the AIX file system)
But there is a ".csv" for CSV files :
- PDF : R12345_VER001_JobNumber_PDF
- CSV : R12345_VER001_JobNumber_PDF.csv

I've just replace my BSFN by a new version with a function returning all output file name. I considered that there is no ".pdf" at the end of PDF file name on server...

When WSJ downloads the PDF file on local machine for me to view it, it adds the ".pdf" storing it on Windows file system.
Was this what you wanted to say?

Thanks
Christophe
 
Hello Christophe,
Sorry for the delay.
I'm working on a Windows batch server and the pdf file name in F986110
(column JCFNDFUF2) is "R1235_VER001_JobNumber_PDF"; however, the actual
file name when viewed through Windows Explorer is above name + ".pdf"

Falah
 
Hello

I'm agree with Justin, and with you Falah : "child UBE's enter the F986110 after they have completed."

But you can retrieve the JobNumber of the current batch : I just put today a solution in the download forum. I hope it will working for your version of E1.

With the JobNumber, you will be able to recreate PDF name by concatenation : "[ReportId]_[VersionId]_[JobNumber]_PDF"
... without fetching F986110...

Good luck
Christophe
HI Chris,

Is it possible to share the solution again ? since the link above go to the wrong page .

Many thanks
Lam
 
Back
Top