WITH THISFORM
lContinue = .F.
&& STORES INFO FROM DATABASE
nNewPrintOrder = ROUND(VAL(SPACE(5)),0)
nOldValue = report1.printorder
nRecordNo = RECNO()
DO FORM gl_pnl_neworder
GOTO nRecordNo
REPLACE report1.printorder WITH nNewPrintOrder
IF lContinue = .T.
IF nNewPrintOrder >= nOldValue
SELECT report1
nResetPrintOrder = 1
SCAN FOR printorder <= nNewPrintOrder AND RECNO()<>nRecordNo
REPLACE printorder WITH nResetPrintOrder
nResetPrintOrder = nResetPrintOrder + 1
ENDSCAN
ELSE
SELECT report1
nResetPrintOrder = nNewPrintOrder + 1
SCAN FOR printorder >= nNewPrintOrder AND RECNO()<>nRecordNo
REPLACE printorder WITH nResetPrintOrder
nResetPrintOrder = nResetPrintOrder + 1
ENDSCAN
ENDIF
.grdPnLChart.Refresh()
ENDIF
THISFORM.mRecalculateForm()
GO TOP
ENDWITH
>>>>WITH THISFORM
>>>> lContinue = .F.
>>>>
>>>> **--STORES INFO FROM TABLE--**
>>>> nNewPrintOrder = ROUND(VAL(SPACE(3)),0) && Stores new value
>>>> nOldValue = report1.printorder
>>>> nRecordNo = RECNO()
>>>>
>>>> ** MARKS RECORD TO MOVE **
>>>> REPLACE report1.printorder WITH -1
>>>>
>>>> ** THIS FORM BRINGS OVER nNewPrintOrder INTO SPACE VARIABLE **
>>>> DO FORM gl_pnl_neworder
>>>>
>>>> ** REPLACES -1 RECORD WITH NEW VALUE FROM nNewPrintOrder **
>>>> SELECT report1
>>>> SET FILTER TO printorder = -1
>>>> REPLACE ALL printorder WITH nNewPrintOrder
>>>> SET FILTER TO
>>>>
>>>> IF lContinue = .T.
>>>> ** IF NEW # IS GREATER THAN OLD # DO SCAN 1 **
>>>> IF nNewPrintOrder > nOldValue
>>>> SELECT report1
>>>> nResetPrintOrder = 1
>>>> SCAN FOR printorder <= nNewPrintOrder AND RECNO()<>nRecordNo
>>>> REPLACE printorder WITH nResetPrintOrder
>>>> nResetPrintOrder = nResetPrintOrder + 1
>>>> ENDSCAN
>>>> ELSE
>>>> ** IF NEW # IS LESS THAN OLD # DO SCAN 1 **
>>>> SELECT report1
>>>> nResetPrintOrder = nNewPrintOrder + 1
>>>> SCAN FOR printorder >= nNewPrintOrder AND RECNO()<>nRecordNo
>>>> REPLACE printorder WITH nResetPrintOrder
>>>> nResetPrintOrder = nResetPrintOrder + 1
>>>> ENDSCAN
>>>> ENDIF
>>>> .grdPnLChart.Refresh()
>>>> GO TOP
>>>> ENDIF
>>>>
>>>>ENDWITH
>>>>