Consulta i connettori supportati per Application Integration.

Trigger ERP SAP

Il trigger di SAP ERP è un trigger di evento connettore SAP ERP che consente di eseguire operazioni di inserimento, eliminazione, aggiornamento e lettura dei dati SAP ERP.

Prima di iniziare

  • Se prevedi di creare o configurare una nuova connessione per l'attivatore SAP ERP, assicurati di disporre del seguente ruolo IAM nel progetto:
    • Amministratore connettore (roles/connectors.admin)
    • Per informazioni sulla concessione dei ruoli, vedi Gestire l'accesso.

  • Concedi i seguenti ruoli IAM all'account di servizio che vuoi utilizzare per l'attivatore SAP ERP:
  • Aggiungi il trigger ERP SAP

    Per aggiungere un trigger SAP ERP all'integrazione, segui questi passaggi:

    1. Nella console Google Cloud, vai alla pagina Integrazione delle applicazioni.

      Vai ad Application Integration

    2. Nel menu di navigazione, fai clic su Integrations (Integrazioni).

      Viene visualizzata la pagina Integrations List (Elenco delle integrazioni) che elenca tutte le integrazioni disponibili nel progetto Google Cloud.

    3. Seleziona un'integrazione esistente o fai clic su Crea integrazione per crearne una nuova.

      Se stai creando una nuova integrazione:

      1. Inserisci un nome e una descrizione nel riquadro Crea integrazione.
      2. Seleziona una regione per l'integrazione.
      3. Seleziona un account di servizio per l'integrazione. Puoi modificare o aggiornare i dettagli dell'account di servizio di un'integrazione in qualsiasi momento dal riquadro Riepilogo dell'integrazione nella barra degli strumenti di integrazione.
      4. Fai clic su Crea.

      L'integrazione viene aperta nell'editor dell'integrazione.

    4. Nella barra di navigazione dell'editor di integrazione, fai clic su Trigger per visualizzare l'elenco degli attivatori disponibili.
    5. Fai clic sull'elemento trigger di SAP ERP e posizionalo nell'editor di integrazione.
    6. Per configurare l'attivatore SAP ERP, puoi utilizzare una connessione SAP ERP esistente disponibile in Integration Connectors o creare una nuova connessione SAP ERP utilizzando l'opzione di creazione della connessione in linea.

    Configura il trigger di SAP ERP utilizzando una connessione esistente

    Il trigger di SAP ERP è un trigger di evento connettore, pertanto puoi utilizzare solo una connessione SAP ERP con abbonamento all'evento abilitato per configurare il trigger.

    Per informazioni su come configurare un trigger SAP ERP utilizzando una nuova connessione SAP ERP, consulta Configurare un trigger SAP ERP utilizzando una nuova connessione

    Per configurare un attivatore SAP ERP utilizzando una connessione SAP ERP esistente:

    1. Fai clic sull'elemento Trigger SAP ERP nell'editor di integrazione per aprire il riquadro di configurazione dell'attivatore.
    2. Fai clic su Configura trigger.
    3. Fornisci i seguenti dettagli di configurazione nella pagina Editor trigger evento connettore:
      1. Regione: seleziona la regione della connessione SAP ERP.
      2. Connessione:seleziona la connessione SAP ERP che vuoi utilizzare.

        L'integrazione delle applicazioni mostra solo le connessioni SAP ERP attive e per le quali è abilitata una sottoscrizione di eventi.

      3. Inserisci il nome del campo del tipo di evento. Questo campo identifica il tipo di evento associato alla richiesta di evento in arrivo.
        {
            "event_type": "user.created",
            ...
            // other request fields
            ...
            }
      4. Account di servizio: seleziona un account di servizio con i ruoli IAM richiesti per il trigger di SAP ERP.
    4. Fai clic su Fine per completare la configurazione dell'attivatore e chiudere la pagina.

    Configurare l'attivatore SAP ERP utilizzando una nuova connessione

    1. Fai clic sull'elemento Trigger SAP ERP nell'editor di integrazione per aprire il riquadro di configurazione dell'attivatore.
    2. Fai clic su Configura trigger.
    3. Ignora il campo Regione.
    4. Fai clic su Connessione e seleziona l'opzione Crea connessione dal menu a discesa.
    5. Nella sezione Dettagli connessione, completa i seguenti passaggi:
      1. Connettore: seleziona SAP ERP dall'elenco a discesa dei connettori disponibili.
      2. Versione del connettore: seleziona la versione del connettore dall'elenco a discesa delle versioni disponibili.
      3. Nel campo Nome connessione, inserisci un nome per l'istanza di connessione.

        I nomi delle connessioni devono soddisfare i seguenti criteri:

        • I nomi delle connessioni possono contenere lettere, numeri o trattini.
        • Le lettere devono essere minuscole.
        • I nomi delle connessioni devono iniziare con una lettera e terminare con una lettera o un numero.
        • I nomi delle connessioni non possono contenere più di 49 caratteri.
        • Per i connettori che supportano la sottoscrizione agli eventi, i nomi delle connessioni non possono iniziare con "goog" .
      4. Facoltativamente, inserisci una descrizione per la connessione.
      5. Facoltativamente, abilita Cloud Logging, e poi seleziona un livello di log. Per impostazione predefinita, il livello di log è impostato su Error.
      6. Account di servizio: seleziona un account di servizio con i ruoli richiesti.
      7. Per utilizzare la connessione per le sottoscrizioni agli eventi, seleziona Attiva sottoscrizione eventi. Se la selezioni, vengono visualizzate le seguenti opzioni:
        • Attiva sottoscrizione eventi con entità e azioni: seleziona questa opzione per utilizzare la connessione sia per le sottoscrizioni agli eventi sia per le operazioni del connettore (entità e azioni).
        • Attiva solo la sottoscrizione agli eventi: seleziona questa opzione per utilizzare la connessione solo per la sottoscrizione agli eventi. Se selezioni questa opzione, fai clic su Avanti e poi su configura l'iscrizione agli eventi.
      8. Client: il client che si autentica nel sistema SAP.
      9. ID sistema: l'ID sistema o R3Name del sistema SAP è una stringa con un massimo di tre caratteri. Viene spesso utilizzato nelle connessioni di bilanciamento del carico.
      10. Numero di sistema: il numero tramite il quale viene definito il sistema di destinazione. Utilizzato per impostare la proprietà Connessione host.
      11. ID progetto: l'ID del progetto Google Cloud in cui si trova il bucket GCS contenente il file jar SAP JCo.
      12. Bucket: il nome del bucket contenente i file sapjco3.jar e libsapjco3.so.
      13. ID oggetto jar Jaco: ID oggetto del jar JCo.
      14. ID oggetto libsapjco3: ID oggetto del jar libsapjco3.
      15. Modalità tabella: seleziona la tabella SAP da visualizzare come visualizzazione.
      16. ID oggetto SNC_LIB: ID oggetto della libreria SNC.
      17. Nome PSE: nome del file PSE (Personal Security Environment) applicabile per il bucket. Un file PSE memorizza la coppia di chiavi pubblica e privata, nonché i certificati X.509, in una struttura ASN.1.
      18. Gruppo: il nome del gruppo per l'accesso. Questo valore viene normalmente specificato quando il sistema SAP utilizza bilanciatori del carico.
      19. Server di messaggi: nome del server di messaggi da utilizzare per la connessione al sistema SAP che utilizza i bilanciatori del carico.
      20. Funzione di lettura della tabella: nome della funzione da utilizzare per la lettura delle tabelle. Per ulteriori informazioni, consulta Utilizzare una funzione di lettura della tabella personalizzata.
      21. Schema di connessione: seleziona uno schema di connessione da utilizzare per la connessione al sistema SAP.
      22. System ID (ID sistema): l'ID di sistema o il valore R3Name del sistema SAP. Puoi inserire un massimo di 3 caratteri.
      23. Passcode SNC: seleziona il segreto Secret Manager del passcode della libreria SNC.
      24. Versione secret: seleziona la versione del secret.
      25. Modalità SNC: seleziona questa opzione per abilitare SNC per l'autenticazione tra Application Integration e il sistema SAP.
      26. Nome SNC: inserisci un nome per la connessione SNC.
      27. SNC qop: seleziona un livello di protezione. Di seguito sono riportati i livelli supportati:
        • 1 - Applica solo l'autenticazione.
        • 2 - Applica la protezione dell'integrità. È inclusa anche la protezione dell'autenticazione.
        • 3: applica la protezione della privacy. Sono incluse anche la protezione dell'integrità e dell'autenticazione.
        • 8 - Applica la protezione predefinita.
        • 9 - Applica la massima protezione.
      28. Nome partner SNC: inserisci il nome dell'SNC del server delle applicazioni.
      29. Modalità query: seleziona le tabelle SAP da mostrare come viste.
      30. Visualizzazioni sfogliabili: inserisci un elenco separato da virgole di viste da mostrare. Ad esempio, ViewA,ViewB,ViewC.
      31. Livello di dettaglio: inserisci il livello di dettaglio per il logging. Lo strumento sono compresi tra 1 e 5. Un valore più alto indica che saranno disponibili più dettagli nei log.
      32. (Facoltativo) Configura le impostazioni del nodo di connessione:

        • Numero minimo di nodi: inserisci il numero minimo di nodi di connessione.
        • Numero massimo di nodi: inserisci il numero massimo di nodi di connessione.

        Un nodo è un'unità (o una replica) di una connessione che elabora le transazioni. Sono necessari più nodi per elaborare più transazioni per una connessione e, per elaborare meno transazioni. Per comprendere in che modo i nodi influiscono sui prezzi dei connettori, consulta Prezzi per i nodi di connessione. Se non inserisci alcun valore, per impostazione predefinita il numero minimo di nodi è impostato su 2 (per una maggiore disponibilità) e il numero massimo di nodi è impostato su 50.

      33. Facoltativamente, fai clic su + AGGIUNGI ETICHETTA per aggiungere un'etichetta alla connessione sotto forma di coppia chiave/valore.
      34. Fai clic su Avanti.
    6. Nella sezione Destinazioni, inserisci i dettagli dell'host remoto (sistema di backend) a cui vuoi connetterti.
      1. Tipo di destinazione: seleziona un Tipo di destinazione.
        • Seleziona Indirizzo host dall'elenco per specificare il nome host o l'indirizzo IP della destinazione.
        • Se vuoi stabilire una connessione privata ai tuoi sistemi di backend, seleziona Allegato endpoint dall'elenco, quindi seleziona l'allegato endpoint richiesto dall'elenco Allegato endpoint.

        Se vuoi stabilire una connessione pubblica ai tuoi sistemi di backend con maggiore sicurezza, puoi valuta la possibilità di configurare una rete statica in uscita indirizzi IP per le tue connessioni, quindi configura le regole del firewall per inserire nella lista consentita solo gli indirizzi IP statici specifici.

        Per inserire altre destinazioni, fai clic su + Aggiungi destinazione.

      2. Fai clic su Avanti.
    7. Nella sezione Autenticazione, inserisci i dettagli di autenticazione.
      1. Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.

        La connessione SAP ERP supporta i seguenti tipi di autenticazione:

        • Nome utente e password
      2. Per capire come configurare questi tipi di autenticazione, consulta Configurare l'autenticazione.

      3. Fai clic su Avanti.
    8. Se hai attivato la sottoscrizione di eventi, nella pagina di creazione della connessione viene visualizzata la sezione Dettagli sottoscrizione evento. Per comprendere come configurare i dettagli della sottoscrizione agli eventi, consulta Configurare la sottoscrizione all'evento.
    9. Rivedi: controlla i dettagli di connessione e autenticazione.
    10. Fai clic su Crea.

    Configura autenticazione

    Inserisci i dettagli in base all'autenticazione che vuoi utilizzare.

    • Nome utente e password
      • Nome utente: nome utente del connettore
      • Password: il segreto Secret Manager contenente la password associata al connettore.

    Configurazione per la sottoscrizione agli eventi

    Se hai attivato la sottoscrizione all'evento, inserisci i seguenti valori nella sezione Dettagli sottoscrizione evento:

    1. Seleziona uno dei seguenti tipi di autenticazione per l'ascoltatore di eventi.
    2. Inserisci il nome del campo del tipo di evento. Questo campo identifica il tipo di evento associato al richiesta di evento in arrivo.
      {
      "event_type": "user.created",
      ...
      // other request fields
      ...
      }
    3. Seleziona Abilita connettività privata per una connettività sicura tra la tua applicazione di backend e la connessione. Se selezioni questa opzione, devi eseguire passaggi di configurazione aggiuntivi dopo aver creato la connessione. Per ulteriori informazioni, consulta Connettività privata per l'iscrizione agli eventi.
    4. Inserisci la configurazione dei messaggi non recapitabili. Se configuri la posta in arrivo, la connessione scrive gli eventi non elaborati nell'argomento Pub/Sub specificato. Inserisci i seguenti dettagli:
      1. ID progetto messaggi non recapitabili: l'ID progetto Google Cloud in cui hai configurato l'argomento Pub/Sub messaggi non recapitabili.
      2. Argomento messaggi non recapitabili : l'argomento Pub/Sub in cui vuoi scrivere i dettagli dell'evento non elaborato.

    Utilizza una funzione di tabella di lettura personalizzata

    RFC_READ_TABLE

    Il connettore utilizza la funzione SAP RFC_READ_TABLE per recuperare i dati dalle tabelle SAP.

    Tuttavia, presenta alcune limitazioni. Considera ad esempio DATA_BUFFER_EXCEEDED un'eccezione. Il SAP RFC_READ_TABLE ha una dimensione fissa di 512 byte. Può eseguire il buffering per ogni riga di dati, quindi non puoi selezionare più colonne della quantità che in questo buffer. Se selezioni più di 512 byte, viene generata un'eccezione che indica che hai superato la dimensione massima del buffer consentita per riga e devi selezionare meno colonne.

    RFC_READ_TABLE2

    Il connettore SAP ERP supporta la funzione di lettura della tabella RFC_READ_TABLE2. Puoi impostare la funzione di lettura della tabella attiva su RFC_READ_TABLE2 impostando ReadTableFunction su /SAPDS/RFC_READ_TABLE2.

    Funzioni tabella di lettura personalizzate

    Il connettore include un'RFC di lettura della tabella personalizzata, Z_CUSTOM_READ_TABLE, simile a SAP RFC_READ_TABLE, ma con un buffer più grande per risolvere il problema DATA_BUFFER_EXCEEDED e aggirare le limitazioni di RFC_READ_TABLE.

    Per utilizzare la RFC personalizzata di tabella di lettura inclusa per ignorare le limitazioni del valore predefinito RFC_READ_TABLE, segui questi passaggi:

    1. Utilizza la funzione RFC_READ_TABLE come modello per la nuova funzione. Seleziona il codice transazione SE37 e il gruppo di funzioni SDTX e copia RFC_READ_TABLE in un nuovo gruppo di funzioni o nel gruppo di funzioni di lavoro. In questo esempio, RFC_READ_TABLE viene copiato in Z_CUSTOM_READ_TABLE.
    2. Nella scheda Attributi della schermata SAP, seleziona Remote Enabled Module.
    3. Nella scheda Tabelle, imposta il parametro DATA su CHAR8000. Fai clic con il tasto destro del mouse sullo schermo e poi fai clic su Display -> Modifica.
    4. Nella scheda Codice sorgente, incolla il codice sorgente di esempio per il modulo di funzione RFC_READ_TABLE sostitutivo che si trova nella sottocartella db della directory di installazione. Il codice si trova in Z_CUSTOM_READ_TABLE.txt, anche se è preferibile Z_CUSTOM_READ_TABLE_752.txt se la tua istanza SAP ERP esegue ABAP versione 7.52 o successive.
    5. Fai clic su Salva.
    6. Definisci le importazioni, le tabelle e le eccezioni come documentato nella tabella di lettura personalizzata fornita.
    7. Attiva il modulo funzione e nella stringa di connessione imposta ReadTableFunction su Z_CUSTOM_READ_TABLE oppure sul nome del modulo della funzione.

    Tabella di lettura personalizzata ABAP 7.52

    Oltre a Z_CUSTOM_READ_TABLE.txt, esiste anche un file Z_CUSTOM_READ_TABLE_752.txt per la versione ABAP 7.52 e successive. È simile a Z_CUSTOM_READ_TABLE, ma sfrutta le parole chiave di nuova disponibilità in ABAP 7.52 per eseguire la paginazione all'interno del database anziché nello script ABAP stesso. In questo modo, l'impaginazione è efficiente quando si lavora con tabelle di grandi dimensioni.

    Ti consigliamo di utilizzare il documento RFC Z_CUSTOM_READ_TABLE_752.

    Configura l'autenticazione in SAP

    Configura l'autenticazione in SAP seguendo le istruzioni riportate nella guida Panoramica dell'autenticazione per le versioni on-premise o cloud di ABAP SDK per Google Cloud.

    Convalida l'attivatore

    Per convalidare l'attivatore, puoi creare un programma ABAP. Di seguito è riportato un programma ABAP di esempio che puoi utilizzare come riferimento. Il campo ls_event_payload cambia in base ai tuoi requisiti:

    *&---------------------------------------------------------------------*
    *& Report ZR_TEST_INT_CONNECTOR
    *&---------------------------------------------------------------------*
    *&
    *&---------------------------------------------------------------------*
    REPORT zr_test_int_connector.
    PARAMETERS: p_auth TYPE char1 RADIOBUTTON GROUP rbg1 USER-COMMAND uc DEFAULT 'X',
     p_apik TYPE char1 RADIOBUTTON GROUP rbg1.
    DATA:
     lv_p_projects_id TYPE string,
     lv_p_locations_id TYPE string,
     lv_p_connections_id TYPE string,
     ls_input TYPE /goog/cl_connectors_v1=>ty_103.
    TYPES: BEGIN OF event_payload,
     event_type TYPE string,
     event_id TYPE string,
     name TYPE string,
     org_id TYPE string,
     END OF event_payload.
    DATA: ls_event_payload TYPE event_payload.
    ls_event_payload = VALUE #(
     event_type = 'create-entity'
     event_id = '1'
     name = 'demo-org'
     org_id = 'SAP'
     ).
    TRY.
     IF p_Auth = abap_true.
     DATA(lv_client_key) = 'IC_DEMO_GOOGLE_AUTH'.
     lv_p_connections_id = 'conn-event-triggers-from-sap-erp'.
     ELSE.
     lv_client_key = 'IC_DEMO_GOOGLE_APIK'.
     lv_p_connections_id = 'conn-event-triggers-from-sap-erp-apik'.
     ENDIF.
    * Open HTTP Connection
     DATA(lo_client) = NEW /goog/cl_connectors_v1( iv_key_name = CONV #( lv_client_key ) ).
    * Populate relevant parameters
     lv_p_projects_id = lo_client->gv_project_id.
     lv_p_locations_id = 'us-central1'.
     GET REFERENCE OF ls_event_payload INTO ls_input-payload .
    * Call API method: connectors.projects.locations.connections.listenEvent
     CALL METHOD lo_client->listen_event_connections
     EXPORTING
    
    
    iv_p_projects_id = lv_p_projects_id
     iv_p_locations_id = lv_p_locations_id
     iv_p_connections_id = lv_p_connections_id
     is_input = ls_input
     IMPORTING
    * es_raw =
     es_output = DATA(ls_output)
     ev_ret_code = DATA(lv_ret_code)
     ev_err_text = DATA(lv_err_text)
     es_err_resp = DATA(ls_err_resp).
     IF lo_client->is_success( lv_ret_code ).
     MESSAGE 'Success' TYPE 'S'.
     ELSE.
     MESSAGE lv_err_text TYPE 'E'.
     ENDIF.
    * Close HTTP Connection
     lo_client->close( ).
     CATCH /goog/cx_sdk INTO DATA(lo_exception).
     MESSAGE lo_exception->get_text( ) TYPE 'E'.
    ENDTRY.
    

    Quote e limiti

    Per informazioni su quote e limiti, consulta Quote e limiti.

    Passaggi successivi