>Here's the situation:
>
>Combo1 (with inventory_search in it's interactivechange) has item stocknumbers for selections. It searches for the record selected and populates the other objects with appropriate data. I can edit and save the very 1st record all I like. When I select a different record, choose edit and save, I get the error "Table buffer for alias intrancust contains uncommitted changes". When the error occurs, the debugger points to the Requery()
immediately following a tableupdate().
>
>Here's the code:
>
>Load:
>DBSETPROP('intrancust', 'view', 'Tables', 'Tomparco!inventory')
>DBSETPROP('intrancust', 'view', 'SendUpdates',.T.)
>=CURSORSETPROP("Buffering", 3, "intrancust")
>INDEX ON stocknum TAG stocknum
>=CURSORSETPROP("Buffering", 5, "intrancust")
>
>Init:
>Thisform.Inventory_Search() && <-This is also in the interactivechange of combo1
>
>Inventory_Search():
>GO TOP
>SEEK Thisform.Combo1.value
>IF FOUND()
>Thisform.Combo1.value = stocknum
>Thisform.Text3.VALUE = cut
>Thisform.Text10.VALUE = colors
>Thisform.Text11.VALUE = clarity
>ENDIF
>
>Editbutton Click Event:
>ThisForm.Combo1.Enabled = .F. &&Locks Combo1
>
>Thisform.Combo2.Visible = .T. &&takes the place of Text3
>Thisform.Combo3.Visible = .T. &&takes the place of Text10
>Thisform.Combo4.Visible = .T. &&takes the place of Text11
>
>Thisform.Text3.Visible = .F.
>Thisform.Text10.Visible = .F.
>Thisform.Text11.Visible = .F.
>
>ThisForm.Combo2.displayvalue = cut
>ThisForm.Combo3.displayvalue = colors
>ThisForm.Combo4.displayvalue = clarity
>
>Save:
>REPLACE cut WITH Thisform.Combo2.Displayvalue
>REPLACE colors WITH Thisform.Combo3.Displayvalue
>REPLACE clarity WITH Thisform.Combo4.Displayvalue
>
>TableUpdate(0,.T.,"intrancust")
Likely this is the problem; passing 0 as the first argument to TABLEUPDATE() only commits the data for modifications to the current row; you may have recorded changes (remember, even writing the same value into a field is a change) to more than one row if any of the fields are bound as control sources to controls on your form that got updated by force. Try changing the first parameter to 1 or 2.
>
>&&Tablerevert(.F., 'intrancust')
>REQUERY('intrancust') &&...I stopped here because this is where the error occurs