<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>KalibriWare - Dokumentation</title>
    <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/</link>
    <description>Recent content on KalibriWare - Dokumentation</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>de</language>
    <atom:link href="https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Anatomie eines Kalibrierskripts</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/anatomie/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/anatomie/</guid>
      <description>Im vorangegangenen Dokument wurde bereits das Skelett für ein neues Kalibrierskript vorgestellt, welches hier als Grundlage dienen soll:&#xA;// Zusatzfunktion der Abhängigkeitsauflösung importieren import { Injectable } from &amp;#39;injection-js&amp;#39;; // Basisklasse für alle Skripte, jedes Skript muss von `Script` erben. import { Script } from &amp;#39;@script&amp;#39;; // Klasse als erzeugbar markieren @Injectable() export class SkriptName extends Script { // Im Konstruktor können zusätzliche Parameter angefordert werden constructor() { } // Run enthält das eigentliche Kalibrierskript.</description>
    </item>
    <item>
      <title>Diagramme im Protokoll und der Kalibrierumgebung</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/diagramme/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/diagramme/</guid>
      <description>Einführung Analog zum alten Kalibriscript können auch in Kalibriware Diagramme aus Messreihen erzeugt werden. Die Diagrammfunktion basiert auf der MeasurementSeries Klasse (unsichtbare Tabelle im Protokoll), welche dann nachfolgend in eine DisplayTable (sichtbare Tabelle im Protokoll) oder eine Grafik dargestellt werden kann.&#xA;Wir benutzen echarts als Diagrammbibliothek, sodass alle möglichen Diagrammtypen unterstützt werden.&#xA;Diagramm im Protokoll Zuerst benötigen wir eine MeasurementSeries um die darunterliegenden Daten abzuspeichern:&#xA;const table = this.steps.createSeries(SeriesTemplates.XSTIAQ(Fields.Empty, Tolerance.Absolute(0.20))); this.</description>
    </item>
    <item>
      <title>Hardwareschnittstellen benutzen</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/hardware/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/hardware/</guid>
      <description>Im vorangegangenen Dokument wurde bereits das Skelett für ein neues Kalibrierskript vorgestellt, welches hier als Grundlage dienen soll:&#xA;// Zusatzfunktion der Abhängigkeitsauflösung importieren import { Injectable } from &amp;#39;injection-js&amp;#39;; // Basisklasse für alle Skripte, jedes Skript muss von `Script` erben. import { Script, StepsService } from &amp;#39;@script&amp;#39;; // Klasse als erzeugbar markieren @Injectable() export class SkriptName extends Script { // Hier wird der StepsService aus der Dependency Injection angefordert und innerhalb der Klasse abgespeichert.</description>
    </item>
    <item>
      <title>Einbinden eines Standards in ein Skript</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/standardnutzung/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/standardnutzung/</guid>
      <description>Im vorangegangenen Dokument wurde bereits das Skelett für ein neues Kalibrierskript vorgestellt, welches hier als Grundlage dienen soll:&#xA;// Zusatzfunktion der Abhängigkeitsauflösung importieren import { Injectable } from &amp;#39;injection-js&amp;#39;; // Basisklasse für alle Skripte, jedes Skript muss von `Script` erben. import { Script, StepsService } from &amp;#39;@script&amp;#39;; // Klasse als erzeugbar markieren @Injectable() export class SkriptName extends Script { // Hier wird der StepsService aus der Dependency Injection angefordert und innerhalb der Klasse abgespeichert.</description>
    </item>
    <item>
      <title>Messreihen und Tabellen</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/messreihen/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/messreihen/</guid>
      <description>In diesem Teil soll beschrieben werden, wie Messwerte aufgenommen werden können und ins Protokoll eingefügt werden. Dazu wollen wir das vorhergehende Skript um eine Messroutine erweitern, welche einen Parameter vom Benutzer abfragt. Als Ausgangspunkt soll folgendes Skript dienen:&#xA;import { Injectable } from &amp;#39;injection-js&amp;#39;; import { Script, StepsService } from &amp;#39;@script&amp;#39;; @Injectable() export class SkriptName extends Script { constructor(private steps: StepsService) {} public Run(): void { this.steps.Add(&amp;#34;Parameter 1&amp;#34;, async () =&amp;gt; { // TODO Benutzerinteraktion anlegen }, {}); } } Benutzerinteraktion Zuerst wollen wir uns anschauen, wie von einem Kalibrierskript aus mit dem Kalibrierer kommuniziert werden kann.</description>
    </item>
    <item>
      <title>Persistente Daten</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/skriptspeicher/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/skriptspeicher/</guid>
      <description>Um persistente Daten zu speichern gibt es in Kalibriware drei Möglichkeiten, welche alle über eine gemeinsame Basisklasse abgebildet werden:&#xA;Diese hat eine Schnittstelle wie folgt:&#xA;interface PersistentStorageEngine { async get(key: string, namespace = &amp;#34;script.ini&amp;#34;): Promise&amp;lt;string | number | boolean&amp;gt;; async set(key: string, value: string | number | boolean, namespace = &amp;#34;script.ini&amp;#34;): Promise&amp;lt;void&amp;gt;; } Über die Funktion set kann ein Wert überschrieben werden, dabei kann ein namespace zur Gruppierung und Organisation von Werten benutzt werden.</description>
    </item>
    <item>
      <title>Einführung &amp; Ausgangssituation</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/altskripte/intro/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/altskripte/intro/</guid>
      <description>Einführung Bei der im alten Kalibri integrierten Skriptsprache handelt es sich um eine komplette Eigenentwicklung. Sie kombiniert Ideen aus verschiedenen anderen Sprachen, nimmt dabei aber nur die Nachteile mit und lässt die Vorteile gezielt stehen. Die Skriptsprache ist historisch gewachsen und weist deswegen eine außergewöhnliche Menge an problematischen Designentscheidungen auf. Die Syntax ist überaus komplex, aber gleichzeitig sehr fehleranfällig und schlecht dokumentiert.&#xA;Der dazugehörige Interpreter, welcher sich hauptsächlich in der Datei GPIB.</description>
    </item>
    <item>
      <title>Grundbegriffe</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/grundbegriffe/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/grundbegriffe/</guid>
      <description>Das OLP (stellenweise auch Kalibriware genannt) wurde in enger Zusammenarbeit mit CTDI und den Mitarbeiter*innen des Labors entwickelt, um die betrieblichen Abläufe möglichst effizient und wenig fehleranfällig abzubilden.&#xA;Grundbegriffe Im folgenden werden ein paar Grundbegriffe eingeführt:&#xA;Auftrag oder Werkstattauftrag Ein (Werkstatt)Auftrag im OLP entspricht direkt einem Werkstattauftrag aus dem SAP. Ein Werkstattauftrag besitzt folgende Elemente&#xA;Interne UUID SAP-Werkstattauftragsnummer Status Service Tag Zugehöriger Auftrag (via Meldungsnummer), dadurch verknüpft: Kunde Deadline Vorabautorisierung für Reparaturen Zugehöriger Prüfling (beim Import zugeordnet über SAP-Materialnummer, danach zugeordnet über interne UUID), zusätzlich dazu: CTDI-Inventarnummer / Interne Seriennummer Herstellerseriennummer Kundeninventarnummer Erfolgte Kalibrierungen Teilebuchungen / Materialbuchungen Zeitbuchungen Historie Zeitpunkt des Exports der Teilebuchungen an das SAP Zeitpunkt des Exports der Zeitbuchungen &amp;amp; Statusrückmeldung an das SAP Status von Werkstattaufträgen Ein Werkstattauftrag kann folgende Status haben:</description>
    </item>
    <item>
      <title>Installation Messplatzrechner</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/provision-new-pc/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/provision-new-pc/</guid>
      <description>Falls ein Messplatzrechner ausgetauscht werden soll oder ein neuer Messplatzrechner installiert werden soll, müssen dort folgende Einstellungen manuell vorgenommen werden:&#xA;Netzwerkeinstellungen IP-Typ: Statisch IP-Adresse: eine aus dem Bereich 10.3.94.0/24 wählen DNS-Server: 10.3.94.1 Gateway: 10.3.94.254 HTTP(s) proxy server für apt: http://10.3.4.144:8080 Betriebssystem Als Betriebssystem kommt dabei ein Debian 12 zum Einsatz, weiterhin muss bei der Installation ein OpenSSH-Server installiert werden. Dazu benötigen wir zwei Benutzeraccounts, einmal root und einmal den Standardbenutzer (z.</description>
    </item>
    <item>
      <title>SAP Export</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/fehlersuche/sap-export/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/fehlersuche/sap-export/</guid>
      <description>Falls der Export eines Auftrags nicht durchgeführt werden konnte wird dies über eine Standard-Fehlermeldung (&amp;ldquo;Toaster&amp;rdquo;) signalisiert.&#xA;In diesem Falle verbleibt der Auftag im Status &amp;ldquo;Export&amp;rdquo; und wird nicht nach &amp;ldquo;Archiviert&amp;rdquo; verschoben. Im diesem Fall sollte auch maximal einer der beiden Exportzeitpunkte gesetzt sein:&#xA;Folgende Schritte sollten in diesem Fall durchgeführt werden:&#xA;1. Prüfung der Systemmeldungen Falls der Export fehlschlägt sollte diesbezüglich eine Systemmeldung vom Typ export.sap.orderjob.transmiterror hinterlegt sein. Diese Fehlermeldung an sich sollte bereits genügend Informationen enthalten, um das Problem zu identifizieren.</description>
    </item>
    <item>
      <title>Systemarchitektur</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/systemarchitektur/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/systemarchitektur/</guid>
      <description>Ziel dieses Dokuments ist es, dem Leser die Ziele hinter dem Design der Software &amp;ldquo;KalibriWare&amp;rdquo; nahezubringen. Dazu wird zuerst ein Überblick über die gewünschten Funktionalitäten gegeben, anschließend wird aus diesen Funktionalitäten eine Systemarchitektur abgeleitet und die notwendigen Entscheidungen strukturiert erläutert.&#xA;Bisheriger Stand Bisher werden Kalibrierungen im Kalibrierlabor der CTDI mittels der Software &amp;lsquo;KalibriScript&amp;rsquo; durchgeführt, welche ihr Lebensende erreicht hat. KalibriScript führt den Nutzer durch den Kalibrierprozess diversester Messgeräte und archiviert die erzeugten Kalibrierprotokolle auf einem zentralen Datenspeicher.</description>
    </item>
    <item>
      <title>Designentscheidungen</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/altskripte/design-decisions/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/altskripte/design-decisions/</guid>
      <description>Nicht direkt offensichtliche oder triviale Designentscheidungen, welche getroffen wurden, werden im Folgenden dokumentiert.&#xA;Ausführung der Skripte in Form eines Interpreters in TypeScript Zu Beginn des Projektes wurden verschiedene Ansätze getestet und evaluiert.&#xA;Der erste Ansatz war eine automatische Transpilierung der Altskripte in das neue Skriptformat. Hierzu sollten die Altskripte geparsed und dann mittels Transformationen des AST (Abstract Syntax Tree) transpiliert werden. Es stellte sich jedoch heraus, dass das automatische Parsen des Bestandes an Altskripten ein aussichtloses Unterfangen ist.</description>
    </item>
    <item>
      <title>Messplatz im OLP einrichten</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/create-workplace/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/create-workplace/</guid>
      <description>Um einen neu eingerichteten Messplatz erstmalig zu konfigurieren, bitte folgende Schritte vornehmen:&#xA;Messplatz anlegen Name: Frei wählbarer Name für den Messplatz Kalibrierscheinpräfix: Buchstabe, welcher für die Eindeutigkeit den Kalibrierscheinen, welchen an diesem Messplatz erstellt wurden, vorangestellt wird. Rechner: Alle verfügbaren Rechner aus Schritt 1, welche an den Messplatz gekoppelt sein können. Anmerkung: Ein Rechner kann immer nur genau einem Messplatz zugeordnet sein - wird der Rechner für einen anderen Messplatz zugeordnet, so wird die Zuordnung überschrieben.</description>
    </item>
    <item>
      <title>Messplatz ist belegt</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/fehlersuche/node-occupied/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/fehlersuche/node-occupied/</guid>
      <description>In seltenen Ausnahmefällen kann es vorkommen, dass ein Messplatz als &amp;ldquo;belegt&amp;rdquo; angezeigt wird, obwohl er das nicht ist. Achtung: Das Vorgehen in diesem Abschnitt kann zu schwerwiegenden Fehlern im System führen, falls es nicht korrekt oder in der falschen Situation durchgeführt wird&#xA;Lösung: Löschen des passenden Jobs&#xA;Empfohlenes Vorgehen: k9s öffnen Master Node auswählen (optional) :jobs eingeben, falls keine Jobs angezeigt werden 0 drücken Finden des passenden Jobs mittels d (describe) Löschen mittels CTRL+d </description>
    </item>
    <item>
      <title>Workflow</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/workflow/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/workflow/</guid>
      <description>Workflow Jeder Werkstattauftrag durchläuft den folgenden Workflow:&#xA;Dabei wird basierend auf dem Servicekennzeichen am Anfang entschieden, ob ein Gerät kalibriert, repariert oder sowohl kalibriert als auch repariert werden muss. Falls bereits am Prozesseingang klar ist, dass das Gerät eine Reparatur benötigt, so wird diese zuerst vorgenommen.&#xA;Falls das Gerät kalibriert werden soll, die Kalibrierung aber fehlschlägt, wird das Gerät zwischengeparkt und die Zustimmung zur Reparatur eingeholt.&#xA;Falls ein Gerät nicht vor Ort repariert oder Kalibriert werden kann, wird das Gerät zum Hersteller (Vendor) gesendet.</description>
    </item>
    <item>
      <title>Kombinationsskripte für Gerätefamilien entwickeln</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/skript-weiterverwendung/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/skript-weiterverwendung/</guid>
      <description>Einführung Anders als im alten Kalibriscript gibt es in kalibriware die Möglichkeit, Skripte basierend auf dem Prüfling und/oder dem Auftrag zu verändern. Ein sehr gutes Beispiel dafür ist, Gerätefamilien zu kalibrieren. Beispielsweise könnte eine Gerätefamilie aus Geräten mit verschiedenen Optionen kombinierbar sein, sodass basierend auf dem Prüfling diverse Optionen kalibriert werden müssen.&#xA;Dies soll im folgenden näher beleuchtet werden.&#xA;Skript-Anpassung Um ein Skript für mehrere Prüflinge zu schreiben, müssen wir zunächst an die Information, welcher Prüfling vorliegt, kommen.</description>
    </item>
    <item>
      <title>Architektur und Funktionsweise</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/altskripte/architecture-and-inner-workings/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/altskripte/architecture-and-inner-workings/</guid>
      <description>Bis auf wenige Ausnahmen ist der Quellcode für den legacy-interpreter in src/legacy-runtime zu finden.&#xA;Zeilenbasierte Behandlung von Skripten und Makros Grundsätzlich arbeitet der Interpreter zeilenbasiert, da dies auch die Operationsweise des alten Kalibri-Skript ist. Jede Zeile wird dabei als einzeler Buffer abgebildet.&#xA;Anbindung an die neue Laufzeitumgebung - legacy-script.ts In der Datei src/script-api/legacy-script.ts wird die Klasse LegacyScriptEngine implementiert. Die LegacyScriptEngine ist ein Wrapper und bindet den Legacy-Interpreter an die neue Laufzeitumgebung an (Ausführung und Fehlerbehandlung).</description>
    </item>
    <item>
      <title>Auftragsübersicht / Dashboard</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/dashboard/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/dashboard/</guid>
      <description>Die folgende Grafik zeigt den Einstiegs-Bildschirm.&#xA;Die Liste der Aufträge ist der Haupt-Einstiegspunkt um mit dem System zu arbeiten.&#xA;Standardmäßig wird dabei eine Liste aller Aufträge geladen, und dem Benutzer alle möglichen Aktionen signalisiert. Die möglichen Aktionen folgen der Prozessbeschreibung unter Workflow.&#xA;Am oberen Rand sind diverse Schnell-Filter zur Auswahl:&#xA;Überfällig - Zeigt alle Aufträge, bei denen die Deadline abgelaufen ist und die nicht in einem pausierten Zustand sind. Offen - Zeigt alle Aufträge, welche bereit zur Bearbeitung sind In Bearbeitung - Zeigt alle Aufträge, welche aktuell in Kalibrierung oder in Reparatur sind On Hold - Zeigt alle Aufträge, die aktuell im Vendor oder im Pause status sind, bei denen keine Deadline gesetzt ist.</description>
    </item>
    <item>
      <title>Benutzer anlegen</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/create-new-user/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/create-new-user/</guid>
      <description>Benutzer anlegen Um einen neuen Benutzer anzulegen, muss man sich zuerst einmal im Kalibri-UI als Administrator anmelden, anschließend dort unter Administration den Punkt &amp;lsquo;Benutzer und Gruppen&amp;rsquo; auswählen.&#xA;Danach öffnet sich die Seite der Benutzerverwaltung, dort muss &amp;lsquo;Add User&amp;rsquo; geklickt werden:&#xA;Ausgefüllt werden müssen mindestens ein Benutzername, EMail, First Name (Vorname) und Last Name (Nachname), sowie die Gruppen. Der Schalter Email verified muss auf Yes gesetzt werden.&#xA;Um den Benutzer zu den entsprechenden Gruppen einzuladen, einmal auf Join Groups klicken und dann die entsprechenden Gruppen anhaken und mit Join bestätigen.</description>
    </item>
    <item>
      <title>Script-Engine Logs</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/fehlersuche/script-engine-logs/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/fehlersuche/script-engine-logs/</guid>
      <description>In gewissen Fällen kann es hilfreich sein, live bei der Ausführung der Skript Engine die relativ umfangreichen Logs mitzuverfolgen.&#xA;Empfohlenes Vorgehen: k9s öffnen Master Node auswählen (optional) :jobs eingeben, falls keine Jobs angezeigt werden 0 drücken Finden des passenden Jobs mittels d (describe) Durchnavigieren bis zum &amp;ldquo;runtime&amp;rdquo; Container (das ist die Skript Engine) Es sollten nun logs angezeigt werden. Falls nicht kann das Drücken von 0 (oder 2-5 Abhilfe schaffen) Alternatives Vorgehen: Alternativ kann der &amp;ldquo;runtime&amp;rdquo; Pod auch über die Nodes gefunden werden (Nodes -&amp;gt; passenden Node auswählen -&amp;gt; Pod mit calibration-{UUID} -&amp;gt; Container mit runtime)</description>
    </item>
    <item>
      <title>Auftragsdetails</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/order-details/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/order-details/</guid>
      <description>Auf der Auftrags-Details-Seite können weitere Änderungen am Auftrag gemacht werden:&#xA;Zeitbuchungen stornieren Teilebuchungen stornieren Kalibrierscheine für ältere/fehlgeschlagene Kalibrierungen herunterladen Auftrag pausieren extra Zeiten buchen SAP-Exportdatum zurücksetzen/manuell setzen Status / Deadline manuell überschreiben Servicetag ändern Historie Auf der linken Seite unter den Aktionen befindet sich die Historie, dabei wird von oben nach unten ein Zeitstrahl dargestellt, wer wann den Auftrag in welchen Status verschoben hat.&#xA;Tabellen Teilebuchungen - dabei kann eine Teilebuchung, sofern der Auftrag nicht im Status &amp;ldquo;SAP-Export&amp;rdquo; oder &amp;ldquo;Archiviert&amp;rdquo; ist, wieder durch drücken des Mülleimer-Icons storniert werden.</description>
    </item>
    <item>
      <title>Verwaltung von Standards</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/standards-admin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/standards-admin/</guid>
      <description>Einführung Kalibriware erlaubt es, Standards fast vollständig frei zu definieren. Details zur codetechnischen Umsetzung sind im Bereich Skriptentwicklung zu finden.&#xA;Standards können entweder aktiv oder passiv sein. Ein Standard ist aktiv, wenn er Code zugeordnet hat (Treiberdatei / Klasse). Ein Standard ist passiv, wenn keinen Code zugeordnet hat.&#xA;Aktive Standards sind dazu gedacht, die Modularität des Quellcodes zu unterstützen, indem Funktionalität gekapselt wird und einfach angefordert werden kann. Gleichzeitig wird mit einer Anforderung der Funktionalität eines Standards selbiger auch automatisch in das Protokoll aufgenommen, was Fehlerpotential minimiert.</description>
    </item>
    <item>
      <title>SAP-Anbindung</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/sap/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/sap/</guid>
      <description>Das OLP ist an das SAP angebunden. Da es sich hier um komplexe betriebliche Prozesse handelt, sind einige Punkte zu beachten.&#xA;SAP-Export / Rückmeldung SAP-Export beschreibt die Richtung vom OLP ins SAP, das OLP übermittelt also Daten an das SAP. Es findet eine Rückmeldung an das SAP statt. Die technischen Spezifikationen für den SAP-Export sind unter Systemadministration / SAP Import &amp;amp; Export Spezifikation dokumentiert.&#xA;Das Auslösen des SAP-Exports ist aus den Status &amp;ldquo;Reparatur abgelehnt&amp;rdquo; und &amp;ldquo;Abgeschlossen&amp;rdquo; möglich.</description>
    </item>
    <item>
      <title>Verwaltung von Prüflingen</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/dut-admin/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/dut-admin/</guid>
      <description>Erstellung und Verwaltung von Prüflingen Die Verwaltung von Prüflingen passiert in Administration -&amp;gt; Prüflinge. Prüflinge werden ggf. beim Import von Aufträgen aus dem SAP automatisch erstellt.&#xA;Auf der Hauptseite findet sich eine Liste der Prüflinge. Durch die Buttons können Prüflinge editiert, Messplätzen zugeordnet die Entwicklungsumgebung geöffnet werden. Anlegen neuer Prüflinge Ein Prüfling kann in der GUI wie folgt angelegt werden.&#xA;Korrektes Eintragen der Skripte Prüflinge haben zwei Arten von Skripten: Kalibrierskripte und Prüfskripte.</description>
    </item>
    <item>
      <title>Administration &amp; Stammdaten</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/administration/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/benutzerdokumentation/administration/</guid>
      <description>Zusätzlich zur Auftragsbearbeitung können in kalibriware noch diverse Stammdaten bearbeitet und eingesehen werden.&#xA;Für Detailliertere Informationen zu den Prüflingen, Standards und Messplätzen bitte auch den Abschnitt Systemadministration beachten!&#xA;Kunden Über diese Tabelle können Kunden manuell bearbeitet und angelegt werden. Normalerweise werden neue Kunden beim erstmaligen Vorkommen automatisiert aus dem SAP importiert. Im Bearbeiten-Dialog, welcher über den Bleistift erreicht werden kann, können alle Angaben des Kunden bearbeitet werden.&#xA;Prüflinge Über diese Tabelle können Prüflinge bearbeitet und angelegt werden.</description>
    </item>
    <item>
      <title>SAP Import &amp; Export Spezifikation</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/sap-import-export/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/systemadministration/sap-import-export/</guid>
      <description>Grundbegriffe Die Begriffe Import und Export sind immer aus Sicht des OLP. Import bezeichnet also die Richtung von SAP zu OLP. Export bezeichnet die Richtung von OLP zu SAP.&#xA;Import erfolgt über einen FTP-Server (Username sap-uploader, Passwort aus Sicherheitsgründen nicht hier dokumentiert) in das Root-Verzeichnis. Es darf ausschließlich der sap-uploader Benutzer genutzt werden, da ansonsten Hooks nicht ausgeführt werden. Sobald der Import erfolgreich ausgeführt wurde, wird die hochgeladene Datei automatisch gelöscht.</description>
    </item>
    <item>
      <title>Treiberentwicklung</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/treiberentwicklung/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/skriptentwicklung/treiberentwicklung/</guid>
      <description>Einführung In kalibriware können Standards mit einem &amp;lsquo;Treiber&amp;rsquo; versehen werden. Das Ziel dazu ist ähnlich zum bestehenden Makrosystem in KalibriScript gemeinsam genutzte Funktionalitäten zu abstrahieren und Hardware einfacher austauschbar zu machen.&#xA;Dazu wird pro Standard eine Klasse mit gerätespezifischem Code geschrieben, welche oft genutzte Funktionalitäten in einer geteilten, abstrakten Schnittstelle implementiert.&#xA;Im Folgenden wird die Funktion am Beispiel eines Multimeters demonstriert.&#xA;Am mächtigsten ist diese Funktion, wenn die Gerätespezifika vollständig abstrahiert sind, also zum Benutzer hin das eigentliche Gerät nicht mehr sichtbar ist.</description>
    </item>
    <item>
      <title>Anpassung Kalibrierscheine &amp; Protokolle</title>
      <link>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/kalibrierscheinanpassung/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://ctdi.pages.deinstapel.de/kalibriware/dokumentation/docs/entwicklerdokumentation/kalibrierscheinanpassung/</guid>
      <description>Quelltext Der Quellcode zur Protokollerzeugung ist im Projekt &amp;ldquo;protocol-server&amp;rdquo; verankert. Aktuell ist das Projekt hier zu finden.&#xA;Der Protocol-Server basiert im Kern auf den Frameworks React und Chromium. React ist ein UI Framework, welches auch für das normale Web-Frontend des OLP genutzt wird. Der Protocol-Server ist an sich also auch eine Web-Applikation, d.h. der Kalibrierschein wird als Website gerendert und danach durch Chromium über programmatisches Ansprechen der &amp;ldquo;Print-to-PDF&amp;rdquo; Schnittstelle ein PDF umgewandelt.</description>
    </item>
  </channel>
</rss>
