Puede utilizar funciones en sus plantillas de formulario de Microsoft Office InfoPath para realizar diversas tareas, tales como el recuento de número de campos o el cálculo de la suma de una columna en un tabla extensible. Utilice funciones en fórmulas (fórmula: expresión XPath formada por valores, campos o grupos, funciones y operadores. Las fórmulas se pueden utilizar para calcular valores matemáticos, mostrar la fecha y la hora, así como los campos de referencia.)que se escriben en el cuadro de diálogo Insertar fórmula para los controles o campos de su plantilla de formulario.
En este artículo
Descripción general de las funciones
Una función de InfoPath es una expresión que devuelve un valor basándose en los resultados de un cálculo. Se utiliza una función en una fórmula que se escribe en el cuadro de diálogo Insertar fórmula. Las funciones constan de tres partes:
Nombre Nombre de la función. Por lo general, el nombre ofrece una sugerencia sobre la acción que realizará la función.
Valor devuelto Resultado de la función.
Argumentos Valores requeridos por la función para realizar el cálculo.
Una función puede requerir o no argumentos para devolver un valor. Si la función requiere argumentos, tendrá que saber cuántos argumentos se requieren y el tipo de datos de cada uno de ellos. La función no funcionará si proporciona el número incorrecto, o tipo, de argumentos requeridos.
Un argumento de una función es una expresión XPath, que es una combinación de valores, funciones y operadores que dan como resultado un valor único. En la siguiente ilustración se muestra la relación entre funciones, expresiones y fórmulas.
Volver al principio
Funciones de fecha y hora
| Función |
Descripción |
Sintaxis |
| addDays |
Devuelve una fecha que es el resultado de agregar el segundo argumento al primero. El tipo de datos del valor devuelto depende del tipo de datos del primer argumento.
- Tipo de datos Fecha (date) que devuelve un tipo de datos Fecha (date).
- Tipo de datos Fecha y hora (dateTime) que devuelve un tipo de datos Fecha y hora (dateTime).
|
addDays(argument1, argument2)
argument1 Segundo argumento se agregará a esta fecha. Este argumento puede ser un tipo de datos Fecha (date) o Fecha y hora (dateTime).
argument2 Número de días que desea agregar al primer argumento. Esta parámetro debe ser un tipo de datos Número entero (integer).
|
| addSeconds |
Devuelve una hora que es el resultado de agregar el segundo argumento al primero. El tipo de datos del valor devuelto depende del tipo de datos del primero.
- Tipo de datos Hora (time) que devuelve un tipo de datos Hora (time).
- Tipo de datos Fecha (date) o Fecha y hora (dateTime) que devuelve un tipo de datos Fecha y hora (dateTime).
|
addSeconds(argument1, argument2)
argument1 Segundo argumento se agregará a esta hora. Esta argumento puede ser un tipo de datos Hora (time), Fecha (date) o Fecha y hora (dateTime).
argument2 Número de segundos que desea agregar al primer argumento. El campo de este parámetro debe ser un tipo de datos Número entero (integer).
|
| now |
Devuelve la fecha y hora en un tipo de datos Fecha y hora (dateTime) cuando se abre el formulario por primera vez. |
now()
Esta función no utiliza argumentos.
|
| today |
Devuelve la fecha en un tipo de datos Fecha (date) cuando se abre el formulario por primera vez. |
today()
Esta función no utiliza argumentos.
|
Volver al principio
Funciones de campo
| Función |
Descripción |
Sintaxis |
| count |
Devuelve el número de instancias del campo o grupo en un formulario. |
count(argument)
argument Nombre del campo o grupo que se incluye en el formulario.
|
| current |
Devuelve el campo o grupo actual en un grupo. Esta función se utiliza para hacer referencia a una fila actual de una tabla o sección extensible dentro de una expresión mayor.
Nota Esta función no está disponible en el cuadro de diálogo Insertar función. Para utilizar esta función, escríbala como una expresión XPath en el cuadro Fórmula del cuadro de diálogo Insertar fórmula.
|
current()
Esta función no utiliza argumentos.
|
| id |
Devuelve la expresión XPath de los campos o grupos que tienen el valor especificado en el atributo id de un campo.
Cuando un usuario rellena un formulario basado en una plantilla de formulario habilitada por explorador, una fórmula que utiliza esta función envía datos del formulario al servidor para obtener el valor devuelto de esa función.
Nota Esta función no está disponible en el cuadro de diálogo Insertar función. Para utilizar esta función, escríbala como una expresión XPath en el cuadro Fórmula del cuadro de diálogo Insertar fórmula.
|
id("argument")
argument Valor del atributo id del campo o grupo. Este valor debe incluirse entre comillas (" ").
|
| last |
Devuelve el valor de la última aparición del campo.
Nota Si está diseñando una plantilla de formulario compatible con el explorador, esta función no aparece en la lista Funciones del cuadro de diálogo Insertar función.
|
field name[last()]
Aunque la propia función no requiere parámetros, se puede utilizar como predicado de un nombre de campo específico.
|
| local-name |
Devuelve el nombre del campo sin el espacio de nombres o el último nombre de la expresión XPath. Si el parámetro es un conjunto de campos o grupos, devuelve el valor del primer campo o grupo.
Cuando un usuario rellena un formulario basado en una plantilla de formulario habilitada por explorador, una fórmula que utiliza esta función envía datos del formulario al servidor para obtener el valor devuelto de esa función.
|
local-name(argument)
argument Nombre del campo cuyo atributo de nombre local desea obtener.
|
| name |
Devuelve el nombre expandido del nombre de campo especificado en el argumento. El nombre expandido contiene el prefijo de espacio de nombres existente y el nombre del campo o grupo especificado. Si el argumento es un conjunto de campos o grupos, la función devuelve el nombre y el prefijo del primer campo o grupo del formulario.
Cuando un usuario rellena un formulario basado en una plantilla de formulario habilitada por explorador, una fórmula que utiliza esta función envía datos del formulario al servidor para obtener el valor devuelto de esa función.
|
name(argument)
argument Nombre del campo cuyo nombre y prefijo de espacio de nombres se desea obtener.
|
| namespace-uri |
Devuelve el identificador uniforme de recursos (URI) (Identificador uniforme de recursos (URI): cadena de caracteres que se utiliza para identificar un recurso en Internet por su tipo y ubicación.) del espacio de nombres completo del argumento. Si el argumento es un conjunto de campos o grupos, la función devuelve el espacio de nombres del primer campo o grupo del formulario.
Cuando un usuario rellena un formulario basado en una plantilla de formulario habilitada por explorador, una fórmula que utiliza esta función envía datos del formulario al servidor para obtener el valor devuelto de esa función.
|
namespace-uri(argument)
argument Nombre del campo cuyo identificador uniforme de recursos (URI) de espacio de nombres se desea obtener.
|
| position |
Devuelve el índice o posición del campo o grupo con respecto al resto de campos o grupos del mismo grupo.
Esta función siempre devuelve 1 cuando se utiliza en una fórmula que tiene un cálculo o que se encuentra en una fórmula de una regla.
Nota Si está diseñando una plantilla de formulario compatible con el explorador, esta función no aparece en la lista Funciones del cuadro de diálogo Insertar función.
|
position()
Esta función no utiliza argumentos.
|
Volver al principio
Funciones matemáticas
Nota Las fórmulas que contienen funciones matemáticas normalmente requieren argumentos que son valores enteros o decimales. Para asegurarse de que los argumentos son valores enteros o decimales y no valores nulos, active la casilla de verificación Considerar los valores en blanco como cero de la categoría Avanzadas del cuadro de diálogo Opciones de formulario (menú Herramientas).
| Función |
Descripción |
Sintaxis |
| avg |
Devuelve el valor medio de los campos de un grupo. Cada campo debe ser un tipo de datos numérico e incluirse en un grupo. |
avg(argument)
argument Nombres de los campos del grupo sobre el que se desea obtener el valor medio.
|
| boolean |
Devuelve el valor "true" (verdadero) si el argumento es un número positivo o "false" (falso) si el argumento es cero o un valor negativo. |
boolean(argument)
argument Expresión que evalúa la función.
|
| ceiling |
Devuelve el entero más pequeño que es igual o mayor que el valor del argumento. Un valor que no sea entero se redondea al siguiente valor entero más alto. |
ceiling(argument)
argument Nombre del campo con un valor numérico.
|
| eval |
Devuelve el resultado de aplicar al primer argumento la expresión especificada en el segundo argumento. |
eval(argument1, argument2 )
argument1 Nombre del campo o grupo cuyos valores evaluará la expresión en el segundo argumento.
argument2 Expresión, incluida entre comillas (" "), que debe aplicarse al primer argumento.
|
| false |
Devuelve el valor Boolean "false". Utilice esta función como parte de una serie de reglas que se ejecutan cuando no se cumple una condición. |
false()
Esta función no utiliza argumentos.
|
| floor |
Devuelve el entero más pequeño que es igual o menor que el valor del argumento. Un valor que no sea entero se redondea al siguiente valor entero más bajo. |
floor(argument)
argument Nombre del campo que tiene un valor numérico.
|
| max |
Devuelve el valor más alto de un campo en un grupo. |
max(argument)
argument Nombre del grupo que contiene los campos sobre los que se desea obtener el valor más alto.
|
| min |
Devuelve el valor más bajo de un campo en un grupo. |
min(argument)
argument Nombre del grupo que contiene los campos sobre los que se desea encontrar el valor más bajo.
|
| not |
Devuelve el valor "true" (verdadero) si la expresión da como resultado cero, un valor inferior a cero, "false" (falso) o "null" (nulo); y devuelve el valor "false" si la expresión da como resultado un valor mayor que cero, "true" o no "null". |
not(argument)
argument Expresión que evalúa la función.
|
| number |
Devuelve el resultado de convertir la expresión del argumento en un número. |
number(argument)
argument Expresión que evalúa la función.
|
| nz |
Devuelve un valor cero si el valor del argumento está en blanco, o devuelve el valor del argumento. |
nz(argument)
argument Nombre del campo que evalúa la función.
|
| round |
Devuelve un número redondeado a un valor entero. Si el valor que no es entero es exactamente el valor medio entre dos valores enteros redondeados, el valor devuelto es el siguiente valor entero más alto. |
round(argument)
argument Expresión que evalúa la función.
|
| sum |
Devuelve la suma de los valores de los campos de un grupo. |
sum(argument)
argument Nombres de los campos del grupo cuyos valores se agregarán. Para agregar campos en dos grupos diferentes, utilice el operador de unión (|) para separar los argumentos. Por ejemplo: sum( nombre de campo 1 | nombre de campo 2).
|
| true |
Devuelve el valor Boolean "true". Utilice esta función como parte de una serie de reglas que se ejecutan cuando se cumple una condición. |
true()
Esta función no utiliza argumentos.
|
Volver al principio
Funciones de texto
| Función |
Descripción |
Sintaxis |
| concat |
Devuelve texto que es el resultado de combinar los argumentos. |
concat(argument1, argument2, ...)
argument Dos o más expresiones que contienen texto se combinan en un único texto. Las expresiones se separan con una coma.
|
| contains |
Devuelve un valor "true" (verdadero) si el valor del primer argumento contiene el texto especificado en el segundo argumento, o devuelve "false" (falso) si el texto del segundo argumento no aparece incluido en el valor del primer argumento. |
contains(argument1, argument2)
argument1 Nombre del campo que contiene el texto que se va a buscar.
argument2 Expresión que contiene el texto que se va a buscar en el primer argumento.
|
| normalize-space |
Devuelve texto con todos los espacios a la izquierda, finales y extensibles en blanco quitados.
Cuando un usuario rellena un formulario basado en una plantilla de formulario habilitada por explorador, una fórmula que utiliza esta función envía datos del formulario al servidor para obtener el valor devuelto de esa función.
Nota Los campos que tienen un tipo de datos Texto quitan automáticamente del valor los espacios a la izquierda, finales y extensibles en blanco.
|
normalize-space(argument)
argument Texto que contiene los espacios a la izquierda, finales o extensibles en blanco que se desea quitar. Incluya el texto entre comillas (" ").
|
| starts-with |
Devuelve el valor "true" (verdadero) si el texto del primer argumento empieza por el texto del segundo argumento o devuelve el valor "false" (falso) si el texto del segundo argumento no aparece al comienzo del texto del primer argumento. |
starts-with(argument1, argument2)
argument1 Nombre del campo que contiene el texto que se va a buscar.
argument2 Texto que se va buscar el comienzo del campo especificado en el primer argumento. Este argumento puede ser texto incluido entre comillas (" ") o un nombre de campo.
|
| string |
Devuelve el argumento como texto. |
string(argument)
argument Nombre del campo que tiene el valor para convertir a texto.
|
| string-length |
Devuelve el número de caracteres del valor del argumento. |
string-length(argument)
argument Nombre del campo cuyo valor es el texto que se desea contar.
|
| substring |
Devuelve los caracteres que empiezan en la posición especificada en el segundo argumento según el número especificado en el tercer argumento. |
substring(argument1, argument2, argument3)
argument1 Expresión que tiene el texto en el que buscará la función. La función busca en este texto y devuelve todos los caracteres de la posición especificada en el segundo argumento, según el número de caracteres especificado en el tercer argumento, o al final del texto, según el caso que se dé primero.
argument2 Posición inicial del texto que se extrae del primer argumento.
argument3 Número de caracteres que se desea extraer, comenzando en la posición inicial especificada en el segundo argumento.
|
| substring-after |
Devuelve el texto del primer argumento que aparece tras el texto especificado en el segundo argumento. El texto del segundo argumento no se incluye en el texto devuelto. |
substring(argument1, argument2)
argument1 Expresión que tiene el texto en el que buscará la función. La función busca en el texto de este argumento y, a continuación, devuelve todos los caracteres que aparecen tras el texto del segundo argumento.
argument2 Expresión que tiene texto. La función busca este texto en el texto del primer argumento y, a continuación, devuelve todos los caracteres que aparecen tras el texto de este argumento.
|
| substring-before |
Devuelve todo el texto del primer argumento que aparece antes del texto especificado en el segundo argumento. El texto del segundo argumento no se incluye en el texto devuelto. |
substring-before(argument1, argument2)
argument1 Expresión que tiene el texto en el que buscará la función. La función busca en el texto de este argumento y, a continuación, devuelve todos los caracteres antes del texto del segundo argumento.
argument2 Expresión que tiene texto. La función busca en el texto del primer argumento y, a continuación devuelve todos los caracteres antes del texto de este argumento.
|
| translate |
Devuelve el texto que es el resultado de reemplazar cada carácter del segundo argumento por los caracteres del tercer argumento. |
translate(argument1, argument2, argument3)
argument1 Nombre del campo que tiene el texto cuyos caracteres se reemplazarán.
argument2 Expresión que da como resultado un carácter que se va a reemplazar por la expresión del tercer argumento.
argument3 Expresión que da como resultado un carácter que reemplazará cada aparición del carácter del segundo argumento.
|
Volver al principio
Otras funciones
Para mostrar esta función en la lista Funciones, haga clic en Todas en la lista Categorías, del cuadro de diálogo Insertar función.
| Función |
Descripción |
Sintaxis |
| userName |
Devuelve el alias de correo electrónico del usuario que rellena el formulario. El alias de correo electrónico procede del servicio de directorio de Active Directory.
Nota Si el usuario está rellenando una plantilla de formulario compatible con el explorador, el alias de correo electrónico procede de Windows SharePoint Services 3.0.
|
userName()
Esta función no utiliza argumentos.
|