Keyboard Shortcuts
Likes
- MadFox
- Messages
Search
Re: VFP version issues
开云体育Stein:
?
I haven't used codemine in years.? But, the biggest gotcha in my vfp8 conversion of vfp7 apps had to do with SQL statements.? Namely -?GROUP BY clause has a requirement in VFP8 that all the columns have to be restated.? The quick way around this - and a quick suggestion to you is to include:
?
SET ENGINEBEHAVIOR to 70? at the top of your app
or
ENGINEBEHAVIOR=70? in your config.fpw
?
It's worth a try
?
Peter d.
|
Re: VFP version issues
Stein Goering
开云体育No, I’m still using Codemine version 6.?? I tried CM 7 when it came out and it broke a bunch of my code, so I haven’t upgraded the framework in years. ?I’ve upgraded other legacy code to VFP 8 with no problems so thought I’d try it.? As I said, it seemed to compile and run OK – it’s just a few quirks like the child grid that are problematic. ? From: Lorentzen David
F. [mailto:DF.LORENTZEN@...]
Sent: Tuesday, February 10, 2004 1:44 PM To: madfox_vfp@... Subject: RE: [madfox_vfp] VFP version issues ? Stein, ? Do you have the latest and greatest Codemine 7.1? According to the web page, it looks like you need 7.1 for VFP8. I haven't tried 7.1 yet. -= Dave David F. Lorentzen
|
Re: VFP version issues
Lorentzen David F.
开云体育Stein,
?
Do you
have the latest and greatest Codemine 7.1? According to the web page, it looks
like you need 7.1 for VFP8. I haven't tried 7.1 yet.
-= Dave David F. Lorentzen
|
VFP version issues
Stein Goering
开云体育I’ve been doing some retro work on an older Codemine-based app (as referenced in my last post).? This thing had been running under VFP 7, but having become addicted to the 8 IDE, I decided to try it under ver 8.? It recompiled without complaint, and the areas where I’d made changes seemed to work OK, so I shipped it off to the customer along with the 8 runtimes.? ? Today they called to report that several things were not working.? I was rather baffled as it was pretty much all code that I had not modified in any way.? I kept trying to undo the changes to find out what was causing the side-effects, but nothing helped, even tho I went back to source code that I know was working earlier.? Finally, I tried rebuilding under VFP 7 and bingo – all was well. ? There were a number of oddities, but the most noticeable problem was on my job orders form.? It has a page frame which shows a Job’s trasactions in a grid – standard child table display.? Under VFP 8, the cursor in the grid would be stuck on the top row.? Neither mouse click nor arrow keys could move it off the first record.? With the same source compiled under 7 you can navigate the grid with no problems.? ? ? Anyone have an idea what could be going on?? VFP 8 base classes?? Seems unlikely - the app mostly uses Codemine custom classes.? ?Environment settings?? ?I’ve moved other apps from 7 to 8 (and in one case from 6 to 8) with no problems, but it sure didn’t work this time. ? --stein ? Stein Goering Arbutus Computer Services 17494 Merry Hill Rd Richland Center, WI? 53581 ? 608.538.3820 ? ? |
Re: i couldn't resist
Lorentzen David F.
(This continues to be off-topic)
toggle quoted message
Show quoted text
Agreed. If we can't have Packers in the Super Bowl, at least give us something to cheer about. -= Dave David F. Lorentzen Manager, HLA/Molecular Diagnostics Lab University of Wisconsin Hospital and Clinics 600 Highland Ave Madison, WI 53792-2472 -----Original Message-----
From: Eric Selje [mailto:eselje@...] Sent: Thursday, February 05, 2004 2:49 PM To: madfox_vfp@... Subject: Re: [madfox_vfp] i couldn't resist You know, I just read where a woman in KY or TN or some podunk state is filing a class-action lawsuit against CBS for that incident. Why is it that we can watch people get killed or beat up or eat bugs all day on the TV and not be offended, but show one (very beautiful I might add) breast and everybody's up in arms. Did anyone sue CBS when Kennedy or Reagan got shot because it was family hour on TV? No! My .02, Eric Yahoo! Groups Links |
Re: i couldn't resist
Eric Selje
(This continues to be off-topic)
You know, I just read where a woman in KY or TN or some podunk state is filing a class-action lawsuit against CBS for that incident. Why is it that we can watch people get killed or beat up or eat bugs all day on the TV and not be offended, but show one (very beautiful I might add) breast and everybody's up in arms. Did anyone sue CBS when Kennedy or Reagan got shot because it was family hour on TV? No! My .02, Eric |
Re: Table updates failing in multiuser environment
Stein Goering
开云体育As I recall, I wanted to find a Codemine method to handle batch processing, but ended up rolling my own because there didn’t seem to be anything.? I guess, though, even when building a custom routine, I could make sure I use CM components wherever possible.? It’s either that or try to make my routines run in complete isolation from the CM environment.? Clearly the mixed mode I’m trying isn’t working.? ? From: Lorentzen David
F. [mailto:DF.LORENTZEN@...]
Sent: Monday, February 02, 2004 11:40 AM To: madfox_vfp@... Subject: RE: [madfox_vfp] Table updates failing in multiuser environment ? Stein, ? I believe that once you commit to using Codemine, you have to stick with their methods throughout the app. I don't have my book or laptop with me, but there are Codemine data commands that oversee all data transactions, such as this one for a form: ? THISFORM.cmDataManager.Replace(THIS.cWorkarea, THIS.cValueSource,... ? Stick with the CM stuff and I think you'll do ok. -= Dave David F. Lorentzen
Yahoo! Groups Links
|
Re: Table updates failing in multiuser environment
Lorentzen David F.
开云体育Stein,
?
I
believe that once you commit to using Codemine, you have to stick with their
methods throughout the app. I don't have my book or laptop with me, but there
are Codemine data commands that oversee all data transactions, such as this one
for a form:
?
THISFORM.cmDataManager.Replace(THIS.cWorkarea,
THIS.cValueSource,...
?
Stick with the CM stuff
and I think you'll do ok.
-= Dave David F. Lorentzen
|
Table updates failing in multiuser environment
Stein Goering
开云体育I will start off by admitting that programming for traditional LANs is not one of my strong suites.? I started off with standalone apps, and most of my recent work has been web-based (where of course I work with multiple users but in a stateless environment that has its own issues).?? My one multiuser LAN-based app was done using the Codemine framework, and my approach was to get it working on my standalone development system, then deploy it to the customer’s site and hope that Codemine would take care of the multiuser issues.? That seems to work – mostly. ? If updates are made through the main forms, which are based on the Codemine classes, things seem to be OK.? However, we keep finding data inconsistencies, and the problems seem to stem from a couple of batch posting routines that I wrote.? (I couldn’t find any framework methods to do what I needed, so attempted to build my own.)?? These always work when testing them as a single user, but in the production environment it seems like they fail on an irregular but continuing basis.? Here’s an outline of the code: ? Replace JobOrders.Processed with .T., JobOrders.ProcDatime WITH DATETIME(), ? SELECT cmSearchResultsCursor? ? contains RECNOs from the transaction records belonging to this job ? * Go thru the search results cursor, find the corresponding Transaction record, and process it SCAN ? SELECT JobTransactions????? ? GO (cmSearchResultsCursor.RECNO) ? ??REPLACE Jobtransactions.processed WITH .T. *** Complicated code to update inventory records based on transaction type * Update transaction log .... ????? ? INSERT INTO bta!Transactionlog ; etc etc ? ??wait window timeout .5 ENDSCAN *** Call to a Codemine routine that supposedly updates all tables. * All buffering is handled by the Codemine framework ? What’s happening is that very occassionally we’ll find jobs for which the JobOrders.Processed field will be set to .T. but the corresponding JobTransactions, Inventory, and Transactionlog ?records will be left untouched, even tho (according to the customer) no error messages are displayed and they do see the summary message wait windows at the end of each cycle.? Since this always works at my end, I’m assuming there’s something in the multiuser environment that sometimes prevents the tables from updating.? ? I really do not want to rewrite or disect the Codemine routines – I’d rather someohow isolate these particular procedures so they work independently? I was thinking of something like this: ? USE JobOrders AGAIN EXCLUSIVE IN 0 ALIAS Xorders USE JobTransactions AGAIN EXCLUSIVE IN 0 ALIAS Xtransact Etc etc ? Do error trapping to ensure that I really have exclusive access, then run my process against the exclusive aliases, then release them all the at the end.? Seems like that would eliminate the potential pitfalls from the other users.? Does this seem like a workable approach?? ? ? --stein ? Stein Goering Arbutus Computer Services 17494 Merry Hill Rd Richland Center, WI? 53581 ? 608.538.3820 ? ? |
Re: checking if file is available
Stein Goering
开云体育I just finsished testing this and it appears to do just what I want.? Here’s what I have: ? ? lcMsg = [] ? ? TRY ??? SELECT * FROM (loConfig.cDataPath+'Referen') ; ????? INTO CURSOR tRef ??? USE IN SELECT('Referen') ? CATCH TO oErr ??? lcMsg = oErr.Message ? FINALLY ??? * ? ENDTRY ? ????? IF EMPTY(lcMsg) process tRef cursor as before ELSE ? Display friendly error screen to user telling them they can try resubmitting their request later ? Send email to sys admin reporting the error msg ENDIF ? The problem is that, altho the Referen table “should” always be available – it contains system settings and is usually just read and immediately released – one of our customers has done something so that it is periodically locking up, causing the select command to throw an error.? When this happens to a web user, all that happens now is the user gets a meaningless error msg and the sysop doesn’t even know about it. ? ? From: Eric Selje [mailto:eselje@...]
Sent: Thursday, January 29, 2004 6:13 PM To: madfox_vfp@... Subject: RE: [madfox_vfp] checking if file is available ? How'd that work out?? Loved your pun. ? Eric ? ? Yahoo! Groups Links
|
Re: checking if file is available
Stein Goering
开云体育Well yes, this is exactly the sort of situation for it.? I’ll give it a try (no pun intended). ? From: Eric Selje [mailto:eselje@...]
Sent: Tuesday, January 27, 2004 7:40 PM To: madfox_vfp@... Subject: RE: [madfox_vfp] checking if file is available ? How about using the new TRY....CATCH routine? ? ? Yahoo! Groups Links
|
checking if file is available
Stein Goering
开云体育How can I avoid errors like “file is in use by another” and “file access denied” when trying to open a dbf??? Is there some sort of pre-check I can do before issuing the USE or SELECT-sql statement?? USED() returns .F. so that’s no help. ? --stein ? Stein Goering Arbutus Computer Services 17494 Merry Hill Rd Richland Center, WI? 53581 ? 608.538.3820 ? ? |
FW: Fox Fudg Feb -- Tutorial on Web Connect
Eric Selje
[Original Message]be a tutorial on Web Connect. This Internet dll complemented by a huge, wellsites. Google it and see for yourself.Web Connect works. (Check out chapter 10 of WebRad from Hentzenwerkeless capable with data base tasks. A window of opportunity!Room # 826 at 53 W. Jackson Blvd. |
Re: MadFox Meeting
Stein Goering
开云体育Thanks Eric.? Not only is that cool, but it hits at exactly the command I had in mind when I brought up modifying IS.? This deals with one of my complaints – getting that huge tip box when all I wanted was to select a work area.? My other complaint is getting that huge tip box when I want to type a SQL select statement.? It doesn’t automate anything, just shows me syntax that I mostly already know, and I end up just wanting to get the damn thing out of the way because it’s hiding the code I already wrote.? ? At the meeting, I’ll volunteer to implement and demo Eric’s code.? Then maybe we can look at options for dealing with the default dialog.? (If nothing else, just disable IS for the SELE command) ? From: Eric Selje [mailto:eselje@...]
Sent: Monday, January 19, 2004 5:50 PM To: madfox_vfp@... Subject: RE: [madfox_vfp] MadFox Meeting ? Oooh, I have a good one for this.? I did it some time ago and may have even shown you before, but it's been so useful to me that I think it's worth revisiting. ? If you've ever typed SELE (space) at the command line, you know that you get the syntax for SQL - Select statements.? This is fine sometimes, but what if you really wanted the SELECT [workarea] syntax?? Well, who would really want that, because it's so simple?? Wouldn't it actually be very cool if it presented you with a list of open tables to choose from?? (Believe me, it is).?? And, as an added bonus, if there were no tables open it automatically changes itself to USE so you can open the table you're looking for. ? Here's what you do to get this: ? 1. Open Intellisense Manager, and change to the "Custom" tab. 2. In the box that says "Replace", type opentables, change the Type to "Script," then click "Add."? This adds a new script record to the FoxCode table.? Click "Script" to edit this script, and paste this code: ? LPARAMETER oFoxCode ? LOCAL X, cReturn, nUsed ? * Create array of open tables ? IF nUsed? = 0 ? 3 . Save that script (Ctrl+W), then add a new record to FoxCode by typing SEL in the Replace box, changing the type to "Command", and click "Add." ? 4. To make it so that SEL invokes our opentables script, click "Edit", and type {opentables}?? in the Cmd field.? ? 5. Click Ok and you should be all set.? Good luck! ? Even though it ends up being very simple, it actually took me about an hour to figure out how to do this all over again tonight. ? Enjoy, ? Eric ?
Yahoo! Groups Links
|