# Notas de release, problemas conocidos, limitaciones y métodos alternativos que afectan a proyectos de flujo de servicios

## Un servicio Web generado a partir de un proyecto de flujo de servicios no se puede llamar a sí mismo (llamada recursiva)

Un servicio Web generado a partir de un proyecto de flujo de servicios no se puede llamar a sí mismo, ni directa ni indirectamente. En general, las herramientas de proyecto de flujo de servicios no le permiten crear una invocación recursiva de un flujo, es decir, un flujo que se invoque a sí mismo, ya sea directamente o por llamadas intermedias.

Sin embargo, las herramientas de proyecto de flujo de servicios no detectan actualmente el siguiente tipo de recurrencia:

1. Usted genera un servicio Web (por ejemplo, WS01) desde un proyecto de flujo de servicios.
2. El servicio Web generado (WS01) invoca otro servicio Web (por ejemplo, WS02). (En Enterprise Service Tools, WS02 sería un "servicio Web de salida", porque es externo al servicio Web que lo invoca).
3. A su vez, el servicio Web invocado (WS02) invoca el servicio Web original (WS01).

En esta situación: el editor de flujos no detecta la recurrencia cuando usted la crea ni tampoco visualiza un mensaje de error. Puede generar satisfactoriamente código de tiempo de ejecución para el Entorno de ejecución de flujo de servicios CICS y desplegar el servicio Web (WS01). Cuando ejecute el servicio Web (WS01), la invocación del segundo servicio Web (WS02) será satisfactoria. Sin embargo, la invocación recursiva (de WS02 a WS01) sí que falla.

## Los mensajes de pantalla no se sustituyen fácilmente

Problema: si accidentalmente suprime archivos de mensaje de pantalla e intenta volver a importar o capturar pantallas para sustituirlas, es posible que las referencias a los mensajes en esos archivos queden cortadas. Esto es porque para cada mensaje de pantalla, se genera un identificador exclusivo y este identificador exclusivo se utiliza para identificar los mensajes de pantalla en otros archivos.

Método alternativo: haga copias de seguridad de los proyectos a menudo. Si accidentalmente suprime archivos de mensaje de pantalla y no desea remodelar los flujos, recupere los mensajes de pantalla importando las versiones de copia de seguridad de los archivos en lugar de volver a importar o a capturar las pantallas.

## Una limitación sobre el código fuente importado con la cláusula de utilización POINTER

Problema: al importar estructuras de datos de código fuente COBOL o PL/I que contengan campos cuyo tipo de utilización sea POINTER, se creará un mensaje con un campo correspondiente de tipo hexBinary. Esto hará que el asistente Generar código de tiempo de ejecución falle.

Método alternativo: editar el mensaje en el Editor de mensajes. En la pestaña Avanzada del editor, cambie el tipo del campo de hexBinary a int. Este cambio permite que la generación se lleve a cabo satisfactoriamente.

## Existe una limitación en un flujo con una conexión unida de nuevo consigo mismo

Problema: el editor de flujo no le impide que añada conexiones que cableen la ruta de ejecución de nuevo consigo mismo (en un punto anterior de la ruta de ejecución del flujo). Esta situación puede provocar errores al generar código de tiempo de ejecución. No obstante, es muy probable que lleve a errores durante el proceso en tiempo de ejecución.

Método alternativo: Si desea que una parte del flujo se itere muchas veces mientras se cumpla una determinada condición, utilice un nodo While (vea el tema que explica cómo "crear un bucle", en la documentación de Enterprise Service Tools).

## Los nombres de campos y mensajes en conflicto provocan errores de compilación

Problema: Al modelar un flujo, si resulta que un campo de un mensaje tiene el mismo nombre que el de otro mensaje, el código COBOL generado podría no compilarse, notificando el error IGYPS0037, debido a un conflicto de nombres. Por ejemplo, si el flujo hace referencia (1) a un mensaje llamado 'X' con un campo llamado 'Y' y (2) a un mensaje llamado 'Y', cuando el código generado haga referencia al elemento 'Y' el compilador COBOL no sabrá si la referencia se hace al mensaje 'Y' o al campo 'Y de X'.

Método alternativo: Refactorice el mensaje o el campo para resolver el conflicto de nombres. En el Explorador de proyectos de EST, seleccione uno de los elementos que tenga el nombre duplicado. Abra el menú contextual y elija Redenominar.

## No se puede importar un archivo de libro de copias COBOL cuando hay caracteres no ingleses en la vía de acceso o en el nombre del archivo

Problema: si intenta importar un archivo de libro de copias COBOL y resulta que en la vía de acceso o en el nombre del archivo hay caracteres no ingleses, la importación falla.

Método alternativo: cambie el nombre del archivo de libro de copias COBOL y póngale otro que solo conste de caracteres ingleses. Sitúe el archivo en un directorio cuya vía de acceso solo conste de caracteres ingleses.

## No se puede importar un archivo de inclusión PL/I cuando hay caracteres no ingleses en la vía de acceso o en el nombre del archivo

Problema: si intenta importar un archivo de inclusión PL/I y resulta que en la vía de acceso o en el nombre del archivo hay caracteres no ingleses, la importación falla.

Método alternativo: cambie el nombre del archivo de inclusión PL/I y póngale otro que solo conste de caracteres ingleses. Sitúe el archivo en un directorio cuya vía de acceso solo conste de caracteres ingleses.

Tema principal: Enterprise Service Tools - Notas de release