Función FIELDTYPE

La función de campo FIELDTYPE devuelve el tipo de un campo proporcionado.

Sintaxis

FIELDTYPE devuelve un entero que representa el tipo del campo identificado por referencia_campo_origen; es el tipo del campo, no el tipo de datos del campo que el parámetro identifica. Si el parámetro identifica una entidad inexistente, se devuelve NULL.

La correlación de valores de entero con tipos de campo no se publica y podría cambiar de un release a otro. Compare los resultados de la función FIELDTYPE con tipos de campo con nombre.

Por ejemplo:
IF FIELDTYPE(referencia_campo_origen)
= NameValue
	THEN ...
Los tipos de campo con nombre que se pueden utilizar en este contexto se lista a continuación.
Nota: Los cuatro primeros son independientes del dominio; los tipos XML.* son aplicables a los dominios XML, XMLNS, JMSMap y JMSStream, salvo XML.Namespace que es específico del dominio XMLNS.
Debe utilizar estos tipos con las mayúsculas y minúsculas que se muestran:
  • 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
Inicio del cambioTambién puede utilizar esta función para determinar si existe un campo en un mensaje. Para ello, utilice el formulario:
FIELDTYPE(SomeFieldReference) IS NULL
Fin del cambio
Inicio del cambioSi el campo ya existe, se devuelve un valor entero a la función que indica el tipo de campo (por ejemplo, string). Cuando se compara con NULL, el resultado es FALSE. Si el campo no existe, se devuelve NULL y, por consiguiente, el resultado es TRUE. Por ejemplo:
  IF FIELDTYPE(InputRoot.XML.Message1.Name)
      IS NULL THEN
  // El campo Name no existe, toma error
  acción....
  ... más ESQL ...
  ELSE
  // El campo Name no existe, continuar...
  ... más ESQL ...
  END IF
Fin del cambio

Conceptos relacionados
ESQL

Tareas relacionadas
Desarrollo de ESQL

Referencia relacionada
Preferencia de sintaxis
Funciones de campo ESQL