Consultor Eletrônico



Kbase P170191: Cannot reposition to new row in UltraGrid without assigning key fields to match predicate
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   20/09/2010
Status: Verified

SYMPTOM(s):

Cannot reposition to new row in UltraGrid without assigning key fields to match predicate

UltraGrid shows blank row where one existed after using CREATE-RESULT-LIST-ENTRY() to add new row to query

Cannot reposition to rowid/recid given in an ultragrid

Invalid rowid argument(s) given in query object method. (7316)

Cannot reposition query <name> to recid/rowid(s) given. (7331)

FACT(s) (Environment):

Windows
OpenEdge 10.2x

CAUSE:

The CurrencyManager handles communication from the grid back to the query through the proBindingSource, not the other way around. Adding a result list entry to the query may display strange or undesirable results in the UltraGrid when this is done.

FIX:

To show a new row in an UltraGrid use the AddNew() method of the bindingSource.

e.g.
DO TRANSACTION:
CREATE ttCust.
rRowid = ROWID (ttCust).
END.

hQuery:CREATE-RESULT-LIST-ENTRY ().
THIS-OBJECT:bindingSource1:AddNew().
hQuery:REPOSITION-TO-ROWID (rRowid).