Definiciones de configuraciones de conversión (ecedi5115s000)
Utilice esta sesión para registrar los campos, secuencia y opciones para la conversión de mensajes salientes.
Esta sesión está protegida, por lo que no podrá ejecutarse simultáneamente con sesiones que interfieran o puedan interferir con ella.
Información de campo
- Organización
- Descripción
-
La descripción o el nombre del código.
- Mensaje EDI
-
mensajes EDI admitidos
- Descripción
-
La descripción o el nombre del código.
- Dirección
-
La dirección del mensaje EDI.
- Tipo de campo
-
El formato del archivo ASCII.
NotaPuede crearse una configuración de conversión para archivos en los que los campos estén separados por un separador de campo, o que tengan una longitud fija.
- Código de configuración de conversión
-
El código que identifica la configuración de la conversión.
- Descripción
-
La descripción o el nombre del código.
- Destino
-
El origen del campo en un mensaje saliente, según se define en la sesión Configuraciones de conversión (relaciones) (ecedi5112m000).
- Campo
-
El nombre del campo, por ejemplo, tdsls400.ofbp. En el caso de las configuraciones de conversión salientes, también puede utilizar constantes. Las constantes deben empezar por comillas dobles ("). El texto comprendido entre las comillas se especifica en el mensaje.
NotaSi desea utilizar comillas dobles dentro de la cadena de texto, deberá especificar comillas adicionales. Por ejemplo, el resultado de ""ABC"" es "ABC".
- Campo
-
La descripción o el nombre del código.
- Número de secuencia
-
El número de secuencia del campo. El mismo campo puede insertarse más de una vez. Si el campo solo aparece una vez en las configuraciones de conversión, puede establecerlo en 0 o 1. Si el campo aparece repetidas veces en la definición de configuración de conversión, el número de secuencia puede incrementarse de 1 en 1 cada vez que el campo aparezca en la definición de configuración de conversión.
- Secuencia de proceso
-
La secuencia en la que deberá procesarse el campo.
- Nivel
-
El nivel definido en la sesión Configuraciones de conversión (relaciones) (ecedi5112m000).
- Descripción
-
La descripción o el nombre del código.
- Posición inicial
-
La posición del campo en la línea.
NotaSi el campo Tipo de campo de la sesión Redes (ecedi0120s000) tiene el valor Longitud fija, deberá especificar la posición inicial física del campo. Si el campo Tipo de campo de la sesión Redes (ecedi0120s000) tiene el valor Delimitado, deberá especificar el número de campo, empezando por el número 1.
- Elemento
-
El elemento de índice de un campo de índice o la posición inicial en una cadena de una variable de cadena.
Ejemplo de campo de índice
En el caso de una variable de cadena, puede especificarse la posición inicial en la cadena. Este campo, junto con el campo Longitud , permite especificar una subcadena (por ejemplo: Para la cadena "ABCDEFGHIJKLMNOP", el valor 3 con una longitud de 5 da lugar al siguiente resultado: "CDEFG").
Campo tdsls400.disc (profundidad estándar = 5 niveles) Nivel 1 10 2 15 3 8 4 5 5 7 El valor 0 produce todo el campo: 010015008005007. Esta opción se utiliza únicamente para comunicación interna. Los valores 1 y 3 sólo dan lugar a los elementos siguientes: 010 y 008 Esta salida permite utilizar el campo también para comunicaciones externas.
- Longitud
-
La longitud física del campo.
- Leer próximo registro
-
Si esta casilla de verificación está seleccionada, se leerá un nuevo registro a este nivel para los mensajes entrantes y un nuevo registro de la tabla que pertenece al campo para los mensajes salientes. Si esta casilla de verificación está desmarcada, no se leerán nuevos registros, pero los actuales permanecerán activos.
NotaEste campo indica si debe leerse un registro nuevo para procesar el contenido del campo. Según el valor de este campo, puede determinar cuándo una línea nueva está lista para ser leída desde el mismo archivo.
- Nivel iterativo
-
El número de secuencia que indica a dónde debe desplazarse el cursor tras haber procesado el campo. Este campo sólo se utiliza si el registro pertenece al último campo de un nivel iterativo o al último campo de la configuración de conversión.
Ejemplo
Por ejemplo: Supongamos que desea especificar un campo de texto que contiene datos de un archivo ASCII en una cabecera de orden que se ejecuta iterativamente. Una vez que se haya cumplimentado el último campo de texto, el cursor regresará al campo con el número de secuencia 3, utilizando el campo Número de secuencia. La clave y los tres campos de texto aparecen en cada línea del nivel 2.
Campo Nivel Número de secuencia Nivel iterativo Núm. orden 1 1 Referencia 1 2 Campo de texto 2 3 Campo de texto 2 4 Campo de texto 2 5 3 - Clave no coincide
-
El número de secuencia indica a dónde se debe desplazar el cursor si la clave no es válida o cambia. Este campo sólo debe cumplimentarse si el registro Nuevo tiene el valor Sí.
Ejemplo 1 - Proceso iterativo
Una vez procesados todos los campos de texto, se lee el número de cliente. El nivel 2 es iterativo.
Campo Nivel Secuencia en Atrás Atrás Nuevo Iterativo Registro clave Núm. orden 1 1 Referencia 1 2 Campo de texto 2 3 6 sí Campo de texto 2 4 Campo de texto 2 5 3 Cliente 1 6 Ejemplo 2 - Proceso secuencial
Una vez cumplimentadas todas las líneas de orden (nivel 2), puede especificarse una orden nueva (nivel 1).
Campo Nivel Secuencia en Atrás Atrás Nuevo Iterativo Registro clave Núm. orden 1 1 sí Referencia 1 2 Cliente 1 3 Artículo 2 4 1 sí Cantidad 2 5 Fecha de entrega 2 6 4 - Grabar registro
-
Si esta casilla de verificación está seleccionada, debe añadirse un registro a la tabla pertinente después de que se haya procesado un campo para un mensaje entrante, en función del resultado de la expresión de salida. El destino del campo (datos generales, cabecera o línea) determina la tabla en la que se guardarán los mensajes.
Ejemplo 1
Campo Destino Grabar registro Núm. orden cabecera Referencia cabecera Cliente cabecera sí Artículo línea Cantidad línea Fecha de entrega línea sí Los campos procesados tras una acción de escritura para el mismo destino no se añaden a la tabla pertinente. No puede iniciar varias acciones de escritura para el mismo registro (por ejemplo: línea de orden). Debido a la jerarquía de destinos, LN comprueba si se han escrito o no todos los destinos superiores. Si no se ha escrito el destino superior, los destinos pertinentes se escribirán antes de escribir el destino especificado. La jerarquía es la siguiente:
- Costos generales
- Cabecera
- Línea
Ejemplo 2
Campo Destino Grabar registro Núm. orden cabecera Referencia cabecera Cliente cabecera Artículo línea Cantidad línea Fecha de entrega línea sí Puesto que aún no se ha escrito ninguna cabecera, primero se escribe la cabecera, y luego la línea. Si no hay datos generales, la línea se escribe antes que la cabecera.
- Evaluación
-
El código de la expresión de evaluación. Esta expresión determina si el campo forma parte del mensaje. La expresión es lógica, y el resultado es verdadero o falso. El valor predeterminado de este campo es 1, verdadero. La expresión se ejecuta antes de situar el campo en el mensaje. Dicho de otro modo, siempre se llevan a cabo las acciones asociadas de lectura y escritura. De hecho, la expresión es una ecuación. Por ejemplo, para el campo Almacén de la orden de compra, la expresión puede ser: strip((tdpur400.cwar) <> "" Esta expresión es verdadera si no se ha cumplimentado el campo Almacén.
A continuación, se listan los operadores en orden de prioridad:
- ()
- - (signo de negación)
- * / \
- &
- + - (sumar restar)
- = > < <> <= >=
- NOT
- Y
- O
- ?:
Una expresión puede contener las constantes siguientes:
PI 3,1415926535 TRUE Siempre verdadero. FALSE Siempre falso. Una expresión puede contener también funciones.
También pueden utilizarse rangos numéricos: a IN [10,20] es igual a.a>=20 AND a<=30 a IN [10,20][30,40][50,60] es igual a a>=10 AND a<=20 OR a>=30 AND a<=40 OR a>=50 AND a<=60
Ejemplo aritmético
() paréntesis (prioridad) - signo de negación (necesita un argumento) a=-b * Multiplicación 3*5=15 / División 6/2=3 \ Resto de la división 8\3=2 & cadenas vinculantes "A"&"B"="AB" + Suma 2+3=5 - Resta 3-2=1 Ejemplo relacional (para comparaciones)
= o EQ es igual a 3=5 es falso <> o NE es distinto que 3<>5 es verdadero > o GT es mayor que 3>5 es falso < o LT es menor que 3<5 es verdadero >= o GE es mayor o igual que 3>=5 es falso <= o LE es menor o igual que 3<=5 es verdadero Ejemplo lógico
Y y (ambos son verdaderos) a=b AND b=c O o (uno de los dos es verdadero) a=b OR a=c NOT no (no es verdadero) NOT (a=b AND b=c) Otros:
condition?true:false si <condition> es verdadero, se ejecuta <true>; si no, <false> (coloque siempre paréntesis alrededor de <condition>, porque tiene la prioridad más baja)
Funciones
abs(N) Da como resultado el valor absoluto de N acos(N) Da como resultado el ángulo (en radiales) del que N es el coseno. asc(S) Da como resultado el total de los valores ASCII de los caracteres en S, asc("ABC")=65+66+67=198 asin(N) Da como resultado el ángulo (en radiales) del que N es el seno. atan(N) Da como resultado el ángulo (en radiales) del que N es la tangente. chr(N) Da como resultado el carácter del que N es el valor ASCII, chr(65)="A" cos(N) Da como resultado el coseno para el ángulo N (en radiales). cosh(N) Da como resultado el coseno hiperbólico para el ángulo N (en radiales). date() Da como resultado el número de día actual. date(J,M,D) Da como resultado el número de día en la fecha representada por D, M y J exp(N) Produce 2,718128... a la potencia de N. int(N) Da como resultado el entero de N (redondeado a la baja). len(S) Da como resultado el número de caracteres en S, len("ABC")=3. log(N) Da como resultado el logaritmo natural de N. log10(N) Da como resultado el logaritmo-10 de N. max(N,M) Da como resultado el valor mayor de N o M. min(N,M) Da como resultado el valor menor de N o M. pos(S,T) Da como resultado la primera posición en que T ocurre en S, pos("ABCDEFEF","EF")=5. pow(N,M) Da como resultado N a la potencia de M. round(N,D,M) Da como resultado el valor de N redondeado a decimales D. Si M=0, N se redondea por defecto, round(1.99,2,0)=1.00. Si M=1, N se redondea normalmente, round(1.49,2,1)=1.00 y round(1.50,2,1)=2.00. Si M=2, N se redondea por exceso, round(1.01,2,2)=2.00. rpos(S,T) Da como resultado la última posición en que T ocurre en S, rpos("ABCDEFEF,"EF")=7. sin(N) Da como resultado el seno del ángulo N (en radiales). sinh(N) Da como resultado el seno hiperbólico del ángulo N (en radiales). sqrt(N) Da como resultado la raíz cuadrada no negativa de N. str(N) Crea una cadena de N, str(1.04)="1.04" strip(S) Devuelve S sin los espacios que le siguen tan(N) Da como resultado la tangente del ángulo N (en radiales). tanh(N) Da como resultado la tangente hiperbólica del ángulo N (en radiales). time() Da como resultado la hora actual en formato UUMM. val(S) Da como resultado el valor numérico de S, val("1.04")=1.04. - Descripción
-
La descripción o el nombre del código.
- Asignación
-
El código para la expresión de asignación. El resultado de la expresión se escribe en el archivo ASCII (mensajes salientes), que se actualiza en la aplicación LN (mensajes entrantes). Por ejemplo, si desea establecer la Fecha planif. de entrega en un valor dos días antes que la Fecha planif. de recepc., puede asignar la siguiente expresión de asignación al campo Fecha planif. de entrega: tdsls400.prdt - 2.
NotaLos campos tabla que aparezcan en una expresión de asignación deberán procesarse antes que el campo al que se haya asignado la expresión de asignación en cuestión. El campo que aparece en la expresión de asignación debe tener una secuencia de proceso inferior, según se define en las definiciones de la configuración de la conversión. Así, por ejemplo, en el ejemplo anterior, el campo tdsls400.prdt deberá tener una secuencia de proceso inferior a la del campo tdsls400.ddat, según se define en las definiciones de la configuración de la conversión
- Tabla de conversión
-
La tabla de conversión se utiliza para convertir el campo.
- Acción al no encontrar tabla conversión
-
La acción que debe llevarse a cabo si se produce un error durante la conversión de mensajes salientes. Puede ocurrir un error porque el campo no se encuentra en la tabla de conversión.
NotaLas sesiones de proceso deben admitir el valor seleccionado.
- Número máximo de segmentos
-
La cantidad máxima de segmentos de texto en un campo de texto.
NotaLos textos incluidos en un mensaje presentan una estructura especial que requiere un proceso aparte porque cada texto esta formado por una serie de segmentos, cada uno, a su vez, formado por una serie de campos.
- Número máximo de campos de texto por segmento de texto
-
La cantidad máxima de campos en un segmento de texto.
NotaLos textos incluidos en un mensaje presentan una estructura especial que requiere un proceso aparte porque cada texto esta formado por una serie de segmentos, cada uno, a su vez, formado por una serie de campos.
- Posición inicial de calificador
-
La posición inicial del primer calificador. Algunas conversiones de código en EDI de ERP necesitan una ID de código. Las ID de código son calificadores que se utilizan en conversiones de código que permiten convertir especificaciones de datos adicionales y se transfieren en la primera posición de calificador de las definiciones de configuración de conversión.
NotaSi el campo Tipo de campo de la sesión Redes (ecedi0120s000) tiene el valor Longitud fija, deberá especificar la posición inicial física del campo. Si el campo Tipo de campo de la sesión Redes (ecedi0120s000) tiene el valor Delimitado, deberá especificar el número de campo, empezando por el número 1.
- Longitud de calificador
-
La longitud física del calificador.
NotaEste valor sólo puede especificarse si el tipo de campo es Longitud fija según se ha definido en la sesión Parámetros de EDI (ecedi0100s000).
- Calificador predeterminado
-
El valor que debe utilizarse si no utiliza ningún calificador en el mensaje.
NotaSi opta por convertir los artículos salientes con la tabla de códigos de artículo por sistema de codificación de artículos, aquí puede especificarse el valor para el campo Sistema de codificación de artículos. Puede utilizar la tabla ID de código de artículo para convertir el valor de este calificador en el valor utilizado en el mensaje. El valor especificado aquí puede anularse cumplimentando el campo Sistema de codificación de artículos de la sesión Mensajes EDI admitidos por partner (ecedi0111s000).
- Tabla de conversión
-
La tabla de conversión se utiliza para convertir el calificador.
- Acción al no encontrar tabla conversión
-
La acción que debe llevarse a cabo si se produce un error durante la conversión de mensajes salientes. Puede haber un error porque el calificador no se encuentra en la tabla de conversión.
- Campo
-
La información de correlación para este campo descriptivo y para el elemento de datos correspondiente en el mensaje EDI. Este campo descriptivo se utiliza con fines informativos y de comunicación.
- Calificador 1
-
La información de correlación para el primer calificador y el elemento de datos correspondiente en el mensaje EDI.
- Calificador 2
-
La información de correlación para el segundo calificador y el elemento de datos correspondiente en el mensaje EDI.