Saltar al contenido principal
Version: Next (5.0)

Criterios

Los elementos de criterio son componentes de ventana que pueden obtener la entrada del usuario y enviarla al servidor de aplicaciones (lógica de negocio).

Criteria

Cómo funcionan​

Internamente, un criterio tiene 2 atributos básicos para administrar la información que se envía al servidor y la información que se muestra al usuario:

  • seleccionado: Los valores seleccionados del criterio. Estos valores serán enviados al servidor.
  • valores: Los valores disponibles del criterio. Estos valores no serán enviados al servidor. Es una lista de valores y etiquetas que se mostrarán al usuario para elegir.

Prioridades​

Los valores seleccionados pueden ser completados de varias maneras. Esta es una lista de prioridades con estas maneras:

  1. variable - Estos son los valores enviados desde otra pantalla
  2. screen target - Los valores devueltos por el objetivo de la pantalla son la prioridad más alta de la lista
  3. initial-load="value" - Los valores recuperados de consulta siguen los valores objetivo de la pantalla
  4. sesión - Valores almacenados en sesión
  5. propiedad - Valores almacenados en la propiedad
  6. valor - Valores estáticos definidos en el atributo de valor

Esqueleto de XML​

<criteria id="[identifier]" component="[component]" label="[label]" placeholder="[placeholder]" style="[classes]"
initial-load="[initial-load]" server-action="[server-action]" target-action="[target-action]"
variable="[variable]" value="[value]" session="[session]" property="[property]"
validation="[validation]" readonly="[read-only]" size="[size]" unit="[unit]" icon="[icon]"
printable="[printable]" help="[help]" help-image="[help-image]"
optional="[optional]" area-rows="[area-rows]" number-format="[number-format]" capitalize="[capitalize]"
strict="[strict]" checked="[checked]" group="[group]" show-slider="[slider]" destination="[destination]">
<dependency... />
</criteria>

Estructura de criterios​

ElementoUsoVarias instanciasDescripción
criteriaObligatorioNoNodo global de los criterios. Define los atributos del criterio
dependencyOpcionalSiLista de dependencias adjuntas al criterio

Atributos generales​

AtributoUsoTipoDescripciónValores
idObligatorioStringIdentificador de criterio. Con fines de referencia
componentObligatorioStringTipo de criterioVer componentes
labelOpcionalStringTexto del criterio (fuera del criterio)Nota: Puedes usar literales i18n
placeholderOpcionalStringTexto del criterio (dentro del criterio)Nota: Puedes usar literales i18n
styleOpcionalStringClases CSS del criterioVer posicionamiento de Bootstrap para el tamaño del criterio
initial-loadOpcionalStringLlamada de acción al servidor para cargar los datos de criterio (se lanza al cargar la ventana)enum (para enumerado), query (para llamada de consulta query call cargando los valores values parte del criterio) o value (para llamada de consulta query call cargando el seleccionado parte del criterio)
server-actionOpcionalStringLlamada de acción del servidorVer lista de acciones del servidor
target-actionOpcionalStringDestino para llamar al servidor
maxOpcionalEnteroNúmero máximo de valoresNota: El valor predeterminado se establece en la propiedad var.def.rpp en el archivo base.properties
autoloadOpcionalBooleanIniciar acción de destino cuando la pantalla ha sido inicializadaNota: El valor predeterminado es false
autorefreshOpcionalEnteroEjecuta la acción del objetivo cada X segundosNota: El valor está en segundos
variableOpcionalStringParámetro para rellenar el valor del criterioIdentificador de un criterio en la pantalla anterior
valueOpcionalStringValor por defecto del criterio
sessionOpcionalStringVariable de sesión para cargar el criterioIdentificador de la variable de sesión
propertyOpcionalStringVariable de propiedad para cargar el criterioIdentificador de la variable de propiedad
validationOpcionalStringReglas de validaciónVer validación
readonlyOpcionalBooleanEstablecer criterio como sólo lecturaEl valor predeterminado es false
sizeOpcionalStringTamaño del criteriosm (por defecto), md o lg.
unitOpcionalStringTexto de unidad de criterioNota: Puedes usar literales i18n
iconOpcionalStringIdentificador de iconoNota: Puedes consultar todos los conjuntos de iconos en la pantalla icons
printableOpcionalStringComprobar si el criterio es imprimibletrue (por defecto) o false. Nota: excel solo tiene efecto en las columnas de grid
helpOpcionalStringTexto de ayuda para el criterioNota: Puedes usar literales i18n
help-imageOpcionalStringImagen de ayuda para el criterioEsta debe ser una ruta de imagen
left-labelOpcionalEnteroPon la etiqueta a la izquierda y dale un tamaño en caracteresEl valor por defecto está vacío (la etiqueta está arriba en lugar de izquierda). Si está definido, el valor debe ser un número de caracteres para la etiqueta. La etiqueta se muestra a la izquierda desde el punto de corte sm (576 px) y arriba por debajo de él. Su ancho es el número de caracteres por los píxeles por carácter del tamaño del criterio (7 px en sm, 8 px en md y 10 px en lg) en ambos motores

Los atributos help y help-image muestran un tooltip cuando el usuario se detiene sobre la etiqueta del criterio (junto a ella aparece un icono de ayuda). Ambos motores lo muestran en todos los criterios, incluidos los checkbox, los radio, los checkbox de botones y los radio de botones, y también en los botones y en las cabeceras de las columnas del grid.

Atributos específicos​

AtributoCriterioTipoDescripciónValores
optionalSeleccionarBooleanPermite seleccionar un valor vacíoEl valor predeterminado es false
area-rowsTextareaEnteroNúmero de filas del área de textoEl valor predeterminado es 3
number-formatNumericStringFormato del númeroVer plugin autonumeric
capitalizeSeleccionar, SugerenciaBooleanPoner la primera letra de las opciones en mayúsculas y las otras en minúsculasEl valor predeterminado es false
strictSugerenciaBooleanPermitir al usuario sólo seleccionar los valores de la listaEl valor predeterminado es true
check-targetSugerenciaStringAcción de destino a lanzar si la etiqueta no está definida al sugerir inicializaciónEl valor predeterminado es el definido en target-action
checkedCaja de verificación, RadioBooleanMarcar el criterio como comprobado inicialmenteEl valor predeterminado es false
groupCaja de verificación, RadioStringGrupo del criterio (para fines de validación y gestión)
show-sliderNumericBooleanSe utiliza para mostrar el deslizador gráfico del componenteNota: Sólo aplicar en criterios numéricos
destinationCargadorStringCarpeta relativa de destino para subir el archivo
drop-zoneCargadorBooleanMuestra un área para arrastrar y soltar el archivo, y una vista previa de las imágenesEl valor predeterminado es false
captureCargadorStringAñade un botón para hacer una foto con la cámara del dispositivouser (cámara frontal) o environment (cámara trasera)
show-weekendsDateBooleanPara activar o desactivar los días de fin de semanaEl valor predeterminado es true
show-future-datesDateBooleanPara activar o desactivar los días futuros después del valor de fecha seleccionadoEl valor predeterminado es true
date-formatDateStringPara establecer el formato de la fecha que desea mostrarEl valor predeterminado es dd/MM/yyyy. Nota: Ver el formato en el siguiente enlace link
date-show-today-buttonDateBooleanPara mostrar o no el botón para seleccionar la fecha de hoyEl valor predeterminado es true
date-view-modeDateStringSelecciona 'days', 'months' o 'years' para establecer la magnitud mínima a mostrarEl valor predeterminado es days
presetsRango de fechasStringPreajustes rápidos que se muestran bajo el rango, separados por comas o espaciosTODAY, YTD, ALL o un periodo hacia atrás desde hoy (7D, 2W, 1M, 3M, 12M, 3Y...). Por defecto no se muestra ningún preajuste

Componentes​

Criterios de texto​

Entrada de texto básica.

textCriterion

Criterio de contraseña​

Entrada de texto básica, pero los caracteres escritos no se muestran al usuario.

Password

Mientras las mayúsculas están bloqueadas, ambos motores marcan el campo con un color de aviso y un icono de flecha. El estado sale de la última tecla pulsada en la página, así que el aviso aparece aunque el usuario activara el bloqueo antes de llegar al campo.

Criterio de área de texto​

Criterio que permite al usuario insertar un texto grande y nuevas líneas.

Textarea

Criterio oculto​

Criterio oculto. Es útil enviar valores estáticos a una consulta o como elemento de fórmula.

Criterio numérico​

Criterio que permite insertar números formateados.

numericCriterion

Criterio numérico con deslizador activado

Deslizador_numérico

Atributo de formato numérico​

Este atributo se utiliza para formatear el criterio numérico y el deslizador. Se especifica en el formato de objeto json.

AtributoUsoTipoDescripciónValores
minOpcionalNumberEl valor mínimo posibleEj: {min: 5}
maxOpcionalNumberEl valor máximo posibleEj: {max: 5}
aSignOpcionalStringSímbolo de moneda deseadoEj: {aSign: ' €'}
pSignOpcionalStringControla la colocación del símbolo de monedapSign: 'p' para prefijo o pSign: 's' para sufijo (predeterminado)
aPadOpcionalBooleanControla el relleno de los decimalestrue rellena siempre los decimales con ceros; false (por defecto) no aplica relleno
precisionOpcionalNumberNúmero de decimalesNota: Los mil & separadores decimales no pueden ser los mismos
stepOpcionalNumberPaso de incremento deslizanteEj: {step: 5}
ticksOpcionalMatrizUtilizado para definir los valores de ticks en el deslizador. Las marcas de marca son indicadores que indican valores especiales en el rango. Esta opción sobrescribe las opciones min y maxEj: {ticks: [-1000, -500, 0, 500, 1000]}
ticks_labelsOpcionalMatrizDefine las etiquetas debajo de las marcas de tick. Acepta entrada HTMLEj: {ticks_labels: ['-$1000', '-$500', '$0', '$500', '$1000']}

Nota: Puedes ver todos los atributos de autonumeric aquí y los atributos deslizantes aquí

Ejemplos de formato numérico​

number-format="{min: 0, max: 100, step: 0.01, precision: 2, aSign:' £', pSign:'s', aPad:true}"
---
number-format="{min: -1000, max: 1000, step: 10, precision: 2, aSign:' $', pSign:'s', aPad:true,
ticks: [-1000, -500, 0, 500, 1000], ticks_labels: ['-$1000', '-$500', '$0', '$500', '$1000']}"

Criterio de fecha​

Permite seleccionar una fecha con un calendario.

dateCriterio

Los motores AngularJS y React aplican las mismas opciones al criterio de fecha y a las columnas de fecha de un grid:

  • date-format define el formato de la fecha que se muestra y del valor que el cliente envía al servidor y espera recibir de él. Por defecto es dd/mm/yyyy. Los símbolos son los del plugin bootstrap-datepicker (d, dd, m, mm, M, MM, yy, yyyy...), así que yyyy-mm-dd envía 2024-03-15.
  • date-view-mode con el valor months o years hace que el calendario seleccione un mes o un año. Úsalo con un formato sin día (mm/yyyy o yyyy).
  • show-weekends="false" deshabilita los sábados y los domingos.
  • show-future-dates="false" deshabilita las fechas posteriores a la fecha que tiene el criterio cuando arranca la pantalla.
  • date-show-today-button="false" oculta el botón que selecciona el día de hoy.

Criterio de hora​

Permite seleccionar una hora con un selector de tiempo.

TimeCriterion

Criterio de rango de fechas​

Permite seleccionar un periodo (una fecha de inicio y una fecha de fin) en un solo criterio. La fecha de fin no puede ser anterior a la de inicio (se permite un fin abierto salvo que el criterio sea required, que exige ambas fechas). El usuario puede escribir las fechas, elegirlas en el calendario o hacer clic en uno de los preajustes rápidos.

<criteria id="Period" component="date-range" label="PERIOD" presets="1M,3M,YTD,12M,3Y,ALL"/>

El criterio envía dos parámetros al servidor, con el nombre del identificador del criterio y los sufijos .from y .to. Ambos son fechas en formato dd/MM/yyyy (un null cuando la fecha está vacía), de modo que un criterio con identificador Period envía Period.from y Period.to, y una query los lee como cualquier otro parámetro:

<query id="OrdersByPeriod">
<table id="Orders"/>
<field id="OrderDate"/>
<where>
<and>
<filter left-field="OrderDate" condition="ge" right-variable="PeriodFrom"/>
<filter left-field="OrderDate" condition="le" right-variable="PeriodTo"/>
</and>
</where>
<variable id="PeriodFrom" type="DATE" name="Period.from"/>
<variable id="PeriodTo" type="DATE" name="Period.to"/>
</query>

El atributo value es una lista de las dos fechas por defecto separadas por una coma (value="01/01/2026,31/01/2026"); una primera fecha vacía (value=",31/01/2026") deja abierto el inicio.

El atributo presets define los preajustes rápidos. Cada código se muestra como un botón que rellena ambas fechas a partir de la fecha actual, y el preajuste activo se desactiva en cuanto se edita una de las fechas:

PreajusteRango
TODAYHoy
YTDDesde el 1 de enero del año actual hasta hoy
ALLBorra ambas fechas (sin filtro de periodo)
<n>D, <n>WLos últimos n días o semanas hasta hoy
<n>M, <n>YLos últimos n meses o años hasta hoy (1M, 3M, 12M, 3Y...)

La etiqueta de un preajuste es el locale DATE_RANGE_PRESET_ seguido de su código (DATE_RANGE_PRESET_YTD), que AWE proporciona para TODAY, 1W, 1M, 3M, 6M, YTD, 12M, 3Y y ALL; cualquier otro código muestra el propio código salvo que definas su locale. Los locales DATE_RANGE_FROM y DATE_RANGE_TO son los marcadores de posición de los dos campos, y VALIDATOR_MESSAGE_DATE_RANGE el mensaje de validación.

Nota: Las fechas son siempre dd/MM/yyyy: los atributos date-format, show-weekends, show-future-dates y date-view-mode del criterio de fecha no se aplican al rango de fechas.

Criterio de fecha filtrado​

Permite seleccionar una fecha con un calendario de una lista de fechas filtradas.

Filtrado Date.ong

Seleccionar criterio​

Muestra una lista y permite al usuario seleccionar un elemento.

Seleccionar

Criterios sugeridos​

Permite al usuario buscar un valor escribiendo algunos caracteres del valor buscar.

Sugerencia

Nota: El texto escrito se envía al servidor como suggest parámetro, pero sólo cuando la consulta se utiliza para rellenar las opciones. De lo contrario, el id de la sugerencia debería utilizarse como de costumbre.

Importante: los atributos initial-load="query" o initial-load="enum" no deben utilizarse con este componente, ya que busca los valores mientras se escribe. Si desea establecer un valor inicial en el componente de sugerencia, debe usar el atributo target de la pantalla o el atributo variable del criterio.

El atributo check-target hará que se lance una consulta cuando se inicialice el criterio solo si los datos del criterio tienen el campo value pero no el campo label (es decir, si el componente de sugerencia se ha cargado con una consulta target al cargar la pantalla, pero solo con un campo en lugar de un campo compuesto con los campos value y label).

Seleccionar sugerencia de VS​

SeleccionarSugerencia
La lista de valores es "fijada"La lista puede cambiar cada vez que interactúa con el componente
La lista se carga cuando entra en la ventanaLa lista se carga cuando interactúa con el componente
Filtrado en el clienteSe puede filtrar en cliente y servidor
Tienes que usarlo cuando la lista de valores es pequeña y con un número fijo de valores.Se puede utilizar con listas grandes y pequeñas
Usar atributo "max"=0Utilice el atributo "max" para limitar los datos devueltos por el servidor.
Debe utilizar la variable "sugerir" para filtrar.
No se utiliza cuando hay interrelaciones entre criteriosUso forzoso cuando hay interrelaciones con otros criterios.

Múltiples criterios de selección​

Muestra una lista y permite al usuario seleccionar algunos elementos.

Multiselección

Múltiples criterios de sugerencia​

Permite al usuario buscar algunos valores escribiendo algunos caracteres de los valores buscar.

Multisugerir

Nota: El texto escrito se envía al servidor como suggest parámetro.

Criterio de lista de selección dual (picklist)​

Funciona de forma similar a un criterio de selección múltiple, pero es más intuitivo.

Picklist

Para rellenar la lista de selección dual, el componente utiliza las siguientes columnas en una consulta:

AtributoUsoTipoDescripciónValores
valueObligatorioStringIdentificador del elementoValor del elemento (valor enviado al servidor)
labelObligatorioStringTítulo del elementoTítulo del elemento Nota: Puedes usar literales i18n
descriptionOpcionalStringDescripción del elementoDescripción del elemento Nota: Puedes usar literales i18n
unitOpcionalStringTexto de unidad del elementoTexto mostrado a la derecha del elemento Nota: Puedes usar literales i18n
iconOpcionalStringIcono del elementoIcono mostrado a la izquierda de la descripción Nota: Puedes consultar todos los conjuntos de iconos en la pantalla icons
imageOpcionalStringImagen del elementoURL de la imagen mostrada a la izquierda del elemento

Nota: la lista de selección dual (picklist) solo está disponible en el nuevo motor AWE React

Criterios de checkbox​

Muestra una casilla de verificación. Envía un 1 (o el valor definido en el atributo value) si está marcado o 0 si está desmarcado.

Casillas

Criterio del botón de radio​

Muestra un botón de radio. Es una monoselección. Envía el atributo value del elemento seleccionado entre todos los botones de radio con el mismo atributo grupo.

Radios

Nota: Si queremos que un grupo de botones de radio sea requerido, todos los botones de radio que están dentro del grupo deben tener validación="requerido"

Criterio de la casilla de verificación de botón (línea)​

Similar a una casilla de verificación pero tiene una apariencia de botón. Envía un 1 (o el valor definido en el atributo value) si está marcado o 0 si está desmarcado.

ButtonCheckbox

Criterio del botón de radio (línea)​

Similar a un botón de radio pero tiene una apariencia de botón. Es una monoselección. Envía el atributo value del elemento seleccionado entre todos los botones de radio con el mismo atributo grupo.

Radio Botón

Criterios de color​

Criterios de color. Es útil para obtener el valor hexadecimal de color con un selector de color widget.

Selector de color

Criterio del cargador​

Criterio útil para enviar archivos al servidor. Una vez subidos, los archivos pueden ser gestionados por los procesos del servidor

Criterio de subida

El cargador tiene dos atributos opcionales, disponibles tanto en el cliente AngularJS como en el de React:

  • drop-zone="true" muestra un área de arrastre con borde discontinuo y una pista. El usuario puede soltar un archivo sobre ella (el diálogo de archivos sigue funcionando, y el botón Elegir sigue siendo accesible con el teclado). Cuando el archivo es una imagen raster (PNG, JPEG, GIF, WebP, BMP o AVIF) se muestra una vista previa. Los demás archivos, incluidas las imágenes SVG, se suben sin vista previa.
  • capture="user|environment" añade un botón Hacer foto que abre la cámara del dispositivo en los navegadores móviles (user para la cámara frontal, environment para la trasera) y muestra una vista previa de la foto. Los navegadores sin cámara recurren al diálogo de archivos habitual.

Ambas opciones envían el archivo con la misma petición de subida que el botón Elegir, de modo que el servidor sigue validando el tipo y el tamaño del archivo (uploadMaxSize). La vista previa se genera en el navegador a partir del archivo seleccionado y se libera cuando se borra o se sustituye el archivo, o se cierra la pantalla. Los atributos se ignoran en un cargador de solo lectura.

Criterio de vista de texto​

Este criterio simplemente muestra un texto, que puede ser recuperado de una variable, un parámetro, una consulta o incluso cargado de dependencias.

TextView

Ejemplos​

Múltiples sugerencias con icono​

<criteria label="PARAMETER_USER" component="suggest-multiple" id="..." icon="user" initial-load="query" target-action="..."
style="col-xs-12 col-sm-6 col-lg-3"/>
Sugerir icono

Grupo de botones de radio​

<criteria component="radio" label="PARAMETER_RADIO_1" id="RadBox1" group="RadBox" variable="RadBox"
value="Radio1" style="col-xs-6 col-sm-2 col-lg-1 no-label" validation="required" checked="true"/>
<criteria component="radio" label="PARAMETER_RADIO_2" id="RadBox2" group="RadBox" variable="RadBox"
value="Radio2" style="col-xs-6 col-sm-2 col-lg-1 no-label" readonly="true"/>
<criteria component="radio" label="PARAMETER_RADIO_3" id="RadBox3" group="RadBox" variable="RadBox"
value="Radio3" style="col-xs-6 col-sm-2 col-lg-1 no-label"/>
Radios

Texto requerido sin etiqueta, con marcador de posición y con icono​

<criteria placeholder="SCREEN_TEXT_USER" component="text" icon="user" id="user" validation="required"
style="col-xs-6 col-sm-4 col-md-2"/>
Usuario

Seleccionar múltiple con dos valores preseleccionados​

<criteria component="select-multiple" id="user" label="PARAMETER_USER" icon="user" initial-load="query"
target-action="..." style="col-xs-12 col-sm-6 col-lg-3" value="1, 2" validation="required"/>
Seleccionar múltiples preseleccionados

Ejemplo de criterio de color​

<criteria label="PARAMETER_COLOR" id="Col" variable="Col" component="color"
style="col-xs-6 col-sm-3 col-lg-2" value="#d5db89" />

Color2

Ejemplo de criterio de carga​

<criteria label="PARAMETER_UPLOADER" id="Upl" component="uploader" validation="required"
style="col-xs-12 col-sm-6 col-lg-4" destination="testModule">
Criterio del cargador2

Cargador con zona de arrastre y captura de cámara​

<criteria label="PARAMETER_UPLOADER" id="Photo" component="uploader" destination="photos"
style="col-xs-12 col-sm-6 col-lg-4" drop-zone="true" capture="environment"/>