Dela via


Så här utvecklas och används molnflöden

Microsoft Power Platform integrerar med SAP med en portfölj med förkonfigurerade molnflöden som orkestrerar en serie omvandlingar och använder SAP ERP (enterprise resource planning) anslutningsprogrammet.

Varje SAP-objekt som hanteras från en mobilapp mappas till en serie sök-, skapa-, läs- och uppdatera-flöden. Som ett exempel finns fyra molnflöden för leverantörsobjekt:

  • ReadVendor: Läsa en enskild leverantör baserat på leverantörsnummer och nyckelrelaterad information.
  • ReadVendorList: Sök efter en lista över leverantörer baserat på sökkriterier som skickats.
  • CreateVendor: Skapa ett nytt leverantörsobjekt med nyckelrelaterad information.
  • UpdateVendor: Uppdatera ett befintligt leverantörsobjekt och nyckelrelaterad information.

Utöka molnflöden

Du kan utöka molnflödena enligt lokala affärskrav. Med hjälp av din SAP-affärsanalytiker kan du lägga till och mappa nya fält till SAP ERP-anslutningen och gå fram och tillbaka till apparna genom JSON-nyttolast.

Att skapa en ny inköpsrekvisition erbjuder ett typisk transaktionsscenario mellan appar, molnflöden och SAP.

  1. Appen SAP-rekvisitionshantering förbereder JSON genom att använda data från ingångskontrollerna och lagrade objektsamlingar, och ersätta tomma strängar med eventuella nullvärden.

         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",
                """"""
            )
        );
    
  2. Appen aktiverar det inbäddade CreateRequisition-flödet med kör-funktionen och passerar den tidigare skapade JSON-strängen.

            Set(
                varRequisitionReturn,
                CreateRequisition.Run(varRequisitionJSON)
            );
    
  3. Flödet CreateRequisition tar emot JSON-strängen från appen via PowerApps(V2)-utlösaren och använder en åtgärd för Parsa JSON för att dela upp den.

  4. Variabler ställs in med hjälp av JSON-informationen för att möjliggöra enklare mappning i SAP ERP anslutningsprogram anrop.

  5. En SAP-session skapas med hjälp av SAP ERP-anslutningsprogrammet och anrop för programmeringsgränssnittet för affärsprogram görs med hjälp av den parsade rekvisitions-JSON-information som lagras i variabler.

  6. SAP-genererade fel bedöms och antingen framgångsrika eller fel HTTP-svar returneras till appen med en JSON-nyttolast.

  7. Arbetsyteappen använder svarsinformationen, särskilt fältet Status för att meddela slutanvändaren om framgång eller fel och för att fastställa nästa bearbetningssteg.

    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 information:

Stöd för distribution för flera språk

Som standard SAP ERP anslutningsprogram anropas användarens webbläsarspråk för att interagera med SAP så motsvarande SAP-språkpaket måste installeras.

Om du behöver stöd för flera språk och globala distributioner kan du åsidosätta användarens webbläsarspråk och standardspråket för ett visst språk. En Power Apps-användare i Spanien som t.ex. har sina webbläsarspråk inställda på spanska kan behöva interagera med ett SAP-system som bara har språkpaketet engelska (EN) installerat. I det här fallet skickar du koden med två bokstäver ENISO 639-1 som en del av egenskapen Language inom SAP-anslutningssträngen för att undvika fel.

Dricks

Konfigurera miljövariabler som en del av din strategi för lösningshantering och molnflöde för att centralt lagra ett språkvärde som ska skickas till olika SAP ERP-anslutningsprogram.

Mer information: Vägledning om SAP-systemegenskap

Felhantering

Varje flöde har utformats med ett par testa/fånga omfattningsåtgärder. I åtgärden Försök finns de huvudsakliga anropen för SAP-anslutningsprogram. Efter varje anrop kontrollerar flödena om SAP ERP-anslutningssteget hade ett katastrofalt fel eller vad som också kallas en avancerad programmering för företagsapp (ABAP) kärndump. I så fall samlar flödena in det genererade felmeddelandet.

Felmeddelandet visas i steget ErrorTable för åtgärden Hämta tillsammans med alla fel som genereras under flödeskörningen.

Alla felaktiga flöden registreras i tabellen fel i SAP-lösningsmallen. Varje flödesfel visar det första felmeddelandet som genererats av flödet tillsammans med annan information.

Gå till appen SAP Administrator enligt beskrivningen i artikeln Övervaka fel för att se felen visade.

Gå vidare

Utöka modellbaserade appar och Dataverse

Se även

Kom igång med SAP-upphandlingsmallen