Oc: Unterschied zwischen den Versionen
Root (Diskussion | Beiträge) |
Root (Diskussion | Beiträge) |
||
Zeile 128: | Zeile 128: | ||
'''.l.''' (Logik) "(".Spalte.["und"|"oder"|"nicht"].Spalte.")" | '''.l.''' (Logik) "(".Spalte.["und"|"oder"|"nicht"].Spalte.")" | ||
Spalte1 = SpaltenName | 'Konstanter Wert | !SpaltenName | Möglichkeiten bei Spaltenangaben | ||
!Spaltenname : Es wird kein Leerschritt dazwischen gemacht! | |||
Spalte1 = SpaltenName | 'Konstanter Wert | !SpaltenName<br> | |||
!Spaltenname : Es wird kein Leerschritt dazwischen gemacht!<br> | |||
== xls Umsetzter mit Zaehlerdaten_Referenz.csv == | == xls Umsetzter mit Zaehlerdaten_Referenz.csv == |
Version vom 1. August 2008, 10:09 Uhr
Oc steht für Orientation Convert. Es ist ein Open-Source Tool, das Daten in horizontaler Ausrichtung (z.B. ein Text) in vertikale Spalten ausrichtet. Auch die Übertragung von einzelnen xls Spalten in andere ist möglich. ".txt", ".csv" und ".xls" wird nativ unterstützt.
Download
Die Open-Source Anwendung incl. Quelltexte kann man hier downloaden:
http://cargobay.orgamon.de/Oc.html
.txt nach .xls Konverter
Quelle ".txt": Trenner ist hier " - "
.xls nach .xml Konverter
in diesem Modus wird aus einem Auftrag (EXPORT*.xml) und einer Ergebnis xls-Datei eine xml-Datei erzeugt.
.xls nach .csv Konverter
Die Quelle ist dabei eine ".xls"-Datei. Dieser Modus wird über das Kontextmenü im Windows Explorer angesprochen, sobald man die Menü-Option "speichern als csv" auswählt. csv ist eine Semikolon (in USA "comma separated values") separierte Textdatei und in der Weiterverarbeitung (automatisierter Import) usw. leicht zu handhaben.
Fixed-Formats.ini
- Durch die Konfigurationsdatei "Fixed-Formats.ini" kann Oc gezwungen werden, einzelne Spalten vor Ausgabe in die csv-Datei in ein Sonderformat zu konvertieren. Im Moment sind folgende Sonderformate konfiguriert:
Parameter
// Legt das Trennungszeichen fest, das in der // Datei verwendet wird. // // default = ; Separator=|
// Kann die Ausgabe der ersten Zeile (oft Kopfzeile) verhindern // // default = NEIN NoHeader=JA // Kann die Ausgabe ab einer bestimmten Spalte stoppen // // default = Unbegrenzt MaxColumn=76
Feld-Formatierungen
- Ausgabe mit 5 Nachkommastellen und "." als Komma
<Feldname1>=#.#####
<Feldname2>=#.#####
- Länge eines Feldes beschränken
"Max"<Feldname1>=4
Beispiel
ZaehlerStandNeu=#.#####
ZaehlerStandAlt=#.#####
Feld-Konstanten
Unabhängig vom Quell-Wert kann direkt eine Konstante in eine Spalte ausgegeben werden. Vor die Konstante muss das Zeichen "'" gesetzt werden.
FeldName='0815
Feld-Filter
- damit können unerwünschte Zeichen aus Feldinhalten entfernt werden ("+" Filter).
FeldName=+G-
- alternativ können Feldinhalte auf einen genau bezeichneten Zeichvorrat beschränkt werden ("-" Filter).
FeldName=-0123456789
Felder zusammenfügen
- Verbinden von benachbarten Spalten, der Spaltennummern, die verbunden werden sollen muss 3 stellig erfolgen, die erste Spalte hat Nummer 000
JoinColumn=NNN,NNN,NNN ...
xls Umsetzer mit Vorlage.xls
Oc kann dazu dienen einzelne Datenspalten aus einer XLS Quelle in eine neues XLS-Dokument zu kopieren. Dabei kann Oc folgende Operationen ausführen:
- es können XLS Spalten in eine andere Reihenfolge gebracht werden
- es können Spalten weggelassen werden
- es können andere oder keine Spaltenüberschriften verwendet werden
- es können mehrzeilige Spaltenüberschriften verwendet werden
Funktionsweise
Die Quelldatei "Namen.xls" muss Spaltenüberschriften in der ersten Zeile haben. Diese Spaltenüberschriften haben eine zentrale Funktion in der Vorlage.xls. Die Vorlage.xls beschreibt Reihenfolge und Umfang aller einzelnen Spalten.
- In der ersten Zeile der Vorlage werden die zukünftigen Spaltenüberschriften angegeben, diese können völlig anders lauten als die der Quelldatei. Diese Zeile kann auch entfallen.
- Die 2. Zeile ist eine Beispielzeile in der für jede Zelle eine passendes Format eingerichtet werden sollte. Das Format jeder einzelnen Zelle wird in die Datenspalte der Ausgabe übernommen.
- Die 3. Zeile enthält nun die Spaltenüberschriften der Quell-Datei. Dadurch können Sie per Querverweis angeben welche Datenspalte an diese Stelle eingesetzt werden soll. Neben der 1:1 Übernahme von Spalten können auch z.B. feste Werte übernommen werden.
Es folgen die Möglichkeiten im Einzelnen:
Spalte an dieser Stelle wird der Wert von Spalte übernommen.
>externe Spalte verwende die referenzierte Spalte aus einem Nachschlagewerk.
"Text oder \Text in jede Zelle wird der konstante Wert Text übernommen.
.1.Spalte ersten Teil der Spalte bis zum ersten Leerzeichen.
.2.Spalte zweiten Teil der Spalte nach dem ersten Leerzeichen.
.+.Spalte1.Spalte2 Werte aus beiden Spalten.
.*.Spalte1.Spalte2 Entweder Spalte A wenn B = X ist.
.j X wird in j, leer wird in n umgesetzt.
.J echte JA/NEIN umsetzung.
.t (Transaktionen) mit bisher 2 Funktionen: ISL1 und ISL2.
.l. (Logik) "(".Spalte.["und"|"oder"|"nicht"].Spalte.")"
Möglichkeiten bei Spaltenangaben
Spalte1 = SpaltenName | 'Konstanter Wert | !SpaltenName
!Spaltenname : Es wird kein Leerschritt dazwischen gemacht!
xls Umsetzter mit Zaehlerdaten_Referenz.csv
- Anker ist hier die Spalte, die in beiden Dateien (Zaehlerdaten_Referenz & Quelldatei) vorhanden ist.
Anwendung
- Im Windows Explorer einen rechten Mausklick auf die zu konvertierende Datei machen. Es öffnet sich das Kontextmenü.
- Den Menüeintrag "Konvertieren mit Oc" auswählen.
- Im gleichen Verzeichnis wie die Quelldatei ist nun das Konvertierungsergebnis entstanden.
automatisierte Anwendung
Oc ist als Konsolen-Anwendung Batch-Fähig. Geben Sie dazu in der Kommandozeile den Dateinamen einfach in Anführunszeichen (") an, auf den Sie einen rechten Mausklick machen würden. Die Integration in einen Transaktions-Server ist problemlos möglich. Die Ergebnis Datei (Diagnose.txt) kann fehlerbestimmend ausgewertet werden. kompilierte Linux - Version auf Anfrage.
C:\Programme\Oc\Oc.exe "C:\MeinPfad\Meine zu verarbeitende Datei.xls"