| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- DEF INPUT PARAMETER ipFeld AS CHAR NO-UNDO.
- DEF VAR cFields AS CHAR NO-UNDO.
- DEF VAR qBuffer AS HANDLE NO-UNDO.
- DEF VAR qbFeld AS HANDLE NO-UNDO.
- DEF VAR cTables AS CHAR NO-UNDO.
- cFields = DYNAMIC-FUNCTION('getDataColumns':U ) NO-ERROR.
- IF LOOKUP(ipFeld, cFields, ',') = 0 THEN RETURN NO-APPLY.
-
- cTables = DYNAMIC-FUNCTION('getQueryTables':U ) NO-ERROR.
- cTables = ENTRY(1, cTables, ' ') NO-ERROR.
- CREATE BUFFER qBuffer FOR TABLE cTables NO-ERROR.
- qbFeld = qBuffer:BUFFER-FIELD(ipFeld) NO-ERROR.
- IF NOT VALID-HANDLE(qbFeld) THEN DO:
- DELETE OBJECT qBuffer.
- RUN MELDUNG ( 8013 ).
- RETURN NO-APPLY.
- END.
- DELETE OBJECT qBuffer.
- IF ipFeld = cSort THEN fDesc = NOT fDesc.
- ELSE DO:
- ASSIGN cSort = ipFeld
- fDesc = FALSE.
- END.
- fData = TRUE.
- RUN dataAvailable ( INPUT 'SAME' ).
- FIND FIRST tRowObject NO-LOCK.
- FIND {&Tabelle}
- &IF '{&TabWhere}' NE ''
- &THEN {&TabWhere}
- &ELSE OF tRowObject
- &ENDIF
- NO-LOCK NO-ERROR.
- IF AVAILABLE {&Tabelle} THEN cRowid = STRING(ROWID({&Tabelle})).
- ELSE cRowid = ?.
- DYNAMIC-FUNCTION('openQuery':U).
- IF cRowid <> ? THEN DYNAMIC-FUNCTION('fetchRowIdent':U,
- INPUT cRowid, INPUT ? ).
|