Hvordan skyflyter utvikles og brukes
Microsoft Power Platform integreres med SAP gjennom en portefølje av forhåndskonfigurerte skyflyter som iverksetter en rekke transformasjoner og bruker SAP ERP-koblingen (ressursplanlegging).
Hvert SAP-objekt som administreres fra en lerretsapp, tildeles en serie med flyter for søk, oppretting, les og oppdatering . Som et eksempel finnes det fire skyflyter for leverandørobjekt:
- ReadVendor: Les én enkelt leverandør basert på leverandørnummer og nøkkelrelatert informasjon.
- ReadVendorList: Søk etter en liste over leverandører basert på søkekriterier som er bestilt.
- CreateVendor: Opprett et nytt leverandørobjekt med nøkkelrelatert informasjon.
- UpdateVendor: Oppdater et eksisterende leverandørobjekt og nøkkelrelatert informasjon.
Utvid skyflyter
Du kan utvide skyflyter i henhold til dine lokale forretningskrav. Med hjelp fra SAP-forretningsanalytikeren kan du legge til og tildele nye felter til SAP ERP-koblingen og gå frem og tilbake mellom appene via JSON-nyttelastene.
Hvis du oppretter en ny innkjøpsrekvisisjon, får du et typisk transaksjonsscenario mellom lerretsapper, skyflyter og SAP:
Appen SAP Requisition Management klargjør JSON ved hjelp av data fra inndatakontrollene og samlingene med lagrede elementer, og erstatter eventuelle nullverdier for tomme strenger.
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", """""" ) );
Appen starter den innebygde CreateRequisition-flyten ved å bruke Kjør-funksjonen og sender inn den tidligere konstruerte JSON-strengen.
Set( varRequisitionReturn, CreateRequisition.Run(varRequisitionJSON) );
CreateRequisition-flyten mottar JSON-strengen fra appen via PowerApps(V2)-utløseren og bruker en Analyser JSON-handling til å dele den opp.
Variabler angis ved hjelp av JSON-informasjonen for å muliggjøre enklere tildeling til SAP ERP-koblingskall.
Det opprettes en SAP-økt ved hjelp av SAP ERP-koblingen, og BAPI-samtaler (Business Application Programming Interface) utføres ved hjelp av den oppsamlet JSON-informasjonen som er lagret i variabler.
Feil som genereres av SAP vurderes og et HTTP-svar som er vellykket eller feil returneres til lerretsappen med en JSON-nyttelast.
Lerretsappen bruker svarinformasjonen, nærmere bestemt Status-feltet, til å varsle sluttbrukeren om eventuelle feil og til å fastsette de neste behandlingstrinnene.
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
);
Mer informasjon:
Støtte for distribusjoner med flere språk
SAP ERP Connector aktiverer brukerens nettleserspråk for å samhandle med SAP, så den tilsvarende SAP-språkpakken må installeres.
Hvis du imidlertid trenger støtte for flerspråklige og globale distribusjoner, kan du imidlertid overstyre brukerens nettleserspråk bruke et bestemt språk som standard. En Power Apps-bruker i Spania som har nettleserspråket satt til spansk må kanskje samhandle med et SAP-system som bare har språkpakken for engelsk (EN) installert. I dette tilfellet sender du ISO 639-1-koden EN (to bokstaver) som en del av egenskapen Language i SAP-tilkoblingsstrengen for å unngå feil.
Tips
Konfigurer miljøvariabler som en del av løsningsadministrasjonen og utvidelsesstrategien for skyflyt for å lagre en språkverdi sentralt som skal sendes til ulike SAP ERP-koblingshandlinger.
Mer informasjon: Veiledning for egenskaper for SAP-systemet
Feilbehandling
Hver flyt er utformet med et Try/Catch-par med omfangsoperasjoner. I Prøv-operasjonen er SAP-hovedkontaktsamtalene. Etter hvert oppkall kontrollerer flytene om SAP ERP-koblingstrinnet hadde en katastrofal feil, eller det som også kan kalles en ABAP-kjernedump (Advanced Business Application Programming). I så fall registrerer flytene den genererte feilmeldingen.
Denne feilmeldingen vises i ErrorTable-trinnet i Catch-operasjonen sammen med alle feil som genereres under kjøringen av flyten.
Alle feilaktige flyter registreres i tabellen SAP-løsningsmalfeil. Hver flytfeil viser den første feilmeldingen som genereres av flyten, sammen med annen informasjon.
Gå til SAP-administratorappen som beskrevet i artikkelen Overvåk feil for å se feilene som vises.
Neste trinn
Utvid modelldrevne apper og Dataverse