What I see here are two layouts, one with a portal for data entry and one with a list view based on the portal's table for printing.
When you change layouts, you must also use a scripted find or Go To Related records in order to pull up the correct set of portal table records on the print layout. Thus, I would look at the method used for pulling up that found set of portal records to see why it is not pulling up the correct set of records.
Yes I am giving layout of printable estimates printed.
I see no obvious reason why you don't get all three portal records on your print layout.
Try this test:
Run the script on the platform that previews the layout instead of printing. Then, cancel the paused script and return to Browse mode. How many records do you see in your found set in the top left corner of the status tool bar area?
But still showing the alternate odd no. row records.
This did not answer my question: How many records do you see in your found set in the top left corner of the status tool bar area?
But combine that with the following test. Modify your script to include a Show Custom Dialog step immediately after the Go to Related Records step to pause your script. What do you see on the layout when the custom dialog pops up? What found set do you get?