Der Start wird mithilfe des Cúram-Batchstartprogramms ausgeführt; das Tool verfügt über die folgenden Hauptfunktionen:
- Das Tool extrahiert die Konfigurationsinformationen der dynamischen Angaben und speichert sie in Cúram-Standardentwicklungsartefakten (zum Beispiel DMX-, CTX-, XML-BLOB-, XML-CLOB- oder Abschnittskonfigurationsdateien). Die Verarbeitung wird so ausgeführt, dass diese Artefakte im Rahmen einer Datenbankneuerstellung mithilfe des Cúram-Datenmanagers automatisch erneut erstellt werden können.
- Die Ausgabe wird vom Tool in ein einzelnes Verzeichnis geschrieben; hierbei wird erwartet, dass es sich um ein Cúram-Standardkomponentenverzeichnis handelt (zum Beispiel 'custom'). In diesem Verzeichnis werden zum Beispiel Unterverzeichnisse wie 'codetable', 'data' oder 'tab' erstellt.
- Das Extrahieren von Datenbanksätzen mit ihren generierten Primärschlüsseln stellt ein potenzielles Risiko für Schlüsselkonflikte dar, wenn die Datensätze hochgeladen werden. Der Grund hierfür ist, dass der Schlüsselgenerierungsmechanismus bei einer Neuerstellung der Datenbank zurückgesetzt wird und es somit sehr wahrscheinlich ist, das dieselben Schlüssel wie die in den extrahierten dynamischen Angabentypen generiert werden. Um dies zu vermeiden, ersetzt der Extraktor die generierten Primärschlüssel der Datenbank durch neue Schlüssel aus einem vordefinierten Bereich. Der Schlüsselbereich wird auf jede extrahierte Tabelle einzeln angewendet und nicht für alle Tabellen gemeinsam genutzt (auf diese Art werden die Schlüssel effektiver genutzt). Nur die beiden Tabellen CreoleRuleset und CreoleRulesetEditAction nutzen denselben Schlüsselbereich, weil auf beide Tabellen von demselben Feld in Tabelle CreoleRulesetCategoryLink verwiesen wird.
- Konfigurationsdateien für Registerkarten (für generierte Angabenregisterkarten) werden als große Binärobjekte (BLOBs) im Rahmen der Extrahierung der Entität AppResource extrahiert. Konfigurationsdateien für Abschnitte können nicht als einzelne BLOBs extrahiert werden. Sie werden als Ergänzungsabschnittsdateien extrahiert (und im Ordner 'tab' gespeichert), sodass sie mit anderen komponentenspezifischen Abschnittsdateien für eine Datenbankerstellung zusammengeführt werden können.
- Vom Tool werden optional auch Links dynamischer Angaben zu Produkten und integrierten Fällen extrahiert; die Konfiguration hierfür erfolgt unter Verwendung der Eingabeparameter des Extraktors. Beachten Sie, dass vom Extraktor nicht die Konfigurationsinformationen von Produkten oder integrierten Fällen extrahiert werden, sondern nur die Links zu ihnen.
- Vom Extraktor werden drei Extraktionsstrategien implementiert (welche verwendet wird, hängt von den Eingabeparametern ab):
- Alle dynamischen Angabentypen extrahieren: Alle aktiven dynamischen Angabentypen auf dem System werden extrahiert.
- Liste der dynamischen Angabentypen extrahieren: Diese Strategie ermöglicht Benutzern das Angeben einer Liste mit dynamischen Angabentypen, die extrahiert werden sollen (mithilfe einer Liste von logischen Namen der Angabentypen).
- Gruppe dynamischer Angabentypen mit einem Angabentypcodepräfix extrahieren: Mit einem aus drei Zeichen bestehenden, anpassbaren Präfix (zum Beispiel 'DET') werden Codes für dynamische Angabentypen generiert. Diese Extraktionsstrategie ermöglicht es Benutzern, nur die dynamischen Angabentypen zu extrahieren, die über ein bestimmtes Codepräfix verfügen.
- Dynamische Angabentypen verfügen über lokalisierbare Beschreibungen. Vor Cúram Version 6.0, Service-Pack 2, wurden die Beschreibungen für alle dynamischen Angabentypen auf dem System in einer einzigen Eigenschaftendatei (DynEvd_EvidenceTypeDescriptions.properties) in der Entität AppResource gespeichert. In Cúram Version 6.0, Service-Pack 2, wurde dieses Verfahren geändert; die Beschreibungen der dynamischen Angabentypen werden jetzt in einzelnen Eigenschaftenressourcen gespeichert, jeweils eine pro Angabentyp. Wenn vom Extraktor die alte Eigenschaftendatei mit den Angabenbeschreibungen gefunden wird, wird diese in die einzelnen Eigenschaftendateien aufgeteilt, die für jeden einzelnen Angabentyp spezifisch sind.
- Vom Extraktor wird der Schlüsselsatz (DYNEVDCODE) extrahiert, der zum Generieren der Codes für den dynamischen Angabentyp verwendet wird (dabei wird die nächste eindeutige Block-ID für diesen Schlüsselsatz beibehalten). Von den dynamischen Angaben wird die Cúram-Schlüsselserverfunktion zum Generieren von lesbaren Schlüsseln verwendet. Diese wird zum Generieren von Codetabellencodes für dynamischen Angabentypen verwendet. Wenn die Datenbank zurückgesetzt wird, wird auch das Verfahren für die Schlüsselerstellung zurückgesetzt; aus diesem Grund ist es wahrscheinlich, dass Schlüssel generiert werden, die mit früher generierten Schlüsseln Konflikte verursachen. Dies wird am Besten durch die Beibehaltung des Status des Schlüsselsatzes für die dynamischen Angaben vermieden, der zum Generieren der Codetabellencodes für die Angabentypen verwendet wird.
- Vom Extraktor werden sowohl aktive als auch in Bearbeitung befindliche Angabentypversionen extrahiert.
- Eine Reihe von Regelwerken, die sich auf Angabentypversionen beziehen, wird extrahiert: generierte Daten- und Verarbeitungsregelwerke sowie angepasste Regelwerke (berechnete Attribute, Validierungen, zusammengefasste Informationen). Angepasste Regelwerke können von Kunden bearbeitet werden. Neu erstellte, angepasste Regelwerke werden vom Tool extrahiert (zusammen mit den in Bearbeitung befindlichen Angabentypversionen). Alle für Veröffentlichungen an angepassten Regelwerken vorgenommenen Änderungen werden jedoch erst vom Extraktor berücksichtigt, wenn die Änderungen veröffentlicht wurden.
- Vom Extraktor werden nicht lokalisierbare Ressourcenpakete extrahiert, auf die von Regelwerken verwiesen wird. In Regelwerken können lokalisierbare Ressourcennachrichten enthalten sein, die in Ressourcenpaketen in der Entität AppResource gespeichert sind. Wenn Benutzer solche Nachrichten in angepassten Regelwerken verwenden möchten, müssen Sie die Extrahierung der enthaltenden Ressourcenpakete manuell durchführen.
- Der Extraktor kann entweder in der Befehlszeile oder in der Eclipse-Entwicklungsumgebung ausgeführt werden.
- Vor dem Hochladen extrahierter Artefakte in die Datenbank müssen die Codetabellen erneut generiert werden (über das Ziel ctgen oder eine Servererstellung), damit die extrahierten Codetabellencodes für die dynamischen Angabentypen eingeschlossen sind.