Using GET with RecordRef


Hi

I'm new to this RecordRef, FieldRef, RecordID functionality in Navision 3.60 so perhaps this is trivial questions, but here goes anyway... [:)]

My goal is to get one record from a table and be able to access the fields as an array.

Here's my code so far:

RecordRef.open(27); // Item Table
// Get one specific item
RecordRef.GET('1000'); // error - expects a recordID

// 'for'-loop though the fields using
// the RecordRef.FIELDINDEX function for this job
// possible change of some fields.

RecordRef.MODIFY; // save changes to record

So i guess my real question is how to use the recordID together with recordRef [?]

Any links to information about RecordRef, FieldRef, RecordID would also be nice... [:)]

Thanks in advance,

Rasmus Torpe
Parents
No Data
Reply
  • Hello Rasmus

    Here is a code example of how to find and change a record using RecordRef. Instead of using GET you can set filters and find records.
    RecRef.OPEN(27);
    FldRef := RecRef.FIELD(1); // Item."No."
    FldRef.SETRANGE('70000');
    RecRef.FIND('-');
    FldRef := RecRef.FIELD(3); // Item.Description;
    FldRef.VALUE('My own description');
    RecRef.MODIFY;


    Here is a code example of how to loop through the fields.
    RecRef.OPEN(27);
    FldRef := RecRef.FIELD(1); // Item."No."
    FldRef.SETRANGE('70000');
    RecRef.FIND('-');
    FOR i := 1 TO RecRef.FIELDCOUNT DO BEGIN
    FldRef := RecRef.FIELDINDEX(i);
    CASE FldRef.NAME OF // Or you can use a case on FldRef.NUMBER
    'Description': MESSAGE('%1 is %2.',FldRef.CAPTION,FldRef.VALUE); // Or do some changes
    'Unit Cost': MESSAGE('%1 is %2.',FldRef.CAPTION,FldRef.VALUE);
    END;
    END;


    Hope these little examples helps.
    I have found the filterfunctions GETVIEW and SETVIEW very useful to set filters on RecordRefs. These functions are available on both RecordRefs and Records.

    /Magnus
Children
No Data
Related
Recommended