Anveo EDI Connect / Config / Mappings / Uso de las propiedades de SourceExpr y DestExpr
This is an automatic translation. The original post is available in Inglés.

Uso de las propiedades de SourceExpr y DestExpr

En la última sección, hemos discutido cómo agregar instancias de tabla a un mapeo. En esta sección veremos cómo acceder a los datos de los campos de una tabla. Y cómo usar valores y filtros constantes.

El módulo le permite leer datos de campos de tablas, siempre que exista una propiedad SourceExpr (expresión de fuente). SourceExpr también se puede utilizar para especificar valores constantes o para llamar funciones. Encontrará esta propiedad en las líneas de datos de asignación de formato NAV y en las líneas de datos de asignación de exportación. Pero esta propiedad también está disponible para los parámetros de la función personalizada y para ampliar los mensajes de error. Hay más opciones, que discutiremos un poco más adelante en esta sección.

Para escribir datos en los campos de la tabla hay otra propiedad llamada DestExpr (expresión de destino). Esta propiedad también le permite verificar los datos contra un filtro especificado, en lugar de almacenarlos. Entraremos en detalles en un momento. Es importante saber que puede escribir datos en cualquier campo de una instancia de tabla, incluso si el Mode tabla está configurado como Read. La escritura en una tabla en modo lectura llamará a la lógica de validación de NAV, pero no modificamos el registro. En nuestras tablas de búfer puede utilizar esta opción para almacenar un valor durante un tiempo determinado en la asignación. En otras tablas dependerá de la lógica de validación, si es seguro utilizar una tabla en modo de lectura para almacenar datos temporalmente.

La propiedad de SourceExpr

SrcType

El tipo de fuente especifica qué tipo de datos desea leer. Los valores permitidos son:

Const

Un valor constante que se introduce en la asignación.

Field

Un campo de una instancia de tabla, que es una de las líneas de asignación de nivel superior de esta línea de asignación. En caso de que quieras leer un campo de suma tienes que estar fuera de la instancia de la tabla, pero debajo de ella.

Function

Desea leer datos de una función incorporada o de una función personalizada.

Data Type

Esta propiedad fue añadida en Anveo EDI Connect 4.00.

Esta propiedad sólo está disponible si SrcType está configurado como Const. Esta propiedad especifica el tipo de datos del valor constante. Debe seleccionar el tipo de datos para evitar errores debidos a las diferentes localizaciones utilizadas durante la configuración y el tiempo de ejecución. En la versión anterior había que asegurarse de que la localización durante la configuración fuera la misma que durante el tiempo de ejecución para evitar, por ejemplo, que los números se interpretaran de forma diferente.

Puede seleccionar entre los siguientes tipos de datos:

Text

Un valor de texto constante.

Text (Special)

Un texto que puede contener caracteres especiales, como un retorno de carro<CR> Hay una lista de todos los caracteres especiales admitidos.

Boolean

Un valor booleano, como True o False.

Option

Un valor de opción. Debe utilizar el valor entero de la opción en la base de datos.

Integer

Un valor entero (32 bits).

Decimal

Un valor decimal.

BigInteger

Un número entero grande (64 bits).

Duration

El valor contiene una duración.

Code

El valor es un valor de código Dynamics (sólo en mayúsculas, no permite todos los caracteres).

Date

Representa un valor de fecha.

Time

Representa un valor de tiempo.

DateTime

Representa un valor combinado de fecha y hora.

DateFormula

Una fórmula de fecha.

GUID

Un ID único global (GUID).

Value

Esta propiedad sólo está disponible si SrcType está configurado como Const. Representa el valor constante que se desea utilizar.

Function

Esta propiedad sólo está disponible si SrcType está configurado en Function. Puede utilizar el AssistEdit para especificar el objeto y la función. Si la función requiere parámetros, estos serán SourceExpr también, pero no soportan el anidamiento de funciones.

Table

Esta propiedad sólo está disponible si SrcType está establecido en Field. Seleccione la instancia de la tabla de la que desea leer los datos. La tabla debe ser uno de los padres de la línea de mapeo actual, para leer los datos de un registro. Si desea leer los campos de suma, tiene que estar debajo de la instancia de la tabla, pero no ser hijo de ella.

Field

Esta propiedad sólo está disponible si SrcType está establecido en Field. Selecciona la columna / campo del que desea leer.

Value Translation

Puede especificar una conversión de valor para cambiar el valor seleccionado a un valor previsto diferente. Hay una sección sobre cómo configurar las traducciones de valores.

Name

El código de la conversión de valor que se debe utilizar.

No Translation Action

Qué debe suceder, si el valor no se encuentra en la conversión de valor.

Ignore

El módulo no hace nada si falta la traducción. Utiliza el valor original sin traducción.

Empty

Dar salida a un valor vacío.

Info

Añada una entrada de registro de información y utilice el valor original.

Warning

Añada una entrada de log de aviso y utilice el valor original.

Error

Rompa el mapeo inmediatamente y registre un error.

Error (Continue)

Cree una entrada de registro de errores y no termine correctamente la asignación, pero continúe con el procesamiento para encontrar otros errores también.

Advanced Validation

Esta propiedad está oculta por defecto. Puede especificar una lista de valores permitidos y crear errores, si intenta exportar otro valor.

Allowed Values

La lista de valores permitidos. Puede utilizar el AssistEdit o introducir los términos separados por comas.

Not Allowed Action

Qué debe suceder, si el valor fuente no está en la lista de valores permitidos.

Ignore

No utilice la validación avanzada e ignore los valores de la lista.

Info

Cree una entrada de registro de información.

Warning

Cree una entrada de log de aviso.

Error

Rompa el mapeo inmediatamente con un mensaje de error.

Error (Continue)

Devuelve un error en la ejecución del mapeo, pero continúa procesando el mapeo, para encontrar otros errores también.

La propiedad de DestExpr

DestType

Seleccione el objetivo para un valor. Los siguientes valores son válidos:

Vacío significa que el valor es ignorado. Puede utilizarlo para omitir campos en importaciones o, por ejemplo, para ignorar un valor de retorno de función.

Filter

El valor debe ser verificado contra un filtro de Dinámica. Si el filtro no coincide, el valor no es aceptado. Dependiendo del convertidor, esto resultará en un mensaje de error o en saltarse una sección de la asignación. Aprenderá más sobre el uso de filtros para convertidores específicos en la documentación de cada convertidor.

Field

El valor debe escribirse en un campo de una instancia de tabla de esta asignación.

Value

Esta propiedad sólo está disponible si el DestType está establecido en Filter. El filtro de dinámica con el que se comprueba el valor. El valor se interpretará como un valor de texto para aplicar el filtro. Un ejemplo típico sería «BY|IV», para permitir los valores «BY» y «IV».

Table

Esta propiedad sólo está disponible si el DestType está establecido en Field. Selecciona la instancia de la tabla en la que se debe escribir el valor. La instancia de la tabla tiene que ser uno de los padres de la línea de mapeo actual.

Field

Esta propiedad sólo está disponible si el DestType está establecido en Field. El nombre de campo/nombre de columna del campo de destino en la tabla.

Validate

Esta propiedad sólo está disponible si el DestType está establecido en Field. Esta propiedad sólo está disponible como propiedad avanzada. Si se establece esta propiedad en False, se omitirá el desencadenante de la validación del Microsoft Dynamics NAV 2009R2 Classic para ese campo.

Sea muy cauteloso al usar False. Sólo debe desactivar la validación después de consultar a un programador. No debería desactivarlo en ninguna de las tablas estándar de Dynamics, excepto que realmente sabe lo que está haciendo. Puede inutilizar el Microsoft Dynamics NAV 2009R2 Classic omitiendo el código de validación.

Assignment Mode

Esta propiedad sólo está disponible si el DestType está establecido en Field y está utilizando el convertidor de NAV. Puede encontrar más información en la página del convertidor.