Unvollständige Datenübertragung zwischen CAO und OSC

Gesperrt

Unvollständige Datenübertragung zwischen CAO und OSC

Hallo,

(Skript und CAO Version sh. Profilinformartionen)
Der osCommerce Shop ist ein 2.2ms2-060817.

Ich habe das Problem, dass die Daten von Bestellungen und Adressen / Kunden nicht vollständig übertragen werden.
Folgende Felder bleiben leer:
- "Bestellt durch" wird nur mit einem Komma gefüllt
- "Termin" wird mit zwei Punkten gefüllt
- "Versand" und "Zahlart" werden nicht übertragen.
- "Name1" wird mit Firmennamen gefüllt
- "Name2" wird nicht übertragen (sollte Vorname sein)
- "Name3" wird nicht übertragen (sollte Nachname sein)
- Lieferadresse wird nicht übertragen
Vielleicht gibt es eine einfache Lösung für das Problem... Die Forensuche hat mir nicht weitergeholfen. Ich würde auch gerne das Importskript nochmal installieren, weiß aber nicht mehr, wo ich dieses herunterladen kann.

Vielen Dank für Eure Hilfe!

Re: Unvollständige Datenübertragung zwischen CAO und OSC

Ruf das Script im Browser auf. Also das was im Shopsetup steht http://example.com/export/script.php

Dort gehst du auf (Ausgabe XML-Orders). Ist dort alles korrekt ?
Gruß Chris
"Derjenige, der sagt: "Es geht nicht", soll den nicht stören, der's gerade tut."

Re: Unvollständige Datenübertragung zwischen CAO und OSC

Code: Alles auswählen

<ORDER>
<ORDER_INFO>
<ORDER_HEADER>
<ORDER_ID>30</ORDER_ID>
<CUSTOMER_ID>17</CUSTOMER_ID>
<ORDER_DATE>2014-07-21 18:42:14</ORDER_DATE>
<ORDER_STATUS>1</ORDER_STATUS>
<ORDER_CURRENCY>EUR</ORDER_CURRENCY>
<ORDER_CURRENCY_VALUE>1.000000</ORDER_CURRENCY_VALUE>
</ORDER_HEADER>
<BILLING_ADDRESS>
<COMPANY/>
<FIRSTNAME/>
<LASTNAME/>
<NAME>VornameÄÖÜäöüß NachnameAÖÜäöüß</NAME>
<STREET>StraßeÄÖÜäöü Nr. 13</STREET>
<POSTCODE>12345</POSTCODE>
<CITY>OrtÄÖÜäöüß</CITY>
<SUBURB/>
<STATE/>
<COUNTRY/>
<TELEPHONE>0911-12345</TELEPHONE>
<EMAIL>Vornamemitumlauten@greenkat.de</EMAIL>
<BIRTHDAY>1982-02-10 00:00:00</BIRTHDAY>
<GENDER>m</GENDER>
</BILLING_ADDRESS>
<DELIVERY_ADDRESS>
<COMPANY>Firmenname (Versandadresse)</COMPANY>
<FIRSTNAME/>
<LASTNAME/>
<NAME>Vorname (Versandadresse) Nachname (Versandadresse)</NAME>
<STREET>Straße, Nr. (Versandadresse)</STREET>
<POSTCODE>Postleitza</POSTCODE>
<CITY>Ort (Versandadresse)</CITY>
<SUBURB/>
<STATE/>
<COUNTRY/>
</DELIVERY_ADDRESS>
<PAYMENT>
<PAYMENT_METHOD>Scheck/Vorkasse</PAYMENT_METHOD>
<PAYMENT_CLASS/>
</PAYMENT>
<SHIPPING>
<SHIPPING_METHOD/>
<SHIPPING_CLASS/>
</SHIPPING>
<ORDER_PRODUCTS>
<PRODUCT>
<PRODUCTS_ID>30</PRODUCTS_ID>
<PRODUCTS_QUANTITY>1</PRODUCTS_QUANTITY>
<PRODUCTS_MODEL>031622</PRODUCTS_MODEL>
<PRODUCTS_NAME>OMNITRONIC E-200 Endstufe</PRODUCTS_NAME>
<PRODUCTS_PRICE>872.5042</PRODUCTS_PRICE>
<PRODUCTS_TAX>19.0000</PRODUCTS_TAX>
</PRODUCT>
</ORDER_PRODUCTS>
<ORDER_TOTAL>
<TOTAL>
<TOTAL_TITLE>Zwischensumme:</TOTAL_TITLE>
<TOTAL_VALUE>1038.2800</TOTAL_VALUE>
<TOTAL_CLASS>ot_subtotal</TOTAL_CLASS>
<TOTAL_SORT_ORDER>1</TOTAL_SORT_ORDER>
<TOTAL_PREFIX/>
<TOTAL_TAX/>
</TOTAL>
<TOTAL>
<TOTAL_TITLE>Versandkosten:</TOTAL_TITLE>
<TOTAL_VALUE>0.0000</TOTAL_VALUE>
<TOTAL_CLASS>ot_shipping</TOTAL_CLASS>
<TOTAL_SORT_ORDER>2</TOTAL_SORT_ORDER>
<TOTAL_PREFIX>+</TOTAL_PREFIX>
<TOTAL_TAX>19</TOTAL_TAX>
</TOTAL>
<TOTAL>
<TOTAL_TITLE>19% MWSt.:</TOTAL_TITLE>
<TOTAL_VALUE>165.7758</TOTAL_VALUE>
<TOTAL_CLASS>ot_tax</TOTAL_CLASS>
<TOTAL_SORT_ORDER>3</TOTAL_SORT_ORDER>
<TOTAL_PREFIX/>
<TOTAL_TAX/>
</TOTAL>
<TOTAL>
<TOTAL_TITLE><b>Summe</b>:</TOTAL_TITLE>
<TOTAL_VALUE>1038.2800</TOTAL_VALUE>
<TOTAL_CLASS>ot_total</TOTAL_CLASS>
<TOTAL_SORT_ORDER>5</TOTAL_SORT_ORDER>
<TOTAL_PREFIX/>
<TOTAL_TAX/>
</TOTAL>
</ORDER_TOTAL>
<ORDER_COMMENTS>Bemerkung zur Bestellung</ORDER_COMMENTS>
</ORDER_INFO>
</ORDER>
Also, es ist offenbar so, dass die meisten Daten, die CAO nicht übernimmt schon in der XML Ausgabe stehen.

Kundenadresse (=Rechnungsadresse)
- Name wird allerdings zusammengesetzt aus Vor- und Nachname, anstatt dass dieser in die korrekten Felder eingetragen wird.
- Das Land wird schon vom Skript nicht exportiert, obwohl im Shop obligatorisch anzugeben
Lieferadresse
- verhält sich komplett genauso wie Kundenadresse. Es wird in CAO garnichts davon übernommen
restliche Felder
- Zahlart wird vom Skript ausgegeben, aber von CAO nicht übernommen
- Versandart wird nicht vom Skript ausgegeben, obwohl im Shop angegeben
Den korrekten Import von Versandkosten, Steuer, ggf. Mindermengenzuschlag, Nachnahmegebühr etc. habe ich noch nicht abschließend getestet. Da diese Bestellung >500,- € liegt ist sie nach den Shop-Einstellungen Versandkostenfrei. Dies funktioniert demnach schon mal.

Was den Export von Artikeln CAO --> Shop angeht (andersherum ist für mich uninteressant) funktioniert bisher scheinbar einwandfrei. Ebenso werden Bestellstatus Updates CAO --> Shop bei Update übertragen.

Für mich sieht das ein wenig so aus, als würde das Skript weder zur aktuellen CAO Version noch zum osC 2.2ms2-060817 richtig passen.

Deshalb nochmals meine Frage: Gibt es irgendwo aktuelle Skript Versionen für die o.g. Kombination?

Ich kann leider nichts eindeutiges finden.

Vielen Dank für die Hilfe!

Re: Unvollständige Datenübertragung zwischen CAO und OSC

Habe nun durch Zufall einen Menüpunkt "MySQL-Tabellen aktualisieren" gefunden, der folgendes ausgibt:

Code: Alles auswählen

Tabellen-Update / Erweiterung f�r CAO-Faktura
Version 1.53 Stand : 2006.08.15
SQL: ALTER TABLE orders ADD payment_class VARCHAR(32) NOT NULL
Ergebnis : OK

SQL: ALTER TABLE orders ADD shipping_method VARCHAR(32) NOT NULL
Ergebnis : OK

SQL: ALTER TABLE orders ADD shipping_class VARCHAR(32) NOT NULL
Ergebnis : OK

SQL: ALTER TABLE orders ADD billing_country_iso_code_2 CHAR(2) NOT NULL AFTER billing_country
Ergebnis : OK

SQL: ALTER TABLE orders ADD delivery_country_iso_code_2 CHAR(2) NOT NULL AFTER delivery_country
Ergebnis : OK

SQL: ALTER TABLE orders ADD billing_firstname VARCHAR(32) NOT NULL AFTER billing_name
Ergebnis : OK

SQL: ALTER TABLE orders ADD billing_lastname VARCHAR(32) NOT NULL AFTER billing_firstname
Ergebnis : OK

SQL: ALTER TABLE orders ADD delivery_firstname VARCHAR(32) NOT NULL AFTER delivery_name
Ergebnis : OK

SQL: ALTER TABLE orders ADD delivery_lastname VARCHAR(32) NOT NULL AFTER delivery_firstname
Ergebnis : OK

SQL: ALTER TABLE orders CHANGE payment_method payment_method VARCHAR(255) NOT NULL
Ergebnis : OK

SQL: ALTER TABLE orders CHANGE shipping_method shipping_method VARCHAR(255) NOT NULL
Ergebnis : OK

SQL: CREATE TABLE cao_log ( id int(11) NOT NULL auto_increment, date datetime NOT NULL default "0000-00-00 00:00:00",user varchar(64) NOT NULL default "", pw varchar(64) NOT NULL default "", method varchar(64) NOT NULL default "",action varchar(64) NOT NULL default "", post_data mediumtext, get_data mediumtext, PRIMARY KEY (id))
Ergebnis : OK
Nachdem jetzt offenbar etwas an der Datenbank verändert wurde, wird nun zumindest die Lieferadresse übertragen.

Das Namensproblem bleibt scheinbar.

Versand- und Zahlart werden nach wie vor nicht übernommen.

Ich werde jetzt noch einmal die Testkunden löschen und neu anlegen und noch ein paar Testbestellungen machen. Eventuell wird ja richtig übertragen, wenn die Kunden / Bestellungen mit bereits geänderter Datebnbank angelegt / getätigt werden.

Re: Unvollständige Datenübertragung zwischen CAO und OSC

So, wie schon gesagt nochmal getestet.

- angelegte Shop-Kunden gelöscht (in CAO)
- Shop Update (Kunden gelöscht)
- verbleibende Nicht-Shop-Kunden Adresse gelöscht in CAO (falls verfügbar)
- Bestellungen gelöscht (im Shop)
- erstellte Belege gelöscht (in CAO)

Beim einlesen eines neu angelegten Kunden werden in Shop Transfer unter dem Reiter "Kunden" --> "Einlesen" nun Vor- und Nachname angezeigt. Importiere ich die Adresse einzeln (ohne bestellung) bleiben die Felder in CAO wie oben beschrieben leer.

Beim Einlesen von Bestellungen hat sich nichts verändert. Wie oben beschrieben "Name" nur mit einem Komma gefüllt, Firmenname wird als Name 1 übertragen, Name 2 und 3 bleiben leer. Land wird nicht übertragen, Lieferart und Zahlart werden nicht übertragen.

Die Versandadresse wird im erstellten Beleg nun angezeigt, die fehlenden Felder (s.o.) sind die gleichen.

Re: Unvollständige Datenübertragung zwischen CAO und OSC

In diesem Thread wird die Installation der CAO - OSC Anbindung detailliert beschrieben. Es sind offenbar Änderungen an Shop Dateien erforderlich. Nachdem unser Shop neu aufgesetzt wurde, kann es sein, dass diverse Modifikationen untergegangen sind bzw. schlichtweg vergessen wurden. Dies wird nun anhand der Anleitung überprüft - Ergebnisse werde ich posten.

Einen Link für das Original-Skript habe ich leider immer noch nicht gefunden. Deshalb werde ich versuchen, erst einmal die vorhandene Installation zum Laufen zu bekommen...

Re: Unvollständige Datenübertragung zwischen CAO und OSC

Da es scheinbar zwischen Schnittstelle<->Uralte Shopsoftware<->CAO zu massiven Problemen kommt - Warum nicht auf ein anderes Shopsystem umsteigen ?

P.S Ist wirklich nur eine Frage, nicht böse gemeint.
Gruß Chris
"Derjenige, der sagt: "Es geht nicht", soll den nicht stören, der's gerade tut."

Re: Unvollständige Datenübertragung zwischen CAO und OSC

Also, es bleibt alles beim Alten. Vorname, Nachname, Land, Zahlungs- und Versandart werden nicht übernommen.

@hh-cm:
Weil bereits sehr viel Arbeit in den Shop geflossen ist und bis auf die CAO Anbindung alles hervorragend funktioniert und meinen Vorstellungen entsprechend aussieht. Neue Shopsoftware = Neue Probleme, neue Prozesse, neues Design, neue Modifikationen erforderlich, neuer Test, erneute rechtliche Prüfung, erneute Kosten, alles von vorn. Diese "Lösung" ist demnach (zum derzeitigen Projektstand) völlig indiskutabel.

Re: Unvollständige Datenübertragung zwischen CAO und OSC

So, um alle auf dem aktuellen Stand zu halten:

Es lag daran, dass ich beim ftp upload der geänderten Datei checkout_process.php offenbar im FTP client fehlerhafte Einstellungen zum überschreiben existierender Dateien gemacht habe. Die Änderungen wurden nicht auf den Server übertragen. Mit geänderter checkout_process.php jetzt folgende Fortschritte:

es werden nun alle Daten übertragen außer:
- Faxnummer (damit kann ich erst mal leben)
- Versandart
- Zahlungsweise.

Letztere Fehler könnten auch an fehlerhaften / abweichenden Einstellungen in CAO und / oder dem Webshop liegen. Ich werde dies noch überprüfen und Ergebnisse posten.

Außerdem habe eine aktuellere Skript Version gefunden (1.55). Diese gibt es hier zum Download. Diese ist allerdings offenbar für osCommerce v2.2 RC2a, deshalb nur zur Information.

Re: Unvollständige Datenübertragung zwischen CAO und OSC

So,

Probleme mit der Liefer- und Versandart gibt es nicht. Dies waren einfach fehlerhafte Einstellungen im CAO.

Kleine Anleitung für die Zuweisungen in den CAO-Shopeinstellungen:

Einfach die URL des Importskripts im Browser aufrufen und über
--> Ausgabe XML Orders
die Bestellungen ausgeben lassen. Interessant ist hier Dieser Absatz im ausgegebenen Code:

Code: Alles auswählen

<PAYMENT>
     <PAYMENT_METHOD>
          Scheck/Vorkasse
     </PAYMENT_METHOD>
     <PAYMENT_CLASS>
          moneyorder
     </PAYMENT_CLASS>
</PAYMENT>
<SHIPPING>
     <SHIPPING_METHOD>
          Versandkosten
     </SHIPPING_METHOD>
     <SHIPPING_CLASS>
          free
     </SHIPPING_CLASS>
</SHIPPING>
Für die Liefer- bzw. Zahlungsart, die in CAO beim Bestellimport nicht übernommen wird, einfach nachsehen, was unter <PAYMENT_CLASS> bzw. <SHIPPING_CLASS> steht.
Hier ist das "moneyorder" und "free".

Nun unter CAO-->Shopeinstellungen im Reiter "Lieferart" bzw. "Zahlart" zur jeweiligen "Shop Klasse" (das ist nichts weiter als die Shopseitige Definition der Versand- bzw. Zahlart) eine entsprechende CAO Zahl- bzw. Lieferart auswählen. Bei mir waren schon Datensätze vorhanden und zwar

Für Zahlungsweise:
FALSE - moneyorder

Für Versandart:
FALSE - free

Diese Datensätze habe ich gelöscht und folgende neu angelegt:

Für Zahlungsweise:
Vorkasse - moneyorder

Für Versandart:
frei Haus - free

Die CAO-seitigen Zuweisungen müssen im Dropdown Menü ausgewählt werden. Wenn hier neue angelegt werden sollen geht dies über Zahlungs- und Lieferarten in den allgemeinen Einstellungen.

Re: Unvollständige Datenübertragung zwischen CAO und OSC

Nachdem ich das Thema leider nicht editieren kann - bitte als gelöst markieren und schließen, danke.