' DEP.vbs ' Script fuer das Auslesen des DEP (Datenerfassungsprotokoll) ' zur freien Veraenderung/Erweiterung, ohne Support und Funktionsgarantie vom Entwickler ' Autor Stefan Schachamayr, 2018-01-13 ' SocialSoft ist JTL-Servicepartner und Partner von Luwosoft ' weitere JTL-Reporting-tools oder LS-POS-tools auf Anfrage bzw. auf https://www.socialsoft.eu ' ' vorliegendes Visual Basic Script kann als Schnelltaste in LS-POS wie folgt gespeichert werden: ' @system:c:\windows\syswow64\wscript.exe x:\ddddd\DEP.vbs ' (1) Wenn kein gesonderter Speicher-Pfad angegeben wird, wird das Protokoll auf dem Desktop gespeichert ' (2) Wenn kein Datumsformat angegeben wird (gueltig: JJJJ-MM-TT oder TT.MM.JJJJ) dann wird JJJJ-MM-TT angenommen ' (3) Wenn keine Kassenkennung angegeben wird, dann wird diese automatisch zu ermitteln versucht ' Beachten Sie, dass die Sicherheitseinstellungen im Windows oder installierte Virenscanner den ' Aufruf von scripts verbieten koennten. ' ' Set oArgumente = WScript.Arguments Set wshshell = WScript.CreateObject ("wscript.shell") path = wshshell.SpecialFolders("Desktop") datFormat = "JJJJ-MM-TT" Kennung = "" On Error Resume Next path = oArgumente(0) ' Ergebnispfad, wenn nicht angegeben, dann Desktop datFormat = oArgumente(1) ' Datumsformat, gueltig sind JJJJ-MM-TT und TT.MM.JJJJ Kennung = oArgumente(2) ' Kassenkennung (LSPOS...) Achtung: genau so eingeben wie die Abfrage http://localhost:5618 im dropdown nach DEF zeigt On Error Goto 0 eingabemeldung = " " datum = year(date()-30) If datFormat = "JJJJ-MM-TT" Then datum = datum & "-01-01" ' Jahresanfang als default (bis Ende Jaenner auch das Vorjahr dazu) Else datum = "01.01." & datum End If Do While eingabemeldung > "" datum = inputbox("Bitte das Datum eingeben, ab dem das DEP-Protokoll gespeichert werden soll." + chr(13)+chr(10)+ eingabemeldung, "DEP-Datum", datum) eingabemeldung = "" ecancel = False If datum < " " Then If msgBox ("Es wurde kein Datum eingegeben!" , 5, "Eingabefehler!") <> 4 Then ecancel = True End If If ecancel = True Then WScript.Quit(12) End If End If If isdate(datum) = False Then eingabemeldung = "Bitte ein gültiges Datum eingeben!" End If Loop Set http = CreateObject("Microsoft.XmlHttp") On Error Resume Next If Kennung > "" Then Else ' Kassenkennung durch Aufruf des EFST-Servers ermitteln URL = "http://localhost:5618/config" http.open "GET", URL, FALSE http.send "" If Err.Number <> 0 Then msgBox "Es ist ein Fehler beim Aufruf des EFSTA-Servers aufgetreten!",, "Fehler!" WScript.Quit(12) End If ResponseText = http.responseText Kennung = mid (ResponseText, instr(ResponseText, "