Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
[Ez a témakör kiadás előtti dokumentáció, amely a későbbiekben változhat.]
Ezeknek a példa beépülő moduloknak az a célja, hogy segítsenek az első lépésekben azáltal, hogy integrálják őket az alkalmazásokba. Meg fogja érteni, hogy a szerzői élmény magában foglalja a kifejezésekkel támogatott Microsoft Dataverse egyéni API-k létrehozását Power Fx , amelyek belső vagy külső műveleteket aktiválhatnak Dataverse.
Fontos
- Az azonnali, kevés kódolást igénylő beépülő modulok prioritása megszűnik, és nem szolgáltatásként jelennek meg. Az azonnali kevés kódolást igénylő beépülő modulokat funkciók váltják fel. További információ: Függvények in( Microsoft Dataverse előzetes verzió)
- Ez egy előnézeti funkció.
- Az előzetes funkciókat nem célszerű termelési környezetben használni, és előfordulhat, hogy korlátozott funkcionalitással rendelkeznek. Ezek a funkciók a hivatalos kiadás előtt érhetők el, hogy az ügyfelek korán megismerkedhessenek velük, és visszajelzést adhassanak róluk.
Előfeltétel
Az adatesemény példabeépülő moduljainak egyikének használatához a Dataverse gyorsító alkalmazást telepíteni kell a környezetbe. További információ: Kevés kódolást igénylő beépülő modul létrehozásának előfeltételei
Feljegyzés
Az e-mail sablonok csak bizonyos táblákhoz érhetők el. További információ: Sablonok létrehozása e-mailhez
Nem negatív érték visszaadása
Ez a példa az Abs() függvényt használja az argumentum nem negatív értékének visszaadására. Ha egy szám negatív, akkor Abs a pozitív megfelelőt adja vissza.
Játssza le a gyorsító alkalmazást Dataverse , és a parancssávon válassza az Új művelet azonnali beépülő modul> lehetőséget.
Adjon meg egy megjelenítendő nevet, például a képlet nevét és leírását.
Hozzon létre egy
Outparamétert az ésszerű várt viselkedés érvényesítéséhez, például egy sztringet Igény szerint bemeneti paramétereket is használhat a tesztelés megkönnyítése érdekében, ami a képlettel logikus.A képletszerkesztőben tekerje be a paramétert
Outgöndör zárójelekbe:{Out: "" }Írjon be egy kifejezést, amely teszteli a képletet:
- Ellenőrizze, hogy az IntelliSense elfogadja-e a képletet (a szöveg világoskékre vált).
- Implementáljon például egy olyan kifejezést, amely kimenetet biztosít az eredmény érvényesítéséhez.
{Out: "Abs(-5) = 5: " & Text( Abs(-5) = 5 ) }Válassza a Tovább, majd a Mentés lehetőséget.
Válassza a Teszt lehetőséget a képlet teszteléséhez. Az eredmény ellenőrzéséhez használja a kimeneti paramétert.
Bemeneti ellenőrzés és egyéni hibák
Duplikátumészlelés
Implementálja a kiszolgálóoldali bemeneti ellenőrzést, például az egyéni hibaüzenetet jelző duplikált hibaészlelést.
- Játssza le a gyorssegéd alkalmazást Dataverse , és a parancssávon válassza az Új művelet Automatizált beépülő modul> lehetőséget.
- A Név mezőbe írja be a Duplikált ellenőrzés kifejezést.
- A Tábla mezőben válassza a Kapcsolattartó lehetőséget .
- A beépülő modul futtatása a sor esetén beállításnálválassza a Létrehozva lehetőséget.
- A Képlet mezőbe írja be a következő képletet:
If( !IsBlank(LookUp([@Contacts],'Last Name'=ThisRecord.'Last Name' && 'First Name'=ThisRecord.'First Name')),
Error("You have existing contacts with the same first name and last name")
)
- Válassza a Mentés parancsot.
A beépülő modul tesztelése
- A beépülő modul teszteléséhez hozzon létre egy vászonalapú alkalmazást a névjegyek táblázat használatával az alábbi lépéseket követve: Tábla megadása.
- Hozzon létre egy kapcsolattartói sort.
- Hozzon létre egy másik névjegyet az előző lépésben szereplő névvel.
- Megjelenik egy üzenet, amely jelzi a talált ismétlődő rekordokat. Válassza a Figyelmen kívül hagyás és mentés lehetőséget a hibaüzenetben.
Ez az egyéni hibaüzenet jelenik meg: Két névjegye van ugyanazzal a vezeték- és keresztnévvel.
Adatellenőrzés engedélyezése
Adott típusú hibák megjelenítése az ErrorKind enumerálással.
Hozzon létre egy új automatikus beépülő modult.
Adja meg a következő értékeket:
- Név: Bemeneti ellenőrzés
- Leírás:Ellenőrzi az érvényes dátumot, és hibát jelez, ha érvénytelen
- Táblázat: Találkozó
- Futtassa ezt a bővítményt, ha a sor a következő: Frissítve
Írja be az alábbi képletet:
If(ThisRecord.'Due Date' < Now(), Error({ Kind: ErrorKind.Validation , Message: "The due date cannot be in the past" }) );A Speciális beállítások csoportban állítsaa Mikor kell futni beállítást Művelet előtt; ezt a szabályt az adatok mentése előtt szeretné futtatni az érvénytelen adatok elkerülése érdekében.
Válassza a Mentés parancsot.
Az egyéni hibákkal kapcsolatos további információkért lépjen az Error() függvénybe .
E-mail küldése adatesemény alapján
Előfeltételek:
- A kiszolgálóoldali szinkronizálás a környezethez van beállítva. További információ: E-mailek, találkozók, névjegyek és feladatok kiszolgálóoldali szinkronizálásának beállítása
- Egy e-mail sablon.
Példa e-mail sablonra
Íme egy példa az e-mail sablonra, amelyet a SenMail-alapú adateseményhez hozhat létre:
- Sablon típusa: Globális
- Név: Rendelés Köszönöm
- Leírás:Ezzel a sablonnal köszönetet mondhat az ügyfélnek, hogy megrendelést adott le Önnek.
-
Tárgy:
Thank you for your order <orderconfirmation-{!salesorder:Order Number; }> - Body: Használja ezt a kódot.
Hello {!Sales Order:First Name;},
Order Type: {! Sales Order: Order Type;},
Location Type: {! Sales Order: Location Type;},
Address1: {! Sales Order: Address 1;},
Address2: {! Sales Order: Address 2;},
Preferred Service Start Date 1: {! Sales Order: Preferred Service Start Date;},
Next Step- We take upto 48 hrs to schedule an in-person and will notify you as soon as we have a In-person Technician allocated at your site. For any questions, please contact us at 1-800-CON-SOLAR
Yours Sincerely,
Contoso Sales
Az automatikus beépülő modul létrehozása
- Játssza le a gyorssegéd alkalmazást Dataverse , majd válassza az +Új beépülő modul lehetőséget az Automatizált beépülő modulok alatt.
- Adja meg a következő adatokat:
Név: SendEmailUponCreate
Tábla: Válassza ki az értékesítési rendelések logikai táblanevét, amely SalesOrder . Ez az esemény az Értékesítési rendelések táblán alapul.
Futtassa ezt a bővítményt a következő sorral: Created
Képlet: Illessze be az alábbi kódot a Képlet doboz. További információért tekintse meg a SendEmailFromTemplate függvényt a SendEmailFromTemplate művelethez.
XSendEmailFromTemplate( LookUp('Email Templates',StartsWith(title,"Order Thank You")).'Email Template', ThisRecord, LookUp(Users,'Primary Email'="sampleemail@sample.com"),[ThisRecord.Email] )
- Válassza a Speciális utólagos lehetőséget>.
- Válassza a Mentés parancsot.
Megjelenik a Plugin sikeresen mentve megerősítő üzenet .
Alkalmazáson belüli értesítések küldése azonnali művelet alapján
Az alkalmazáson belüli értesítések lehetővé teszik a készítők számára, hogy környezetfüggő, végrehajtható értesítéseket konfiguráljanak a modellvezérelt alkalmazások felhasználói számára.
Az alkalmazáson belüli értesítést küldő kevés kódolást igénylő beépülő modul létrehozása
- Játssza le a gyorsító alkalmazást Dataverse , majd válassza az +Új bővítmény lehetőséget az Azonnali bővítmények alatt.
- Adja meg a következő adatokat, majd válassza a Tovább gombot:
- Név: NotifyTechnican1
- Leírás: Ez az azonnali beépülő modul értesíti az alkalmazás felhasználóját.
- A Definíciók lapon hozzon létre bemeneti paramétereket a következő adattípusokkal:
- Rendelési azonosító: Karakterlánc
- TechnikusE-mail: Karakterlánc
-
Képlet. Illessze be a következő kódot a Képlet mezőbe. További információ erről a függvényről: SendAppNotification művelet.
XSendAppNotification( "New service", LookUp(Users,'Primary Email'=TechnicianEmail), "You have a new solar panel installation scheduled on "& LookUp('Scheduling Results','OrderId'=OrderID).'ServiceDate'&" in "& LookUp('Service Orders','Order Number'=OrderID).City &". Contact the coordinator with any questions.", [ XCreateSidePaneActionForEntity( "View order", OrderID, "Sales Order", "cr8b8_serviceorder1", LookUp('Service Orders','Order Number'=OrderID).'Service Order' ) ] ) - Válassza a Következő lehetőséget.
- Az Összefoglalás lapon válassza a Mentés lehetőséget .
Az alkalmazáson belüli értesítési azonnali művelet meghívása
- Válasszon ki egy vászonalapú alkalmazást, majd válassza a Szerkesztés lehetőséget a parancssávon (vagy hozzon létre egy újat ).
- Válassza ki a képernyőt a bal oldali navigációs panelen, vagy hozzon létre egy újat.
- A Beszúrás menüben adjon hozzá egy gombot az oldalhoz a Szövegesértesítés technikus segítségével.
- Válassza ki a gombot, és írja be a következőket az fx szerkesztősávba, ahol a DataCardValue17 a rendelésazonosítót tartalmazó oszlop, a DataCardValue15 pedig a technikus e-mail-címét tartalmazó oszlop. Ebben a példában egy Service Order App nevű vászonalapú alkalmazást használunk.
Environment.cr8b8_Notifytechnician1({ OrderID: DataCardValue17.Text, TechnicianEmail: DataCardValue15.Text }); Notify("The technician was notified!", NotificationType.Success, 2000);
- Mentse és tegye közzé a módosításokat.
Ha a technikus értesítése művelet van kiválasztva az alkalmazásban, a rendszer alkalmazáson belüli értesítést küld a szervizrendeléshez rendelt technikusnak. Az értesítéssel kapcsolatos művelet megnyitja a szolgáltatásrendelés részleteit egy oldalsó panelen.
Minta azonnali beépülő modul MSN Weather csatlakozóval
Ez a beépülő modul egy adott hely aktuális időjárását adja vissza az MSN Weather összekötő segítségével.
Előfeltételek:
- Kevés kódolást igénylő beépülő modul létrehozásának előfeltételei
- Az MSN Weather összekötő engedélyezett a környezetben
Hozzon létre egy kapcsolati referenciát az MSN Weather számára, ha még nem érhető el a környezetben:
Kivonat másolása:
Fejezze be a képlet szerkesztését az IntelliSense használatával, és szükség szerint használja fel az összekötő választulajdonságait:
Mentés
Tipp.
A With() függvénnyel rögzítheti a teljes választ egy műveletből, ha a válasz különböző tulajdonságaihoz szeretne hozzáférni. Az alábbi példában van egy bemeneti paraméter Location (sztring) és egy kimeneti paraméter Out (sztring).
With({ /* Capture current weather response from connector */
c: new_MsnWeather.CurrentWeather( Location, "Imperial" ).responses.weather.current
},{ /* Return concatenated weather details */
Out: "Current temp: " & c.temp & " degrees. Feels like " & c.feels & " degrees. Wind speed is " & c.windSpd & " mph."
})
Ajánlott eljárások
Végtelen hurokhibák kezelése automatizált kevés kódolást igénylő bővítményekben
Ne írjon javítási utasítást egy automatikus bővítményre az "Update" esemény során, ahol a javítás ugyanabban a táblában történik, mint a bővítmény. Ez végtelen hurkokhoz és bővítmény-végrehajtási hibákhoz vezet.
Problémás minta: A képlet használata Patch() egy másik frissítést indít el.
Ajánlott minta: Használja a képletet Set() a probléma elkerülése érdekében.
Kapcsolódó információk
Kevés kódolást igénylő beépülő modulok Power Fx (előzetes verzió)