Ir al contenido
Kitegra
← Volver al blog

Módulo de este artículo: iFlow Inspector

Convenciones de nombres en SAP CPI: un paquete de reglas que tu equipo puede aplicar

Convenciones de nombres para pasos, canales, propiedades y direcciones ProcessDirect de SAP CPI, escritas como un paquete de reglas compartido, y cómo comprobar cada iFlow con él.

Convenciones de nombres en SAP CPI: un paquete de reglas que tu equipo puede aplicar

La mayoría de los equipos de SAP Cloud Integration (SAP CPI) tienen convenciones de nombres. Menos equipos tienen convenciones que cumplan todos sus iFlows, porque las reglas viven en una página de wiki y nadie revisa el nombre de un Content Modifier antes de un transporte.

Este artículo propone una convención inicial para pasos, canales, propiedades y direcciones, muestra cómo escribirla como reglas que una herramienta pueda comprobar y cómo un equipo puede compartirla y hacerla cumplir.

Por qué importan los nombres en SAP CPI

El nombre de un paso es lo que ves cuando algo se rompe. El monitor indica el paso que falla por su nombre, una búsqueda de «el paso que define el ID del pedido» solo lo encuentra si el nombre lo dice, y un documento de diseño o un traspaso se leen como las etiquetas del diagrama. «Content Modifier 3» no dice nada; CM_SetOrderHeaders dice lo que hace.

Los nombres coherentes también hacen comparables dos iFlows: un revisor que conoce la convención puede leer de un vistazo cualquier iFlow del equipo.

Una convención inicial

Para la mayoría de los equipos basta un prefijo según el tipo de paso, seguido de lo que hace, en PascalCase. Este es el paquete que incluye Kitegra; es un punto de partida para adaptar, no un estándar de SAP:

ElementoPatrónEjemplo
Content ModifierCM_<Action>CM_SetOrderHeaders
Script de Groovy o JavaScriptGS_<Action>GS_BuildPayload
RouterRT_<Decision>RT_ByOrderType
Request ReplyRR_<System>RR_S4HanaOData
Content EnricherCE_<Lookup>CE_CustomerMaster
Process CallPC_<Process>PC_CallValidateOrder
Local Integration ProcessLIP_<Purpose>LIP_ValidateOrder
Exception SubprocessESP_<Purpose>ESP_LogAndAlert
Message MappingMM_<Source>_to_<Target>MM_Order_to_SalesOrder
Sender y Receiver<PascalCase>S4Hana, Salesforce
Exchange property<camelCase>orderId
Dirección ProcessDirect/<Path>/orders/validate

Escribe la convención como reglas

Una convención que una herramienta puede comprobar es una lista de reglas, una por tipo de elemento. El texto literal debe coincidir exactamente; <Placeholder> representa cualquier texto; <PascalCase>, <camelCase>, <UPPER>, <lower> y <Number> representan texto con esa forma. Se aplica la primera regla de cada tipo, y cada regla tiene una gravedad: Error, Advertencia o Info.

En Kitegra, las reglas forman un paquete de reglas en JSON. Un extracto:

{
  "rules": [
    {
      "id": "content-modifier",
      "target": "content-modifier",
      "pattern": "CM_<Action>",
      "example": "CM_SetOrderHeaders",
      "notes": "Content Modifier: CM_ and what it sets.",
      "severity": "warning",
      "enabled": true
    },
    {
      "id": "mapping",
      "target": "mapping",
      "pattern": "MM_<Source>_to_<Target>",
      "example": "MM_Order_to_SalesOrder",
      "notes": "Message Mapping: source and target message.",
      "severity": "info",
      "enabled": true
    },
    {
      "id": "property",
      "target": "property",
      "pattern": "<camelCase>",
      "example": "orderId",
      "notes": "Exchange property names in camelCase.",
      "severity": "info",
      "enabled": true
    }
  ]
}

Acuérdala en equipo

  1. Abre la página de opciones de la extensión y busca «Reglas de nombres». Empieza con el paquete predeterminado.
  2. Cambia el «Patrón», la «Gravedad» o las «Notas» de una regla, desactiva una con «Regla activa», o elige «Añadir regla» y selecciona qué «Comprueba».
  3. Elige «Exportar JSON» y guarda el archivo donde el equipo guarda sus estándares, junto a las pautas de transporte.
  4. Cada compañero elige «Importar JSON» con ese archivo. Si ha iniciado sesión con Kitegra, el paquete le acompaña después en cualquier equipo.

La sincronización mantiene igual el paquete de una persona en todos sus equipos; el archivo JSON compartido es lo que mantiene a todo el equipo con las mismas reglas.

Comprueba un iFlow con las reglas

Abre el iFlow, haz clic en el botón «Herramientas de Kitegra» y elige «Inspector» (o pulsa Alt+Shift+K). La pestaña «Nomenclatura» lista cada nombre que no cumple las reglas, con el recuento en el botón: el nombre actual, lo «Esperado», un «Ejemplo» y, cuando el contenido del paso lo permite, una «Propuesta» de nombre construida a partir de lo que hace el paso. Al hacer clic en un hallazgo se selecciona el paso en el diagrama.

En modo de edición, «Renombrar» escribe el nombre propuesto en el campo Name del paso. Nunca guarda: el panel dice «Renombrado. Guarde el iFlow para conservarlo.», y la decisión es tuya.

Los mismos hallazgos aparecen en el informe del iFlow junto a las comprobaciones de diseño, como muestra la lista de revisión de iFlows, y unos buenos nombres hacen que un documento de diseño generado se lea bien.

Cómo ayuda Kitegra

Los nombres forman parte del iFlow Inspector de Kitegra. La comprobación lee el modelo del iFlow en tu navegador; tu paquete de reglas se sincroniza con tu cuenta de Kitegra cuando inicias sesión, y el contenido del iFlow nunca se envía.

El Helper, Message Monitor, iFlow Inspector e iFlow Docs cuentan cada uno los iFlows en los que los usas: 5 por módulo sin una cuenta de Kitegra, 50 con el plan Free, 100 con Starter y 300 con Pro; Business no tiene límite. La Toolbox y los extras del espacio de trabajo son gratuitos. Compara los planes.

Pruébalo en tu próximo iFlow

Descubre lo que Kitegra añade alrededor del diseñador de SAP Integration Suite, o míralo junto a las demás extensiones de Chrome de Kitegra.

Preguntas frecuentes

¿SAP tiene una convención de nombres oficial para CPI?

SAP publica pautas, pero cada equipo fija sus propias reglas. El paquete de este artículo es un punto de partida para adaptar.

¿Qué debe contener el nombre de un paso?

El tipo de paso y lo que hace, por ejemplo CM_SetOrderHeaders para un Content Modifier que define los headers del pedido.

¿Cómo comparto las reglas de nombres con mi equipo?

Exporta el paquete de reglas como JSON desde la página de opciones, guarda el archivo con los estándares del equipo y deja que cada compañero lo importe.

¿La extensión renombra pasos por su cuenta?

No. «Renombrar» escribe el nombre propuesto en el campo Name del paso en modo de edición, y eres tú quien guarda el iFlow.

¿Puedo hacer que una regla sea un error en lugar de una advertencia?

Sí. Cada regla tiene una gravedad: Error, Advertencia o Info.

¿También se comprueban los nombres de las exchange properties?

Sí. El paquete predeterminado espera camelCase para las exchange properties, y puedes cambiar esa regla.

Trabaja en iFlows sin salir del diseñador

Agrega Kitegra a Chrome o Microsoft Edge. Empieza gratis, sin necesidad de cuenta.