Die Feldfunktion FIELDTYPE gibt den Typ eines angegebenen Feldes zurück.
Syntax

>>-FIELDTYPE--(--Feldverweis--)--------------------------------><
FIELDTYPE gibt eine ganze Zahl zurück, die den Typ des Feldes darstellt, das durch Feldverweis_für_Quelle angegeben wird. Dabei handelt es sich um den Typ des Feldes, nicht den Datentyp des Feldes, das der Parameter angibt. Wenn der Parameter eine nicht
vorhandene Einheit 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 FIELDTYPE-Funktion mit benannten Feldtypen.
Beispiel:
IF FIELDTYPE(Feldverweis_für_Quelle) = NameValue
THEN ...
Die benannten Feldtypen, die in diesem Kontext verwendet werden können, werden in
diesem Abschnitt aufgeführt. Diese Typen müssen mit der unten gezeigten Großschreibung verwendet
werden.
Folgende Typen sind domänenunabhängig:
- Name
- Value
- NameValue
- MQRFH2.BitStream
- MQRFH2.Field
- MQRFH2C.Field
Die
XML.*-Typen sind gültig für die XML-, XMLNS-,
JMSMap- und JMSStream-Domänen, außer für
XML.NamespaceDecl, bei der es sich um
eine spezifische XML-Domäne handelt.
- XML.AsisElementContent
- XML.Attribute
- XML.AttributeDef
- XML.AttributeDefDefaultType
- XML.AttributeDefType
- XML.AttributeDefValue
- XML.AttributeList
- XML.BitStream
- XML.CDataSection
- XML.Comment
- XML.Content
- XML.DocTypeCommentt
- XML.DocTypeDecl
- XML.DocTypePI
- XML.DocTypeWhiteSpace
- XML.Element
- XML.ElementDef
- XML.Encoding
- XML.EntityDecl
- XML.EntityDeclValue
- XML.EntityReferenceEnd
- XML.EntityReferenceStart
- XML.EntityValue
- XML.ExternalEntityDecl
- XML.ExternalParameterEntityDecl
- XML.ExtSubset
- XML.IntSubset
- XML.NamespaceDecl
- XML.NotationDecl
- XML.NotationReference
- XML.Opaque
- XML.ParameterEntityDecl
- XML.ParserRoot
- XML.ProcessingInstruction
- XML.PublicId
- XML.RequestedDomain
- XML.Standalone
- XML.SystemId
- XML.UnparsedEntityDecl
- XML.Version
- XML.WhiteSpace
- XML.XmlDecl
Die
XMLNSC.*-Typen sind auch
für die XMLNSC-Domäne anwendbar. Dieselben Konstanten können auch mit dem Präfix
SOAP.* versehen werden, damit sie in der SOAP-Domäne verwendet werden können.
- XMLNSC.AnyCData
- XMLNSC.AnyHybrid
- XMLNSC.AnyPCData
- XMLNSC.AnyValue
- XMLNSC.AsisElementContent
- XMLNSC.Attribute
- XMLNSC.base64Binary
- XMLNSC.BitStream
- XMLNSC.CDataField
- XMLNSC.CDataValue
- XMLNSC.Comment
- XMLNSC.DocumentType
- XMLNSC.DoubleAttribute
- XMLNSC.DoubleEntityDefinition
- XMLNSC.DoubleNamespaceDecl
- XMLNSC.Element
- XMLNSC.EntityDefinition
- XMLNSC.EntityReference
- XMLNSC.Field
- XMLNSC.Folder
- XMLNSC.gDay
- XMLNSC.gMonth
- XMLNSC.gMonthDay
- XMLNSC.gYear
- XMLNSC.gYearMonth
- XMLNSC.HybridField
- XMLNSC.HybridValue
- XMLNSC.NamespaceDecl
- XMLNSC.Opaque
- XMLNSC.PCDataField
- XMLNSC.PCDataValue
- XMLNSC.ProcessingInstruction
- XMLNSC.SingleAttribute
- XMLNSC.SingleEntityDefinition
- XMLNSC.SingleNamespaceDecl
- XMLNSC.Value
- XMLNSC.XmlDeclaration
Sie können mit dieser Funktion auch bestimmen, ob ein Feld in einer Nachricht vorhanden ist. Verwenden Sie dazu folgendes Format:
FIELDTYPE(Feldverweis) IS NULL
Wenn das Feld vorhanden ist, wird an die Funktion ein ganzzahliger Wert zurückgegeben, der den Feldtyp angibt (z. B. Zeichenfolge). Wenn dieser Wert mit NULL verglichen wird, wird das Ergebnis 'FALSE' zurückgegeben. Wenn das Feld nicht vorhanden ist, wird NULL zurückgegeben, d. h., das Ergebnis ist 'TRUE'. Beispiel:
IF FIELDTYPE(InputRoot.XMLNS.Message1.Name)
IS NULL THEN
// Name field does not exist, take error
action....
... more ESQL ...
ELSE
// Name field does exist, continue....
... more ESQL ...
END IF