Documentation Index
Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
Use this file to discover all available pages before exploring further.
Una propiedad definida por el usuario es una variable tipada que pertenece a un elemento. Estas propiedades se definen en la sección Campo externo. Debe observarse el siguiente formato:
Type1 Name1;
...
TypeN NameN;
donde Name es el nombre de la variable y Type es su tipo.
Cuando se crean los campos, se inicializan de la siguiente manera: los campos numéricos se inicializan con valor cero, y los rectángulos y las regiones con valores vacíos, etc.
Los campos pueden usarse en el elemento al que pertenecen y en cualquiera de los elementos situados por debajo de él. El valor de un campo solo puede modificarse en el elemento al que pertenece; en los demás elementos está disponible como de solo lectura.
El valor de una expresión compleja que caracteriza la hipótesis para un elemento puede calcularse y escribirse en esta propiedad. Este valor puede consultarse desde cualquiera de los elementos inferiores, sin volver a calcularlo cada vez que se necesite. Esto reduce el tiempo necesario para ajustar el FlexiLayout, evita tener que copiar una expresión extensa en cada elemento y hace que el código sea más legible.
Para acceder a un campo de un elemento, se usa el nombre completo del campo con el siguiente formato: ElementName.FieldName (p. ej., SearchElements.StaticText1.x). Dentro de un elemento, puede accederse a su campo por nombre: x. En el caso de un elemento compuesto, sus subelementos (a cualquier nivel de anidación) también pueden acceder a sus campos por sus nombres cortos.
Dentro de un elemento, los nombres de los campos deben ser únicos. Los nombres de los elementos de un elemento compuesto no pueden coincidir con ninguno de los nombres de campo de sus subelementos (a cualquier nivel de anidación). Además, los nombres de los campos de un elemento compuesto no pueden coincidir con ninguno de los nombres de sus subelementos.
En este ejemplo, se buscan dos componentes de dirección: ciudad (cadena de caracteres City) y estación de metro (cadena de caracteres Station). La estación de metro solo se especifica si la ciudad es Sydney. Para acelerar el emparejamiento de FlexiLayout, especificamos una propiedad fromSydney para el elemento City. Esta propiedad es true si se detecta el elemento City y tiene el valor Sydney, y false en todos los demás casos.
Código para el elemento City:
Campos externos
Evaluación de hipótesis
if( not IsNull and Value.Find( "Sydney" ) >= 0 ) then fromSydney = true;
else fromSydney = false;
A continuación, usamos esta propiedad para buscar la estación de metro. Para agilizar el proceso de emparejamiento, solo buscamos la estación si se detecta Sydney como elemento City.
Código para el elemento Station:
Condiciones de búsqueda
if not City.fromSydney then dontfind;
Debido a la presencia de campos, los elementos del mismo tipo no se consideran idénticos. Por lo tanto, las construcciones del siguiente tipo están prohibidas:Let e = SearchElements.StaticText1;
e = SearchElements.StaticText2; // elemento del mismo tipo