KundennummerKomplettLoeschen.p 989 B

123456789101112131415161718192021222324252627282930313233343536
  1. DEF VAR hQuery AS HANDLE NO-UNDO.
  2. DEF VAR hBuffer AS HANDLE NO-UNDO.
  3. DEF VAR hFeld AS HANDLE NO-UNDO.
  4. DEF VAR cWhere AS CHAR NO-UNDO.
  5. DEF VAR iKnr AS INT NO-UNDO INIT 5555.
  6. FOR EACH _Field WHERE _Field._Field-Name = 'Knr':
  7. FIND _File OF _Field.
  8. CREATE BUFFER hBuffer FOR TABLE _File._File-Name.
  9. hFeld = hBuffer:BUFFER-FIELD('Firma').
  10. IF VALID-HANDLE(hFeld) THEN
  11. cWhere = SUBSTITUTE('FOR EACH &1 WHERE &1.Firma = "1000" AND &1.Knr = &2',
  12. _File._File-Name, iKnr ).
  13. ELSE
  14. cWhere = SUBSTITUTE('FOR EACH &1 WHERE &1.Knr = &2',
  15. _File._File-Name, iKnr ).
  16. CREATE QUERY hQuery.
  17. hQuery:SET-BUFFERS(hBuffer).
  18. hQuery:QUERY-PREPARE(cWhere).
  19. hQuery:QUERY-OPEN().
  20. REPEAT TRANSACTION:
  21. DO WHILE hQuery:GET-NEXT(EXCLUSIVE-LOCK):
  22. hBuffer:BUFFER-DELETE().
  23. END.
  24. LEAVE.
  25. END.
  26. DELETE OBJECT hBuffer.
  27. DELETE OBJECT hQuery.
  28. END.