Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Requery gets table buffer uncommitted changes
Message
De
06/02/2004 02:37:13
Larry Long
ProgRes (Programming Resources)
Georgie, États-Unis
 
 
À
04/02/2004 22:54:28
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Divers
Thread ID:
00874307
Message ID:
00874723
Vues:
10
You probably need to add some login to check the results of your table updates. My guess is that all of your records are not updating. Just issuing TableUpdate does not assure its success. For example...

IF NOT TableUpdate(.t.)
=MESSAGEBOX('Problem updating')
do something
ENDIF

Also check to make sure that your Asynch property is .F., this forces VFP to wait for the process to finish before continuing.

You may also want to look at the BatchUpdateCount property.

HTH

>I'm using a requery of a remote view. It updates fine for a couple of records then gives an error message: Table buffer for alias "Inventory_Remote" contains uncommitted changes. This is in VFP8 with remote conection to a sql2000 database.
>
>sele new
>Clear
>Close All
>Close Database
>Set Exclusive Off
>Set Deleted On
>Open Database j:\mom\inventory_remote
>Set Default To j:\mom
>Select 1
>Use j:\vfp\NEW
>Select 2
>Use j:\db\Data\invrepor Order 1
>Select 3
>xCatalog='AB001'
>xLtd_Edition=.F.
>Use inventory_remote!inventory_remote
>Select 1
>SET MULTILOCKS ON && Must turn on for table buffering.
>= CURSORSETPROP('Buffering', 5, 'inventory_remote' )
>= CURSORSETPROP('Buffering', 5, 'New' )
>= CURSORSETPROP('Buffering', 5, 'invrepor' )
>
>SELECT NEW
>Scan Rest && FOR LastUpdate>UploadDate OR (LastUpdate=UploadDate AND LastUpSecs>UpLoadSecs)
>
>
>
> xCatalog=NEW.Catalog
> xLtd_Edition=NEW.ltd_editio
> Select inventory_remote
> =TABLEUPDATE(.T.)
> Requery()
> Select * From inventory_remote Into Cursor TEST3
> = CURSORSETPROP('Buffering', 5, 'TEST3')
> = TABLEUPDATE(.t.)
> If _Tally >0
> Update inventory_remote ;
> SET inventory_remote.HARD_ISBN = NEW.HARD_ISBN, ;
> inventory_remote.TITLE2X = new.title2x, ;
> inventory_remote.HARDBOUND = NEW.HARDBOUND, ;
> inventory_remote.HARD_PRICE = NEW.HARD_PRICE, ;
> inventory_remote.HARD_SALE = NEW.HARD_SALE, ;
> inventory_remote.HARD_OP = NEW.HARD_OP, ;
> inventory_remote.HARD_ISBN = NEW.HARD_ISBN, ;
> inventory_remote.HARD_NYP = NEW.HARD_NYP, ;
> inventory_remote.HARD_DUE = NEW.HARD_DUE, ;
> inventory_remote.hard_sign = NEW.hard_sign, ;
> inventory_remote.SOFTBOUND = NEW.SOFTBOUND, ;
> inventory_remote.SOFT_PRICE = NEW.SOFT_PRICE, ;
> inventory_remote.SOFT_SALE = NEW.SOFT_SALE, ;
> inventory_remote.SOFT_OP = NEW.SOFT_OP, ;
> inventory_remote.SOFT_ISBN = NEW.SOFT_ISBN, ;
> inventory_remote.SOFT_NYP = NEW.SOFT_NYP, ;
> inventory_remote.SOFT_DUE = NEW.SOFT_DUE, ;
> inventory_remote.soft_sign = NEW.soft_sign, ;
> inventory_remote.signedby = NEW.signedby, ;
> inventory_remote.LTD_OP = NEW.LTD_OP, ;
> inventory_remote.VIDEO = NEW.VIDEO, ;
> inventory_remote.BOOKTEASE = NEW.BOOKTEASE, ;
> inventory_remote.BOOKTEASE2 = NEW.BOOKTEASE2, ;
> inventory_remote.BT2WIDTH = NEW.BT2WIDTH, ;
> inventory_remote.BT2HEIGHT = NEW.BT2HEIGHT, ;
> inventory_remote.PUBLISHER = NEW.PUBLISHER, ;
> inventory_remote.PUBLISHERX = NEW.PUBLISHERX, ;
> inventory_remote.CITY = NEW.CITY, ;
> inventory_remote.CITYX = NEW.CITYX, ;
> inventory_remote.DATEPUB = NEW.DATEPUB, ;
> inventory_remote.SUBTITLE = NEW.SUBTITLE, ;
> inventory_remote.SUBTITLEX = NEW.SUBTITLEX, ;
> inventory_remote.Pages = NEW.Pages, ;
> inventory_remote.bwillus = NEW.bwillus, ;
> inventory_remote.colorillus = NEW.colorillus, ;
> inventory_remote.illustrat = NEW.illustrat, ;
> inventory_remote.appendices = NEW.appendices, ;
> inventory_remote.SIZEX = NEW.SIZEX, ;
> inventory_remote.NUDES = NEW.NUDES, ;
> inventory_remote.CATEGORYNO = NEW.CATEGORYNO, ;
> inventory_remote.sortorder = NEW.sortorder, ;
> inventory_remote.SUBJECT = NEW.SUBJECT, ;
> inventory_remote.SUBJECTX = NEW.SUBJECTX,;
> inventory_remote.ABSTRACT = NEW.ABSTRACT, ;
> inventory_remote.ABSTRACTX = NEW.ABSTRACTX, ;
> inventory_remote.OCR = NEW.OCR, ;
> inventory_remote.OCRX = NEW.OCRX, ;
> inventory_remote.THUMBH = NEW.THUMBH, ;
> inventory_remote.THUMBW = NEW.THUMBW, ;
> inventory_remote.BIGH = NEW.BIGH, ;
> inventory_remote.BIGW = NEW.BIGW, ;
> inventory_remote.IMAGEFRAME = NEW.IMAGEFRAME, ;
> inventory_remote.country = NEW.language, ;
> inventory_remote.language = NEW.country, ;
> inventory_remote.foreign2 = NEW.foreign2, ;
> inventory_remote.CUSTOM1 = NEW.CUSTOM1, ;
> inventory_remote.CUSTOM2 = NEW.CUSTOM2, ;
> inventory_remote.CUSTOM3 = NEW.CUSTOM3, ;
> inventory_remote.CUSTOM4 = NEW.CUSTOM4, ;
> inventory_remote.AUTHORS = NEW.AUTHORS, ;
> inventory_remote.AUTHORSX = NEW.AUTHORSX ;
> WHERE inventory_remote.Catalog = NEW.Catalog And ;
> inventory_remote.ltd_editio = NEW.ltd_editio
> * SELECT Inventory_remote
> * =Tableupdate(.T.,.T.)
> ? NEW.Catalog + " Updated"
> *
> Else
> Insert Into inventory_remote (Catalog, HARDBOUND, HARD_PRICE, HARD_SALE, HARD_OP, HARD_ISBN, hard_sign, SOFTBOUND, ;
> SOFT_PRICE, SOFT_SALE, SOFT_OP, SOFT_ISBN, soft_sign, signedby, ;
> ltd_editio, LTD_OP, VIDEO, NUDES, BOOKTEASE, BOOKTEASE2, ;
> TITLE2, TITLE2X, SUBTITLE, SUBTITLEX, AUTHORS, AUTHORSX, PUBLISHER, ;
> PUBLISHERX, CITY, CITYX, DATEPUB, Pages, bwillus, colorillus, illustrat, appendices, ;
> illustrat, appendices, SIZEX, country, language, foreign2, NUDES, CATEGORYNO, sortorder, SUBJECT, SUBJECTX, ;
> BT2WIDTH, BT2HEIGHT, THUMBH, THUMBW, BIGH, BIGW, CUSTOM1, CUSTOM2, CUSTOM3, CUSTOM4, IMAGEFRAME, ABSTRACT, ABSTRACTX, OCR, OCRX);
> VALUES (NEW.Catalog, NEW.HARDBOUND, NEW.HARD_PRICE, NEW.HARD_SALE, NEW.HARD_OP, NEW.HARD_ISBN, NEW.hard_sign, ;
> NEW.SOFTBOUND, NEW.SOFT_PRICE, NEW.SOFT_SALE, NEW.SOFT_OP, NEW.SOFT_ISBN, NEW.soft_sign, NEW.signedby, ;
> NEW.ltd_editio, NEW.LTD_OP, NEW.VIDEO, NEW.NUDES, NEW.BOOKTEASE, NEW.BOOKTEASE2, ;
> NEW.TITLE2, NEW.TITLE2X, NEW.SUBTITLE, NEW.SUBTITLEX, NEW.AUTHORS, NEW.AUTHORSX, NEW.PUBLISHER, ;
> NEW.PUBLISHERX, NEW.CITY, NEW.CITYX, NEW.DATEPUB, NEW.Pages, NEW.bwillus, NEW.colorillus, NEW.illustrat, NEW.appendices, ;
> NEW.illustrat, NEW.appendices, NEW.SIZEX, NEW.country, NEW.language, NEW.foreign2, NEW.NUDES, NEW.CATEGORYNO, NEW.sortorder, NEW.SUBJECT, NEW.SUBJECTX, ;
> NEW.BT2WIDTH, NEW.BT2HEIGHT, NEW.THUMBH, NEW.THUMBW, NEW.BIGH, NEW.BIGW, NEW.CUSTOM1, NEW.CUSTOM2, ;
> NEW.CUSTOM3, NEW.CUSTOM4, NEW.IMAGEFRAME, NEW.ABSTRACT, NEW.ABSTRACTX, NEW.OCR, NEW.OCRX)
>
> Select inventory_remote
> =Tableupdate(.T.)
> ? NEW.Catalog + " Inserted"
> Endif
>
> *
>
>
> Select invrepor
> Seek xCatalog
> Scan While Catalog=xCatalog
> If ltd_editio=XLTD_EDITION And Not Eof()
> Replace Next 1 UPLOADDATE With Date(), UPLOADSECS With Seconds()
> =Tableupdate(.T.)
> Endif
> Endscan
> Select NEW
>
>ENDSCAN
>
>* Now select items to be deleted because they are not in the local invrepor
>*Select Catalog, Ltd_editio FROM inventory_remote WHERE catalog NOT IN (SELECT catalog FROM invrepor ORDER BY number, ltd_editio)
>
>*Select * from stock_remote t2 left join stock_local t1 ;
>on t2.catalog=t1.catalog and t2.ltd_editio=t1.ltd_editio ;
>where t1.catalog is null
>
>Close Databases
>Close All
>Return
>
>What could the problem be? Any clues would be appreciated. Thanks in advance.
L.A.Long
ProgRes
lalong1@charter.net
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform