dbskipper intermitent error
- Richard Chidiak
- Posts: 946
- Joined: Thu Oct 06, 2005 7:05 pm
- Location: France
- Contact:
Re: dbskipper intermitent error
James
yes i did add setrdd() to my code
Still puzzled, this is the part where the error occured , in the default part .... the first 2 lines were executed not the third.
DEFAULT ::bGoTop := {|| ( ::cAlias )->( DbGoTop() ) },;
::bGoBottom := {|| ( ::cAlias )->( DbGoBottom() ) },;
::bSkip := {| n | iif( n == nil, n := 1, ), ( ::cAlias )->( DbSkipper( n ) ) },;
::bBof := {|| ( ::cAlias )->( Bof() ) },;
::bEof := {|| ( ::cAlias )->( Eof() ) },;
::bBookMark := {| n | iif( n == nil,;
( ::cAlias )->( RecNo() ),;
( ::cAlias )->( DbGoto( n );
) ) }
yes i did add setrdd() to my code
Still puzzled, this is the part where the error occured , in the default part .... the first 2 lines were executed not the third.
DEFAULT ::bGoTop := {|| ( ::cAlias )->( DbGoTop() ) },;
::bGoBottom := {|| ( ::cAlias )->( DbGoBottom() ) },;
::bSkip := {| n | iif( n == nil, n := 1, ), ( ::cAlias )->( DbSkipper( n ) ) },;
::bBof := {|| ( ::cAlias )->( Bof() ) },;
::bEof := {|| ( ::cAlias )->( Eof() ) },;
::bBookMark := {| n | iif( n == nil,;
( ::cAlias )->( RecNo() ),;
( ::cAlias )->( DbGoto( n );
) ) }
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Richard,
>Still puzzled, this is the part where the error occured , in the default part .... the first 2 lines were executed not the third.
Well, it is all actually only one line as far as the compiler is concerned, so I am wondering what makes you think it is erroring where you say it is?
James
>Still puzzled, this is the part where the error occured , in the default part .... the first 2 lines were executed not the third.
Well, it is all actually only one line as far as the compiler is concerned, so I am wondering what makes you think it is erroring where you say it is?
James
- Richard Chidiak
- Posts: 946
- Joined: Thu Oct 06, 2005 7:05 pm
- Location: France
- Contact:
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Harvey,
SetRRD() does (amoung other things) sets the codeblocks you see in Richards last message.
Since you are using a database object you need to call setoDBF(oDBF) instead.
James
SetRRD() does (amoung other things) sets the codeblocks you see in Richards last message.
Since you are using a database object you need to call setoDBF(oDBF) instead.
James
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Richard,
>The error.log shows this line
Please post that section of the error log.
James
>The error.log shows this line
Please post that section of the error log.
James
- Richard Chidiak
- Posts: 946
- Joined: Thu Oct 06, 2005 7:05 pm
- Location: France
- Contact:
Re: dbskipper intermitent error
james
here it is below
Error occurred at: 12/10/2009, 14:07:09
Error description: Error DBCMD/2001 Workarea not in use: DBSKIPPER
Stack Calls
===========
Called from: => DBSKIPPER(0)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => (b)TXBROWSE:SETRDD(3312)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => (b)TXBROWSE:TXBROWSE(308)
Called from: => TXBROWSE:SKIP(0)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => TXBROWSE:PAINT(1280)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => TXBROWSE:DISPLAY(927)
Called from: .\source\classes\CONTROL.PRG => TXBROWSE:HANDLEEVENT(0)
Called from: C:\PRODUCTION\CBATIPROD\window.prg => _FWH(3342)
Called from: => WINRUN(0)
Called from: C:\PRODUCTION\CBATIPROD\window.prg => TWINDOW:ACTIVATE(957)
Called from: C:\PRODUCTION\CBATIPROD\CBATIWIN.PRG => MAIN(241)
PS : i am using a modified version of xbrowse
Richard
here it is below
Error occurred at: 12/10/2009, 14:07:09
Error description: Error DBCMD/2001 Workarea not in use: DBSKIPPER
Stack Calls
===========
Called from: => DBSKIPPER(0)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => (b)TXBROWSE:SETRDD(3312)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => (b)TXBROWSE:TXBROWSE(308)
Called from: => TXBROWSE:SKIP(0)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => TXBROWSE:PAINT(1280)
Called from: C:\PRODUCTION\CBATIPROD\xbrowse.prg => TXBROWSE:DISPLAY(927)
Called from: .\source\classes\CONTROL.PRG => TXBROWSE:HANDLEEVENT(0)
Called from: C:\PRODUCTION\CBATIPROD\window.prg => _FWH(3342)
Called from: => WINRUN(0)
Called from: C:\PRODUCTION\CBATIPROD\window.prg => TWINDOW:ACTIVATE(957)
Called from: C:\PRODUCTION\CBATIPROD\CBATIWIN.PRG => MAIN(241)
PS : i am using a modified version of xbrowse
Richard
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Richard,
OK, that is the one you posted earlier. I am not exactly sure what that means.
It doesn't make sense that it was in the setRDD() when it crashed because that would mean that the browse was never initialized. I don't see how this could happen because the file was just opened and no other functions were called before the browse was initialized.
I think it is only saying that it crashed when the bSkip codeblock was called; presumably because the file was closed.
We really need to be able to recreate the error on demand to be able to figure out eactly where the error is happening.
OK, that is the one you posted earlier. I am not exactly sure what that means.
It doesn't make sense that it was in the setRDD() when it crashed because that would mean that the browse was never initialized. I don't see how this could happen because the file was just opened and no other functions were called before the browse was initialized.
I think it is only saying that it crashed when the bSkip codeblock was called; presumably because the file was closed.
We really need to be able to recreate the error on demand to be able to figure out eactly where the error is happening.
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Richard,
OK, I tried something different. I tried to recreate the error by modifing TXBrowse().
First I tried splitting the default line between the bGotop and bSkip and closed the database between the lines. I got a differnt error.
So the error is not occuring where you thought it was.
Then instead i just added these two lines at the end of the setRDD() method.
close databases
::skip()
And now I get the same error as you did. So, this means that your database is being closed sometime during the execution of your program. You can confirm this by adding a button and using the ACTION dbcloseall(). Then you should get the same erorr.
Regards,
James
OK, I tried something different. I tried to recreate the error by modifing TXBrowse().
First I tried splitting the default line between the bGotop and bSkip and closed the database between the lines. I got a differnt error.
Code: Select all | Expand
Error description: Error DBCMD/2001 Workarea not in use: RDDNAME
Args:
Stack Calls
===========
Called from: => RDDNAME(0)
Called from: Test01.prg => TXBROWSE:SETRDD(3429)
Called from: Test01.prg => MAIN(24)
So the error is not occuring where you thought it was.
Then instead i just added these two lines at the end of the setRDD() method.
close databases
::skip()
And now I get the same error as you did. So, this means that your database is being closed sometime during the execution of your program. You can confirm this by adding a button and using the ACTION dbcloseall(). Then you should get the same erorr.
Regards,
James
- nageswaragunupudi
- Posts: 10721
- Joined: Sun Nov 19, 2006 5:22 am
- Location: India
- Been thanked: 8 times
- Contact:
Re: dbskipper intermitent error
Let me point out two possibilities:
1. If he is using he should use oBrw:SetoDbf( oDbf ) and definitely not SetRDD()
2. if the browse is created in a window ( other than main window ) and the dbf or odbf is closed after ACTIVATE WINDOW statement this error occurs. Because the dbf is closed even before the browse is painted.
1. If he is using he should use oBrw:SetoDbf( oDbf ) and definitely not SetRDD()
2. if the browse is created in a window ( other than main window ) and the dbf or odbf is closed after ACTIVATE WINDOW statement this error occurs. Because the dbf is closed even before the browse is painted.
Regards
G. N. Rao.
Hyderabad, India
G. N. Rao.
Hyderabad, India
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Rao,
Richard is using setRDD() because he is not using a database object. Harvey is using a database object--or at least it appears so from his error message. Perhaps he will confirm or deny this.
Your point about MDI is helpful, but in this case Richard says the error has only been occuring occasionally and he has been unable to reproduce it on demand. I think he has a function calling another function, etc. under certain conditions, and one of these functions is closing the database.
James
Richard is using setRDD() because he is not using a database object. Harvey is using a database object--or at least it appears so from his error message. Perhaps he will confirm or deny this.
Your point about MDI is helpful, but in this case Richard says the error has only been occuring occasionally and he has been unable to reproduce it on demand. I think he has a function calling another function, etc. under certain conditions, and one of these functions is closing the database.
James
Re: dbskipper intermitent error
Yes odbf. The error ocurrs at the msgwait() line. Makes no sense and only occasionaly happens. Here is the function where the error occurs.
Nothing makes sense. No skip jsut bails out. Not often.
Message wait at bottom of code produces the error.
Nothing makes sense. No skip jsut bails out. Not often.
Message wait at bottom of code produces the error.
Code: Select all | Expand
static function combine(mconscomp)
local mtemp
local oldarea := select()
local mType1 := 0
local oldfilter
local oldorder
local cOldAccount
cursorwait()
retain->(dbseek("z Total"))
retain->cost_price := 1
select csource
mtemp := "1000" //account
gl->(dbseek("0125")) // set flag to calculate consolidated balance sheet
gl->a14 := 1
cursorWait()
gl->(dbseek("1000"))
csource->(dbseek("1000"))
do while .not. eof()
select gl // target
seek mTemp
cOldAccount := mTemp
replace gl->start1 with gl->start1 + csource->start1
replace gl->start2 with gl->start2 + csource->start2
replace gl->ty1 with gl->ty1 + csource->ty1
replace gl->cf1 with gl->cf1 + csource->cf1
replace gl->ty2 with gl->ty2 + csource->ty2
replace gl->cf2 with gl->cf2 + csource->cf2
replace gl->ty3 with gl->ty3 + csource->ty3
replace gl->cf3 with gl->cf3 + csource->cf3
replace gl->ty4 with gl->ty4 + csource->ty4
replace gl->cf4 with gl->cf4 + csource->cf4
replace gl->ty5 with gl->ty5 + csource->ty5
replace gl->cf5 with gl->cf5 + csource->cf5
replace gl->ty6 with gl->ty6 + csource->ty6
replace gl->cf6 with gl->cf6 + csource->cf6
replace gl->ty7 with gl->ty7 + csource->ty7
replace gl->cf7 with gl->cf7 + csource->cf7
replace gl->ty8 with gl->ty8 + csource->ty8
replace gl->cf8 with gl->cf8 + csource->cf8
replace gl->ty9 with gl->ty9 + csource->ty9
replace gl->cf9 with gl->cf9 + csource->cf9
replace gl->ty10 with gl->ty10 + csource->ty10
replace gl->cf10 with gl->cf10 + csource->cf10
replace gl->ty11 with gl->ty11 + csource->ty11
replace gl->cf11 with gl->cf11 + csource->cf11
replace gl->ty12 with gl->ty12 + csource->ty12
replace gl->cf12 with gl->cf12 + csource->cf12
replace gl->ty13 with gl->ty13 + csource->ty13
replace gl->cf13 with gl->cf13 + csource->cf13
// ADD ACTUAL
replace gl->act1 with gl->act1 + csource->act1
replace gl->act2 with gl->act2 + csource->act2
replace gl->act3 with gl->act3 + csource->act3
replace gl->act4 with gl->act4 + csource->act4
replace gl->act5 with gl->act5 + csource->act5
replace gl->act6 with gl->act6 + csource->act6
replace gl->act7 with gl->act7 + csource->act7
replace gl->act8 with gl->act8 + csource->act8
replace gl->act9 with gl->act9 + csource->act9
replace gl->act10 with gl->act10 + csource->act10
replace gl->act11 with gl->act11 + csource->act11
replace gl->act12 with gl->act12 + csource->act12
if account = "3810"
*combine info on sale assets
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
replace gl->aa8 with gl->aa8 + csource->aa8
replace gl->aa9 with gl->aa9 + csource->aa9
replace gl->aa10 with gl->aa10 + csource->aa10
replace gl->aa11 with gl->aa11 + csource->aa11
endif
if account = "6005"
replace gl->dif1 with gl->dif1 + csource->dif1
replace gl->dif2 with gl->dif2 + csource->dif2
replace gl->dif3 with gl->dif3 + csource->dif3
replace gl->dif4 with gl->dif4 + csource->dif4
replace gl->dif5 with gl->dif5 + csource->dif5
replace gl->dif6 with gl->dif6 + csource->dif6
replace gl->dif7 with gl->dif7 + csource->dif7
replace gl->dif8 with gl->dif8 + csource->dif8
replace gl->dif9 with gl->dif9 + csource->dif9
replace gl->dif10 with gl->dif10 + csource->dif10
replace gl->dif11 with gl->dif11 + csource->dif11
replace gl->dif12 with gl->dif12 + csource->dif12
replace gl->dif13 with gl->dif13 + csource->dif13
replace gl->ly1 with gl->ly1 + csource->ly1
replace gl->ly2 with gl->ly2 + csource->ly2
replace gl->ly3 with gl->ly3 + csource->ly3
replace gl->ly4 with gl->ly4 + csource->ly4
replace gl->ly5 with gl->ly5 + csource->ly5
replace gl->ly6 with gl->ly6 + csource->ly6
replace gl->ly7 with gl->ly7 + csource->ly7
replace gl->ly8 with gl->ly8 + csource->ly8
replace gl->ly9 with gl->ly9 + csource->ly9
replace gl->ly10 with gl->ly10 + csource->ly10
replace gl->ly11 with gl->ly11 + csource->ly11
replace gl->ly12 with gl->ly12 + csource->ly12
replace gl->ly13 with gl->ly13 + csource->ly13
replace gl->a14 with gl->a14 + csource->a14
replace gl->aa1 with gl->aa1 + csource->aa1
replace gl->aa2 with gl->aa2 + csource->aa2
replace gl->aa3 with gl->aa3 + csource->aa3
replace gl->aa4 with gl->aa4 + csource->aa4
replace gl->aa5 with gl->aa5 + csource->aa5
replace gl->aa6 with gl->aa6 + csource->aa6
replace gl->aa7 with gl->aa7 + csource->aa7
replace gl->aa8 with gl->aa8 + csource->aa8
replace gl->aa9 with gl->aa9 + csource->aa9
replace gl->aa10 with gl->aa10 + csource->aa10
replace gl->aa11 with gl->aa11 + csource->aa11
replace gl->aa12 with gl->aa12 + csource->aa12
replace gl->aa13 with gl->aa13 + csource->aa13
* replace gl->act1 with gl->act1 + csource->act1
* replace gl->act2 with gl->act2 + csource->act2
* replace gl->act3 with gl->act3 + csource->act3
* replace gl->act4 with gl->act4 + csource->act4
* replace gl->act5 with gl->act5 + csource->act5
* replace gl->act6 with gl->act6 + csource->act6
* replace gl->act7 with gl->act7 + csource->act7
* replace gl->act8 with gl->act8 + csource->act8
* replace gl->act9 with gl->act9 + csource->act9
* replace gl->act10 with gl->act10 + csource->act10
* replace gl->act11 with gl->act11 + csource->act11
* replace gl->act12 with gl->act12 + csource->act12
endif
if account = "6108"
replace gl->a14 with gl->a14 + csource->a14
endif
if account = "7115"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "8415"
replace gl->a14 with gl->a14 + csource->a14
endif
if account = "8431"
replace gl->a14 with gl->a14 + csource->a14
endif
if account = "6109"
replace gl->a14 with gl->a14 + csource->a14
replace gl->aa1 with gl->aa1 + csource->aa1
replace gl->aa2 with gl->aa2 + csource->aa2
replace gl->aa3 with gl->aa3 + csource->aa3
replace gl->aa4 with gl->aa4 + csource->aa4
replace gl->aa5 with gl->aa5 + csource->aa5
replace gl->aa6 with gl->aa6 + csource->aa6
replace gl->aa7 with gl->aa7 + csource->aa7
replace gl->aa8 with gl->aa8 + csource->aa8
replace gl->aa9 with gl->aa9 + csource->aa9
replace gl->aa10 with gl->aa10 + csource->aa10
replace gl->aa11 with gl->aa11 + csource->aa11
replace gl->aa12 with gl->aa12 + csource->aa12
replace gl->aa13 with gl->aa13 + csource->aa13
endif
if account = "7010"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7020"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7030"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7035"
replace gl->a14 with gl->a14 + csource->a14
*combine info on sale assets
replace gl->aa1 with gl->aa1 + csource->aa1
replace gl->aa2 with gl->aa2 + csource->aa2
replace gl->aa3 with gl->aa3 + csource->aa3
replace gl->aa4 with gl->aa4 + csource->aa4
replace gl->aa5 with gl->aa5 + csource->aa5
replace gl->aa6 with gl->aa6 + csource->aa6
replace gl->aa7 with gl->aa7 + csource->aa7
replace gl->aa8 with gl->aa8 + csource->aa8
replace gl->aa9 with gl->aa9 + csource->aa9
replace gl->aa10 with gl->aa10 + csource->aa10
replace gl->aa11 with gl->aa11 + csource->aa11
replace gl->aa12 with gl->aa12 + csource->aa12
replace gl->aa13 with gl->aa13 + csource->aa13
endif
if account = "7037"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7038"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7040"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7050"
replace gl->a14 with gl->a14 + csource->a14
*combine info on sale assets
replace gl->ly1 with gl->ly1 + csource->ly1
replace gl->ly2 with gl->ly2 + csource->ly2
replace gl->ly3 with gl->ly3 + csource->ly3
replace gl->ly4 with gl->ly4 + csource->ly4
replace gl->ly5 with gl->ly5 + csource->ly5
replace gl->ly6 with gl->ly6 + csource->ly6
replace gl->ly7 with gl->ly7 + csource->ly7
replace gl->ly8 with gl->ly8 + csource->ly8
replace gl->ly9 with gl->ly9 + csource->ly9
replace gl->ly10 with gl->ly10 + csource->ly10
replace gl->ly11 with gl->ly11 + csource->ly11
replace gl->ly12 with gl->ly12 + csource->ly12
replace gl->ly13 with gl->ly13 + csource->ly13
endif
if account = "7060"
replace gl->a14 with gl->a14 + csource->a14
*combine info on sale assets
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7100"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7110"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7112"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7120"
replace gl->a14 with gl->a14 + csource->a14
*combine info on sale assets
replace gl->aa1 with gl->aa1 + csource->aa1
replace gl->aa2 with gl->aa2 + csource->aa2
replace gl->aa3 with gl->aa3 + csource->aa3
replace gl->aa4 with gl->aa4 + csource->aa4
replace gl->aa5 with gl->aa5 + csource->aa5
replace gl->aa6 with gl->aa6 + csource->aa6
replace gl->aa7 with gl->aa7 + csource->aa7
replace gl->aa8 with gl->aa8 + csource->aa8
replace gl->aa9 with gl->aa9 + csource->aa9
replace gl->aa10 with gl->aa10 + csource->aa10
replace gl->aa11 with gl->aa11 + csource->aa11
replace gl->aa12 with gl->aa12 + csource->aa12
replace gl->aa13 with gl->aa13 + csource->aa13
endif
if account = "7123"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7130"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
replace gl->a13 with 1 // make certain it is a corp
// CHANGED 1/16/99 TO ALLOW COMBINATION OF NON CORPORATE ENTITY
replace gl->a13 with csource->a13
endif
if account = "7140"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7150"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7160"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "6105"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7125"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "3808"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account = "7999"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account="8000"
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account="8435"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
if account="8440"
replace gl->a14 with gl->a14 + csource->a14
replace gl->a1 with gl->a1 + csource->a1
replace gl->a2 with gl->a2 + csource->a2
replace gl->a3 with gl->a3 + csource->a3
replace gl->a4 with gl->a4 + csource->a4
replace gl->a5 with gl->a5 + csource->a5
replace gl->a6 with gl->a6 + csource->a6
replace gl->a7 with gl->a7 + csource->a7
replace gl->a8 with gl->a8 + csource->a8
replace gl->a9 with gl->a9 + csource->a9
replace gl->a10 with gl->a10 + csource->a10
replace gl->a11 with gl->a11 + csource->a11
replace gl->a12 with gl->a12 + csource->a12
replace gl->a13 with gl->a13 + csource->a13
endif
* if account == "2070" .or. account == "3345" .OR. account == "3452";
* .or. account == "3538"
*
* replace gl->cf1 with 0
* replace gl->cf2 with 0
*
* replace gl->cf3 with 0
* replace gl->cf4 with 0
*
* replace gl->cf5 with 0
* replace gl->cf6 with 0
*
* replace gl->cf7 with 0
* replace gl->cf8 with 0
*
* replace gl->cf9 with 0
* replace gl->cf10 with 0
*
* replace gl->cf11 with 0
* replace gl->cf12 with 0
*
* replace gl->cf13 with 0
*
* endif
* gl->(dbseek("2070"))
* ? gl->cf13
*
* gl->(dbseek("3345"))
* ? gl->cf13
*
* gl->(dbseek("3452"))
* ? gl->cf13
*
* gl->(dbseek("3538"))
* ? gl->cf13
select csource
skip
mtemp = account
enddo
cursorwait()
select gl
seek "2010"
replace1a()// replace ty's with 0,function in calc.prg
seek "2019"
replace1a()// replace ty's with 0,function in calc.prg
seek "2020"
replace1a()// replace ty's with 0,function in calc.prg
seek "2021"
replace1a()// replace ty's with 0,function in calc.prg
seek "2022"
replace1a()// replace ty's with 0,function in calc.prg
//ELIMINATE 7/22/00 KEEP DEPRE OUT OF CASH FLOW
* seek "2023"
* replace1a()// replace ty's with 0,function in calc.prg
seek "2024"
replace1a()// replace ty's with 0,function in calc.prg
seek "2025"
replace1a()// replace ty's with 0,function in calc.prg
seek "2026"
replace1a()// replace ty's with 0,function in calc.prg
seek "2027"
replace1a()// replace ty's with 0,function in calc.prg
seek "2028"
replace1a()// replace ty's with 0,function in calc.prg
seek "2029"
replace1a()// replace ty's with 0,function in calc.prg
seek "2031"
replace1a()// replace ty's with 0,function in calc.prg
seek "2032"
replace1a()// replace ty's with 0,function in calc.prg
seek "2033"
replace1a()// replace ty's with 0,function in calc.prg
seek "2034"
replace1a()// replace ty's with 0,function in calc.prg
seek "2035"
replace1a()// replace ty's with 0,function in calc.prg
seek "2036"
replace1a()// replace ty's with 0,function in calc.prg
seek "2037"
replace1a()// replace ty's with 0,function in calc.prg
seek "2038"
replace1a()// replace ty's with 0,function in calc.prg
seek "2030"
replace1a()// replace ty's with 0,function in calc.prg
seek "2010"
mconsmem1 =cf1
mconsmem2 =cf2
mconsmem3 =cf3
mconsmem4 =cf4
mconsmem5 =cf5
mconsmem6 =cf6
mconsmem7 =cf7
mconsmem8 =cf8
mconsmem9 =cf9
mconsmem10 =cf10
mconsmem11 =cf11
mconsmem12 =cf12
mconsmem13 =cf13
replace1() // cf's to 0 function in calc.prg
seek "2019"
cfchange()
cursorWait()
replace1() // cf's to 0 function in calc.prg
seek "2020"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2021"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2022"
cfchange()
replace1() // cf's to 0 function in calc.prg
//ELIMINATE 7/22/00 KEEP DEPRE OUT OF CASH FLOW
* seek "2023"
* cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2024"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2025"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2026"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2027"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2028"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2029"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2031"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2032"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2033"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2034"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2035"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2036"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2037"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2038"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2030"
cfchange()
replace1() // cf's to 0 function in calc.prg
seek "2040"
cfchange()
replace cf1 with mconsmem1
replace cf2 with mconsmem2
replace cf3 with mconsmem3
replace cf4 with mconsmem4
replace cf5 with mconsmem5
replace cf6 with mconsmem6
replace cf7 with mconsmem7
replace cf8 with mconsmem8
replace cf9 with mconsmem9
replace cf10 with mconsmem10
replace cf11 with mconsmem11
replace cf12 with mconsmem12
replace cf13 with mconsmem13
[color=#404040]
msgwait("The consolidation has been updated with Entity No."+str(mconscomp * 100,2)+".","Notice",1.5)[/color]
csource->(dbclosearea())
cursorwait()
select(oldarea)
return nil
Thank you
Harvey
Harvey
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Harvey,
First, I don't see any database objects--where is it?
Second, I do see lots of database functions being called without aliasing. This is very risky. There are a number of function calls and any one of them may be changing the workarea or closing the database.
Using a database object eliminates the aliasing problem and the database closing problem.
As a design suggestion I highly recommend against using confirmation messages (your msgWait() ). Users find these annoying. It would be better to only put up a message if there was a problem--and hopefully this is a very rare occurance. Think in terms of trying to not get in the way of the user getting their job done. Another unecessary message means another unnecessary mouse click (or a wait). Banish confirmation messages.
Regards,
James
First, I don't see any database objects--where is it?
Second, I do see lots of database functions being called without aliasing. This is very risky. There are a number of function calls and any one of them may be changing the workarea or closing the database.
Using a database object eliminates the aliasing problem and the database closing problem.
As a design suggestion I highly recommend against using confirmation messages (your msgWait() ). Users find these annoying. It would be better to only put up a message if there was a problem--and hopefully this is a very rare occurance. Think in terms of trying to not get in the way of the user getting their job done. Another unecessary message means another unnecessary mouse click (or a wait). Banish confirmation messages.
Regards,
James
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Harvey,
An idea just came to me. Rather than your msgwait() I would write that same info to an audit file (especially since it is an accounting app). Such an audit file also helps in troubleshooting code problems. You can also have an option in the program to turn auditing on and off.
James
An idea just came to me. Rather than your msgwait() I would write that same info to an audit file (especially since it is an accounting app). Such an audit file also helps in troubleshooting code problems. You can also have an option in the program to turn auditing on and off.
James
- James Bott
- Posts: 4840
- Joined: Fri Nov 18, 2005 4:52 pm
- Location: San Diego, California, USA
- Contact:
Re: dbskipper intermitent error
Harvey,
I looked at your error message again and I don't think the error is occuring at the msgwait(). Like Richard's problem, your database is being closed and then the program is erroring out in the browse when it attempts to skip, probably when redisplaying the browse after the msgwait() display is removed.
I note that at the end of the code you posted you are closing a database--I don't know if it is the one in the browse.
James
I looked at your error message again and I don't think the error is occuring at the msgwait(). Like Richard's problem, your database is being closed and then the program is erroring out in the browse when it attempts to skip, probably when redisplaying the browse after the msgwait() display is removed.
I note that at the end of the code you posted you are closing a database--I don't know if it is the one in the browse.
James