| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- TRIGGER PROCEDURE FOR WRITE OF Aufko
- NEW BUFFER NAufko
- OLD BUFFER OAufko.
- DEF VAR hBuffer AS HANDLE NO-UNDO.
- DEF VAR lDatum AS LOG INIT FALSE NO-UNDO.
-
- DEF BUFFER bAufze FOR Aufze.
- DEF BUFFER bArtbw FOR Artbw.
- IF NAufko.Aufnr = 0 THEN DO:
- hBuffer = BUFFER NAufko:HANDLE.
- RUN CREATE_AUFKO ( hBuffer ).
- RETURN.
- END.
- IF NAufko.Lief_Datum <> OAufko.Lief_Datum AND
- OAufko.Lief_Datum <> ? AND
- NAufko.Lief_Datum <> ? THEN DO:
- FOR EACH bAufze NO-LOCK
- WHERE bAufze.Firma = NAufko.Firma
- AND bAufze.Aufnr = NAufko.Aufnr
- AND bAufze.Trnr > 0
- AND bAufze.Artnr > 0,
- EACH Artbw NO-LOCK
- WHERE Artbw.Firma = bAufze.Firma
- AND Artbw.Trnr = bAufze.Trnr
- AND Artbw.Datum <> NAufko.Lief_Datum:
- FIND bArtbw EXCLUSIVE-LOCK
- WHERE bArtbw.Firma = Artbw.Firma
- AND bArtbw.Trnr = Artbw.Trnr NO-WAIT NO-ERROR.
- IF NOT AVAILABLE bArtbw THEN NEXT.
- bArtbw.Datum = NAufko.Lief_Datum.
- RELEASE bArtbw.
- END.
- END.
-
- IF NAufko.Mwst = 0 AND
- OAufko.Mwst > 0 THEN DO:
- FIND FIRST Aufze NO-LOCK
- WHERE Aufze.Firma = NAufko.Firma
- AND Aufze.Aufnr = NAufko.Aufnr
- AND Aufze.Artnr > 0 NO-ERROR.
- FIND FIRST Debst NO-LOCK
- WHERE Debst.Firma = NAufko.Firma
- AND Debst.Knr = NAufko.Knr NO-ERROR.
- IF NOT AVAILABLE Debst THEN RETURN.
- IF AVAILABLE Aufze THEN DO:
- FIND Artbw OF Aufze NO-LOCK NO-ERROR.
- IF AVAILABLE Artbw THEN DO:
- ASSIGN NAufko.Auf_Datum = OAufko.Auf_Datum.
- IF Artbw.Faknr = 0 THEN DO:
- ASSIGN NAufko.Kond_Datum = OAufko.Kond_Datum
- NAufko.Lief_Datum = OAufko.Lief_Datum
- NAufko.Fak_Datum = OAufko.Fak_Datum.
- END.
- END.
- END.
- ELSE DO:
- IF NAufko.Auf_Datum = ? THEN NAufko.Auf_Datum = OAufko.Auf_Datum.
- IF NAufko.Kond_Datum = ? THEN NAufko.Kond_Datum = OAufko.Kond_Datum.
- IF NAufko.Lief_Datum = ? THEN NAufko.Lief_Datum = OAufko.Lief_Datum.
- IF NAufko.Faknr <> 0 AND
- NAufko.Fak_Datum = ? THEN NAufko.Fak_Datum = OAufko.Fak_Datum.
- END.
- ASSIGN NAufko.Kond = Debst.Kond
- NAufko.Preis_Grp = Debst.Preis_Grp
- NAufko.Rab_Grp = Debst.Rab_Grp
- NAufko.Ku_Grp = Debst.Ku_Grp
- NAufko.MWSt = Debst.MWSt.
- END.
- IF NAufko.Auf_Tot <> OAufko.Auf_Tot AND
- NAufko.Gedruckt = TRUE THEN NAufko.Gedruckt = FALSE.
|