Skip to main content
Skip table of contents

Event "nach Lieferschein-Löschung"

Event "nach Lieferschein-Löschung"


Der Aufruf erfolgt nach dem erfolgreichen Löschen eines Lieferscheins. Eine Transaktion ist nicht mehr aktiv!

Beispiel

CODE
| nEvtNo:P1, nLFNummer:P2, dLFDatum:P3, nKdNr:P4,
  oDM, oDab750, odab755, oDab050, cAnummer, oQuery755, oQuery750 |

// Sendungskopf löschen
// ============================================================
Function Delete750(nSendung)
   startseq,
      oQuery750 :=CreateObject('TBeADSQuery',,,,true),
      oQuery750.SQL :='delete from "DAB750.ADT" where '+"sendung="+Str(nSendung),
      DBExecSQL(oQuery750),
      result := true,
   onerror,
      Meld("Löschen Sendungskopf fehlgeschlagen "+GetErrorText()),
   stopseq,
end,

// Sendungspositionen löschen
// ============================================================
Function Delete755(nSendung)
   startseq,
      oQuery755 :=CreateObject('TBeADSQuery',,,,true),
      oQuery755.SQL :='delete from "DAB755.ADT" where '+"sendung="+Str(nSendung),
      DBExecSQL(oQuery755),
      result := true,
   onerror,
      Meld("Löschen Sendungspositionen fehlgeschlagen "+GetErrorText()),
   stopseq,
end,


// Nach Lieferschein-Löschung LF-Nummer aus Versandvorgang löschen
// =============================================================================
Function DeleteLFNummer()
   PRS("Event LS löschen","Delete LfNr"),
   cAnummer := Str(Val(oDab750:anummer),6),
   if DBSeek({cAnummer},oDab050) then
      DBStartTrans(oDM.AdsConnection),
      startseq,
         MyEdit(oDab750),
         oDab750:lf_nummer := "",
         oDab750:flag := 0,
         MyPost(oDab750),
         DBCommit(oDM.AdsConnection),
      onerror,
         DBRollBack(oDM.AdsConnection),
         DBCancelAll(oDM),
         Meld("Fehler beim Löschen der LS-Nummer "+CRLF+GetErrorText()),
      stopseq,
   endif,
end,

// Hauptprogramm
// ============================================================================
startseq,
   if Empty(oDM) then
      oDM := Createobject("TBeDBGET",,,,true),
      oDab050 := MyGetTable(oDM,waDAB050,),
      oDab750 := MyGetTable(oDM,waDAB750,),
      oDab755 := MyGetTable(oDM,waDAB755,),
      oDab750.indexname := "LF_NUMMER",
      oDab750.performupdates := false,
   endif,
   if mAbteilung = 2 then
      if DBSeek({Str(nLfNummer)},oDab750) then
         DeleteLfNummer(),
         if Empty(oDab750:lf_nummer) then         // wenn Haupt-Lf-Nr. gelöscht ist
            if JN("Soll der zugehörige Versandvorgang Nr. "<span style="text-decoration: underline;">Str(oDab750:sendung)</span>
               " komplett gelöscht werden?") then
               if Delete755(oDab750:sendung) then
                  Delete750(oDab750:sendung),
               endif,
            endif,
         endif,
      endif,
   endif,
onerror,
   Meld(GetErrortext()),
stopseq,
oDab750.performupdates := true,


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.