TbeCbStructureImportExport
TbeCbStructureImportExport
Die Klasse TbeCbCustomizingImportExport ermöglicht das Import und Export von sämtlichen Datenbestandsinformationen mithilfe von JSON.
Eigenschaften | Beschreibung |
---|---|
CanOverwriteExistingData:L | Entscheidet, ob Daten beim Import überschrieben werden können. Default = false |
Funktionen | Parameter | Beschreibung |
---|---|---|
LoadFromTable - Lädt alle Informationen des Customizing- | aTable:O | Tabelle |
aFieldName:C | Feldname | |
LoadFromFile - Lädt alle Informationen des Customizing- Objekts aus einen Feld einer Tabelle. | aFileName:C | Pfad + Dateiname |
SaveToFile - Speichert alle Informationen des Customizing-Objekts | aFileName:C | Pfad + Dateiname |
aOverwrite:L | Soll die Datei, falls sie existiert, überschrieben werden? true = überschreibt die Datei, false = Exception, falls Datei vorhandenen | |
GetObject - Gibt den Customizing-Objekt zurück. Rückgabe: TbeCbAnything | aCopy:L | false = der Objekt wird intern freigegeben true = der Objekt ist eine Kopie und muss daher in Codeblock freigegeben werden (DestroyObject()) Achtung: Änderungen an diesem Objekt haben am Original-Customizing-Objekt keine Auswirkung! |
AttributeTables.LoadFromDatabase - Lädt Merkmalstabellen- | aOnlyUseIDs:A | Array mit MMT-ID's, die bearbeitet werden. Falls leer, werden alle in der DB vorhandene MMT hergenommen |
aDontUseIDs:A | Array mit MMT-ID's, die übersprungen werden sollten. Falls leer, werden keine MMT entfernt. | |
AttributeTables.SaveToDatabase - Schreibt Merkmalstabellen- Informationen aus Customizing-Objekt in die Datenbank | aOnlyUseIDs:A | Array mit MMT-ID's, die bearbeitet werden. Falls leer, werden alle aus Datei/Tabellenfeld geladene MMT hergenommen |
aDontUseIDs:A | Array mit MMT-ID's, die übersprungen werden sollten. Falls leer, werden keine MMT entfernt. |
Beispiel
//******************************************************************************
function Load(aAttribOnlyUseIDs, aAttribDontUseIDs)
| myCustomizing, myObject |
myCustomizing := CreateObject('TbeCbStructureImportExport'),
startseq
// gesamtes Customizing aus einer Datei laden
myCustomizing.LoadFromFile('C:\temp\input.json'),
// Was steht im Objekt?
myObject := myCustomizing.GetObject(false),
WriteLn(myObject.ToFormattedString()),
// Merkmalstabellen in DB importieren
myCustomizing.AttributeTables.SaveToDatabase(aAttribOnlyUseIDs, aAttribDontUseIDs),
always
DestroyObject(myCustomizing),
stopseq,
end,
//******************************************************************************
function Save(aAttribOnlyUseIDs, aAttribDontUseIDs)
| myCustomizing, myObject |
myCustomizing := CreateObject('TbeCbStructureImportExport'),
startseq
// Merkmalstabellen aus DB exportieren
myCustomizing.AttributeTables.LoadFromDatabase(aAttribOnlyUseIDs, aAttribDontUseIDs),
// TODO: Table - Datenbank-Tabellen exportieren
// myCustomizing.Table.LoadFromDatabase({600, 601}, {}),
// Was steht im Objekt?
myObject := myCustomizing.GetObject(false),
WriteLn(myObject.ToFormattedString()),
// Exportierten Objekt in Datei Speichern
myCustomizing.SaveToFile('C:\temp\output.json', true),
always
DestroyObject(myCustomizing),
stopseq,
end,
Save({8024, 8025}, {}),
Load({}, {}),