Stephen, Thanks for your well thought advice I will consider and report back when I am succesful
Gunnar Ekblad -----Ursprungligt meddelande----- Fr�n: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] F�r J. Stephen Wills Skickat: den 9 september 2003 19:23 Till: RBASE-L Mailing List �mne: [RBASE-L] - Re: NTVDM Gunnar, I asked out of more than curiosity. Given your answer, I might be able to suggest a couple of things. Perhaps I could explain, over time, a bit of my approach here, if you would like. Please let me start by saying that not only do I (we, my employer, a university business/economic research group) need to support data-entry, but also lots of reporting, incldg 2 rather large battery of monthly reports, as well as ad hoc reports. Anyway, I am doing some things in all these areas w/RBase that I hadn't done before and, at least in part, had been suggested or implied by other RBase users/developers. Well, as we often say, "It ain't brain surgery." However, sometimes we all, as humans, tend to do things the way we do because "That's the way it's always been done around here." If think it would help, I'll look at some of my approaches and try to come up w/a couple of generalized examples of what I'm doing that might be helpful to you. In very short and simple terms, I often create a temporary or ad hoc table that gets re-built or re-loaded as necessary to support the operation at hand (data-entry or reporting). As part of the table-building process, I sometimes create a computed column that is actually a command, with part of its content being that of data in fields from the same row. F/Example : Field_A Field_B Command_C 100 100 "SET VAR vSum_C = (" + CTXT(Field_A) + " + " + CTXT(Field_B) + ")" Then, I can load the value of Command_C into vRunThisCommand and with the ampersand, expand it at runtime so that it executes. Now this is nothing truly new, as I know I've seen other folks do this. However, one thing I seemed to stumble upon, was an extreme form of modularity in my data entry system. I have a set of *.CMD files that do what they're named. F/example : run PREP_TABLES.CMD // re-set the table(s) to whatever the appropriate defaults are run CURSOR_DEF.CMD // scrollable cursor run CURSOR_NAV.CMD USING "First" // "Last", "Next", "Previous", "REL n", "ABS n" This seems to be how I get around that memory leak. I say this because there is no cursor-associated WHILE-loop and as my routines are many and are generally called from EEPs associated w/FORMS. Also, the previous discussion of the COMPUTED command-field text allows me to handle what is truly DYNAMIC data as a STATIC result-set, as long as I PREP_TABLES as necessary. Okay, all this is probably turning to mud by now, but I'd be happy to share more, as you like. Thanks, Steve in Memphis BTW, I can't recall, are in Sweden or Norway? -Steve ----- Original Message ----- From: "Gunnar Ekblad" <[EMAIL PROTECTED]> To: "RBASE-L Mailing List" <[EMAIL PROTECTED]> Sent: Tuesday, September 09, 2003 11:29 AM Subject: [RBASE-L] - Re: NTVDM The first one does always 3 the second varies between 9 and 19 Gunnar Ekblad -----Ursprungligt meddelande----- Fr�n: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] F�r J. Stephen Wills Skickat: den 9 september 2003 17:47 Till: RBASE-L Mailing List �mne: [RBASE-L] - Re: NTVDM Gunnar, out of curiosity, how many iterations (MIN,MAX,MEAN) do each of the WHILE-loops perform? Steve in Memphis ----- Original Message ----- From: "Gunnar Ekblad" <[EMAIL PROTECTED]> To: "RBASE-L Mailing List" <[EMAIL PROTECTED]> Sent: Tuesday, September 09, 2003 10:39 AM Subject: [RBASE-L] - Re: NTVDM Stephen Typically in my case (however behaviour is random) I run report in a 2 level while loop. It should execute 3 times on first level and approx 15 times on second level. But It stops after a while Either with NTDVM error or as Pete says on vitual memory. Both had occurred an reboot and try again normaly works. I hate do add I am inclined to put in an extra workstation for reporting in background on ME/98 while my users on XP/NT only adds the reportrequest to a DB while the extra PC executes them. My main reason for this is realyy not this problem rather to save the users from the time when the APP is occupied while they run the reports Gunnar Ekblad -----Ursprungligt meddelande----- Fr�n: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] F�r J. Stephen Wills Skickat: den 9 september 2003 17:14 Till: RBASE-L Mailing List �mne: [RBASE-L] - Re: NTVDM Pete, does "running a program from within a cursor" actually mean calling it from within the cursor's associated WHILE-loop? I ask because I have a prototype data-entry system (f/Survey Research) wherein I have numerous command-files and/or forms (w/their own EEPs) that are called "long" after the cursor is defined and before it has navigated to the end of its result-set. I have run this system (off-and-on, in various re-visions) f/more than a year, w/up to maybe 5 connections (4 data entry and 1 monitoring sessions) under 9x and 2K w/o apparent leaks, lockups, etc. albeit the occasional blue screen - either something I did or we have this one 98 box that one does it in Office, too, or seemingly anything opened off a server-side share. Anyway, although my architecture still needs refinement - I've already "re-factored" (deep-sixed) several un-necessary modules - I don't seem to have encountered this memory leak. I'm not casting doubt on your assessment - indeed, if this is happening, then I hope RBTI would address it. However, as I navigate the cursor in its own command file, passing it parm's, and my WHILE-loops are not used to directly cycle through the cursor's result-set, maybe I have an un-intended work-around until the time that said leak is remedied. Just a thought, Steve in Memphis ----- Original Message ----- From: "Pete Meyer" <[EMAIL PROTECTED]> To: "RBASE-L Mailing List" <[EMAIL PROTECTED]> Sent: Tuesday, September 09, 2003 9:52 AM Subject: [RBASE-L] - Re: NTVDM > RBTI has a memory leak when you run 6.5++ under NT (2k, or XP). I've sent > them test cases but never had the problem actually fixed. I have found that > the problem is caused by running a program from within a cursor. The memory > on the machine will continually climb until windows croaks with a 'low > virtual memory' error. The ONLY way to release the memory back the OS is to > close RBase entirely (not a very user friendly way to solve the problem). > Disconnecting the DB doesn't work. I wish they would fix this because this > is the only bug standing in my way of moving my users from pure DOS to a > windows system. > > ----- Original Message ----- > From: "Gunnar Ekblad" <[EMAIL PROTECTED]> > To: "RBASE-L Mailing List" <[EMAIL PROTECTED]> > Sent: Tuesday, September 09, 2003 10:19 AM > Subject: [RBASE-L] - NTVDM > > > > I am Doing report in RBDOS ver 6.5++ the latest and greatest on a XP system. > (On windows ME I never encounter any problem) > Sometimes I get a NTVDM error message that (in Swedish) refers to memory. > Against my principles I have used REGEDIT32 to change : > HKEY_LOCAL_MACHINES\System\CurrentControlSet\Control\WOW > > And put in the memory value 256 (MB)from the default of 0. So far it seems > to have remedied the problem. > > It is aginst my principles since I am not knowing what I am doing this is > far beyond my knowledge OG XP and regedit32. > > Has anyone one an opinion if I am on the right track or if I should stop > messing with system defaults? > Gunnar Ekblad >

