Benachrichtigungen
Alles entfernen

ZEN Cart Connector

27 Beiträge
3 Benutzer
0 Reactions
1,555 Aufrufe
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter   [#301]

Hallo

Verwendet hier irgendwer ZenCart als ShopSoftware?

Ja? Ich suche Betatester für mein "fakturama_connector" Script

Sollte wer Interesse haben, bitte Melden.

lg Chris

connector download version vom 2.2.2014
changes
* code cleanup
* fix empty contact id (change cid -> id)
* change $check_orders_query from .... AND (o.orders_status = '1' " .... to .... AND (o.orders_status > '0' "
* do status update without statusmessage must exist

Aktueller Connector download



   
Zitat
(@Nobbi)
Eminent Member
Beigetreten: vor 13 Jahren
Beiträge: 29
 

Hi,

wir verwenden momentan Zencart 1.3.9h DE und wenn der Server mitspielt irgendwann 1.5...
und sind auf der Suche nach einen WaWi mit Inventurmodul
Das Fakturama wäre auch sehr interessant, wenn es connectierbar wäre.

Gruß
Nobbi



   
AntwortZitat
(@Nobbi)
Eminent Member
Beigetreten: vor 13 Jahren
Beiträge: 29
 

Jetzt bin ich auch hier registriert 😉
und per PM oder eMail zu erreichen

Gruß
Nobbi



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

Hallo

Ich hoffe ich darf das.

Hier der Link zum Connector.
Bitte mal Testen, ich verwende ZenCat 1.5.1

zencart_connector

lg Chris



   
AntwortZitat
(@Nobbi)
Eminent Member
Beigetreten: vor 13 Jahren
Beiträge: 29
 

der erste Test ging bei mir schief ...
aber dann ...

habe ".DB_PREFIX." vor den Tabellen eingefügt
und in der Zeile 763

countries ON (countries.countries_id = '" . STORE_COUNTRY . "')

verbessert durch

countries countries ON (countries.countries_id = '" . STORE_COUNTRY . "')

z.B.

$configuration_query = "SELECT configuration_key AS cfgKey, configuration_value AS cfgValue FROM ".DB_PREFIX."configuration";

oder

...
	FROM
	".DB_PREFIX."products_description prod_desc
	LEFT JOIN 
	".DB_PREFIX."products prod ON (prod.products_id = prod_desc.products_id)
	LEFT JOIN
	".DB_PREFIX."languages langu ON (langu.languages_id = prod_desc.language_id)
	LEFT JOIN 
	".DB_PREFIX."products_to_categories prod_cat ON (prod_cat.products_id = prod.products_id)
	LEFT JOIN 
	".DB_PREFIX."categories_description cat_desc ON (prod_cat.categories_id = cat_desc.categories_id) AND (cat_desc.language_id = langu.languages_id )
	LEFT JOIN
	".DB_PREFIX."countries countries ON (countries.countries_id = '" . STORE_COUNTRY . "')
	LEFT JOIN 
	".DB_PREFIX."zones_to_geo_zones z2geozones ON (countries.countries_id = z2geozones.zone_country_id)
	LEFT JOIN 
	".DB_PREFIX."tax_rates tax ON (prod.products_tax_class_id = tax.tax_class_id) AND (z2geozones.geo_zone_id = tax.tax_zone_id)
	" . $vpe_query_string_B . "
...

Jetzt versuche ich die Bilder zu erwischen ...

Zeile 64:

// set php_self in the local scope
// $PHP_SELF = (isset ($HTTP_SERVER_VARS['PHP_SELF']) ? $HTTP_SERVER_VARS['PHP_SELF'] : $HTTP_SERVER_VARS['SCRIPT_NAME']); // old php version
$PHP_SELF = $_SERVER['PHP_SELF'];
$servername = (isset ($_SERVER['HTTPS']) ? "https://".$_SERVER['SERVER_NAME'] : "http://".$_SERVER['SERVER_NAME']);

Zeile 801:

echo (" ".rawurlencode(my_encrypt ($servername.$imagepath.$products->fields['products_image'])) . "
");

geht noch nicht so recht ...
bekomme zwar im XML

https%3A%2F%2FDOMAIN.de%2Fwebshop%2Fimages%2Fartikel%2F9255063.jpg

aber das Bild wird noch nicht in Fakturama geladen, müsste also noch manuell syncronisiert werden.

Gruß
Nobbi
Vielen Dank
Gruß Nobbi



   
AntwortZitat
(@moped)
Mitglied Registered
Beigetreten: vor 14 Jahren
Beiträge: 648
 

Warum wendest du rawurlencode() auf den kompletten Bildpfad an?
Der müsste doch vorher schon valide sein ($servername.$imagepath).
Zur Not nur auf $products->fields['products_image'], oder habe ich nen Denkfehler?



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

moped Wrote:
-------------------------------------------------------
> Warum wendest du rawurlencode() auf den kompletten
> Bildpfad an?
> Der müsste doch vorher schon valide sein
> ($servername.$imagepath).
> Zur Not nur auf
> $products->fields['products_image'], oder habe ich
> nen Denkfehler?
Hi

In meinen Code gibt es ja auch nur

echo (" " . rawurlencode(my_encrypt ($products->fields['products_image'])) . "
");

rawurlencode wegen der möglichen leerzeichen in den Dateinamen.
Die werden sonst nicht geladen

@Nobbi
Es darf hier nur der Imagename stehen ohne $servername.$imagepath.

Die Bilder werden bei mir geladen.
Fakturama 1.6.3
ZenCart 1.5.1 Deutsch

lg Chris



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

Servus

Nobbi Wrote:
-------------------------------------------------------
> der erste Test ging bei mir schief ...
> aber dann ...
>
> habe ".DB_PREFIX." vor den Tabellen eingefügt
> und in der Zeile 763

Ja richtig, ich wollte da auch die Constanten für die Tabellennamen eintragen.
Kommt in der nächsten ....

>
> countries ON (countries.countries_id = '" .
> STORE_COUNTRY . "')
>
>
> verbessert durch
>
> countries countries ON (countries.countries_id =
> '" . STORE_COUNTRY . "')

Was bewirkt das?

>
>
>
>
> z.B.
>
>
> $configuration_query = "SELECT configuration_key
> AS cfgKey, configuration_value AS cfgValue FROM
> ".DB_PREFIX."configuration";
>
>
>
> oder
>
>
> ...
> FROM
> ".DB_PREFIX."products_description prod_desc
> LEFT JOIN
> ".DB_PREFIX."products prod ON (prod.products_id =
> prod_desc.products_id)
> LEFT JOIN
> ".DB_PREFIX."languages langu ON
> (langu.languages_id = prod_desc.language_id)
> LEFT JOIN
> ".DB_PREFIX."products_to_categories prod_cat ON
> (prod_cat.products_id = prod.products_id)
> LEFT JOIN
> ".DB_PREFIX."categories_description cat_desc ON
> (prod_cat.categories_id = cat_desc.categories_id)
> AND (cat_desc.language_id = langu.languages_id
> )
> LEFT JOIN
> ".DB_PREFIX."countries countries ON
> (countries.countries_id = '" . STORE_COUNTRY .
> "')
> LEFT JOIN
> ".DB_PREFIX."zones_to_geo_zones z2geozones ON
> (countries.countries_id =
> z2geozones.zone_country_id)
> LEFT JOIN
> ".DB_PREFIX."tax_rates tax ON
> (prod.products_tax_class_id = tax.tax_class_id)
> AND (z2geozones.geo_zone_id = tax.tax_zone_id)
> " . $vpe_query_string_B . "
> ...
>
>
>
>
> Jetzt versuche ich die Bilder zu erwischen ...
>
>
> Zeile 64:
>
>
> // set php_self in the local scope
> // $PHP_SELF = (isset
> ($HTTP_SERVER_VARS['PHP_SELF']) ?
> $HTTP_SERVER_VARS['PHP_SELF'] :
> $HTTP_SERVER_VARS['SCRIPT_NAME']); // old php
> version
> $PHP_SELF = $_SERVER['PHP_SELF'];
> $servername = (isset ($_SERVER['HTTPS']) ?
> "https://".$_SERVER['SERVER_NAME'] :
> "http://".$_SERVER['SERVER_NAME']);
>
>
>
> Zeile 801:
>
>
> echo (" ".rawurlencode(my_encrypt
> ($servername.$imagepath.$products->fields['product
> s_image'])) . "
");
>
>
> geht noch nicht so recht ...
> bekomme zwar im XML
>
>
> https%3A%2F%2FDOMAIN.de%2Fwebshop%2Fimages%2Fartik
> el%2F9255063.jpg

Hier darf nicht der komplette URL stehen, warum hast Du das geändert?

NUR_DER_IMAGE_NAME

>
>
> aber das Bild wird noch nicht in Fakturama
> geladen, müsste also noch manuell syncronisiert
> werden.
>
> Gruß
> Nobbi
> Vielen Dank
> Gruß Nobbi

lg Chris



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

Hi

Habe den Code aktuallisiert. Downloadlink im ersten Posting.

* Tabellennamen wurde durch die Konstanten aus database_tables.php ersetzt
* rawurlencode wurde durch str_replace ersetzt. Es geht ja nur um die leerzeichen im imagenamen
* fix countries query .TABLE_COUNTRIES. " countries ON ..."

lg Chris



   
AntwortZitat
(@Nobbi)
Eminent Member
Beigetreten: vor 13 Jahren
Beiträge: 29
 

sodele ...

mit der neuen Version funktionieren die Basisdaten und die Bilder.
Wo ich jetzt noch die Probleme habe ...

1. die MwSt. wurden alle mit 0% Steuerfrei importiert anstelle von 19%
das könnte aber daran liegen, daas die ID 1 im Fakturama 0% Steuerfrei ist und als Standardwert definiert wurde

2. Die Preise stimmen nicht
z.B. Netto 54,62 € Brutto 64,99.. €
In einer Rechnung steht: E-Preis 64,99.. € Preis 65,00 €
In den Einstellungen habe ich: Produkte Netto und Brutto
In Zencart: Netto: 54.6218 Brutto: 64.9999

Vielen lieben Dank schon mal an dieser Stelle ...
Morgen gehts weiter 😉

Gruß
Nobbi



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

Hi

Das ist interessant. Bei mir wird sowohl der Preis als auch die Steuer richtig übernommen.

Wie sind Deine Preise definiert? Attributpreise werden vom Script noch nicht unterstützt, das könnte evtl. ein Grund sein.

An der Zencart Version wird es ja hoffentlich nicht liegen.

lg Chris



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

ckvsoft Wrote:
-------------------------------------------------------
> Attributpreise werden vom Script noch nicht unterstützt

Berichtigung:

Vom Script wird es zwar im Attribut des Produktes verarbeitet jedoch von Fakturama
beim Import nicht berücksichtigt. Hier werden die Attribute lediglich zu der Beschreibung hinzugefügt.

Hoffe das wird in Fakturama behoben.

Habe im Bugtracker einen Bugeintrag gemacht.
Bugreport

lg Chris



   
AntwortZitat
(@Nobbi)
Eminent Member
Beigetreten: vor 13 Jahren
Beiträge: 29
 

Preis durch Attribute festgelegt: Nein
(Ich musste erst mal nachsehen was das ist 😉 wir verwenden nur Stückpreise)

Ich denke da gibt es ein Rundungsproblem im Fakturama
"In einer Rechnung steht: E-Preis 64,99.. € Preis 65,00 € "

die beiden Punkte beim E-Preis deuten darauf hin,
vielleicht könntest du den Bug im Bugtracker damit noch erweitern.


bzgl. der MwSt ... kannst du da eine Aussage treffen oder soll ich mal alles durchforsten und testen?
Wir haben 19%, 7% und 0% Artikel ... wäre also blöd, wenn ich jedesmal überprüfen muss ob richtig geladen wurde.


Mir ist noch aufgefallen, das Kundendaten und Bestellungen nicht übernommen werden.
Habe jetzt aber keine Zeit das Script noch einmal näher anzusehen und gestern hatte ich meine Augen woanders 😉

Die Lieblingsspeise der Computer ist die Zeit und Zeit ist Geld und das muss ich erst verdienen.
Wenn ich Zeit habe kommt ZenCart 1.5 ... dann habe ich vielleicht die Möglichkeit Bruttopreise besser einzugeben.

Lieben Dank
Gruß
Nobbi



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

Nobbi Wrote:
-------------------------------------------------------
> 1. die MwSt. wurden alle mit 0% Steuerfrei
> importiert anstelle von 19%
> das könnte aber daran liegen, daas die ID 1 im
> Fakturama 0% Steuerfrei ist und als Standardwert
> definiert wurde

Das werd ich mal checken

>
> 2. Die Preise stimmen nicht
> z.B. Netto 54,62 € Brutto 64,99.. €
> In einer Rechnung steht: E-Preis 64,99.. € Preis
> 65,00 €
> In den Einstellungen habe ich: Produkte Netto und
> Brutto
> In Zencart: Netto: 54.6218 Brutto: 64.9999

Das muss Du mir jetzt erklären. Wo steht jetzt was?

Auf einer Rechnung steht sicher nie 64,9999.- Das kann ja nicht bezahlt werden somit wird kaufmännisch gerunded. Hast bei jeder Tankstelle so.

Möge man mich belehren wenn es nicht so sein sollte.

>
>
> Vielen lieben Dank schon mal an dieser Stelle ...
> Morgen gehts weiter 😉

Bitte

>
> Gruß
> Nobbi

lg Chris



   
AntwortZitat
(@ckvsoft)
Mitglied Registered
Beigetreten: vor 15 Jahren
Beiträge: 117
Topic starter  

Nobbi Wrote:
-------------------------------------------------------
> Preis durch Attribute festgelegt: Nein
> (Ich musste erst mal nachsehen was das ist 😉 wir
> verwenden nur Stückpreise)
>
> Ich denke da gibt es ein Rundungsproblem im
> Fakturama
> "In einer Rechnung steht: E-Preis 64,99.. €
> Preis 65,00 € "

Ich hab das mal versuch nachzustellen. Hier werden unterschiedliche Steuersätze richtig verwendet und in der Rechnung steht der gleiche Betrag wie im OnlineShop.

>
> die beiden Punkte beim E-Preis deuten darauf hin,

Die .. hinter den Zahlen stehen für weitere Kommastellen für die Berechnung.

> vielleicht könntest du den Bug im Bugtracker
> damit noch erweitern.
>
>
>
> bzgl. der MwSt ... kannst du da eine Aussage
> treffen oder soll ich mal alles durchforsten und
> testen?
> Wir haben 19%, 7% und 0% Artikel ... wäre also
> blöd, wenn ich jedesmal überprüfen muss ob
> richtig geladen wurde.

Hab ich getestet. Allerdings wie schon weiter oben gesagt mit 1.5.1 und hier
scheint es zu funktionieren. Wir haben 0% 10% und 20% Steuern

>
>
>
> Mir ist noch aufgefallen, das Kundendaten und
> Bestellungen nicht übernommen werden.

Kannst Du dazu ein Bespiel bringen. Steht es in der XML Datei drinnen oder schon da nicht?

> Habe jetzt aber keine Zeit das Script noch einmal
> näher anzusehen und gestern hatte ich meine Augen
> woanders 😉
>
> Die Lieblingsspeise der Computer ist die Zeit und
> Zeit ist Geld und das muss ich erst verdienen.
> Wenn ich Zeit habe kommt ZenCart 1.5 ... dann habe
> ich vielleicht die Möglichkeit Bruttopreise
> besser einzugeben.

Ich gebe auch in 1.5.1 Nettopreise ein.

>
>
> Lieben Dank
> Gruß
> Nobbi

lg Chris



   
AntwortZitat
Seite 1 / 2
Teilen: