DHL Geschäftskundenportal / DHL Shipment PollingClient / CSV

Antworten

DHL Geschäftskundenportal / DHL Shipment PollingClient / CSV

Hallo,

Unser Österreich-Importeur nutzt noch 1.4.5.7 und werden auch so schnell nicht auf 1.5 umstellen... (never change a running system usw. :-))

er nutzt wir für den Paketversand EasyPak von der Österreichischen Post (quasi baugleich Easlog von der DHL).
Er erstellt für jeden Kunden einen Lieferschein, CAO bastelt eine CSV, die CSV wird von EasyPak gesucht (Polling), eingelesen, weiterverarbeitet und gelöscht.
Funktioniert seit Jahren perfekt für ihn!

Jetzt stellt die Post (verpflichtend) von EasyPak auf "Post Label Center" um.
Dort könnte man z.B. eine Sendungsliste hochladen oder händisch Labels erstellen ssw... - also keine Option....
Er brauchen das weitestgehende automatisert (bei ca.20.000 - 25.000 Paketen pro Jahr)

Um nicht alle Kunden zu verprellen hat die Post jetzt einen "Pollingclient" (OnDotPrintin) ins leben gerufen, welcher ebenfalls an einem definierten Pfad nach der CSV-Datei sucht.
Diese wird dann eingelesen und ins "Post Label Center" übertragen.
Soweit die Theorie....

In der Praxis ist das ein wenig schwieriger:
Im EasyPak konnte man noch eine CSV einlesen, ein Profil erstellen und die Werte in der CSV dann den "EasyPakfeldern" zuordnen.
Felder, welche CAO nicht lieferte konnte man fest auf einen definierten "Textwert" einstellen...

Leider hat man das bei dem neuen tollen Programm wohl vergessen....
Jetzt gibt es nur noch ein paar fest definierte CSV-Formate unter denen man auswählen kann.

Und nun kommt das Problem:

Wie soll ich CAO klar machen, das es z.B. als dritten Wert in der CSV immer die "004" (z.B. für das Post-Produkt "Zerbrechlich") vergeben soll, dann brauch ich z.B. 8 Semikolone in folge, da hier keine Werte übergeben werden....
also z.B.:

Name1;Name2;Name3;004;;;;;;;;Strasse;PLZ;ORT;;;;;;;;0310;;;

Die Deutsche Post macht das übrigens genau so.... Dort wird auch das funktionierende "EasyLog" durch ein nicht funktionierendes "Geschäftskundenportal" mit "Pollingclient" abgelöst....
Allerdings kann man sich dort wenigstens online seine CSV-Profile zusammenstellen...

Lieben Gruß
Felix

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

@Moderator bitte den Betreff abändern in: EasyPak/Easylog CSV-Export bei Lieferscheinerstellung

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

hier noch die Schnittstellenbeschreibung von der Österreichischen Post.

Für uns kommen nur die "Ports":
- SchenkerPostPort
- UltimatePostPort

in Frage, da wir das Feld "Paketanzahl" benötigen....

Lieben Gruß
Felix
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

Wie soll ich CAO klar machen, das es z.B. als dritten Wert in der CSV immer die "004" (z.B. für das Post-Produkt "Zerbrechlich") vergeben soll, dann brauch ich z.B. 8 Semikolone in folge, da hier keine Werte übergeben werden....
Der SQL Befehl der bei der Lieferscheinerstellung eine CSV erzeugt ist der Knackpunkt.

Ein Beispiel

Code: Alles auswählen

SELECT NAME,VORNAME,STRASSE FROM FOOBAR
Bewirkt natürlich, dass NAME,VORNAME,STRASSE aus der Tabelle FOOBAR zurückgegeben wird.

Was macht wohl

Code: Alles auswählen

SELECT NAME,'004' AS PLATZHALTER1, '' AS PLATZHALTER2, VORNAME,STRASSE FROM FOOBAR
Es kommt

NAME;004;;VORNAME;STRASSE

dabei raus.
Ein SQL muss keine direkten Felder beinhalten.

Sorry aber hier hat gerade keiner wirklich Zeit sich mit den Umstellungen und Wünschen der Paketdienstleister zu beschäftigen.
Konkrete Fragen können wir beantworten.
Gruß Chris
"Derjenige, der sagt: "Es geht nicht", soll den nicht stören, der's gerade tut."

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

:-) brauchst dich nicht entschuldigen, ist schon alles was ich benötige :-)
Danke!
Zuletzt geändert von Felix.Merk am Mi 28. Mär 2018, 08:19, insgesamt 1-mal geändert.

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

Super :)
Gruß Chris
"Derjenige, der sagt: "Es geht nicht", soll den nicht stören, der's gerade tut."

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

Funktioniert für mich soweit,
hier mein SQL-Cose zur Orientierung für den sogenannten "SchenkerPostPort" der Österreichischen Post.

Gibt es eine Möglichkeit Straße und Hausnummer mittels SQL zu trennen?

Code: Alles auswählen

'' AS "Sendungsnummer",
'' AS "Absenderreferenz1",
'' AS "Absender.FremdsystemReferenz",
'' AS "Absender.Name1",
'' AS "Absender.Name2",
'' AS "Absender.Name3",
'' AS "Absender.Adresszeile1",
'' AS "Absender.Hausnummer",
'' AS "Absender.Postleitzahl",
'' AS "Absender.Ort",
'' AS "Absender.Land",
'' AS "Empfänger.FremdsystemReferenz",
L.KUN_NAME1 as "Empfänger.Name1",
L.KUN_NAME2 as "Empfänger.Name2",
L.KUN_NAME3 as "Empfänger.Name2",
AD.EMAIL as "Empfänger.Mail",
L.KUN_STRASSE as "Empfänger.Adresszeile1",
'' AS "Empfänger.Hausnummer",
L.KUN_PLZ as "Empfänger.Postleitzahl",
L.KUN_ORT as "Empfänger.Ort",
L.KUN_LAND as "Empfänger.Land",
'31' AS "Produkt",
L.USR1 as "Paketanzahl",
'' AS "Gewicht",
'004' AS "Zusatzleistungen (CSV 2)",
'' AS "Zustellhinweis",
L.KUN_NUM as "KundenID",
'' AS "PrinterShippingNETName",
AD.TELE1 as "Empfänger.Tel",
'' AS "Absender.Tel",
'' AS "Absender.Email",
'' AS "Empfänger.ProvinzIsoCode",
'' AS "Rücksendeweg",
'' AS "Rücksendeoption",
'' AS "Rücksendedauer",
'' AS "Zollbeschreibung",
'' AS "Dokumentenart",
'' AS "Artikelliste"

FROM LIEFERSCHEIN L 

INNER JOIN LIEFERSCHEIN_POS LP on LP.LIEFERSCHEIN_ID=L.REC_ID
left outer JOIN ADRESSEN AD on AD.REC_ID=L.ADDR_ID

WHERE L.REC_ID=:ID
Wenn was falsch oder umständlich ist, wäre ich froh wenn Ihr mir einen Hinweis gebt :-)

Liebe Grüße
Felix

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

Jein. Man könnte die Straße anhand des Leerzeichens splitten. Ist allerdings gefährlich, da z.B "Hans Müller Str. 54" nicht funktionieren würde

SUBSTRING_INDEX(SUBSTRING_INDEX(L.KUN_STRASSE, ' ', 1), ' ', -1) as STRASSE,
SUBSTRING_INDEX(SUBSTRING_INDEX(L.KUN_STRASSE, ' ', 2), ' ', -1) as HAUSNR

In der 1.5 gibt es das Feld STRASSE, HAUSNR und ADRESSZUSATZ welches in einer der nächsten Versionen benutzt werden kann.
Gruß Chris
"Derjenige, der sagt: "Es geht nicht", soll den nicht stören, der's gerade tut."

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

das ist mir zu gefährlich :-)
Die Labels werden auch so übernommen.... sollte also passen...

Code: Alles auswählen

/*
Zusammenstellung für Import in "Post Label Center" der Österreichischen Post mittels "SchenkerPostPort"
*/
'' AS "Sendungsnummer",
'' AS "Absenderreferenz1",
'' AS "Absender.FremdsystemReferenz",
'' AS "Absender.Name1",
'' AS "Absender.Name2",
'' AS "Absender.Name3",
'' AS "Absender.Adresszeile1",
'' AS "Absender.Hausnummer",
'' AS "Absender.Postleitzahl",
'' AS "Absender.Ort",
'' AS "Absender.Land",
L.KUN_NUM AS "Empfänger.FremdsystemReferenz",
L.KUN_NAME1 as "Empfänger.Name1",
L.KUN_NAME2 as "Empfänger.Name2",
L.KUN_NAME3 as "Empfänger.Name2",
AD.EMAIL as "Empfänger.Mail",
L.KUN_STRASSE as "Empfänger.Adresszeile1",
'' AS "Empfänger.Hausnummer",
L.KUN_PLZ as "Empfänger.Postleitzahl",
L.KUN_ORT as "Empfänger.Ort",
L.KUN_LAND as "Empfänger.Land",
'31' AS "Produkt",
L.USR1 as "Paketanzahl",
'' AS "Gewicht",
'004' AS "Zusatzleistungen (CSV 2)",
'' AS "Zustellhinweis",
'' as "KundenID",
'' AS "PrinterShippingNETName",
AD.TELE1 as "Empfänger.Tel",
'' AS "Absender.Tel",
'' AS "Absender.Email",
'' AS "Empfänger.ProvinzIsoCode",
'' AS "Rücksendeweg",
'' AS "Rücksendeoption",
'' AS "Rücksendedauer",
'' AS "Zollbeschreibung",
'' AS "Dokumentenart",
'' AS "Artikelliste"

FROM LIEFERSCHEIN L 

INNER JOIN LIEFERSCHEIN_POS LP on LP.LIEFERSCHEIN_ID=L.REC_ID
left outer JOIN ADRESSEN AD on AD.REC_ID=L.ADDR_ID

WHERE L.REC_ID=:ID
kleine Ergänzung/Änderung im Code

Re: DHL Geschäftskundenportal / DHL Shipment PollingClient /

nochmal eine Zusatzfrage...
Wir "missbrauchen" das Feld Überschrift1 dazu, um die Paketanzahl zu übergeben.
Im Export steht dann z.B. eine 4 in der Spalte Paketanzahl...
Es wird aber pro Lieferschein logischerweise nur eine Zeile mit Werten ausgegeben.

also z.B.:

Code: Alles auswählen

Name;Vorname;Strasse;PLZ;Ort,Paketanzahl
Mayer;Franz,Teststraße 1;88888;Testhausen;4


Ist es irgendwie möglich, wenn wir die "4" da reinschreiben, 4 einzelne Zeilen erstellen zu lassen.
Also 4 mal der Datensatz?

also dann so etwa:

Code: Alles auswählen

Name;Vorname;Strasse;PLZ;Ort,Paketanzahl
Mayer;Franz,Teststraße 1;88888;Testhausen;4
Mayer;Franz,Teststraße 1;88888;Testhausen;4
Mayer;Franz,Teststraße 1;88888;Testhausen;4
Mayer;Franz,Teststraße 1;88888;Testhausen;4
Lieben Gruß
Felix