steunr.p 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /* ---------------------------------------------------------------------- */
  2. /* Nummer aus der SteuNr-Tabelle lösen */
  3. /* ---------------------------------------------------------------------- */
  4. { v8/globvar.i " " " " "SHARED" }
  5. { v8/debivar.i " " " " "SHARED" }
  6. { v8/artivar.i " " " " "SHARED" }
  7. { v8/contvar.i " " " " "SHARED" }
  8. /* ---------------------------------------------------------------------- */
  9. /* INPUT PARAMETER : Art 1 = Auftragsnummer */
  10. /* 2 = Fakturanummer */
  11. /* 3 = Bestellnummer */
  12. /* 4 = Allg. Belegnummer */
  13. /* 5 = Sammelbelegnummer */
  14. /* ---------------------------------------------------------------------- */
  15. DEF INPUT PARAMETER Art AS INT.
  16. DEF OUTPUT PARAMETER Nummer AS INT.
  17. NUMMER:
  18. REPEAT TRANSACTION:
  19. FIND SteuNr USE-INDEX SteuNr-k1
  20. WHERE SteuNr.Firma = GVFirma EXCLUSIVE-LOCK NO-WAIT NO-ERROR.
  21. DO WHILE AVAILABLE SteuNr:
  22. CASE Art:
  23. WHEN 1 THEN DO:
  24. SteuNr.Nr1 = SteuNr.Nr1 + 1.
  25. Nummer = SteuNr.Nr1.
  26. END.
  27. WHEN 2 THEN DO:
  28. SteuNr.Nr2 = SteuNr.Nr2 + 1.
  29. Nummer = SteuNr.Nr2.
  30. END.
  31. WHEN 3 THEN DO:
  32. SteuNr.Nr3 = SteuNr.Nr3 + 1.
  33. Nummer = SteuNr.Nr3.
  34. END.
  35. WHEN 4 THEN DO:
  36. SteuNr.Nr4 = SteuNr.Nr4 + 1.
  37. Nummer = SteuNr.Nr4.
  38. END.
  39. WHEN 5 THEN DO:
  40. SteuNr.Nr5 = SteuNr.Nr5 + 1.
  41. Nummer = SteuNr.Nr5.
  42. END.
  43. END CASE.
  44. RELEASE SteuNr.
  45. LEAVE NUMMER.
  46. END.
  47. IF LOCKED SteuNr THEN DO:
  48. Ja = TRUE.
  49. MESSAGE 'Die Datei SteuNr ist von einem anderen Benutzer im Zugriff '
  50. VIEW-AS ALERT-BOX INFORMATION BUTTONS OK-CANCEL UPDATE Ja.
  51. IF Ja THEN NEXT NUMMER.
  52. END.
  53. RELEASE SteuNr.
  54. RETURN 'ERROR'.
  55. END.
  56. RELEASE SteuNr.
  57. RETURN ''.