Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Auszug
hiddentrue

Nuclos REST ändern: PUT, self, subBos, insert, update, delete, Unterformular, Referenzattribut, JSON.

globe with meridians Sprache: Deutsch · English

hammer and wrench 6. Businessobjekt (BO) ändern

BO über REST ändern – PUT auf self, Unterformulare per subBos insert/update/delete.

Status
colourPurple
titleHow-to
Status
colourBlue
titleEntwickler
Status
colourGreen
titleStand: Jul 2026
Status
colourGrey
titlegilt fuer Nuclos 4.2026.x

Panel
bgColor#F4F5F7

Auf dieser Seite

Inhalt
maxLevel2
minLevel

...

2

Ein gelesenes Objekt

...

Unterformulare bearbeiten

Eine Besonderheit bilden Unterformulardatensätze. Da Unterformulare aus Performancegründen nicht zusammen mit dem BO gelesen werden können, sondern via Links mit eigenen Aufrufen, ist die Struktur leider nicht selbsterklärend.

Die Struktur ist dabei wie folgt:

lässt sich per PUT auf dem self-Link ändern – die Attribute werden wie beim Anlegen bearbeitet (Datentypen siehe Metainformationen).

Unterformulare

Unterformulare werden aus Performancegründen nicht mit dem BO gelesen, sondern über eigene Links. Änderungen werden im Objekt-JSON unter subBos mit insert/update/delete je Referenzattribut übergeben:

Codeblock
languagejson

...

"subBos": {

...

  "insert": {

...

    "{refAttrId}": [

...

      { "boId": null,

...

 "boMetaId": "{boMetaId}",

...

 "attributes": {

...

 ...

...

 } }
    ]
  },
  "update": {

...

    "{refAttrId}": [

...

      { "boId": 

...

123, "boMetaId": "{boMetaId}",

...

 "attributes": {

...

 ...

...

 } }
    ]
  },
  "delete": {

...

 "{refAttrId}": [

...

 456 ] }
}
  • insert: neue Zeilen

insert und update sind von der Struktur her identisch.

Codeblock
titleinsert (Ausschnitt aus einem Businessobjekt JSON)
"subBos": {
	"insert": {
		"{refAttrId}": [

...

  • wie ein normales BO (per Rohling).
  • update: nur die geänderten Zeilen anhängen – unveränderte müssen nicht mitgegeben werden.
  • delete: nur die ids der zu löschenden Zeilen.

Verwandte Seiten

gear 7. Businessobjekt (BO) löschen


Löschen.

Öffnen →

gear 5. Businessobjekt (BO) anlegen


Anlegen.

Öffnen →

erstellt werden. Siehe auch 5. Businessobjekt (BO) anlegen
Codeblock
titleupdate (Ausschnitt aus einem Businessobjekt JSON)
"subBos": {
	"update": {
		"{refAttrId}": [

Die zuvor gesondert gelesenen Unterformulardatensätze, welche geändert werden müssen, werden einfach dem entsprechenden Unterformular-Array hinzugefügt.

Datensätze die nicht geändert werden, können und brauchen auch nicht mitgegeben werden!

 

delete benötigt nur die Ids der zu löschenden Unterformulardatensätze.

Codeblock
titledelete (Ausschnitt aus einem Businessobjekt JSON)
"subBos": {
	"delete": {
		"{refAttrId}": [

Änderung senden

Codeblock
/bos/{boMetaId}/{boId}

Das zu ändernde Objekt muss per PUT an den self Link gesendet werden. 

Beispiel aus dem Rest example: update_order_1012.json und update2_order_1012.json

Die Rückgabe enthält das geänderte Objekt.

Ausführbares Beispiel

Siehe Beispielaufrufe per Shell