Protokolle
Überblick
die OrgaMon-App sammelt mobile Daten. Protokolle sind frei gestaltbare Eingabeformulare, die unterwegs ausgefüllt werden können. Pro Auftrag wird nur ein Protokoll ausgefüllt.
- Protokolle sind Baustellen speziefisch
- Protokolle sind Zählerart speziefisch
- Beispiel: Baustelle ST3A, hier gibt es die Auftragsarten "W" und "G" und "E2"
ST3AW.txt
wird dann verwendet für die Auftragsart "W"ST3AG.txt
... "G"ST3AE2.txt
... "E2"ST3A.txt
für alle anderen
Protokoll Gestaltung
Protokolle sind Textdateien, in die vor Ort zusätzliche Daten (neben den Standard-OrgaMon-
Daten) eingegeben werden können.
Protokolle sind frei definierbar. Fest stehender Text, sowie Eingabepositionen
können definiert werden.
Protokolle, die für JonDa-Geräte geschrieben wurden können nun auch im OrgaMon
aufgerufen und bearbeitet werden. Ist ein Auftrag offen, so kann man das passende
Protokoll mit <Strg> und <1>, <2> usw. aufrufen. Der Name des Protokolles wird aus
"Baustellenkrzel"-"ZählerArt"-"NummerDerProtokollAlternative".txt zusammengesetzt.
Protokolle werden im Verzeichnis .\Protokolle erwartet.
Muss man Änderungen an einem Protokoll machen, so ruft man das Protokoll mit
<Shift>&<Strg> und <1>, <2> usw. auf.
Der Variablen-Name ist immer 2 Buchstaben lang. Handelt es sich dabei um eine Zahl
01 .. 99, so ist es keine "echte" Eingabe-Position sondern ein Datenfeld, das aus OrgaMon
rauskopiert wird. Macht man Eingaben in diese festen OrgaMon-Felder hat dies
keine Auswirkung.
Gibt es pro Baustelle mehrere Protokolle sollten eindeutige Variblennamen ver
wendet werden. z.B.
Protokoll 1 -> AA bis AZ, BA bis BZ Protokoll 2 -> CA bis CZ, DA bis DZ Protokoll 3 -> EA bis EZ, FA bis FZ Protokoll 4 -> GA bis GZ, HA bis HZ Protokoll 5 -> IA bis IZ, JA bis JZ
Datenausgabe: OrgaMon erzeugt Ausgabedaten im bekannten .csv Format. In der Regel
jedoch ohne Protokolldaten. In der Baustelle kann man jedoch die Ausgabe der
csv-Dateien incl. der Protokoll-Eingaben ermöglichen.
Dazu "Baustelle", Reiter "Protokolle" das Häkchen "Ausfühen Protokollausgabe"
aktivieren.
Übergeben Sie ev. Protokolle aus dem Verzeichnis "./Protokolle" dem
Auftraggeber, damit ihm klar wird, was sich z.B. hinter der Spalte "V1" verbirgt.
Im Auftragsarbeitsplatz: Werden Protokolldaten mit ausgegeben erscheint der Ausgabewartenbalken als
voller Balken, ansonsten ist dieser Balken unterbrochen (da nur ein Teil der Daten
ausgegeben wird).
Ist schon eine Feldreihenfolge mit dem Auftraggeber vereinbart sollten neue Felder
nur hinten (also im Excel "rechts") angefügt werden.
Ist noch keine Feldreihenfolge mit dem Auftraggeber vereinbart empfiehlt es sich
die Spaltennamen ev. inhaltlich oder vom Namen her zu sortieren, damit die Daten
de zusammengehören auch zusammen sind.
Dateiname eines Protokolles
- bei der Aufbereitung des Auftragsvolumens wird für jeden einzelnen Auftrag ermittelt welches Protokoll mitgegeben wird.
- Hier ist man also sehr flexibel und man kann so steuern "was" der Monteur vor Ort alles machen kann und soll. Und das abhängig von der Baustelle und der Auftragsart.
- das zu jedem einzelnen Auftrag mitgesendete Protokoll ist nicht Geräte-abhängig sondern Baustellen- und Zähler-Art abhängig: Also bei Baustelle "X3" kann es z.B. die Art "W" und "E2" und andere Zählerarten geben. Dann kann man 3 ganz verschiendene Protokolle hinterlegen:
X3 X3W X3E2
- im OrgaMon finden sich die Dateien im Verzeichnis .\Protokolle. Sie werden folgendermassen benannt:
<Kürzel der Baustelle><Zählerart><Protokollvariante>.txt Bei <Protokollvariante> = "1" wird die Ziffer "1" NICHT angegeben! Beispiel: Baustelle KARL: es gibt "G" und "W" Zählertypen: die möglichen Protokolle sind somit: OrgaMon/JonDa =========== KARLG.TXT, KARLW.TXT OrgaMon KARLG2.TXT, KARLW2.TXT KARLG3.TXT, KARLW3.TXT KARLG4.TXT, KARLW4.TXT KARLG5.TXT, KARLW5.TXT
Konstante
- 1=, RID
- 2=, TERMIN
- 3=, ABNUMMER
- 4=, ART
- 5=, ZAEHLER_# ALT
- 6=, REGLER_# ALT
- 7=, ZAEHLER_INFO
- 8=, MONTEUR_INFO
- 9=, ORT
- 10=, PROTOKOLL_NAME
vorbestimmete Variable
Variable speichern Protokoll-Eingaben. Dabei gibt es folgende fest eingebauten Speicherplätze:
- 11=, Zählernummer Korrektur
- 12=, Zählernummer Neu
- 13=, Zählerstand Neu
- 14=, Zählerstand Alt
- 15=, Reglernummer Korrektur
- 16=, Reglernummer Neu
freie Variable (Protokollwerte)
- werden in Grossbuchstaben angegeben und haben immer 2 Stellen
- die 2. Stelle kann eine Ziffer sein
- Freie Variable sind die Wertbezeichnungen für Eingaben in das Protokoll, also Speicherbezeichnungen für Protokollwerte
- Die kommende Verwendung einer Variable gibt man durch ein abschliessendes "=" Zeichen an
- Der Name einer Variable wird einem eingegebenen Wert vorangestellt
- Im Datenfeld PROTOKOLLE des Auftrages können Eingaben abgerufen werden
S1=X OR=Keller
- In der Ergebnismeldung können Spaltennamen den Variablennamen entsprechen
Konventionenn
A1
Alphanumerischer Prefix für eine Zählernummer Neu
N1
Zählernummer Neu (Alternativ-Feld)
V1,V2,V3,V4
Vergebliche Besuche
Zählwerke
Ausbau
Ausbau Verbrauch 1.8.0 ZAEHLER_STAND_ALT (echtes Datenbankfeld, intern 14=) Ausbau Verbrauch 1.8.1 A181= Ausbau Verbrauch Nebentarif 1.8.2 NA= Ausbau Einspeisung 2.8.0 A280= Ausbau Einspeisung 2.8.1 A281= Ausbau Einspeisung 2.8.2 A282=
Einbau
Einbau Verbrauch 1.8.0 ZAEHLER_STAND_NEU (echtes Datenbankfeld, intern 13=) Einbau Verbrauch 1.8.1 E181= Einbau Verbrauch Nebentarif 1.8.2 NN= Einbau Einspeisung 2.8.0 E280= Einbau Einspeisung 2.8.1 E281= Einbau Einspeisung Nebentarif 2.8.2 E282=
Fotos
Foto Ausbau FA Foto Einbau FN Foto Regler FE Foto Anlage FH Ausbau 1.8.0 FA Ausbau 1.8.1 FB Ausbau 1.8.2 FC Ausbau 2.8.0 FD Ausbau 2.8.1 FF Ausbau 2.8.2 FG Einbau 1.8.0 FN Einbau 1.8.1 FM Einbau 1.8.2 FO Einbau 2.8.0 FP Einbau 2.8.1 FQ Einbau 2.8.2 FR
FU
- kein Foto, sondern es wird ein Dialog gezeigt auf dem kann man unterschreiben
- die Unterschrift wird als -FU.jpg abgespeichert und als normales Foto übertragen
ZZ
- Ja/Nein Feld
- Alles fertig, Eingabe des Ausbaustandes wird so unnötig
Verwendung eines Variablen-Wertes innerhalb des Protokolles
Werte von aktuellen Variablen können mit Schlangenlinien ausbelichtet werden:
~NN~
Ist der Wert bereits bestimmt wird anstelle von ~NN~ der eingegebene Wert angezeigt
Unterformulare
Formulare lassen sich verschachteln. So kann man Inhaltlich zusammenpassende Bereiche eines Protokolles auf eine eigene Unterseite bringen
- (, Unterbereich beginnen
- ), Unterbereich Ende
Trenner
- --
Eingabetypen
- "N;" rein numerische Eingabe (0 .. 9)
- "D;" dezimal (0 .. 9 und Punkt oder Komma)
- "A;" alphanumerisch (Buchstaben und Ziffern)
- "T;" Zeit/Datum
Ankreuzfelder
Haken
- "H;" <SichtbarerText>
# Intern wird im Moment in angekreuzten Fall "J" übermittelt # Im Fall das nichts eingegeben wird, wird leer übermittelt # Im Fall das ein Haken rausgemacht wird, wird "N" übermittelt # in Planung: "H;" <SichtbarerText> [ ";" <JA-Wert> ] [ ";" <NEIN-Wert> ] mit dem Default "H;" <SichtbarerText> ";J;N"
Bobbele
- "B;" <SichtbarerText> [ ";" <JA-Wert> ]
# B sind eine Gruppe von Radiobuttons, als es ist immer nur EIN # Knopf gedrückt angekreuzt, wählt man eine andere Option # springt der Haken in einer ehemals gewählten Option raus # # Übermittelt wird der <JA-Wert> der jeweils gesetzten Option #
(Barcode-) Scan
- "S;" <Beschriftung>
Infos zur Parametrisierung finden Sie hier #.25set_BARCODE_TYPE_Technologie
Foto
- "F;" <Beschriftung>
- einzelnes Foto für einen vorbestimmten Dokumentationsschritt z.B. "Zählerstand Ausbau"
- "G;" <Beschriftung>²
- keines oder mehrere Fotos (Story-Modus), wobei alle Fotos gleichberechigt übertragen werden und ihre Gültigkeit haben
² noch nicht programmiert
Prüflogik
- Um die Eingabedaten zu plausibilisieren kann dem Protokoll eine Prüf-Vorschrift mitgegeben werden
- beim "SPEICHERN" wird die Prüf-Vorschrift angewendet
- Folgende "Eingabefehler" des Monteurs können durch die Prüf-Vorschrift aufgedeckt werden
- Vergessen ein Feld auszufüllen (als ein sogenanntes Pflichtfeld/Mussfeld/Sollfeld)
- Vergessen eine Option zu wählen
- Einen Wert eingegeben, obwohl dies in diesem Falle nicht mehr notwendig ist
- Einen Wert eingegeben der zu gross oder zu klein ist
Syntax der Prüf-Vorschrift
- man schreibt als letzten Punkt des Protokolles eine neue Rubrik
(Prüfen )
als reinen Text ohne Eingabefelder - bei einer Prüfung wird Zeile für Zeile von oben nach unten abgearbeitet
- bei einem Fehler springt der Eingabe-Fokus auf die erste Eingabeposition, die in der Fehlerzeile angegeben ist
- Der Aufbau einer Zeile ist
Bedingung [Resultat [Aktion]]
- Vor der
Bedingung
kann man einige Leerschritte machen um eine Blockzugehörigkeit zu setzen - Erfüllte Bedigungen bekommen einen Punkt, man kann z.B. 5 Bedingungen in eine Zeile schreiben, nach der Prüfung aller Bedingungen ergibt sich ein Resultat von 0,1,2,3,4 oder 5 (wenn alle Bedingungen erfüllt sind!)
- wird
Resultat
weggelassen, so wird der kommende Block nur ausgeführt wenn die Bedingung erfüllt ist - wird
Aktion
weggelassen, so wird auf eine Unstimmigkeit aufmerksam gemacht
# # # Zeile = { ' ' } { Bedingung ' ' } [ Resultat ] [Aktion] # # Bedingung = Protokollfeld [ '!' | '="J"' | ( '=' | '<>' | '<' | '>' | '>=' | '<=' ) Eingabewert ] # # Eingabewert = '"' { Zeichen } '"' # # Resultat = '=0' | '=1' | '>0' # # Aktion = exit | fail
- werden bei einem Statement mehrere Protokollfeld wird eine Summe aller erfüllten Bedingungen gebildet
- ! ist ein Platzhalter für <>""
- ="J" kann weggelassen werden, also anstelle von
KL="J" KM="J" KN="J"
kann man schreiben
KL KM KN
- der
default
für den Stringvergleich ist<>""
- bleibt es bei der Einrückungstufe in der nächste Zeile so wir die aktuelle Zeile bewertet, ist das Ergebnis "false" wird das als Eingabefelder aufgefasst, es wird in das erste angegebene Feld fokusiert
- kommt nach einer Zeile eine weitere Einrückung hinzu, wird die Zeile nicht Eingabeprüfung bewertet sondern als Hinweis ob der folgende Block beachtet oder übersprungen werden soll
Beispiele
-ZZ
O1 O2 O3 >0
HAK
N1 N2
K3 K2
Befehlsausführung
$
, globaler Befehl (Ausführung einmalig)
%
, Befehl für dieses Protokoll (wirksam für aktuelles Protokoll)
Beim Laden aus dem Internet werden die Protokolle gespeichert.
- Dabei werden alle mit "$" aufgeführten Befehle ausgeführt.
- Lokale BEfehle, die bei jeder Protokollverwendung ausgeführt werden sollen werden mit "%" eingeleitet
$mv
- Verschieben einer Datei
$rm
- Löschen einer Datei
%set
- setzen einer Systemvariable
%set BARCODE_TYPE Technologie
- Um Barcodes über das Protokoll abscannen zu können muss dies im Protokoll erst aktiviert werden
- Ganz oben im Protokoll wird eingestellt welche Barcode-Technologie zum Einsatz kommt
- Folgende Technologien gibt es:
- 1D Technologien:
UPC_A|UPC_E|EAN_13|EAN_8|RSS_14|RSS_EXPANDED|CODE_39|CODE_93|CODE_128|ITF|CODABAR
- 2D Technologien:
DATA_MATRIX|QR_CODE
- Das Scannen wird bewusst auf einzelne Technologien vor Ort beschränkt, damit es nicht zu Fehlinterpretationen kommt:
- Um die verwendetet Technologie herauszufinden starten Sie auf dem Handy die "zxing Barcode Scanner"-App und Scannen den Code.
- Merken Sie sich war bei "Format" steht, das tragen Sie bitte in die erste Zeile des Protokolles ein
%set BARCODE_TYPE Technologie { "," Technologie }
- Beispiel
%set BARCODE_TYPE ITF,ITF
Besondere Werte
- Folgende Angaben haben interne feste Programmierungen
ITF
: Es wird eine Prüfziffern-Routine nachgeschaltet, "+" bedeutet Erfolg, "-" Fehler in der Prüfziffer.
ITF,ITF
: Einfach nur ITF ohne Prüfziffernberechnung
CODE_39
: Es wird die Einlagerungsfunktion durchgeführt.
CODE_39,CODE_39
Einfach nur CODE_39-Scan ohne jede weitere Sonderfunktion
%set AUTO_FOCUS Parameter
- setzt automatisch den Eingabefokus des Protokolles auf eines der angegebenen Felder
- Der Fokus wird nur dann gesetzt wenn das Feld bisher keine Eingabe hat
#
# Beispiel, Gehe auf das Feld S1 danach S2
#
%set AUTO_FOCUS=S1;S2
#
# default
#
%set AUTO_FOCUS=14
%set AUTO_SCAN Parameter
- ist das angegebene Eingabefeld leer wird sofort der Barcode-Scanner gestartet und das Scan-Ergebnis landet in dem Feld
#
# erst S1 dann S2 scannen
#
%set AUTO_SCAN=S1;S2
Beispiel 1
%set BARCODE_TYPE CODE_128
#
# KAWS 2016-01-26
#
(Zählerwechsel
Korrektur der Ausbau-Zählernummer
11=
N;
Stand des Ausbau-Zählers
14=
D;
Nummer des Einbau-Zählers
12=
A;
S;Barcode ~12~
Stand des Einbau-Zählers
13=
D;
)
(Regler
Korrektur der Ausbau-Reglernummer
15=
N;
Nummer des Einbau-Reglers
16=
N;
)
#
--
Vergebliche Besuche
--
V1=
A;
V2=
A;
V3=
A;
--
Inspektion SCHACHT
--
V5=
H;Kopie an Eigent.
AA=
H;Turnus
AB=
H;Abnahme
AC=
H;Reparaturwechsel
AD=
H;Neusetzung
--
Mängelprüfung
--
BR=
H;DIN 1988 OK!
SA=
H;DVGW-Blatt OK!
Entnahmestelle
BA=
H;vor Zähler.Info:
BB=
A;
--
P0=
H;ALLES WIE EBEN!
--
Wasserzählerplatz.
BC=
H;nicht zugänglich
BD=
H;frostgefährdet
Wasserzähleran-
schlussbügel
BK=
H;fehlt!
Absperrventil
kombiniert mit
Rückflussver-
hinderer
BM=
H;fehlt!
läßt sich
BN=
H;nicht schliessen
Installations
leitungen der
Kundenanlage
BO=
H;stark angerostet
unzureichend
BP=
H;befestigt!
BX=
H;Sonstige Mängel
BQ=
A;
BS=
H;wegen Mängel un-
möglich!
--
Eingebaute Apparate
--
Schachttiefe bis
Rohrachse kleinr
SB=
H;1,5m:Frostgefahr
Bodenfreiheit
SC=
H;kleiner 40 cm
Leiter(ab DN100
SD=
H;Treppe!) fehlt
Undicht gegen
SE=
H;Grund-/Tagwasser
Mauerdurchführng
ohne Dichtung
SF=
H;Gummi/Quellm÷rtl
Pumpensumpf
SG=
H;40x40 fehlt
Pumpensumpf
SH=
H;ohne Gitterrost
Schachtabdeckung
nicht Tagwasser
SI=
H;dicht
Schachtabdeckung
falsche Belast-
SJ=
H;ungsklasse
Befestigung für
Wasseranschluss
bügel an Wand
oder Schacht-
SK=
H;boden fehlt
Schraubmuffe
innerhalb des
SL=
H;Schachtbauwerkes
ab QN15: Schacht
belüftung mind.
SM=
H;180qcm fehlt
ab QN15: Schacht
entlüftung mind.
SN=
H;180qcm fehlt
ab Grosswasser:
Montagehaken /
Montageschiene
über Rohrachse
SO=
H;fehlt
--
Hausanschluss
--
Hausanschluss-
leitung stark
CD=
H;angerostet
Hauptabsperr-
ventil ..
CE=
H;schließt nicht
CF=
H;fehlt
--
EA=
A;
EB=
A;
EC=
A;
********************
FA=
F;Foto Ausbau ~FA~
FN=
F;Foto Einbau ~FN~
FH=
F;Foto Anlage ~FH~
Beispiel 2
%set BARCODE_TYPE CODE_128,CODE_39
#
# Elektro-Protokoll 1.0
# vom 19.04.2013, AF
#
Korrektur der Ausbau-Zählernummer
11=
N;
Stand des Ausbau-Zählers
14=
D;
NT-Stand des Ausbau-Zählers
NA=
D;
--
Nummer des Einbau-Zählers
12=
N;
S;Barcode ~12~
Stand des Einbau-Zählers
13=
D;
NT-Stand des Einbau-Zählers
NN=
D;
--
Vergebliche Besuche (2 eingeben für jetzt)
V1=
A;
V2=
A;
V3=
A;
--
Bemerkungen
I3=
A;
I4=
A;
I5=
A;
--
wichtige Hinweise
I6=
A;
I7=
A;
I8=
A;
--
Hinweise Buero
B1=
A;
B2=
A;
B3=
A;
--
FA=
F;Foto Ausbau ~FA~
FN=
F;Foto Einbau ~FN~
Beispiel 3
%set BARCODE_TYPE CODE_128
#
# Hermesdorf 2020-05-07
#
(Zählerwechsel
Korrektur der Ausbau-Zählernummer
11=
A;
Ausbau 1.8.0
14=
D;
Ausbau 1.8.1
A181=
D;
Ausbau 1.8.2
NA=
D;
Ausbau 2.8.0
A280=
D;
Ausbau 2.8.1
A281=
D;
Ausbau 2.8.2
A282=
D;
--
Nummer des Einbau-Zählers
12=
A;
S;Barcode ~12~
Einbau 1.8.0
13=
D;
Einbau 1.8.1
E181=
D;
Einbau 1.8.2
NN=
D;
Einbau 2.8.0
E280=
D;
Einbau 2.8.1
E281=
D;
Einbau 2.8.2
E282=
D;
)
#
--
weitere Protokoll Eintragungen
--
Vergebliche Besuche (2 eingeben für jetzt)
V1=
A;
V2=
A;
V3=
A;
--
Bemerkungen
I3=
A;
I4=
A;
I5=
A;
--
wichtige Hinweise
I6=
A;
I7=
A;
I8=
A;
--
Hinweise Buero
B1=
A;
B2=
A;
B3=
A;
--
FA=
F;Foto Ausbau 1.8.0 -FA- ~FA~
FB=
F;Foto Ausbau 1.8.1 ~FB~
FC=
F;Foto Ausbau 1.8.2 ~FC~
FD=
F;Foto Ausbau 2.8.0 ~FD~
FF=
F;Foto Ausbau 2.8.1 ~FF~
FG=
F;Foto Ausbau 2.8.2 ~FG~
FN=
F;Foto Einbau 1.8.0 -FN- ~FN~
FM=
F;Foto Einbau 1.8.1 ~FM~
FO=
F;Foto Einbau 1.8.2 ~FO~
FP=
F;Foto Einbau 2.8.0 ~FP~
FQ=
F;Foto Einbau 2.8.1 ~FQ~
FR=
F;Foto Einbau 2.8.2 ~FR~
FH=
F;Foto Hausanschlusskasten ~FH~