Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Microsoft Power Platform si integra con SAP tramite un portfolio di flussi cloud preconfigurati che orchestrano una serie di trasformazioni e usano il connettore SAP ERP (Enterprise Resource Planning).
Ogni oggetto SAP che gestisci da un'app canvas corrisponde a una serie di flussi di ricerca, creazione, lettura e aggiornamento. Ad esempio, l'oggetto fornitore ha quattro flussi cloud:
- ReadVendor: legge un singolo fornitore in base al numero del fornitore e alle informazioni correlate alla chiave.
- ReadVendorList: cerca un elenco di fornitori in base ai criteri di ricerca specificati.
- CreateVendor: crea un nuovo oggetto fornitore con informazioni relative alle chiavi.
- UpdateVendor: aggiorna un oggetto fornitore esistente e informazioni relative alle chiavi.
Estendere i flussi cloud
È possibile estendere i flussi cloud per soddisfare i requisiti aziendali locali. Con l'aiuto dell'analista aziendale SAP, è possibile aggiungere ed eseguire il mapping di nuovi campi al connettore SAP ERP e passare avanti e indietro alle app tramite i payload JSON.
La creazione di una nuova richiesta di acquisto offre uno scenario di transazione tipico tra app canvas, flussi cloud e SAP:
L'app SAP Requisition Management prepara JSON usando i dati dei controlli di input e le raccolte di elementi archiviati, sostituendo eventuali valori Null per stringhe vuote.
Set( varRequisitionJSON,//Build the requisition JSON "{Header: " & JSON(//Build the requisition header JSON { PurchaseRequisitionNumber: varRequisition, Vendor: Trim(txtRequisitionDetailsVendor.Text), PurchasingOrganization: cmbRequisitionDetailsPurchasingOrg.Selected.'Value Code', PurchasingGroup: cmbRequisitionDetailsPurchasingGroup.Selected.'Value Code', Currency: cmbRequisitionDetailsCurrency.Selected.'Value Code' }, JSONFormat.IndentFour ) & ", items: " & JSON(//Build the requisition items JSON from cached collection colRequisitionItems, JSONFormat.IndentFour ) & "}" ); Set( varRequisitionJSON, Substitute( varRequisitionJSON, "null", """""" ) );L'app richiama il flusso CreateRequisition incorporato usando la funzione Run e passa la stringa JSON costruita in precedenza.
Set( varRequisitionReturn, CreateRequisition.Run(varRequisitionJSON) );Il flusso CreateRequisition riceve la stringa JSON dall'app tramite il trigger PowerApps(V2) e usa un'azione Parse JSON per scomporrla.
Impostare Variabili usando le informazioni JSON per semplificare il mapping nelle chiamate al connettore SAP ERP.
Creare una sessione SAP usando il connettore SAP ERP e effettuare chiamate BAPI (Business Application Programming Interface) usando le informazioni JSON della richiesta analizzate archiviate nelle variabili.
Valutare gli errori generati da SAP e restituire una risposta HTTP con esito positivo o di errore all'app canvas usando un payload JSON.
L'app canvas usa le informazioni sulla risposta, in particolare il campo Stato , per notificare all'utente finale l'esito positivo o negativo e determinare i passaggi di elaborazione successivi.
Switch(
varRequisitionReturn.Status,
"Error",//Raise error messages leaving variables in existing state for user to try again
Notify(
Concat(
varRequisitionReturn.Messages,
Message,
" "
),
NotificationType.Error
),
"Success",//Raise success message
Notify(
Concat(
varRequisitionReturn.Messages,
Message,
" "
),
NotificationType.Success
);
Ulteriori informazioni:
Supportare distribuzioni multilingue
Per impostazione predefinita, il connettore SAP ERP usa la lingua del browser dell'utente per interagire con SAP, quindi è necessario installare il Language Pack SAP corrispondente.
Tuttavia, se è necessario supportare distribuzioni globali e multilingue, è possibile eseguire l'override della lingua del browser dell'utente e il valore predefinito di una determinata lingua. Ad esempio, un utente Power Apps in Spagna che imposta la lingua del browser su spagnolo potrebbe dover interagire con un sistema SAP in cui è installato solo il Language Pack inglese (EN). In questo caso, passare il codice ENISO 639-1 a due lettere come parte della proprietà Language all'interno della stringa di connessione SAP per evitare errori.
Suggerimento
Configurare le variabili di ambiente come parte della strategia di gestione della soluzione e dell'estensione del flusso cloud per archiviare centralmente un valore del linguaggio da passare a varie azioni del connettore SAP ERP.
Altre informazioni: Sap System Property Guidance (Indicazioni sulle proprietà di sistema SAP)
Gestione degli errori
Ogni flusso è progettato con una coppia Try/Catch di operazioni di ambito. Le chiamate principali del connettore SAP si trovano all'interno dell'operazione Try. Dopo ogni chiamata, i flussi controllano se per il passaggio del connettore SAP ERP si è verificato un errore irreversibile o ciò che viene anche chiamato core dump ABAP (Advanced Business Application Programming). Se così, i flussi acquisiscono il messaggio di errore generato.
Questo messaggio di errore viene visualizzato nel passaggio ErrorTable dell'operazione Catch , insieme a tutti gli errori generati durante l'esecuzione del flusso.
La tabella degli errori del modello di soluzione SAP registra tutti i flussi errati. Ogni errore del flusso mostra il primo messaggio di errore generato dal flusso insieme ad altre informazioni.
Per visualizzare gli errori, passare all'app Amministratore SAP come descritto nell'articolo Monitorare gli errori .
Passo successivo
Estendere le app basate su modello e Dataverse