We are using Progress Version 9.1D09 and looking at developing a trigger program using handle to accomplish this task. But, we are encountering a SYSTEM ERROR: Memory violation. (49).
Attached is the below code for your reference.
{mfdtitle.i}
DEF VAR lc_nbr like so_nbr no-undo.
DEFINE VARIABLE h1 AS HANDLE NO-UNDO.
DEFINE VARIABLE h2 AS HANDLE NO-UNDO.
def var lg_flag as Logical no-undo.
ON leave, GO ANYWHERE
DO:
IF SELF:name = "so_nbr " THEN
DO:
ASSIGN h2 = self.
DO WHILE VALID-HANDLE(h2):
IF h2:name = "so_nbr" THEN
DO:
ASSIGN lc_nbr = self:screen-value.
ASSIGN h2 = h2:NEXT-SIBLING.
END.
END.
END.
END.
ON Entry, GO ANYWHERE
DO:
IF SELF:NAME = "del-yn" THEN
DO:
ASSIGN h1 = self.
DO WHILE VALID-HANDLE(h1):
IF h1:name = "del-yn" THEN
DO:
message "trigger" view-as alert-box.
FIND FIRST pod_det WHERE pod_so_job = lc_nbr NO-LOCK NO-ERROR.
IF AVAIL pod_det THEN
DO:
MESSAGE "PO Exists" self:name VIEW-AS ALERT-BOX.
message "entering" h1:screen-value view-as alert-box.
message "inside" view-as alert-box.
h1:visible = False.
ASSIGN h1 = h1:NEXT-SIBLING.
END. /** DO **/
ASSIGN h1 = h1:NEXT-SIBLING.
END. /** DO **/
END. /** DO **/
END. /** DO **/
{gprun.i ""xxsosomt.p""}
Please assist.