FIELDTYPE gibt eine ganze Zahl zurück, die den Typ des durch Feldreferenz
bezeichneten Feldes angibt. Dabei handelt es sich um den Typ des Feldes und nicht um den Datentyp
des Feldes, das der Parameter bezeichnet. Wenn der Parameter ein nicht vorhandenes Element
bezeichnet, wird NULL zurückgegeben.
Die Zuordnung von ganzzahligen Werten zu Feldtypen wird
nicht veröffentlicht und kann sich von Release zu Release ändern. Vergleichen Sie die Ergebnisse
der Funktion FIELDTYPE mit benannten Feldtypen.
Die benannten Feldtypen, die Sie in diesem Kontext verwenden können, werden
unten aufgelistet.
Anmerkung: Die ersten vier sind domänenunabhängig; die XML.*-Typen sind auf XML-,
XMLNS-, JMSMap- und JMSStream-Domänen anwendbar, außer XML.Namespace, bei dem es sich um einen
spezifischen Typ der XMLNS-Domäne handelt.
Bei Angabe dieser Typen muss die hier
gezeigte Schreibweise eingehalten werden (Groß-/Kleinschreibung beachten):
- Name
- Value
- NameValue
- MQRFH2.BitStream
- XML.AsisElementContent
- XML.Attribute
- XML.AttributeDef
- XML.AttributeDefDefaultType
- XML.AttributeDefType
- XML.AttributeDefValue
- XML.AttributeList
- XML.BitStream
- XML.CDataSection
- XML.Comment
- XML.Content
- XML.DocTypeComment
- XML.DocTypeDecl
- XML.DocTypePI
- XML.DocTypeWhiteSpace
- XML.Element
- XML.ElementDef
- XML.Encoding
- XML.EntityDecl
- XML.EntityDeclValue
- XML.EntityReferenceStart
- XML.EntityReferenceEnd
- XML.ExternalEntityDecl
- XML.ExternalParameterEntityDecl
- XML.ExtSubset
- XML.IntSubset
- XML.NamespaceDecl
- XML.NotationDecl
- XML.NotationReference
- XML.ParameterEntityDecl
- XML.ParserRoot
- XML.ProcessingInstruction
- XML.PublicId
- XML.RequestedDomain
- XML.Standalone
- XML.SystemId
- XML.UnparsedEntityDecl
- XML.Version
- XML.WhiteSpace
- XML.XmlDecl
- XMLNSC.Attribute
- XMLNSC.BitStream
- XMLNSC.CDataField
- XMLNSC.CDataValue
- XMLNSC.Comment
- XMLNSC.DocumentType
- XMLNSC.DoubleAttribute
- XMLNSC.DoubleEntityDefinition
- XMLNSC.EntityDefinition
- XMLNSC.EntityReference
- XMLNSC.Field
- XMLNSC.Folder
- XMLNSC.HybridField
- XMLNSC.HybridValue
- XMLNSC.PCDataField
- XMLNSC.PCDataValue
- XMLNSC.ProcessingInstruction
- XMLNSC.SingleAttribute
- XMLNSC.SingleEntityDefinition
- XMLNSC.Value
- XMLNSC.XmlDeclaration
Mit Hilfe dieser Funktion können Sie auch ermitteln, ob ein bestimmtes Feld in
einer Nachricht enthalten ist. Verwenden Sie dazu folgendes Format:
FIELDTYPE(Feldreferenz) IS NULL
Wenn das Feld vorhanden ist, wird ein ganzzahliger Wert an die Funktion zurückgegeben, der
den Feldtyp (z. B. Zeichenfolge) angibt. Bei einem Vergleich dieses Wertes mit NULL, lautet das
Ergebnis FALSE. Wenn das Feld nicht vorhanden ist, wird NULL zurückgegeben, so dass das Ergebnis
TRUE lautet. Beispiel:
IF FIELDTYPE(InputRoot.XML.Message1.Name)
IS NULL THEN
// Feld 'Name' nicht vorhanden, Fehleraktion
ausführen....
... weiterer ESQL-Code ...
ELSE
// Feld 'Name' ist vorhanden, Vorgang fortsetzen....
... weiterer ESQL-Code ...
END IF