Wie kann ich Liquid Sync konfigurieren?
Liquid Sync
Liquid Sync synchronisiert Dateien auf dem Computer des Benutzers mit Liquid-Vorlagendateien. Es achtet auf die Datenkompatibilität, indem es Änderungen an lokalen Dateien oder Liquid-Vorlagendateien erkennt und die veraltete Datei durch die neuere Version ersetzt. Mit Liquid Sync ist es nicht erforderlich, die im Webshop-Administrationspanel verfügbaren Code-Editoren zu verwenden. Jeder Benutzer kann eine beliebige Entwicklungsumgebung verwenden, und Liquid Sync stellt sicher, dass das lokal erstellte Projekt mit den Dateien im Administrationspanel kompatibel ist.Start mit Liquid Sync
Anwendung verfügbar für Comarch Webshops.
Liquid Sync kann von hier heruntergeladen werden.
Der entpackte Ordner enthält u.a.:.
.
Die Anwendung sollte mit Administratorrechten gestartet werden. Beim Start werden zwei Fenster geöffnet: ein Konsolenfenster und ein Browserfenster mit der Anwendungsoberfläche. Beide Fenster sollten aktiviert bleiben.
- Verzeichnisen – enthält die XML-Datei mit den Einstellungen. Es sollte nicht gelöscht werden.
- Verzeichnis-Logs – enthält die Logs der Operationen.
- COMARCHeShopLiquidSync – Liquid Sync Anwendung
Konfiguration
Liquid Sync benötigt deine Anmeldedaten für den Webshop. Wenn du es zum ersten Mal ausführst, wird ein Formular angezeigt, in das du Folgendes eingeben musst:.
.
- Webshopname – ein beliebiger Name, unter dem der Webshop in der Liste der Webshops erkannt werden kann
- Url – Url des bestehenden Webshops
- Login – Login des Benutzers für die Anwendung zum Einloggen in das Adminpanel. Es sollte das Webmaster-Login verwendet werden, dessen Konfiguration im Adminpanel im Bereich Einstellungen/ Webshop-Einstellungen/ Allgemein im Abschnitt Comarch Webshop Liquid Sync verfügbar ist
- Passwort – das Passwort des angegebenen Benutzers
Tipp
Comarch Webshop Liquid Sync erfordert SSL für die Verbindung.
Nachdem du auf Anmelden geklickt hast, wird der Webshop in die Liste auf der linken Seite aufgenommen. Im rechten Fenster wird eine Liste der verfügbaren Vorlagen angezeigt.
Von nun an wird dies der Startbildschirm der Anwendung sein. Um einen weiteren Webshop hinzuzufügen, musst du auf die Schaltfläche Webshop hinzufügen klicken.
Nach dem Einloggen wird im entpackten COMARCHeShopLiquidSync-Verzeichnis ein Verzeichnis mit dem von dir im Formular angegebenen Namen erstellt.
Das Verzeichnis enthält:
.
.
Verzeichnisse mit Vorlagendateien können nicht verschoben werden.
- Logs-Verzeichnis – enthält die Betriebsprotokolle des jeweiligen Webshops,
- Sync-Verzeichnis – enthält die Einstellungsdatei,
- Templates-Verzeichnis – hier werden Unterverzeichnisse mit Dateien für verfügbare Vorlagen angelegt
Synchronisation
Arbeit mit Dateien
Um auszuwählen, welche Vorlage die Anwendung synchronisieren soll, wählst du einfach das entsprechende Element in der Liste der verfügbaren Vorlagen aus. Wenn die Synchronisierung für eine Vorlage erfolgt, die durch ein Passwort geschützt ist, verlangt Liquid Sync ebenfalls ein Passwort. Sobald die Vorlage ausgewählt ist, öffnet sich das Synchronisationsfenster. Die linke Spalte mit der Bezeichnung Log enthält die Synchronisierungsprotokolle, während die rechte Spalte mit der Bezeichnung Files die zu lösenden Konflikte anzeigt. Wenn eine Vorlage zum ersten Mal synchronisiert wird, wird ein entsprechendes Verzeichnis im Verzeichnis templates erstellt. Die Verzeichnisnamen sind die IDs der Vorlagen. Wenn du zuvor keine Dateien für eine bestimmte Vorlage im Administrationspanel hinzugefügt hast, solltest du selbst ein Verzeichnis mit dem Namen 0 (Null) innerhalb des oben genannten Ordners erstellen. Alle Dateien, die synchronisiert werden müssen, sollten im Verzeichnis 0 abgelegt werden. Wenn die Vorlage bereits Dateien enthielt, wird das Verzeichnis automatisch erstellt, und darin befinden sich die vom Panel heruntergeladenen Dateien. Jede neue Datei, die im Verzeichnis 0 abgelegt wird, erscheint automatisch in den Liquid-Vorlagendateien im Administrationspanel. In der Liquid Sync-App wird auch das entsprechende Protokoll angezeigt. Die lokale Datei wird nach jedem Speichern ebenfalls an den Webshop gesendet, und beim Löschen der Datei wird die entsprechende Datei aus der Liquid-Vorlage entfernt.Auflösung von Konflikten
Es kann vorkommen, dass lokale Dateien nicht mit Liquid-Vorlagendateien übereinstimmen. In diesem Fall zeigt Liquid Sync eine entsprechende Meldung in der Spalte Dateien an. In der Meldung wird der Benutzer gefragt, wie die Anwendung den Konflikt auflösen soll. Im Folgenden werden die Ursachen von Konflikten und deren Behebung beschrieben.Ändern einer Datei im Webshop-Administrationspanel
Das Ändern von Dateien auf der Seite des Administrationspanels wird im Gegensatz zum Ändern von lokalen Dateien als Konflikt behandelt. Bei der Änderung bestehender Dateien schlägt die Konfliktmeldung zwei Lösungen vor: Herunterladen der Vorlagendatei in das lokale Projekt oder Senden der lokalen Datei an das Administrationspanel. Wenn die Änderung während einer aktiven Synchronisierung vorgenommen wird, klicke auf die Schaltfläche Aktualisieren, um die Meldung zu sehen. Das Löschen der Datei auf der Seite des Administrationspanels erfordert eine Entscheidung: Löschen der Datei aus dem lokalen Dateisystem oder Senden der lokal vorhandenen Datei an das Administrationspanel. Beim Hinzufügen einer neuen Datei im Administrationspanel wird ebenfalls eine entsprechende Meldung angezeigt. Liquid Sync schlägt dann vor, die neue Datei aus dem Panel in das lokale Projekt herunterzuladen oder die neue Datei aus der Liquid-Vorlage zu entfernen.Ändern einer lokalen Datei, wenn Liquid Sync deaktiviert wurde
Liquid Sync hatte nicht die Möglichkeit, die lokale Datei zu aktualisieren, nachdem sie geändert wurde, so dass es zu einer Inkompatibilität kam. Bei vorhandenen Dateien zeigt die Anwendung eine Meldung mit Lösungen an: Lade die Vorlagendatei in das lokale Projekt herunter oder sende die lokale Datei an den Webshop. Wenn eine lokale Datei gelöscht wird, enthält die Meldung die Option, die entsprechende Datei aus dem Webshop herunterzuladen oder zu löschen. Wenn eine neue Datei hinzugefügt wird, kann der Konflikt gelöst werden, indem die neue Datei an den Webshop gesendet oder gelöscht wird.Tipp
Vergewissere dich, dass die Echtzeitvorschau der Änderungen im Administrationspanel aktiviert ist.
Wie kann ich die Daten der anonymen Benutzer abrufen?
Die Comarch Webshop Sync-Anwendung ermöglicht die Implementierung des Datenzugriffs für einen nicht angemeldeten Benutzer. Mit anderen Worten, du kannst Daten aus den Comarch ERP-Systemen für Benutzer herunterladen, die deine Website anonym besuchen. Um den Dienst für den anonymen Zugriff zu konfigurieren, musst du im Admin-Panel angegeben, welche der Arbeiten ohne Benutzerautorisierung durchgeführt werden können.
Der Name des Arbeiters gib im Abschnitt an: Einstellungen ➞ Webshop Einstellungen ➞ Allgemein ➞ Comarch Webshop Sync ➞ Konfiguration des anonymen Zugriffs
Beispiel
Wenn ein Worker in der Datei configworkers.json erpData heißt, muss sein Name eindeutig angegeben werden.
Du kannst beliebig viele solcher Worker hinzufügen.
Welche Dokumente werden durch Comarch Webshop Sync heruntergeladen?
Comarch Webshop Sync ermöglicht das Herunterladen von Daten zu Rechnungen, externen Freigaben, Bestellungen mit zugehörigen Dokumenten und Zahlungen (Kreditlimit und Überfälligkeitsgrenze) aus Comarch ERP-Systemen. Der Dienst verfügt über eine offene Schnittstelle, die das Herunterladen von Daten über den SQL-Prozess sowie über Anwendungserweiterungen (dll-Dateien) ermöglicht.
Installation von Comarch e-Sklep Sync – Meldungen
Bei Problemen mit der Installation von Comarch e-Sklep Sync oder beim Starten des Dienstes empfehlen wir, Folgendes zu überprüfen:
- Logs, die im Installationsverzeichnis des Dienstes im Ordner Logs verfügbar sind,
- Logs aus dem Windows-System (Verwaltungstools ➞ Ereignisanzeige).
- 403 Forbidden (Disabled) – Die Option "Konfiguration des Abrufs von Daten auf Anfrage aus dem ERP-System" im Administrationspanel ist deaktiviert. Diese Option befindet sich unter Einstellungen ➞ Webshop-Einstellungen ➞ Allgemein.
- 403 Forbidden (Authorization) – In den meisten Fällen wird dies durch eine falsche Eingabe der AppID oder AppKEY verursacht. Es kann auch bei einer älteren Version von Comarch e-Sklep Sync und einer neuen Version von Comarch Webshop auftreten.
- 403 Forbidden (TS) – Ungültiger timestamp. In der Installationsumgebung wurde eine falsche Zeit eingestellt. Die lokale Zeit auf dem Gerät, auf dem Comarch e-Sklep Sync installiert ist, stimmt nicht mit der Zeit auf dem SQL-Server überein. Die zulässige Differenz beträgt 10 Minuten.
- 403 Forbidden (Args) – Fehlerhafte Anfrage. Die Anfrage wurde entweder nicht von Comarch e-Sklep Sync gesendet oder bezieht sich auf eine ältere Softwareversion.
- 403 Forbidden (DEMO) – Comarch Webshop befindet sich im Demo-Modus oder der Webshop verfügt nicht über eine gültige Lizenz.
- Get License: True/False – Die Lizenz wurde nicht abgerufen.
- Renew License: True/False – Die Lizenz konnte nicht erneuert werden, die zuvor abgerufen wurde (möglicherweise wurde die Lizenz abgerufen oder der Lizenzmanager wurde zurückgesetzt).
- Release License – Wenn Comarch e-Sklep Sync gestoppt wird, wird die Lizenz an den Lizenzmanager zurückgegeben.
- e-Shop not synchronized – Es wurde keine Synchronisation mit Comarch e-Sklep durchgeführt.
- No e-Shop Sync license – Es fehlt eine Lizenz im Lizenzmanager für Comarch e-Sklep Sync.
- Invalid Url – In der Datei configWorkers.json wurde eine ungültige URL für Comarch Webshop angegeben.
- Awaiting message – Comarch e-Sklep Sync wartet auf eine Anfrage von Comarch Webshop.
- Nothing to do – Der Worker hat keine Anfrage von Comarch Webshop erhalten und beginnt erneut zu warten (wenn diese Meldung nicht erscheint, überprüfe das Proxy und den Internetzugang).
- Es wurde versucht, ein Assembly von einem Netzwerkspeicherort zu laden. In älteren Versionen des .NET Frameworks würde dieser Versuch dazu führen, dass das Assembly im Sandbox-Modus ausgeführt wird. In dieser Version des .NET Frameworks sind CAS-Richtlinien standardmäßig nicht aktiviert, daher könnte das Laden gefährlich sein. – Überprüfe, ob Windows Dateien blockiert, die aus dem Internet heruntergeladen wurden. Stelle sicher, dass keine Datei im Sync-Verzeichnis blockiert ist – diese Dateien müssen entsperrt werden.
- Cannot open database „CDN_XXX“ requested by the login. The login failed. Login failed for user 'erpDataLogin' –
- Entferne oder benenne den Login „erpDataLogin“ in Microsoft SQL Server Management Studio um.
- Entferne oder benenne den Benutzer „erpDataUser“ um, der mit der entsprechenden Datenbank auf dem Server verbunden ist.
- Entferne und installiere den Comarch e-Sklep Sync-Dienst erneut – dadurch wird ein neuer ErpDataLogin und ErpDataUser erstellt.
- Nachdem die oben genannten Schritte ausgeführt wurden, wird die Meldung nicht mehr im Log angezeigt.
- Überprüfe, ob der Benutzer erpDataLogin sich mit den Anmeldedaten, die in der Datei SqlCommon.sql enthalten sind, mit dem SQL-Server verbinden kann.
Wie werden die Lieferkosten durch Comarch e-Sklep Sync berechnet?
Allgemeine Informationen zu den Lieferkosten (Lieferung des Typs 5)
Ab der Version Comarch Webshop 2020 wurde die Möglichkeit hinzugefügt, eine weitere Methode zur Berechnung der Lieferkosten basierend auf den von Comarch e-Sklep Sync übermittelten Daten festzulegen. Dadurch ist es möglich, eine eigene Liefermatrix zu erstellen, die selbst die komplexesten Szenarien zur Berechnung der Lieferkosten unterstützt.Tipp
Die Implementierung individueller Lieferkosten unter Verwendung des Comarch e-Sklep Sync-Dienstes ist für fortgeschrittene Benutzer gedacht, die Microsoft Visual Studio gut beherrschen. Für die Konfiguration sind Programmierkenntnisse erforderlich. Die Anleitung erfordert den Aufbau einer entsprechenden DLL-Bibliothek, das Kompilieren des Codes und das Hinzufügen einer neuen Prozedur. Anschließend muss die erstellte DLL-Datei zum installierten Dienst hinzugefügt werden.
Um die eigenen Lieferkosten zu beziehen, muss in der Vorlage eine Lieferung des Typs 5 berücksichtigt werden.
Tipp
Nach dem Hinzufügen dieses Lieferetyps zur Kostenmatrix wird er nicht in den Artikeldetails im Webshop unter der Rubrik „Lieferung bereits ab“ angezeigt.
Wenn die oben genannten Bedingungen erfüllt sind, erscheint im Menü Einstellungen ➞ Zahlungen und Lieferungen auf der Registerkarte Lieferungen nach dem Hinzufügen einer neuen Liefermethode oder bei der Bearbeitung bereits verwendeter Liefermethoden in der Rubrik „Methode zur Berechnung der Lieferkosten“ die fünfte Option: Kosten berechnet durch eShop.Sync.
Beispiel-Worker unten:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Comarch.eShop.ISync;
using System.Threading.Tasks;
namespace ExternalDeliveryCost
{
public class Request
{
public Customer Customer;
public Employee Employee;
public int EshopId;
public T Message;
}
public class Employee
{
public int Id;
public int EshopEmployeeId;
public string Email;
}
public class Customer
{
public int Id { get; set; }
public int EshopCustomerId { get; set; }
public string Email { get; set; }
}
public class ExternalDeliveryCostQuery
{
public int[] MethodId; ID sposobu dostawy w sklepie
public string Country; Kraj dostawy
public string City; miasto dostawy
public string ZipCode;
public List Elements;
}
public class ExternalDeliveryCostElementQuery
{
public int Id;
public decimal Quantity; ilość w jednostce podstawowej
}
public class ExternalDeliveryCostCl
{
public int MethodId;
public decimal Cost;
public bool FreePayment;
}
public class Worker : Comarch.eShop.ISync.Worker
{
public override Task Execute(Msg msgOuter)
{
return Task.Factory.StartNew(() =>
{
var req = Newtonsoft.Json.JsonConvert.DeserializeObject<Request>(msgOuter.Message);
msgOuter.Response = Newtonsoft.Json.JsonConvert.SerializeObject
(
req.Message.MethodId.Select(z => new ExternalDeliveryCostCl() { MethodId = z, Cost = z, FreePayment = z % 2 == 0 })
);
return msgOuter;
});
}
}
}
Die weitere Konfiguration dieser Methode zur Berechnung der Lieferkosten im Administrationspanel bleibt wie bei den anderen Kostenarten unverändert und ist in diesem Artikel beschrieben.
Wenn die oben genannten Bedingungen erfüllt sind, erscheint im Menü Einstellungen ➞ Zahlungen und Lieferungen auf der Registerkarte Lieferungen nach dem Hinzufügen einer neuen Liefermethode oder bei der Bearbeitung bereits verwendeter Liefermethoden in der Rubrik „Methode zur Berechnung der Lieferkosten“ die fünfte Option: Kosten berechnet durch eShop.Sync.
Der Worker mit dem Schlüssel (in der Konfigurationsdatei des Dienstes) erpDataDeliveryCost2 hat die folgende neue Datenstruktur:
Worker erpDataDeliveryCost
Es erfordert die Verwendung eines Workers (in Form einer DLL) mit dem Namen erpDataDeliveryCost. In diesem Worker werden Objekte vom Kunden übermittelt, ähnlich wie bei anderen Standard-Workern des Comarch e-Sklep Sync-Dienstes. Dieser Lieferetyp ist im Administrationspanel verfügbar, wenn:- Comarch Webshop in der B2B-Version vorliegt,
- der Comarch e-Sklep Sync-Dienst konfiguriert und aktiviert ist,
- der Worker erpDataDeliveryCost verwendet wird.
Worker erpDataDeliveryCost2
In der Version 2021.5 wurde ein weiterer Worker zur Berechnung der Lieferkosten durch den Comarch e-Sklep Sync-Dienst bereitgestellt. Dieser Liefertyp ist im Administrationspanel verfügbar, wenn:- Comarch Webshop in der B2B-Version vorliegt,
- der Comarch e-Sklep Sync-Dienst konfiguriert und aktiviert ist,
- im Administrationspanel unter Menü Einstellungen ➞ Webshop Einstellungen ➞ Allgemein ➞ Comarch e-Sklep Sync die Option „Neue Version der Berechnung der Lieferkosten“ aktiviert ist,
- der Worker erpDataDeliveryCost2 verwendet wird.
- SubtotalValue und TotalValue sind die Warenwerte, immer in der Standardwährung des Webshops,
- Elements (aus erpDataDeliveryCost) wird hier durch Sets ersetzt (dies sind „Sets“ im Warenkorb),
- Set:
- Id=0 bedeutet gewöhnliche Ware,
- Id>0 bedeutet ein Shop-Set,
- Id=-2 bedeutet Paket-Rabatt (bei Comarch ERP Altum),
- Id=-3 bedeutet Angebot (wobei Angebote, die bereits einen Preis im Administrationspanel des Webshops haben, nicht übertragen werden),
- Id=-4 bedeutet ein „Set“ von Waren, das aus der Aktion Cart/ExternalAdd stammt.
- BundleId ist die Identifikationsnummer des Paket-Rabatts im ERP-System (dieser Parameter ist verfügbar, wenn Id=-2),
- Elements sind die Positionen, die dem jeweiligen „Set“ zugeordnet sind. Verfügbare Parameter:
- BundleGratis - handelt es sich um ein Gratis-Produkt aus dem Paket-Rabatt,
- ExtId - externer Identifikator der Position, wenn die Position aus der Aktion Cart/ExternalAdd stammt.
- CustomDeliveryTotalValue ist der Lieferkostenbetrag (festgelegt im Angebot oder aus der Aktion ExternalAdd stammend). Wenn keine Lieferkosten vorhanden sind, gibt der Worker „null“ zurück (der Wert kann verwendet oder ignoriert werden).
- CalculationId ist die ID der Berechnung, auf deren Grundlage die Lieferkosten ermittelt wurden. Die Berechnung kann Informationen zum Ausgangspreis, gewährten Rabatten, Transportkosten, Beladekosten und anderen Elementen enthalten, die die Lieferkosten beeinflussen. Die Berechnung muss in der eigenen Infrastruktur gespeichert werden (z.B. in einer Datenbank oder als XML-Datei auf der Festplatte). Die Berechnungs-ID ist auch im Bestellobjekt verfügbar. Im Warenkorb kann die Berechnung abgerufen und die notwendigen Elemente im Interface angezeigt werden.
Erweiterte Funktionen von Comarch e-Sklep Sync
Der Grafik-Engine Liquid verfügt über die Aktionen sync/exec. Diese Aktion ist für die Kommunikation zwischen der Benutzeroberfläche und Comarch e-Sklep Sync verantwortlich. Die Aktion nimmt die folgenden Parameter entgegen:
Parameter:
Wenn die Aktion ausgeführt wird, wird eine Antwort zurückgegeben. Die Antwort enthält ein Objekt oder eine Sammlung von Objekten, die auf der Schnittstelle angezeigt werden sollen. Eine Sammlung von Objekten wird z.B. zurückgegeben, wenn eine SQL-Prozedur mehrere Recordsets zurückgibt.
Beispielaufruf:
Aufrufcode:
- worker:
- Name der Aufgabe, die Comarch e-Store Sync ausführen soll.
- Standardmäßig ruft ‘erpData’ SQL-Abfragen auf, ‘erpDataOrder’ ist für die Bearbeitung von Lagerbeständen zuständig.
- Wenn ein eigener Worker verwendet wird, muss dessen Name hier eingetragen werden. Zusätzliche Worker werden in der Datei configWorkers.json konfiguriert.
- message:
- Inhalt der Unterweisung, die der Arbeitnehmer durchzuführen hat.