Author | Topic: IDSC: Dbskip, dbclose, dbgotop and some alias error...Remedy? | |
---|---|---|
Nestor Guido | IDSC: Dbskip, dbclose, dbgotop and some alias error...Remedy? on Mon, 02 Mar 2009 17:09:00 +0200 Hi Guys, I've been developinmg the RAPS system for many many years and have had this constant niggling problem with IDSC. Our application is multi-threrading and we go in and out of mutil-threading functions where we use browsers with many opened dbf files with cdx indexes. Some of our most used browser functions use relation,scoping and filtering. And before we close the dbf files and exit the functions we "SET RELATION " to clear relations...plus DBCLEARFILTER() to clear the filters. All runs well for a day and once in a while we get these IDSC errors which we can not explain and that happen at random point in the program. So instead of using CLOSE ALL and other ways of selecting and closing DBF files we tried the following: If !Empty(Select("D_PRICEXX")) DbCloseArea() Close D_PRICEXX Endif If !Empty(Select("D_CODESXX")) DbCloseArea() Close D_CODESXX Endif Note read the alaska documentation for (dbclosearea) Now over the last 4 days since using the above method I have not had one crash (at a heavy transaction store) So if anyone is having problems in this area please try this as a work around and let us know if it work for you. Note do not use just a plain Alias name use a character string for the select eg "D_PRICEXX" Or maybe I'm just smoking pot and believe this is working. Kind Regards Nestor | |
Chris Andries | Re: Dbskip, dbclose, dbgotop and some alias error...Remedy? on Mon, 02 Mar 2009 17:08:59 +0100 Hi, Thanks for sharing this. However, when looking in the .ppo files, you will see the following : close customer is translated to customer->(dbcloseaera()). > If !Empty(Select("D_CODESXX")) > Close D_CODESXX > Endif should be the same as > If !Empty(Select("D_CODESXX")) > DbCloseArea() > Endif Since it's translated to : > If !Empty(Select("D_CODESXX")) > D_CODESXX->(DbCloseArea()) > Endif But keep us informed about the next week. If you really see a difference, I will try the same. Regards, Chris Andries. "Nestor Guido" <nestor@softwareclinic.co.za> wrote in message news:7061a26f$7f8bc411$8d2@news.alaska-software.com... > Hi Guys, > I've been developinmg the RAPS system for many many years and have had this > constant niggling problem with IDSC. > Our application is multi-threrading and we go in and out of mutil-threading > functions where we use browsers with many opened dbf files with cdx indexes. > Some of our most used browser functions use relation,scoping and filtering. > And before we close the dbf files and exit the functions we "SET RELATION " > to clear relations...plus DBCLEARFILTER() to clear the filters. > > All runs well for a day and once in a while we get these IDSC errors which > we can not explain and that happen at random point in the program. > > So instead of using CLOSE ALL and other ways of selecting and closing DBF > files we tried the following: > > If !Empty(Select("D_PRICEXX")) > DbCloseArea() > Close D_PRICEXX > Endif > If !Empty(Select("D_CODESXX")) > DbCloseArea() > Close D_CODESXX > Endif > > Note read the alaska documentation for (dbclosearea) > > Now over the last 4 days since using the above method I have not had one > crash (at a heavy transaction store) > > So if anyone is having problems in this area please try this as a work > around and let us know if it work for you. > Note do not use just a plain Alias name use a character string for the > select eg "D_PRICEXX" > > Or maybe I'm just smoking pot and believe this is working. > > Kind Regards > Nestor > > | |
Nestor Guido | Re: Dbskip, dbclose, dbgotop and some alias error...Remedy? on Mon, 02 Mar 2009 18:28:46 +0200 Hi Andries, Thank you for replying...then maybe it is that we are testing for a Character string for the selected area and that if an internal data structure gets corrupted then this bypasses the corruption and closes the function. Note that before we get to close the dbf we have already commited the data to the dbf files ...so it is just a formality to close the dbf files (I think). So far we have not noticed any problems with the data integrity in our application since we have done this. Kind Regards, Nestor "Chris Andries" <chris@aboservice.be> wrote in message news:77f29c6d$8b0c0ed$80d@news.alaska-software.com... > Hi, > > Thanks for sharing this. However, when looking in the .ppo files, you will > see the following : > > close customer is translated to customer->(dbcloseaera()). > >> If !Empty(Select("D_CODESXX")) >> Close D_CODESXX >> Endif > > should be the same as >> If !Empty(Select("D_CODESXX")) >> DbCloseArea() >> Endif > > Since it's translated to : >> If !Empty(Select("D_CODESXX")) >> D_CODESXX->(DbCloseArea()) >> Endif > > But keep us informed about the next week. If you really see a difference, > I > will try the same. > > Regards, > Chris Andries. > > > > "Nestor Guido" <nestor@softwareclinic.co.za> wrote in message > news:7061a26f$7f8bc411$8d2@news.alaska-software.com... >> Hi Guys, >> I've been developinmg the RAPS system for many many years and have had > this >> constant niggling problem with IDSC. >> Our application is multi-threrading and we go in and out of > mutil-threading >> functions where we use browsers with many opened dbf files with cdx > indexes. >> Some of our most used browser functions use relation,scoping and > filtering. >> And before we close the dbf files and exit the functions we "SET RELATION > " >> to clear relations...plus DBCLEARFILTER() to clear the filters. >> >> All runs well for a day and once in a while we get these IDSC errors >> which >> we can not explain and that happen at random point in the program. >> >> So instead of using CLOSE ALL and other ways of selecting and closing DBF >> files we tried the following: >> >> If !Empty(Select("D_PRICEXX")) >> DbCloseArea() >> Close D_PRICEXX >> Endif >> If !Empty(Select("D_CODESXX")) >> DbCloseArea() >> Close D_CODESXX >> Endif >> >> Note read the alaska documentation for (dbclosearea) >> >> Now over the last 4 days since using the above method I have not had one >> crash (at a heavy transaction store) >> >> So if anyone is having problems in this area please try this as a work >> around and let us know if it work for you. >> Note do not use just a plain Alias name use a character string for the >> select eg "D_PRICEXX" >> >> Or maybe I'm just smoking pot and believe this is working. >> >> Kind Regards >> Nestor >> >> > > |