Modificación de esquemas EDI
Puede modificar un esquema EDI existente que se envía en BizTalk Server. Cuando usted y sus socios comerciales han acordado modificaciones en esquemas estándar, y quizás cambiaron el archivo de directrices de implementación de mensajes (MIG) pertinente, puede modificar los esquemas en el Editor de BizTalk en Visual Studio.
Nota
Algunas modificaciones de esquema (validación de campos cruzados y división de subdocumentos HIPAA) implican cambios en las anotaciones de un esquema EDI. Estos cambios no se pueden realizar en el Editor de BizTalk, pero se pueden realizar en un editor de texto, por ejemplo, Bloc de notas.
Requisitos previos
Debe haber iniciado sesión como miembro del grupo de administradores de BizTalk Server.
Convención de nomenclatura de esquemas
Un esquema EDI se identifica por el nombre de raíz y el espacio de nombres. No puede implementar dos esquemas del mismo grupo de BizTalk con el mismo nombre de raíz y espacio de nombres. No es posible modificar el nombre de raíz de ningún esquema EDI o agregarlo al nombre de raíz, ya que el nombre de raíz debe contener la versión y el tipo de documento con una convención de nomenclatura estándar. Como resultado, si desea implementar dos esquemas en el mismo grupo de BizTalk con el mismo nombre de raíz, debe usar un espacio de nombres distinto para cada uno.
Es habitual para una compañía implementar en el mismo grupo de BizTalk una versión distinta del mismo esquema para dos o más socios comerciales distintos. En este caso, los dos esquemas tienen la misma versión y el mismo tipo de documento. Para implementar estos dos esquemas, es necesario disponer de distintos espacios de nombre para cada uno de los esquemas.
Cambios del esquema EDI
Puede realizar los siguientes cambios en un esquema EDI en Visual Studio:
Para hacer esto | Haga esto |
---|---|
Cambiar una enumeración (por ejemplo, la lista de valores de una lista de códigos) |
En las propiedades de un elemento, abra el Editor de enumeraciones y agregue un valor a la lista de enumeraciones o elimine un valor de . |
Cambiar la opcionalidad de un elemento de datos | Cambie la propiedad Min Occurs . Cámbielo a 0 para hacer que el campo sea opcional o a 1 para que sea obligatorio. |
Cambiar el número máximo de veces que un elemento de datos puede aparecer en el archivo | Cambie la propiedad Max Occurs . |
Cambiar el número de caracteres del elemento de datos | Cambie la propiedad Length . |
Cambiar el tipo de datos de un elemento de datos | Cambie la propiedad Tipo de datos base o Tipo de fecha . |
Agregar un campo personalizado | Inserte un nodo de esquema de elemento de campo secundario y establezca las propiedades. Nota: No se permite agregar un atributo de campo secundario a un registro en un esquema EDI, ya que no se garantizaría la secuencia de los elementos. Si intenta agregar un atributo de campo secundario, obtendrá como resultado un esquema no válido. Sólo se puede agregar un elemento de campo secundario a un registro de un esquema EDI. |
Agregar un registro personalizado | Inserte un nodo de esquema de registro secundario, establezca las propiedades y agregue elementos de campo secundarios. |
Eliminar un campo o registro personalizado | Elimine un campo o registro personalizado con los elementos de campo secundarios. |
Habilitar validación de campos cruzados | Establezca la marca de validación entre campos en la anotación de la sección appinfo del esquema en Sí. Esta marca es X12ConditionDesignator_Check (para esquemas X12 o HIPAA) o EdifactDependencyRule_Check (para esquemas EDIFACT). Habilite la validación de campos cruzados para un elemento específico mediante la especificación de las condiciones relacionales (X12 e HIPAA) o las reglas de dependencia (EDIFACT). Para obtener más información, consulte Configuración de la validación entre campos. También debe establecer la propiedad de validación de tipo Edi en sí. Validación entre campos está habilitada de forma predeterminada para los esquemas HIPAA. |
Habilitar división de subdocumento HIPAA | En uno de los esquemas HIPAA en los que puede establecer la división de subdocumentos, establezca las propiedades subdocument_break y Split_Without_Sibling_Data para el esquema en sí y la propiedad subdocument_creation_break para un elemento específico del esquema en sí. También debe establecer la propiedad de acuerdo de opción procesamiento por lotes de entrada en Dividir intercambio como conjuntos de transacciones. Para obtener más información, consulte División de subdocumentos hipaa. |
Agregar campos desencadenadores a un documento HIPAA | Puede permitir que el desensamblador de EDI cree registros XML exclusivos para un segmento de su documento HIPAA basándose en un elemento de calificación conocido como campo desencadenador. Debe especificar los atributos que describen el segmento y el valor desencadenador de modo que se cree un registro XML exclusivo para el segmento. Para obtener más información, consulte Anotaciones de campo de desencadenador de esquema HIPAA. |
Agregar un segmento a un conjunto de transacciones X12 | Cuando agrega un segmento nuevo a un conjunto de transacciones X12, los tres primeros caracteres del nombre del segmento se usan como identificador del segmento. Por tanto, recomendamos que asigne al segmento un nombre tal que los tres primeros caracteres sean únicos. |
Agregar un bucle a un conjunto de transacciones HIPAA | Al agregar un nuevo bucle a un conjunto de transacciones HIPAA, recomendamos asignar nombre al bucle para incluir “Bucle” en el n ombre. Un formato de ejemplo para un bucle es “TS837_2010AB_Loop”. Nota: El primer segmento de un bucle es obligatorio (minOccurs del segmento debe ser igual a 1) para evitar ambigüedad. |
Agregar un ‘bucle en cualquier orden’ a un conjunto de transacciones HIPAA | Cuando un conjunto de transacciones tiene segmentos equivalentes con diferente semántica, debe definirlos en un subbucle. Un subloop con anotación XML de <xs:all> permite que se produzcan segmentos equivalentes en cualquier orden. Recomendamos asignar nombre al ‘bucle en cualquier orden’ de modo que se incluya “SubLoop” en el nombre. Un formato de ejemplo es "TS837Q1_2010A_SubLoop" Nota: Los elementos de un bucle de cualquier orden solo deben producirse una vez dentro del bucle. Los hermanos de un subbucle deben tener maxOccurs configurado en 1, para evitar ambigüedades. |
Para modificar un esquema EDI existente en el Editor de BizTalk
En Visual Studio, agregue el esquema que desea modificar a un proyecto y abra el esquema en el Editor de BizTalk.
Nota
Para mostrar el esquema en forma gráfica, haga clic en la pestaña EDI de la parte inferior de la pantalla Editor de esquemas. Es mucho más sencillo desplazarse por los nodos del esquema con este formato tabular.
Para cambiar las propiedades de un elemento de datos o de un registro, haga clic en el nodo correspondiente del panel izquierdo del Editor de BizTalk y cambie las propiedades en la ventana Propiedades.
Para cambiar los valores de una enumeración, seleccione la enumeración en el panel Propiedades y, a continuación, haga clic en los puntos suspensivos para abrir el Editor de enumeraciones. Agregue o elimine de la lista de valores, según sea necesario, asegurándose de que hay un valor en cada línea del panel Valores . Haga clic en OK.
Para agregar un campo personalizado al esquema, haga clic con el botón derecho en un nodo de registro en el árbol de consola del Editor de BizTalk, seleccione Insertar nodo de esquema y haga clic en Elemento de campo secundario. Asigne un nombre al elemento de datos y, a continuación, arrastre el elemento de datos a la posición adecuada del registro. Establezca las propiedades para las propiedades del campo personalizado como necesarias.
Nota
No se permite agregar un atributo de campo secundario a un registro de un esquema EDI, ya que no se garantiza la secuencia de los elementos. Si intenta agregar un atributo de campo secundario, obtendrá como resultado un esquema no válido.
Para agregar un registro personalizado al esquema, haga clic con el botón derecho en un nodo de registro en el árbol de consola del Editor de esquemas, seleccione Insertar nodo de esquema y, a continuación, haga clic en Registro secundario. Asigne un nombre al registro y arrastre el registro a la posición adecuada del esquema. Agregue como mínimo un elemento de datos al registro. Establezca las propiedades para el registro personalizado como necesarias.
Después de realizar los cambios deseados en el esquema, puede cambiar el espacio de nombres de destino que se aplica a la propiedad de esquema haciendo clic en el nodo raíz (<Esquema>) y cambiando la propiedad Espacio de nombres de destino .
Guarde el esquema.
Para validar el esquema, haga clic con el botón derecho en el esquema en Explorador de soluciones y haga clic en Validar esquema.
Nota
El comando Validar esquema validará el esquema EDI porque la propiedad Extensión del Editor de esquemas del nodo raíz (<Esquema>) está establecida en Extensión del Editor de esquemas EDI.
Para modificar propiedades de anotación en un esquema EDI existente
Abra el esquema en un editor de texto, como por ejemplo, Bloca de notas.
Para habilitar la validación de campos cruzados, haga lo siguiente. Para obtener más información, consulte Configuración de la validación entre campos.
En la anotación appinfo de la parte superior del esquema, establezca la marca de validación entre campos ( ya sea X12ConditionDesignator_Check para esquemas X12 o HIPAA o EdifactDependencyRule_Check para esquemas EDIFACT) en Sí.
Nota
La marca de validación entre campos es Sí de forma predeterminada para BizTalk Server esquemas HIPAA.
En la anotación de un elemento específico, especifique las condiciones relacionales (X12 o HIPAA) o las reglas de dependencia (EDIFACT) del elemento. Para obtener más información sobre esta configuración, vea Validación cruzada de Field-Segment.
Nota
En la página Validación (en la sección Configuración del conjunto de transacciones ) de la pestaña Contrato unidireccional del cuadro de diálogo Propiedades del contrato correspondiente, asegúrese de que la propiedad Validación de tipo EDI esté seleccionada.
Para habilitar la división de subdocumentos HIPAA, haga lo siguiente. Para obtener más información, consulte División de subdocumentos hipaa.
En la anotación appinfo de la parte superior del esquema, establezca las marcas subdocument_break y Split_Without_Sibling_Data en sí.
En la anotación appinfo de un elemento específico, consulte la marca subdocument_creation_breaken sí.
Nota
En la página Configuración de host local (en la sección Configuración de intercambio ) de la pestaña contrato unidireccional del cuadro de diálogo Propiedades del contrato correspondiente, asegúrese de que la propiedad de opción Procesamiento por lotes de entrada esté establecida en Dividir intercambio como conjuntos de transacciones.