convertToIContainer
Versionshinweise | 20.1.3, 20.2 |
---|
Code
IContainer convertToIContainer(String entityName, Map<String, Object> values)
Beschreibung
Erstellt eine IContainer Variable bestehend aus den Feldern der übergebenen Map, die wiederum z.B. aus einem JSON String konvertiert wurde. Die Datenwerte werden gegen die Feldeigenschaften geprüft und ggf. umgewandet.
Ungültige oder fremde Felder werden ignoriert. Ungültige Daten führen zu einer ScriptingException
.
- BigDecimal-Werte werden, falls notwendig, in Integer, Long oder Double gewandelt.
- Datumswerte müssen im ISO 6801 Format vorliegen, z.B. 2020-02-02T20:20:20+01:00.
- Bei Nachschlagewerten ist der Primärschlüssel anzugeben. Schlüsselwerte werden nicht validiert.
Parameter
- entityName - Der Entitätsname des neuen Datensatzes.
- values - Die Feldnamen der Wertepaare können, müssen aber nicht, den Entitätsnamen enthalten.
Rückgabe
Der neue Datensatz als IContainer
.
Beispiele
/*String json = {
"Subject" : "Mein Betreff",
"Text.Activity": "<html><body><p>Mein Text</p></boby></html>",
"StartDate" : "2020-02-02T20:20:20+01:00",
"EndDate" : "2020-02-02T20:35:20+01:00",
"ActStatusKey" : "S_ACTTYPE-E",
"ActTypeKey" : "S_ACTSTATUS-O",
"DelegatedBy" : "ged-personpkTechUser#TechUser",
"DelegatedTo" : "ged-personpkTechUser#TechUser",
"IsTaskRead" : true,
"ContactCosts" : 1,
"FreeNumber1" : 1.23456789
}*/
// Umwandung von JSON in eine Map, die in einen IContainer, der eine Aktivität repräsentiert, umgewandelt wird
Map<String, Object> map = JsonUtils.toMap(json);
IContainer activity = WorkSpaceScriptUtils.convertToIContainer("Activity", map);
// Der IContainer kann anschließend weiterverarbeitet werden
IScriptWorkSpace ws = WorkSpaceScriptUtils.createEmptyWorkSpace("Activity");
activity = WorkSpaceScriptUtils.createEntry(ws, 0, activity);