![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
I want each operation completed sequentially. |
#3
| |||
| |||
|
#4
| |||
| |||
|
|
To all, and Bertil especially, I found another way to get a GPV. In Pdox 9 sp3, if you wait on a form, which in turn waits on another form, then you'll get an access violation when you try to close them. I couldn't narrow down the exact instruction that caused the GPV, but I suspect it was the 'f.close()'. Here's the essence of my code: ;---------------- ; Form A's code: if f.open("FormB") then retVal = f.wait() ; do some stuff try f.close() onFail errorClear() endTry endIf ; Form B's code on a pushButton(): if f.open("FormC") then retVal = f.wait() ; do some stuff try f.close() onFail errorClear() endTry endIf formReturn(true) ; Form C's code: ;doSomeStuff formReturn(true) ;---------------- I changed the logic so FormA waited sequentially on FormB then FormC, and this fixed my GPV. ;--------------- ; Form A's code: if f.open("FormB") then retVal = f.wait() if retVal.dataType() = "String" then if retVal = "FormBButtonPressed" then if f2.open("FormC") then retVal = f2.wait() try f2.close() onFail errorClear() endTry endIf endif endif try f.close() onFail errorClear() endTry endIf formReturn(true) ; Form B's code on a pushButton(): formReturn("FormBButtonPressed") ;---------------- Hope this helps someone else. Thanks, Jim Moseley |
#5
| |||
| |||
|
|
To all, and Bertil especially, I found another way to get a GPV. In Pdox 9 sp3, if you wait on a form, which in turn waits on another form, then you'll get an access violation when you try to close them. I couldn't narrow down the exact instruction that caused the GPV, but I suspect it was the 'f.close()'. Here's the essence of my code: ;---------------- ; Form A's code: if f.open("FormB") then retVal = f.wait() ; do some stuff try f.close() onFail errorClear() endTry endIf ; Form B's code on a pushButton(): if f.open("FormC") then retVal = f.wait() ; do some stuff try f.close() onFail errorClear() endTry endIf formReturn(true) ; Form C's code: ;doSomeStuff formReturn(true) ;---------------- I changed the logic so FormA waited sequentially on FormB then FormC, and this fixed my GPV. ;--------------- ; Form A's code: if f.open("FormB") then retVal = f.wait() if retVal.dataType() = "String" then if retVal = "FormBButtonPressed" then if f2.open("FormC") then retVal = f2.wait() try f2.close() onFail errorClear() endTry endIf endif endif try f.close() onFail errorClear() endTry endIf formReturn(true) ; Form B's code on a pushButton(): formReturn("FormBButtonPressed") ;---------------- Hope this helps someone else. Thanks, Jim Moseley |
![]() |
| Thread Tools | |
| Display Modes | |
| |