====== Palletways Schnittstelle ====== ===== TODO ===== * **-** Aufträge von der DB einlesen nur wenn: * **-** UebergabePLW befüllen * **-** Nur solche Aufträge an Palletways schicken, bei denen die PLWId nicht gefüllt ist * **-** Kleine Benutzer-Doku schreiben ===== Documentation ===== * https://api.palletways.com/ * s. Mail (von Ulric?) * ansonsten in der lokalen Directory "/mnt/sda4/development/_projects/arealpilot360tms/palletways/docs" ===== Statusmeldungen abschicken ===== Die Reihenfolge, die klappt (s.Mail vom Herrn Grewe vom 09.01.2018 8:55): * **+** VU/SCN Entladung am Depot => Status AT DELIVERY DEPOT * **+** DIS/DAM Beschädigung, Hinweis * **+** BIN/BIN AVIS => Termin neues Zustelldatum * **+** VL/SCN Verladung auf NV Tour => Status OUT FOR DELIVERY * **+** REM/FAI Ware zurück an Depot, Grund => Status AT DELIVERY DEPOT * Im Original war die Meldung als "REM/REM" drin. REM/REM war aber nicht erfolgreich (ist auch in der Dokumentation nicht enthalten), REM/FAI klappte. * **+** VL/SCN Verladung auf NV Tour => Status OUT FOR DELIVERY * **+** POD/REF Annahmeverweigert => Status AT DELIVERY DEPOT * **+** JIN/GIN Verfügung für erneute Zustellung * **+** VL/SCN Verladung auf NV Tour 1.BC => Status OUT FOR DELIVERY * **-** POD/PAR Teilzustellung => Status JOB COMPLETE (!) * Hat nicht geklappt, da ich die Reihenfolge verwechselt habe. Ich habe zuerst beide Palettenscans VL/SCNs geschickt und erst dann POD/PAR * **+** VL/SCN Verladung auf NV Tour 2.BC => Status OUT FOR DELIVERY * **+** POD/POD Zustellmeldung => Status JOB COMPLETE Zitat: 1. VU/SCN Entladung am Depot => Status AT DELIVERY DEPOT\\ 2. DIS/DAM Beschädigung, Hinweis \\ 3. BIN/BIN AVIS => Termin neues Zustelldatum \\ 4. VL/SCN Verladung auf NV Tour => Status OUT FOR DELIVERY\\ 5. REM/REM Ware zurück an Depot, Grund => Status AT DELIVERY DEPOT\\ 6. VL/SCN Verladung auf NV Tour => Status OUT FOR DELIVERY\\ 7. POD/REF Annahmeverweigert => Status AT DELIVERY DEPOT\\ 8. JIN/GIN Verfügung für erneute Zustellung\\ 9. VL/SCN Verladung auf NV Tour 1.BC => Status OUT FOR DELIVERY\\ 10. POD/PAR Teilzustellung => Status JOB COMPLETE (!)\\ 11. VL/SCN Verladung auf NV Tour 2.BC => Status OUT FOR DELIVERY\\ 12. POD/POD Zustellmeldung => Status JOB COMPLETE\\ So könnten die Meldungen zu einem etwas "schief" verlaufenen AUftrag aussehen. Im Regelfall werden zu einem Auftrag nur \\ 1. Entladescannung\\ 2. AVIS Meldung bei Avisanforderung\\ 4. Verladescannung auf NV Tour\\ 12. Zustellmeldung nach Auslieferung\\ (13) Ablieferbeleg\\ gemeldet.\\ -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:14:19'}, '30018523756', 0, 'VU', 'SCN', 0, '123', 'B00029731C'); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:15:19'}, '30018523756', 0, 'VU', 'SCN', 0, '123', 'B00029731D'); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'TEST Freetext', {ts '2018-01-12 11:15:19'}, '30018523756', 0, 'DIS', 'DAM', 0, '123', null) -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode, CustomerName, BookInReference) VALUES ( 123, 'TEST Freetext', {ts '2018-01-12 11:16:19'}, '30018523756', 0, 'BIN', 'BIN', 0, '123', NULL, 'test customer name', 'test Book in Reference' ) -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:14:19'}, '30018523756', 0, 'VL', 'SCN', 0, '123', 'B00029731C'); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:15:19'}, '30018523756', 0, 'VL', 'SCN', 0, '123', 'B00029731D'); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:17:19'}, '30018523756', 0, 'REM', 'FAI', 0, '123', null); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:18:19'}, '30018523756', 0, 'VL', 'SCN', 0, '123', 'B00029731C'); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:18:19'}, '30018523756', 0, 'VL', 'SCN', 0, '123', 'B00029731D'); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode, CustomerName) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:18:19'}, '30018523756', 0, 'POD', 'REF', 0, '123', null, 'test Customer Name'); INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" (VerlaufsID,SendungsID,FreeTexte,StDatumZeit,SendungsIDPLW,UebergebenPLW,NoteGroup,NoteType,AnzUebergaben,PruefungTMS) VALUES (61,123,'XML HINWEIS TEST',{ts '2017-12-28 11:14:19'},'30018425756',0,'JIN','GIN',0,'157431') -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:19:19'}, '30018523756', 0, 'VL', 'SCN', 0, '123', 'B00029731C'); -- Übergabe für diesen Status war NICHT erfolgreich, wegen der falschen Reihenfolge INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode, CustomerName) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:20:19'}, '30018523756', 0, 'POD', 'PAR', 0, '123', null, 'test Customer Name'); -- Übergabe für diesen Status war erfolgreich, aber in der falschen Reihenfolge INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:19:19'}, '30018523756', 0, 'VL', 'SCN', 0, '123', 'B00029731D'); -- Übergabe für diesen Status war erfolgreich INSERT INTO "17064zonsius"."dbo"."tbStatusverlauf" ( SendungsID, FreeTexte, StDatumZeit, SendungsIDPLW, UebergebenPLW, NoteGroup, NoteType, AnzUebergaben, PruefungTMS, Barcode, CustomerName) VALUES ( 123, 'XML HINWEIS TEST', {ts '2018-01-12 11:20:19'}, '30018523756', 0, 'POD', 'POD', 0, '123', null, 'test Customer Name'); Eine Reihenfolge, die auch klappen soll (s.Mail von Hr. Grewe vom 18.12.2017), ich habe es aber nicht getestet: * VU/SCN mit Barcode * DIS/DAM mit Text zu Beschädigung * VL/SCN mit Barcode * POD/POD ohne Barcode ===== Misc ===== ==== Schätzung ==== 10 Tage, см. мыло Рольфу от 24.06.2017 Datenstrukturen 1 Tag DB-Schnittstelle 2 Tage API Requests 6x1 = 6 Tage + 1 Tag Puffer = 10 Tage = 5 Tausend Euro ==== Status-Reset ==== Status-Reset kann notwendig sein, wenn man die Statusübergabe-Tests macht. -- auftrags id = 56 update tbStatusverlauf set UebergebenPLW=0, AnzUebergaben=0 where VerlaufsID=56; ==== Misc ==== { "Manifest": { "Date": "2017-10-13", "Time": "11:40:00", "Confirm": "no", "Depot": { "Account": [ { "Consignment": [ { "Type": "D", "ImportID": "123", "Number": "Con123", "Reference": "CustomerRef1", "Lifts": "3", "Weight": "147", "Handball": "true", "TailLift": "false", "Insurance": "1300", "BookInRequest": "true", "BookInInstructions": "This is booking in information for Con123.", "ManifestNote": "Special Instructions are placed here", "CollectionDate": "2017-02-01", "DeliveryDate": "2017-12-03", "DeliveryTime": "23:59:59", "Service": { "Type": "Collection", "Code": "B", "Surcharge": "N" }, "Address": [ { "Type": "Delivery", "ContactName": "Nick James", "Telephone": "447777123457", "Fax": "+441543000000", "CompanyName": "A Good Company Ltd", "Line": [ "1 Long Road", "Large District" ], "Town": "Lichfield", "County": "Staffordshire", "PostCode": "WS13 8NE", "Country": "GB" } ], "BillUnit": [ { "Type": "FP", "Amount": "3" }, { "Type": "HP", "Amount": "2" }, { "Type": "QP", "Amount": "1" } ], "NotificationSet": { "SysGroup": [ "1", "3" ], "SMSNumber": "+447527532415", "Email": [ "user1@palletways.com" ] }, "Product": [ { "LineNo": "1", "Description": "Screws", "Quantity": "6000", "Code": "HX120" }, { "LineNo": "2", "Description": "Nails", "Quantity": "5000", "Code": "Nail1", "Batch": "Bat.001" } ] } ] } ] } } }