desk.modul : WaWi- Export Die Schnittstelle besteht aus einem Programm, welches die Daten aus der OfficeLine ausliest und in eine XML-Datei exportiert. Die Schnittstelle ist als ein eigenständiges Programm lauffähig, benötigt aber eine installierte OfficeLine 3.4 auf dem ausführenden Rechner. Es werden alle noch nicht übergebenen Rechnungen berücksichtigt und anhand der Schnittstellenspezifikation SBS Rewe plus Kostenrechnung vom 08.05.2007 in eine XML Datei übergeben. Die erzeugte Datei liegt im Verzeichnis der Anwendung. Der Dateiname lautet OL2Rewe.XML 1. Einrichtung 2 2. Übergabe Datei erstellen 2 3. Installation 3 4. Anhang 3 Im Heerfeld 2-4 35713 Eibelshausen Tel.: +49 (0) 2774/924 98-0 Fax: +49 (0) 2774/924 98-15 info@desk-firm.de www.desk-firm.de
1. Einrichtung Nach Start der Anwendung kann unter Datei / Datenbankeinstellungen die Verbindung zur OfficeLine Datenbank angegeben werden. Sind alle Angeben erfolgt, so müssen diese Einstellungen mit klick auf die Schaltfläche Speichern gespeichert werden. Diese Daten müssen nur einmalig eingestellt werden. Für weitere Aufrufe bleiben diese Daten gespeichert. Die Einstellungen werden lokal in einer INI Datei abgelegt. In den Einkaufs und Verkaufbelegen wird ein Kennzeichen gesetzt, sobald ein Beleg übergeben wurde. Eine neue Übergabe erfolgt nicht. Außerdem wird pro Übergabelauf eine Sitzungsnummer in den Belegen gespeichert. 2. Übergabe Datei erstellen Über den Menüpunkt Tools/Wawi Export wird die Übergabe gestartet. Im folgenden Fenster sind der SBS Mandant und der Kostenreis auszuwählen. Alle anderen Werte sind fest in der Schnittstelle hinterlegt. Wählt man z.b. die Mandantennummer 102 aus, so werden die Informationen des OfficeLine Mandanten 300 verwendet. 2
Folgende Mandantenzuordnungen wurden getroffen. SBS Mandant "102" = OfficeLine Mandant 300 SBS Mandant "103" = OfficeLine Mandant 200 SBS Mandant "500" = OfficeLine Mandant 100 Über Datei/Beenden kann das Programm verlassen werden. 3. Installation Für die Anlage der Benutzerdefinierten Felder in der OfficeLine kann das mitgelieferte Skript OLUpdateUserFields.upd auf der Datenbank ausgeführt werden. Das Programm WawiExport.exe kann lokal auf einen Rechner kopiert werden. Es ist darauf zu achten, dass sich die Dateien XMLTemplateKopf.txt und XMLTemplatePos.txt im gleichen Verzeichnis befinden. 4. Anhang Skript zum Anlegen der Benutzerdefinierten Felder /* Skript : OLUpdateUserFields.upd Aufgabe : Skript zur Anlage der benutzerdefinierten Felder inkl. Layout, Tabs und Gruppen Quelldatenbank : OLIntechma Server : DEVMOBILE Erstellt am : Freitag, 02. November 2007 12:14:29 Anwendung : Sage Developer Programm SQL Exporter (c) Sage Software GmbH & Co. KG / Developer Programm 2006 */ SET QUOTED_IDENTIFIER ON -- Feld USER_Sitzung aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKEKBelege') ALTER TABLE "KHKEKBelege" ALTER COLUMN "USER_Sitzung" Int NULL -- Feld USER_Sitzung einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKEKBelege') ALTER TABLE "KHKEKBelege" ADD "USER_Sitzung" Int NULL DEFAULT 0 3
-- Feld USER_Sitzung aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivEKBelege') ALTER TABLE "KHKArchivEKBelege" ALTER COLUMN "USER_Sitzung" Int NULL -- Feld USER_Sitzung einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivEKBelege') ALTER TABLE "KHKArchivEKBelege" ADD "USER_Sitzung" Int NULL DEFAULT 0 -- Werte in USysClassFields für Feld USER_Sitzung der Klasse EKBeleg aktualisieren IF EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'EKBeleg' AND Field = 'USER_Sitzung') UPDATE USysClassFields SET ComboBoxLimitToList= 0, ComboBoxMode= 0, Description='Sitzung', LayoutHeightField= 0, LayoutLeft= 0, LayoutTab= 0, LayoutTop= 0, LayoutWidthField= 0, LayoutWidthLabel= 0, Locked= 0, ReadOnly= 0, Size= 0, Type= 4 WHERE Class='EKBeleg' AND Field='USER_Sitzung' -- Werte in USysClassFields für Feld USER_Sitzung der Klasse EKBeleg einfügen IF NOT EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'EKBeleg' AND Field = 'USER_Sitzung') INSERT INTO USysClassFields (Class, ComboBoxLimitToList, ComboBoxMode, Description, Field, LayoutHeightField, LayoutLeft, LayoutTab, LayoutTop, LayoutWidthField, LayoutWidth- Label, Locked, ReadOnly, Size, Type) VALUES ('EKBeleg', 0, 0, 'Sitzung', 'USER_Sitzung', 0, 0, 0, 0, 0, 0, 0, 0, 0, 4) -- Feld USER_Uebergabe aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKEKBelege') ALTER TABLE "KHKEKBelege" ALTER COLUMN "USER_Uebergabe" KHKBoolean NULL 4
-- Feld USER_Uebergabe einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKEKBelege') ALTER TABLE "KHKEKBelege" ADD "USER_Uebergabe" KHKBoolean NULL DEFAULT 0 -- Feld USER_Uebergabe aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivEKBelege') ALTER TABLE "KHKArchivEKBelege" ALTER COLUMN "USER_Uebergabe" KHKBoolean NULL -- Feld USER_Uebergabe einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivEKBelege') ALTER TABLE "KHKArchivEKBelege" ADD "USER_Uebergabe" KHKBoolean NULL DEFAULT 0 -- Werte in USysClassFields für Feld USER_Uebergabe der Klasse EKBeleg aktualisieren IF EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'EKBeleg' AND Field = 'USER_Uebergabe') UPDATE USysClassFields SET ComboBoxLimitToList= 0, ComboBoxMode= 0, Description='Übergabe Rechnung', LayoutHeightField= 0, LayoutLeft= 0, LayoutTab= 0, LayoutTop= 0, LayoutWidthField= 0, LayoutWidthLabel= 0, Locked= 0, ReadOnly= 0, Size= 0, Type= 1 WHERE Class='EKBeleg' AND Field='USER_Uebergabe' -- Werte in USysClassFields für Feld USER_Uebergabe der Klasse EKBeleg einfügen IF NOT EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'EKBeleg' AND Field = 'USER_Uebergabe') INSERT INTO USysClassFields (Class, ComboBoxLimitToList, ComboBoxMode, Description, Field, LayoutHeightField, LayoutLeft, LayoutTab, LayoutTop, LayoutWidthField, LayoutWidth- Label, Locked, ReadOnly, Size, Type) VALUES ('EKBeleg', 0, 0, 'Übergabe Rechnung', 'USER_ Uebergabe', 0, 0, 0, 0, 0, 0, 0, 0, 0, 1) 5
-- Feld USER_Sitzung aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKVKBelege') ALTER TABLE "KHKVKBelege" ALTER COLUMN "USER_Sitzung" Int NULL -- Feld USER_Sitzung einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKVKBelege') ALTER TABLE "KHKVKBelege" ADD "USER_Sitzung" Int NULL DEFAULT 0 -- Feld USER_Sitzung aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivVKBelege') ALTER TABLE "KHKArchivVKBelege" ALTER COLUMN "USER_Sitzung" Int NULL -- Feld USER_Sitzung einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivVKBelege') ALTER TABLE "KHKArchivVKBelege" ADD "USER_Sitzung" Int NULL DEFAULT 0 -- Werte in USysClassFields für Feld USER_Sitzung der Klasse VKBeleg aktualisieren IF EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'VKBeleg' AND Field = 'USER_Sitzung') UPDATE USysClassFields SET ComboBoxLimitToList= 0, ComboBoxMode= 0, Description='Sitzung', LayoutHeightField= 0, LayoutLeft= 0, LayoutTab= 0, LayoutTop= 0, LayoutWidthField= 0, LayoutWidthLabel= 0, Locked= 0, ReadOnly= 0, Size= 0, Type= 4 WHERE Class='VKBeleg' AND Field='USER_Sitzung' 6
-- Werte in USysClassFields für Feld USER_Sitzung der Klasse VKBeleg einfügen IF NOT EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'VKBeleg' AND Field = 'USER_Sitzung') INSERT INTO USysClassFields (Class, ComboBoxLimitToList, ComboBoxMode, Description, Field, LayoutHeightField, LayoutLeft, LayoutTab, LayoutTop, LayoutWidthField, LayoutWidth- Label, Locked, ReadOnly, Size, Type) VALUES ('VKBeleg', 0, 0, 'Sitzung', 'USER_Sitzung', 0, 0, 0, 0, 0, 0, 0, 0, 0, 4) -- Feld USER_Uebergabe aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKVKBelege') ALTER TABLE "KHKVKBelege" ALTER COLUMN "USER_Uebergabe" KHKBoolean NULL -- Feld USER_Uebergabe einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKVKBelege') ALTER TABLE "KHKVKBelege" ADD "USER_Uebergabe" KHKBoolean NULL DEFAULT 0 -- Feld USER_Uebergabe aktualisieren, wenn noch bereits vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivVKBelege') ALTER TABLE "KHKArchivVKBelege" ALTER COLUMN "USER_Uebergabe" KHKBoolean NULL -- Feld USER_Uebergabe einfügen, wenn noch nicht vorhanden WHERE (sysobjects.type = 'U') AND (sysobjects.name = N'KHKArchivVKBelege') ALTER TABLE "KHKArchivVKBelege" ADD "USER_Uebergabe" KHKBoolean NULL DEFAULT 0 7
-- Werte in USysClassFields für Feld USER_Uebergabe der Klasse VKBeleg aktualisieren IF EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'VKBeleg' AND Field = 'USER_Uebergabe') UPDATE USysClassFields SET ComboBoxLimitToList= 0, ComboBoxMode= 0, Description='Übergabe Rechnung', LayoutHeightField= 0, LayoutLeft= 0, LayoutTab= 0, LayoutTop= 0, LayoutWidthField= 0, LayoutWidthLabel= 0, Locked= 0, ReadOnly= 0, Size= 0, Type= 1 WHERE Class='VKBeleg' AND Field='USER_Uebergabe' -- Werte in USysClassFields für Feld USER_Uebergabe der Klasse VKBeleg einfügen IF NOT EXISTS (SELECT Class, Field FROM USysClassFields WHERE Class = 'VKBeleg' AND Field = 'USER_Uebergabe') INSERT INTO USysClassFields (Class, ComboBoxLimitToList, ComboBoxMode, Description, Field, LayoutHeightField, LayoutLeft, LayoutTab, LayoutTop, LayoutWidthField, LayoutWidth- Label, Locked, ReadOnly, Size, Type) VALUES ('VKBeleg', 0, 0, 'Übergabe Rechnung', 'USER_ Uebergabe', 0, 0, 0, 0, 0, 0, 0, 0, 0, 1) Wenn Sie weitere Fragen haben, können Sie uns gerne unter der Service-Hotline 02774/ 924 98 0 anrufen 3 oder uns eine email an info@desk-firm.de schreiben. Ihr desk Team