Hi-
Does anyone know that purpose and use for $SYSPASS for v. 5.0?
Thanks

$SYSPASS
Started by
LK535
, Jan 29 2008 11:25 PM
3 replies to this topic
#2
Posted 30 January 2008 - 10:26 AM
Hi
There should be info on the use of $SYSPASS "System Pass" in the Pro-iv Documentation, probably somewhere in section on developing Screen functions. I have not got the time to go digging for this.
(This is my understanding of the usage of Syspass, how I've used it)
Generally, when a screen is executed in Change Mode in Pro-Iv then a System Pass occurs - that once you've entered/displayed the Last Read Field, all other fields on the screen are processed in syspass mode, effectively the fields are displayed, any associated files on these other fields are also read, the screen is populated with the data to be changed. When processing the fields in the syspass then logics (Before field and After field) are processed, the file logic are also processed.
Once the Syspass is completed the field processing returns to the field after the Last Read Field.
Where you might use the $SYSPASS logic could be in a Logic After
* LGC AFT #ENTERED.QTY
IF $SYSPASS # 'Y' THEN
INVOICE.TOT.QTY += ENTERED.QTY
ENDIF
* this ensures that the INVOICE.TOT.QTY is not incremented during the Syspass
Or in change mode in a screen you could be adding a previously absent field ENTERED.TYPE that is mandatory into the screen and this field needs validation against a table read.
If the Before read logic for this table you could ensure you don’t get a read error in the syspass by using the following logic
Lgc Before Read
IF $SYSPASS = 'Y' THEN
DSELF
ELSE
FILE.KEY = ENTERED.TYPE
ENDIF
* this ensures the file is not read/processed in change mode -
Search this forum for other occurrences of "SYSPASS" or "Timing Cycle" and you may find other relevant postings
hth
George
There should be info on the use of $SYSPASS "System Pass" in the Pro-iv Documentation, probably somewhere in section on developing Screen functions. I have not got the time to go digging for this.
(This is my understanding of the usage of Syspass, how I've used it)
Generally, when a screen is executed in Change Mode in Pro-Iv then a System Pass occurs - that once you've entered/displayed the Last Read Field, all other fields on the screen are processed in syspass mode, effectively the fields are displayed, any associated files on these other fields are also read, the screen is populated with the data to be changed. When processing the fields in the syspass then logics (Before field and After field) are processed, the file logic are also processed.
Once the Syspass is completed the field processing returns to the field after the Last Read Field.
Where you might use the $SYSPASS logic could be in a Logic After
* LGC AFT #ENTERED.QTY
IF $SYSPASS # 'Y' THEN
INVOICE.TOT.QTY += ENTERED.QTY
ENDIF
* this ensures that the INVOICE.TOT.QTY is not incremented during the Syspass
Or in change mode in a screen you could be adding a previously absent field ENTERED.TYPE that is mandatory into the screen and this field needs validation against a table read.
If the Before read logic for this table you could ensure you don’t get a read error in the syspass by using the following logic
Lgc Before Read
IF $SYSPASS = 'Y' THEN
DSELF
ELSE
FILE.KEY = ENTERED.TYPE
ENDIF
* this ensures the file is not read/processed in change mode -
Search this forum for other occurrences of "SYSPASS" or "Timing Cycle" and you may find other relevant postings
hth
George
#3
Posted 30 January 2008 - 02:49 PM
Hi,
Isnt it @SYSPASS and not $SYSPASS?
Rob.
Isnt it @SYSPASS and not $SYSPASS?
Rob.
Reply to this topic

0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users