(I'm proficient in the report writer, and use of the Logging tool.)
Recent Build - 2721
I have a list of Invoices - shown in a grid.
A Row Operation button is to Print Invoice.
I print 1 to the screen, then close with ESC.
I can print Invoice 1,3 and all is fine.
Invoice 4 will print as Invoice 3, including all of 3's Lines.
If I print 4 Again, it will print correctly.
If I print 1 again, Invoice 4 will show... the 1st time.
Again 1 and it shows correctly.
The pattern is that right after the "wrong" one prints, the next one will ALWAYS print correctly.
After a correct one prints, usually the next one will be wrong - but not 100%
there are NO temp fields stored in LIRU.
The Row Operation starts a process passing InvoiceNum.
THOROUGH checking of the Logs show the correct record passed in, and a LOG2 CONTEXT shows all correct records as they should be.
Logger will show Invoice 4 passed in, and Invoice 4 in Context.
But DISPLAY DOCUMENT Invoice and Invoice 3 will print... EVEN after THOUROUGHLY checking Logs SHOWING SQL - Aware requests Invoice 4 and the correct # of Lines on the invoice are read and in Context, but those are NOT the ones that print.
This is repeatable.
Nothing complicated with the data structure. No REF tables. No reason for this to happen.
Report uses Data: Determined at Runtime,
and then I changed it to a Custom Query to Find InvoiceLines where InvoiceLines.ps_Invoice = ThisInvoice (with Same Result)