I completely understand the time constraints. Sometimes we have to just "get it done" instead of taking the time to learn new ways. I have fallen victim to this many times.
>Cathy
>I went through your articles, but decided, due to time constraints, to use the first solution you suggested to force x number of lines in the first check stub to establish absolute positioning. The expandable memo field was not a problem, using memlines, I just added the numnber of lines in each memo field to the lines in the stub then added the dummy lines:
>
>linesForThisVend = 0
>DO WHILE curChecks.vendCode = vendSave
> IF !EMPTY(curChecks.miscDesc) AND curChecks.ChkFormPK = 2
> STORE MEMLINES(miscDesc) TO linesInMemo
> linesForThisVend = linesForThisVend + linesInMemo
> ELSE
> linesForThisVend = LinesForThisVend + 1
> ENDIF
> SKIP 1 IN curChecks
>ENDDO
>recNoAfterCount = RECNO('curChecks')
>FOR i = 1 TO 10 - linesForThisVend
> APPEND BLANK IN curChecks
> replace curchecks.dummyRec WITH "D"
> REPLACE curchecks.vendCode WITH vendSave
> REPLACE curchecks.vendInv WITH vendInv
>NEXT i
>GO recNoAfterCount IN curChecks
>
>
>I need to learn more about reportListeners, but that needs to be postponed until a later date when time permits.
>
>thanks, vince