Basis-Services

Service DeleteBo - Business Objekt löschen

Hinweis
Hinweis
Eine vollständige Beschreibung der BIZ-Services finden Sie hier: BIZ-Services Übersicht

Port: Biz

Beschreibung

Dieser Service löscht ein oder mehrere BOs des gewählten BO-Typs. In Abhängigkeit vom gewählten BO-Typ kann zusätzlich ein Index gewählt werden. Alle anderen Such-Anweisungen siehe 'GetBo'. Hinweis: Nicht bei allen auswählbaren BO-Typen können BOs gelöscht werden. (So z.B. das BO: Addr) Beim Versuch ein solchess BO zu löschen, wird die Meldung „DeleteBo ist not available for ….“ ausgegeben.

Argumente

Nr.
Key
Name
Beschreibung
1
Bo
Businessobjekt
Startparameter 'Businessobjekt' für Service 'DeleteBo'.
2
StartKeys
Startpunkt
Startparameter 'Startpunkt' für Service 'DeleteBo'. Die einzelnen Indexsegmente werden durch Kommas voneinander getrennt.
3
SearchOperationCd
Suchanweisung
Startparameter 'Suchanweisung' für Service 'DeleteBo'. Meistens wird hier die Suchanweisungen 'e'=gleich verwendet.
4
BoIndex
BO-Index
Startparameter 'BO-Index' für Service 'DeleteBo'. Defaultindex ist der Objekt-ID-Index.
5
FixedSegsOfBoIndex
Fixierte Indexsegmente
Startparameter 'Fixierte Indexsegmente' für Service 'DeleteBo'. Anzahl der beim Startpunkt (StartKeys) fixierten Indexsegmente.
6
IsTest
Testlauf
Startparameter 'Testlauf' des Service 'DeleteBo'. Mit einem Testlauf können Sie sehen, welche Businessobjekte gelöscht würden. Da alle Überprüfungen wie beim scharfen Durchgang vorgenommen werden, ist es auch möglich, evtl. aufgetretene Fehler schon im voraus zu bereinigen. Bei serienmässigem Löschen (Filter!) empfehlen wir sehr, vorher einen Testlauf durchzuführen.
7
WithReport
Protokoll
Startparameter 'Protokoll' für Service 'DeleteBo'. Hier kann angegeben werden, ob der Löschvorgang protokolliert werden soll oder nicht.
8
Filter
Filter
Startparameter 'Filter' für Service 'DeleteBo'. Selektionsfunktion in Form von einem logischen Ausdruck, z.B. 'Addr.CountrySc = 'CH' and (Addr.LangNo = 3 or Addr.LangNo = 5)'.
9
ResultObject
Rückgabe-Objekt
Startparameter 'Rückgabe-Objekt' für Service 'DeleteBo'. Definiert, welche Attribute im Rückgabe-Objekt enthalten sein müssen. Defaultmässig werden BoId, BoNumber und BoName sowie bei eingeschaltetem Protokoll (WithReport) DeleteBoStateCd und DeleteBoInfo zurückgegeben.
10
NoScript
Kein Script-Aufruf
Kein Script-Aufruf

Rückgabewerte

Nr.
Key
Name
Beschreibung
1
DeleteBoStateCd
Verarbeitungsstatus
Rückgabewert 'Verarbeitungsstatus' des Service 'DeleteBo'. Pro Löschvorgang wird im Verarbeitungsstatus festgehalten, ob das BO gelöscht werden konnte(0), ob ein Fehler aufgetreten ist(1) oder ob das BO gar nicht vorhanden war(2). Der Verarbeitungsstatusist nur bei eingeschaltetem Protokoll (WithReport) sichtbar.
2
DeleteBoInfo
Anmerkung zum Löschvorgang
Rückgabewert 'Anmerkung zum Löschvorgang' des Service 'DeleteBo'. Wenn beim Löschen eines Businessobjekts ein Problem auftritt, wird hier die Fehlerursache(n) aufgeführt. Dieses Feld ist nur bei eingeschaltetem Protokoll (WithReport) sichtbar.

Message Keys

Nr.
Key
Name
Beschreibung
1
Message
DeleteBo.Ek.Message
DeleteBo.Ek.Message

Zusatzinformationen

Suchanweisung

e = gleich
eif = gleich, wenn gefunden
n = nächste
ne = nächste ab hier (wird auch für Redo und List verwendet)
npe = nächste, auffüllen
nep = nächste ab hier, auffüllen
p = vorangehende
pe = vorangehende ab hier
pne = vorangehende, auffüllen
pen = vorangehende ab hier, auffüllen
f = erste
l = letzte

Filter

Filter in Form eines logischen Ausdrucks.
Beispiel: SalDoc.Nr=15544 and SalDoc.Nr=244585 (SalDocItem.ArtNo='A15.00' or SalDocItem.ArtNo='B177.65')
Logische Operatoren:
and = UND
or = ODER
= vergleich
<> ungleich, nicht
> grösser
>= grösser gleich
< kleiner
<= kleiner gleich

Business-Objekte mit eigenen Lösch-Services

Einige Business-Objekte können nicht über den Service DeleteBo gelöscht werden. Für das Löschen dieser Business-Objekte stehen spezielle Services zur Verfügung.
Business-Objekt
Delete Service
Ganze Adresse löschen
Addr_Delete
Addr_Delete_As
Ganze Artikel löschen
Art_Delete
Art_Delete_As
Ganzes Servicedokument löschen
AsstDoc_Delete
Ganzes Verkaufsdokument löschen
SalDoc_Delete
Ganzes Einkaufsdokument löschen
PurDoc_Delete
PosPayment löschen
Dies geht nur mit einer Stonrobuchung.

Beispiel 1

Löschen eines Submengen-Eintrages bei einem Einkaufsdokument:
«XSER(delPurDocObjSer:DeleteBo)»
«XSER(delPurDocObjSer:addArg=PurDocObjSerial)»
«XSER(delPurDocObjSer:addArg=«EDP-DOKINR»,«EDP-INR»,1)»
«XSER(delPurDocObjSer:addArg=e)»
«XSER(delPurDocObjSer:addArg=1)»
«XSER(delPurDocObjSer:addArg=3)»
«XSER(delPurDocObjSer:addArg=0)»
«XSER(delPurDocObjSer:addArg=1)»
«XSER(delPurDocObjSer:addArg=)»
«XSER(delPurDocObjSer:addArg=)»
#
«nXSER(delPurDocObjSer:execute>delPurDocObjSerRes)\A»

# Prüfen des DeleteBoStateCd
«z~XRES(delPurDocObjSerRes:DeleteBoStateCd)=0\N»*> Fehler: «XRES(delPurDocObjSerRes:DeleteBoInfo)»

Beispiel 2

Löschen aller Artikelpool-Einträge:
«X(ArtPoolNr=280)»
#
«XSER(delArtPoolItem:DeleteBo)»
«XSER(delArtPoolItem:addArg=PurDocObjSerial)»
«XSER(delArtPoolItem:addArg=«X(ArtPoolNr)»)»
«XSER(delArtPoolItem:addArg=ne)»
«XSER(delArtPoolItem:addArg=1)»
«XSER(delArtPoolItem:addArg=1)»
«XSER(delArtPoolItem:addArg=0)»
«XSER(delArtPoolItem:addArg=1)»
«XSER(delArtPoolItem:addArg=)»
«XSER(delArtPoolItem:addArg=ArtPoolItem.BoId)»
#
«nXSER(delArtPoolItem:execute>delArtPoolItemRes)\A»

# Prüfen des DeleteBoStateCd
«z~XRES(delArtPoolItemRes:DeleteBoStateCd)=0\N»*> Fehler: «XRES(delArtPoolItemRes:DeleteBoInfo)»