Ir al contenido principal

Conexión a S/4HANA Cloud Public Edition mediante OData V4

SAP S/4HANA Cloud Public Edition no admite la importación del dab RFC Add-On para este método de conexión. En su lugar, debe configurar el acceso a través de las aplicaciones de comunicación en el SAP Fiori launchpad. Esto requiere un usuario de comunicación, un sistema de comunicación que represente el entorno Nexus y un acuerdo de comunicación para el escenario de comunicación necesario.

Después de completar la configuración en SAP, configure el endpoint OData V4 proporcionado por el inquilino de destino en dab Nexus como una conexión de OData Communication. Nexus no proporciona un catálogo de servicios para seleccionar orígenes automáticamente en este escenario de Public Cloud.

Requisitos previos​

Verificar el SAP System​

Confirme el producto, edición, versión y el inquilino de destino utilizando Identify SAP System. No determine el modelo operativo únicamente por el nombre del host ni el Fiori launchpad.

SAP ECC, S/4HANA local, Private Cloud y Public Edition utilizan diferentes modelos de conexión y administración. Marque los valores desconocidos como no confirmados y verifíquelos con el administrador de SAP.

Verificar el entorno Nexus​

  • Revise la versión instalada en Configuración → Licencia y soporte. Confirme que OData Communication esté disponible.
  • Asegúrese de que pueda acceder al host de la API de SAP por HTTPS en el puerto TCP 443 y valide su certificado TLS.

Habilitar el catálogo de servicios​

El escenario de comunicación SAP_COM_0181 es necesario porque habilita el acceso al catálogo de servicios de SAP utilizado por Nexus.

Cree y mantenga un acuerdo de comunicación para:

SAP_COM_0181

Asigne el sistema de comunicación y el usuario de comunicación destinados a la integración Nexus.

important

SAP_COM_0181 es un requisito estricto para la conexión OData V4 Nexus porque habilita el catálogo de servicios. No sustituye el escenario de comunicación requerido por la fuente de datos real. Por ejemplo, una fuente CDI_CDS requiere adicionalmente SAP_COM_0531 y su respectivo acuerdo de comunicación.

Resumen del proceso​

  1. Seleccione el origen y el escenario de comunicación.
  2. Para CDI_CDS, configure la lista blanca de CDS y el grupo de autorizaciones.
  3. Cree el usuario de comunicación y el sistema de comunicación.
  4. Cree el acuerdo de comunicación.
  5. Determine la ruta al conjunto de entidades.
  6. Cree, pruebe y registre la conexión Nexus.
  7. Cree un paquete para el origen agregado en Package Studio y realice una extracción de prueba.

1. Seleccionar el origen y el escenario de comunicación

Obtenga un registro de referencia conocido con su clave completa y los valores de campos esperados. Utilícelo para validar la conexión y la extracción.

OrigenVerificaciónEscenario de comunicación
CDI_CDSBusque el origen en View Browser. Verifique sus campos, claves, soporte de extracción y capacidad delta para la versión de destino.SAP_COM_0531
Business APIBusque una API OData V4 publicada para Public Edition en SAP Business Accelerator Hub. Verifique las entidades, campos y versión requeridos.ID del escenario especificado en la documentación de la API
Danger

El servicio utilizado por una aplicación Fiori no se publica automáticamente para integración externa.

Para Business API:

  • La lista blanca de CDI no aplica.
  • SAP_COM_0531 no es necesariamente el escenario correcto.
  • SAP_COM_0532 no sustituye el acceso OData CDI aquí descrito.
  • Se requiere el arreglo de comunicación específico del origen además del acuerdo para el catálogo de servicios de SAP_COM_0181.

Vistas CDS personalizadas Key User​

Confirme que la vista esté publicada para Extracción de datos. SAP KBA 2884410 documenta la extracción completa sin delta para este tipo de fuente. Esta restricción no aplica automáticamente a extractores estándar de SAP.

2. Configurar la lista blanca CDS y el grupo de autorizaciones

Este apartado solo aplica a CDI_CDS. Para una Business API, continúe con 3. Crear el usuario de comunicación.

Si no tiene acceso a la actividad de configuración, el responsable de la configuración de SAP Cloud debe completar esta preparación.

2.1 Acceder a la actividad de configuración​

Localice Definir listas blancas para la extracción de vistas CDS usando una de estas rutas.

Administrar su solución​

  1. Abra Administrar su solución → Configurar su solución.
  2. Aplique estos filtros:
    • Área de aplicación: Application Platform and Infrastructure
    • Sub área de aplicación: Data Extraction
  3. Abra el resultado correspondiente.
  4. Seleccione Configurar para el paso de configuración.

SAP Central Business Configuration​

Busque el nombre de la actividad en:

Configuration Activities
→ General Settings
→ Further Settings

Según el interfaz, la actividad puede aparecer directamente bajo Configuración.

2.2 Crear el grupo de autorizaciones y la lista blanca​

  1. Seleccione Nuevas entradas.
  2. Ingrese un ID de grupo de autorizaciones único.
  3. Ingrese una descripción significativa.
  4. Seleccione Lista blanca explícita como tipo.
  5. Agregue las fuentes CDS necesarias a la lista blanca del grupo.
  6. Guarde la configuración.
  7. Seleccione el transporte de Customizing necesario.
  8. Anote el ID del grupo de autorizaciones para el arreglo comunicación específico del origen.
  9. Si el inquilino de destino es diferente, verifique que el grupo y sus entradas también estén disponibles allí.

2.3 Falta la actividad de lista blanca​

Si falta la actividad, solicite al responsable de configuración que verifique si el elemento de alcance Data Protection and Privacy (5LE) está activo. SAP KBA 3781796 describe como causa la falta de activación de este elemento. Tras la activación, busque de nuevo la actividad.

3. Crear el usuario de comunicación

  1. Abra Maintener usuarios de comunicación.
  2. Cree un usuario de comunicación dedicado para Nexus, o edite el usuario existente para esta integración.
  3. Configure el método de autenticación requerido por el servicio.

Nombre de usuario y contraseña​

  • Establezca la contraseña del usuario de comunicación.
  • Transfiera esta contraseña solo mediante el proceso de gestión de secretos aprobado.
  • Guárdela posteriormente en la conexión Nexus.

Certificado de cliente​

  • Asigne el certificado público del cliente al usuario de comunicación.
  • Nexus también requerirá la clave privada asociada.
  • Proporcione a Nexus un archivo .p12 que contenga el certificado y la clave privada.
  • Almacene y transfiera la contraseña del archivo por separado.
  1. Guarde el usuario.
  2. Anote su identidad para el sistema de comunicación.
nota

El usuario de comunicación no es la cuenta personal utilizada para iniciar sesión en el Fiori launchpad. Su usuario de Fiori configura la integración, mientras que Nexus realiza llamadas al servicio con el usuario de comunicación o su certificado. Un inicio de sesión exitoso en Fiori por lo tanto no valida la autenticación Nexus.

4. Crear el sistema de comunicación para Nexus

  1. Abra Sistemas de comunicación.
  2. Cree un sistema para el entorno Nexus correspondiente.
  3. Asigne un ID de sistema y un nombre descriptivo, por ejemplo: DAB_NEXUS_PROD
  4. En Nombre de host, introduzca el nombre del host de la instalación Nexus o Managed App relevante.
  5. Ingrese solo el nombre de host, sin esquema ni ruta de URL.
  6. En Usuarios para comunicación entrante, agregue el usuario de comunicación creado en 3. Crear el usuario de comunicación.
  7. Seleccione su método de autenticación.
  8. Guarde el sistema de comunicación y compruebe la asignación del usuario.

En este contexto, entrante significa que Nexus envía una solicitud a SAP.

Danger

El sistema de comunicación representa Nexus como el socio de comunicación. Su nombre de host no es el nombre de host de la API de SAP utilizada como la URL base Nexus. Obtenga la URL de la API de SAP desde los servicios entrantes del acuerdo de comunicación.

Utilice sistemas de comunicación separados si DEV, QA y PROD utilizan diferentes tiempos de ejecución Nexus o identificaciones técnicas.

5. Crear los acuerdos de comunicación

Se pueden requerir al menos dos acuerdos de comunicación. Cree los siguientes acuerdos de comunicación:

  1. Un acuerdo de catálogo de servicios para SAP_COM_0181.
  2. Un acuerdo específico para fuente SAP_COM_0531 o el escenario documentado para la Business API seleccionada.

5.1 Crear el acuerdo de catálogo de servicios​

  1. Abra Acuerdos de comunicación.
  2. Seleccione Nuevo.
  3. Seleccione el escenario de comunicación:
    SAP_COM_0181
  4. Ingrese un nombre descriptivo para el acuerdo.
  5. Seleccione el sistema de comunicación Nexus creado en 4. Crear el sistema de comunicación para Nexus.
  6. En Comunicación de entrada, verifique:
    • el usuario de comunicación asignado,
    • el método de autenticación configurado.
  7. Guarde el acuerdo.
  8. Abra Servicios de entrada y verifique el acceso al catálogo de servicios ofrecido.
important

El acuerdo SAP_COM_0181 habilita el catálogo de servicios. No autoriza el acceso a las entidades de la fuente de datos seleccionada.

5.2 Crear el acuerdo específico del origen​

  1. Abra Acuerdos de comunicación.
  2. Seleccione Nuevo.
  3. Seleccione el escenario identificado en 1. Seleccionar el origen y el escenario de comunicación:
    • para CDI: SAP_COM_0531,
    • para una Business API: el ID de escenario documentado.
  4. Ingrese un nombre para el acuerdo.
  5. Seleccione el sistema de comunicación Nexus creado en 4. Crear el sistema de comunicación para Nexus.
  6. En Comunicación de entrada, verifique:
    • el usuario de comunicación asignado,
    • el método de autenticación configurado.
  7. Para CDI, ingrese el ID del grupo de autorizaciones creado en 2.2 Crear el grupo de autorizaciones y lista blanca en Propiedades adicionales → ID del grupo de autorizaciones.
  8. Guarde el acuerdo.
  9. Abra Servicios de entrada.
  10. Copie las URL mostradas para el inquilino de destino.

Errores comunes de configuración​

El grupo de autorización debe mantenerse​

Verifique que:

  • El ID del grupo de autorizaciones se ingresó exactamente,
  • el grupo existe en el inquilino de destino,
  • las fuentes CDS requeridas están incluidas en su lista blanca.

SAP KBA 3118974 describe este error.

El catálogo de servicios no está disponible​

Verifique que:

  • existe un acuerdo de comunicación para SAP_COM_0181,
  • se asignó el sistema de comunicación correcto,
  • se asignó el usuario de comunicación requerido,
  • el método de autenticación coincide con la conexión Nexus.

No trate el acuerdo específico del origen como sustituto de SAP_COM_0181.

El servicio requerido no está disponible​

Compare:

  • el escenario de comunicación seleccionado,
  • la versión de la API,
  • la versión de SAP Cloud,
  • la documentación específica de la versión de SAP.

No sustituya por un escenario no relacionado solo porque contenga un servicio de nombre similar.

6. Determinar la ruta específica del conjunto de entidades

6.1 CDI_CDS​

Consultar el directorio de proveedores​

Use el usuario de comunicación para llamar al directorio de proveedores CDI a través del endpoint CDI del acuerdo. SAP documenta este patrón:

https://<SAP-API-Host>/sap/opu/odata4/sap/cdi/default/sap/cdi/0001/Providers
  1. Busque el nombre técnico de la entidad CDS identificado en 1. Seleccionar el origen y escenario de comunicación.
  2. No utilice el nombre de la vista SQL ni solo la descripción de negocio.
  3. Siga cada página de @odata.nextLink devuelta.
  4. Copie la URL del proveedor ofrecida por el inquilino de destino.
  5. No construya una ruta CDI_CDS solo a partir del nombre de la vista.

Comprobar el servicio y los metadatos​

Llame a:

  • el documento del servicio en la raíz del servicio, incluyendo el / final,
  • el documento de metadatos en service root + /$metadata.

Verifique:

  • el conjunto de entidades Facts,
  • los campos requeridos,
  • la clave completa,
  • tipos de campos, monedas y unidades.

Un proveedor ofrecido por el inquilino de destino puede, por ejemplo, devolver estas rutas:

Service root: /sap/opu/odata4/sap/cdi_cds/cdi_cds/sap/c_billingdocitembasicdex_1/0001/
Metadata: /sap/opu/odata4/sap/cdi_cds/cdi_cds/sap/c_billingdocitembasicdex_1/0001/$metadata
Entity set: /sap/opu/odata4/sap/cdi_cds/cdi_cds/sap/c_billingdocitembasicdex_1/0001/Facts

Reemplace este ejemplo por la URL del proveedor obtenida del inquilino de destino. Providers se utiliza para descubrir fuentes. La URL proporcionada debe agregarse en la configuración de Nexus durante la puesta en marcha.

6.2 Business API​

  1. Copie la raíz del servicio desde Servicios de entrada en el acuerdo de comunicación correspondiente.
  2. Llame al documento del servicio.
  3. Llame a /$metadata.
  4. Identifique el conjunto de entidades requerido, los campos y la clave completa.
  5. Use el nombre publicado del conjunto de entidades con la capitalización indicada en la documentación.
nota

Facts no es un sufijo genérico para Business API. Debe usar el nombre del conjunto de entidades declarado en los metadatos de la API específica.