Listenexport für CSV-Dateien anpassen
Teilweise steht in den Listenansichten im eserp eine Funktion zum Exportieren der angezeigten Daten bereit.
Über die Schaltfläche
Exportieren in der Symbolleiste können Sie können die angezeigten Datensätze der Listenansicht als Datei zur beliebigen Weiterverarbeitung speichern. Dabei können die Daten wie sie in der Listenansicht zu sehen sind (Spalten, Filter, Suchergebnis, Sortierung), in die zur Verfügung stehenden Dateiformate exportiert werden.
Für die Verwendung dieser Funktion wird die Berechtigung Allgemein | Datengitter exportieren benötigt.
Neben den vorgegebenen Exportformaten EXCEL und CSV können individuelle Exportformate für CSV-Dateien festgelegt werden. Diese eigenen Exportformate werden je nach Vorgangsart im Listenexport mit einen vorher festgelegten Namen angezeigt.
Es kann zum Beispiel der Export von Lieferscheindaten für die Erfassungssoftware eines Versanddienstleisters umgesetzt werden (zum Beispiel DeLisPrint / DPD Print von DPD).
CSV Exportformate über die Datenbank anlegen
Die individuellen Exportformate für CSV Dateien werden über die Datenbank angelegt, dies setzt administrative Berechtigungen und Kenntnisse für die Bearbeitung von Datenbankeinträgen voraus.
es2000 macht keine Angaben zu einer bestimmten Eignung obiger Informationen. Irrtümer und Fehler bleiben ausdrücklich vorbehalten, die Angaben erfolgen ohne Gewähr. Die Angaben stellen nur Beschreibungen dar und enthalten keine Garantie der Beschaffenheit der Produkte. Die Informationen können z.T. auch ein Versuch sein, Ihnen bei einer Aufgabenstellung zu helfen, selbst wenn das Produkt eigentlich nicht für diesen speziellen Zweck vorgesehen wurde.
Dafür werden in die Tabellen ExportTemplate und ExportTemplateBez entsprechende Datenzeilen hinzugefügt.
Sie können das Tool esdbm verwenden, um entsprechende Datenbankeinträge anzulegen.
Siehe auch
-
esdbm - SQL-Abfrage
Tabelle 'ExportTemplate'
In der Tabelle ExportTemplate wird das eigentlich Exportformat festgelegt.
ExportTemplateId
Tragen Sie hier eine eindeutige Nummer für jeden individuellen CSV-Export ein.
Diese Nummer stellt auch die Verknüpfung zur Bezeichnungs-Tabelle 'ExportTemplateBez' über das gleichnamige Feld ExportTemplateid her.
VorgangArt
Tragen Sie hier die Nummer der Vorgangsart (VorgangsID) ein. Über die Vorgangsart legen Sie fest, in welcher Listenansicht (Vorgängen) das Exportformat verfügbar ist.
|
Vorgangsart |
Code |
VorgangsID |
|---|---|---|
|
Bedarfer |
Bedarfer |
0 |
|
Kunde |
Kunden |
1 |
|
Geschäftspartner |
GPartner |
2 |
|
Angebot |
Angebot |
3 |
|
Projektauftrag |
Projektauftrag |
4 |
|
Serviceauftrag |
Serviceauftrag |
5 |
|
Wartungsauftrag |
Wartungsauftrag |
6 |
|
Lieferant |
Lieferant |
7 |
|
Personal |
Personal |
8 |
|
Anlage |
Anlage |
9 |
|
Bauvorhaben |
Bauvorhaben |
10 |
|
Ansprechpartner |
Ansprechpartner |
11 |
|
Teilauftrag |
Teilauftrag |
13 |
|
Servicecall |
Servicecall |
14 |
|
Rechnung |
Rechnung |
18 |
|
Lieferschein |
Lieferschein |
19 |
|
Bestellung |
Bestellung |
20 |
|
Rückschein |
Rückschein |
21 |
|
Arbeitsbericht |
Arbeitsbericht |
22 |
|
Aktion |
Aktion |
23 |
|
Entgeltpflege |
Gebuehrenpflege |
24 |
|
Kalkulation |
Kalkulation |
25 |
|
Mahnung |
Mahnung |
26 |
|
Vertragsrechnung(VtrgFakt) |
Vertragsrechnung |
27 |
|
KnowledgeBase |
KnowledgeBase |
28 |
|
Termin |
Termin |
29 |
|
Aufmaß |
Aufmass |
30 |
|
Vertragsstatistik |
Vertragsstatistik |
31 |
|
Vertragsverlaengerung |
Vertragsverlaengerung |
32 |
|
DokumentenManagement |
DokumentenManagement |
33 |
|
Artikeldokumente |
Artikel |
34 |
|
Bestelleingang |
BestEin |
35 |
|
Wartungsbenachrichtigung |
WartBenachrichtigung |
36 |
|
Eskalation eines Servicecalls |
EskalationEvent |
37 |
|
Statusänderungs Event |
StatusAenderungEvent |
38 |
|
Weiterleitung eines Servicecalls |
SeCaWeiterleitung |
39 |
|
Kreditorenrechnung |
EingangsRechnung |
40 |
|
Lagerbewegung |
LagerBewegung |
41 |
|
Kassenbuch |
Kassenbuch |
42 |
|
Kontobewegung |
KontoBewegung |
43 |
|
Lead |
Lead |
50 |
|
Opportunity |
Opportunity |
51 |
|
Vertrag |
Vertrag |
52 |
|
Adresse aus Adresspool |
Adresse |
53 |
|
Betreff der eingehenden Helpdesk E-Mail |
HelpdeskE-MailEingang |
54 |
|
Ein SEPA-Mandat |
SepaMandat |
55 |
|
Servicerechnung |
Servicerechnung |
56 |
|
Wartungsrechnung |
Wartungsrechnung |
57 |
|
Projektrechnung |
Projektrechnung |
58 |
|
Preisgruppe |
PreisGruppe |
59 |
|
Workflow |
WorkFlow |
60 |
|
WorkFlowTaskDefinition |
WorkFlowTaskDefinition |
61 |
|
Ausschreibung |
Ausschreibung |
62 |
|
MarketingKampagne |
Kampagne |
63 |
|
Aufgabe |
Aufgabe |
64 |
|
Wareneingang |
WarenEingang |
65 |
|
Vertragsart-Leistungsart |
VertragsArtLeistungsArt |
66 |
ExportType
Gibt den Mimetype für die Art des Exports an. Hier steht nur text/csv zur Verfügung.
Configuration
Mittels JSON-Skript kann im Feld Configuration der CSV-Export im Detail festgelegt werden. .
{'Separator': ';',
'QuoteValues': 'Strings',
'EncodingName': 'Windows-1252',
'IncludeHeaders': false,
'QuoteChar': '\'',
'Columns': [
{'FieldName': 'LieferscheinNr',
'Label': 'LS-Nr',
},{'FieldName': 'AenderDat',
'Label': 'LS-Nr',
'Format': 'hh:mm',
}
]
}
Erklärungen zum Beispiel
Separator
Gibt das Trennzeichen des CSV Formats an.
Gibt an, welche Spalten mit Quotierungszeichen (Quotes) umschlossen werden sollen, dabei sind mögliche Werte
-
Never
Keine Quotes verwenden
-
Always
Quotes für alle Spalten verwenden
-
Strings
Quotes werden nur für Zeichenketten-Spalten verwendet
Welches Quotierungszeichen verwendet werden soll, legen Sie über QuoteChar fest.
EncodingName
Gibt die Dateikodierung für die CSV-Datei an.
Standard Wert ist hier ASCII, für Umlaute bietet sich aber Windows-1252 an.
IncludeHeaders
Gibt an, ob in der ersten Zeile der Datei die Spaltenbeschreibungen geschrieben werden sollen.
-
True
Spaltenüberschriften werden in der ersten Zeile (Header) mit ausgegeben.
-
False
Es werden keine Spaltenüberschriften in der ersten Zeile (Header) mit ausgegeben.
Gibt bei den Spalten, die via QuoteValues bestimmt wurden das Zeichen an, welches zum Umschließen verwendet werden soll.
Columns
In Columns können die Spalten der CSV Datei spezifiziert werden, dabei hat jede Spalte drei Eigenschaften:
-
FieldName
Gibt den Namen des Datenfeldes / der Spalte an.
-
Label
Gibt die Spaltenüberschrift in der CSV an, falls Header exportiert werden. Wenn kein Wert angegeben ist, wird hier der Feldname verwendet.
-
Format
Ermöglicht es bei Nummern und Ähnlichem die Formatierung anzugeben, um so zum Beispiel nur den Zeitanteil eines Zeitstempels zu exportieren.
DefaultFileName
Hiermit legen Sie den Vorgabe Dateinamen und den Ausgabepfad fest.
'DefaultFileName": 'C:\\Daten\\Test_{0}.csv'
Der Platzhalter {0} definiert hierbei das aktuelle Datum und kann mit den C# Format-Spezifizierer festgelegt werden.
'DefaultFileName': 'C:\\Daten\\LS_{0:yyyy-M-dd-HH-mm-ss}.csv'
Siehe auch https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings
Beispiel JSON
{
'Separator': ';',
'QuoteValues': 'Strings',
'EncodingName': 'Windows-1252',
'IncludeHeaders': false,
'QuoteChar': '\'',
'DefaultFileName': 'C:\\Daten\\LS_{0:yyyy-M-dd-HH-mm-ss}.csv',
'Columns': [
{
'FieldName': 'LieferscheinNr',
},{
'FieldName': 'Anrede',
},{
'FieldName': 'Firma1',
},{
'FieldName': 'Firma2',
},{
'FieldName': 'Firma3',
},{
'FieldName': 'Strasse',
},{
'FieldName': 'Plz',
},{
'FieldName': 'Ort',
},{
'FieldName': 'Telefon',
},{
'FieldName': 'KundenNr',
},{
'FieldName': 'Nationen.IsoCode',
},{
'FieldName': 'PortoArt',
},{
}
]
}
Tabelle 'ExportTemplateBez'
Die Tabelle ExportTemplateBez beinhaltet die Bezeichnungen für die Export-Formate.
Sollen Bezeichnungen in mehreren Sprachen angezeigt werden, ist je Sprache ein Eintrag erforderlich. Dabei ist darauf zu achten, dass die Kombination aus ExportTemplateid und Sprachcode eindeutig gewählt wird.
ExportTemplateid
Geben Sie hier die gleiche Nummer für die Exportvorlage aus der Tabelle 'ExportTemplate' (Feld ExportTemplateid).
Spachcode
Tragen Sie hier die Nummer für Sprachcode ein. Der Sprachcode bezieht sich dabei auf die Sprache in der die Bezeichnung eingetragen worden ist.
Der Sprachcode 0 steht für Alle Sprachen
Bezeichnung
Tragen Sie hier eine sprechende Bezeichnung für das Exportformat ein. Diese Bezeichnung wird unterhalb der Listenexport-Schaltfläche angezeigt.
Beispiel SQL-Skript
Mit dem nachfolgenden Beispiel SQL-Skript können Sie einen Listenexport im CSV-Format für Lieferscheine (Vorgangsart=19) anlegen. Das Skript kann im esdbm ausgeführt werden, siehe auch SQL-Skript laden.
Im Beispiel wird die ExportTemplateid 100 verwendet. Wenn Sie diese ID bereits verwenden, ändern Sie das Skript vor der Ausführung entsprechend ab.
MSSQL Skript
INSERT INTO ExportTemplate (ExportTemplateId, VorgangArt, ExportType, Configuration)
VALUES ('100', '19', 'text/csv', '{
''Separator'': '';'',
''QuoteValues'': ''Strings'',
''EncodingName'': ''Windows-1252'',
''IncludeHeaders'': false,
''QuoteChar'': ''\'''',
''DefaultFileName'': ''C:\\Daten\\LS_{0:yyyy-M-dd-HH-mm-ss}.csv'',
''Columns'': [
{
''FieldName'': ''LieferscheinNr'',
},{
''FieldName'': ''Anrede'',
},{
''FieldName'': ''Firma1'',
},{
''FieldName'': ''Firma2'',
},{
''FieldName'': ''Firma3'',
},{
''FieldName'': ''Strasse'',
},{
''FieldName'': ''Plz'',
},{
''FieldName'': ''Ort'',
},{
''FieldName'': ''Telefon'',
},{
''FieldName'': ''KundenNr'',
},{
''FieldName'': ''Nationen.IsoCode'',
},{
''FieldName'': ''PortoArt'',
},{
}
]
}
')
GO
INSERT INTO ExportTemplateBez (ExportTemplateId, SprachCode, Bezeichnung) VALUES ('100', '1', 'DLisPrint / DPD Print')
GO

