Bendrinti naudojant


Pavyzdys Dataverse bazinės programavimo žinios papildiniai (peržiūros versija)

[Ši tema yra negalutinio leidimo dokumentacija ir gali keistis.]

Šių papildinių pavyzdžių tikslas – padėti jums pradėti integruoti juos į savo programas. Suprasite, kad kūrimo patirtis apima pasirinktinių Microsoft Dataverse API, paremtų Power Fx išraiškomis, kurios gali suaktyvinti vidinius arba išorinius veiksmus, kūrimą Dataverse.

Svarbu

  • Tai yra peržiūros versijos funkcija.
  • Peržiūros funkcijos nėra skirtos naudoti gamybai ir gali būti apribotas jų funkcionalumas. Šias funkcijas galima naudoti prieš oficialų išleidimą, kad klientai galėtų gauti ankstyvą prieigą ir pateikti atsiliepimų.

Būtinoji sąlyga

Norint duomenų įvykiui naudoti vieną iš papildinių pavyzdžių, Dataverse aplinkoje turi būti įdiegta spartintuvo programėlė. Daugiau informacijos: Būtinosios sąlygos norint sukurti bazinės programavimo žinios priedą

Pastaba

El. laiškų šablonai galimi tik tam tikroms lentelėms. Daugiau informacijos: El. laiškų šablonų kūrimas

Neneigiamos reikšmės grąžinimas

Šiame pavyzdyje funkcija Abs() naudojama norint pateikti negatyvią argumento reikšmę. Jei skaičius neigiamas, Abs grąžina teigiamą ekvivalentą.

  1. Dataverse Paleiskite programą "Accelerator", komandų juostoje pasirinkite Naujas veiksmas > Momentinis papildinys.

  2. Pateikite rodomą pavadinimą, pvz., formulės pavadinimą ir aprašą.

  3. Sukurkite parametrą Out , kad patikrintumėte numatomą prasmingą veikimą, pvz., eilutę Pasirinktinai naudokite įvesties parametrus, kad būtų lengviau atlikti testavimą, o tai prasminga naudojant formulę.

  4. Formulės redaktoriuje Pakavimas parametrą Out garbanotuose skliausteliuose:

    {Out: "" }
    
  5. Įveskite išraišką, kuri tikrina formulę:

    • Patikrinkite, ar "Intellisense" priima formulę (tekstas tampa šviesiai mėlynas).
    • Pavyzdžiui, įdiekite išraišką, kuri pateikia išvestį, padedančią patikrinti rezultatą.
    {Out: "Abs(-5) = 5: " & Text( Abs(-5) = 5 )  }
    
  6. Pasirinkite Pirmyn, tada pasirinkite Įrašyti.

  7. Pasirinkite Tikrinti, kad patikrintumėte formulę. Norėdami patvirtinti rezultatą, naudokite išvesties parametrą.

Įvesties tikrinimas ir pasirinktinės klaidos

Dublikatų aptikimas

Įdiekite serverio įvesties tikrinimą, pvz., pasikartojančių klaidų aptikimą, kuris pateikia pasirinktinį klaidos pranešimą.

  1. Dataverse Paleiskite programą "Accelerator", komandų juostoje pasirinkite Naujas veiksmas > Automatinis papildinys.
  2. Lauke Pavadinimas įveskite Dublikatas.
  3. Dalyje Lentelė pasirinkite Kontaktas.
  4. Vykdyti šį papildinį, kai eilutė yra, pasirinkite Sukurta.
  5. Lauke Formulė įveskite šią formulę:
 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")
)
  1. Pasirinkite Įrašyti.

Patikrinkite priedą

  1. Norėdami patikrinti priedą, sukurkite drobės programą naudodami kontaktų lentelę atlikdami čia nurodytus veiksmus: Nurodykite lentelę
  2. Sukurkite kontakto eilutę.
  3. Sukurkite kitą kontaktą tuo pačiu vardu, kaip ir ankstesniame veiksme.
  4. Rodomas pranešimas, nurodantis rastus besidubliuojančius įrašus. Pasirinkite Nepaisyti ir įrašyti klaidos pranešimo raginime.

Rodomas šis pasirinktinis klaidos pranešimas: Turite du kontaktus su tuo pačiu pirmuoju ir pavardė.

Duomenų tikrinimas

Rodyti konkrečius klaidų tipus naudojant ErrorKind išvardijimą.

  1. Sukurkite naują automatinį priedą.

  2. Pateikite šias reikšmes:

    • Pavadinimas: Įvesties tikrinimas
    • Aprašas: tikrina, ar yra galiojanti data, ir pateikia klaidą, jei ji neteisinga
    • Lentelė: Paskyrimas
    • Paleiskite šį papildinį, kai eilutė yra: Atnaujinta
  3. Įveskite toliau pateiktą formulę:

    If(ThisRecord.'Due Date' < Now(), 
     Error({ Kind: ErrorKind.Validation , Message: "The due date cannot be in the past" })
    );
    
  4. Dalyje Išplėstinės parinktys nustatykite Kada tai turėtų būti vykdoma kaip Išankstinė operacija; Norite paleisti šią taisyklę prieš įrašydami duomenis, kad išvengtumėte neleistinų duomenų.

  5. Pasirinkite Įrašyti.

Eikite į funkciją Error(), kad sužinotumėte daugiau apie pasirinktines klaidas.

El. laiško siuntimas pagal duomenų įvykį

Būtinosios sąlygos:

El. laiško šablono pavyzdys

Štai el. laiško šablono pavyzdys, kurį galite sukurti "SenMail" pagrįstų duomenų įvykiui:

  • Šablono tipas: Visuotinis
  • Pavadinimas: Užsakyti ačiū
  • Aprašas: naudokite šį šabloną norėdami padėkoti klientui už tai, kad jis pateikė jums užsakymą.
  • Tema: Thank you for your order <orderconfirmation-{!salesorder:Order Number; }>
  • Kūnas: naudokite šį kodą.
   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 

Automatinio priedo kūrimas

  1. Dataverse Paleiskite programą "Accelerator", tada skiltyje Automatiniai papildiniai pasirinkite + Naujas papildinys.
  2. Įveskite šią informaciją:
    • Pavadinimas: SendEmailUponCreate

    • Lentelė: pasirinkite loginį pardavimo užsakymų lentelės pavadinimą, kuris yra SalesOrder. Šis įvykis pagrįstas ne pardavimo užsakymų lentele.

    • Paleiskite šį papildinį su eilute is: Sukurta

    • Formulė: įklijuokite toliau pateiktą kodą į lauką Formulė. Norėdami gauti daugiau informacijos, eikite į funkciją SendEmailFromTemplate, į veiksmą SendEmailFromTemplate.

      XSendEmailFromTemplate(
          LookUp('Email Templates',StartsWith(title,"Order Thank You")).'Email Template',
      ThisRecord,
      LookUp(Users,'Primary Email'="sampleemail@sample.com"),[ThisRecord.Email]
      )
      
  3. Pasirinkite Išplėstinė > po operacijos.
  4. Pasirinkite Įrašyti.

Pasirodo patvirtinimo pranešimas Papildinys sėkmingai išsaugotas .

Siųskite pranešimus programoje pagal momentinį veiksmą

Pranešimai programoje leidžia kūrėjams konfigūruoti kontekstinius, įgyvendinamus pranešimus naudotojams modeliu pagrįstose programose.

Sukurkite bazinės programavimo žinios papildinį, kuris siunčia pranešimą programoje

  1. Dataverse Paleiskite akceleratoriaus programą, tada skiltyje Momentiniai papildiniai pasirinkite + Naujas papildinys.
  2. Įveskite šią informaciją, pasirinkite Pirmyn:
    • Pavadinimas: NotifyTechnican1
    • Aprašas: šis momentinis papildinys praneša programos naudotojui.
  3. Puslapyje Apibrėžimai sukurkite įvesties parametrus su šiais duomenų tipais:
    • OrderID: Eilutė
    • TechnikasEl. paštas: eilutė
  4. Formulė. Įklijuokite šį kodą į lauką Formulė . Norėdami gauti daugiau informacijos apie šią funkciją, eikite į "SendAppNotification Action".
     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'
             )
         ]
     )
    
  5. Pasirinkite Toliau.
  6. Puslapyje Suvestinė pasirinkite Įrašyti.

Iškvieskite momentinį pranešimo programoje veiksmą

  1. Pasirinkite drobės programą, tada komandų juostoje pasirinkite Redaguoti (arba sukurkite naują).
  2. Pasirinkite ekraną kairiojoje naršymo srityje arba sukurkite naują.
  3. Meniu Įterpimas įtraukite mygtuką į puslapį naudodami techniką Tekstas Pranešti.
  4. Pasirinkite mygtuką ir fx formulės juostoje įveskite toliau nurodytą informaciją, kur DataCardValue17 yra stulpelis, kuriame yra užsakymo ID, o DataCardValue15 yra stulpelis, kuriame yra techniko el. pašto adresas. Šiame pavyzdyje naudojama drobės programa, pavadinta Paslaugų užsakymo programa .
    Environment.cr8b8_Notifytechnician1({
           OrderID: DataCardValue17.Text,
       TechnicianEmail: DataCardValue15.Text 
    });
    
        Notify("The technician was notified!", NotificationType.Success, 2000);
    
    
    Mygtuko su Power Fx formule pridėjimas, kad būtų siunčiamas pranešimas technikui
  5. Įrašykite ir publikuokite pakeitimus.

Kai programoje pasirenkamas veiksmas pranešti technikui, pranešimas programoje siunčiamas technikui, kuris buvo priskirtas aptarnavimo užsakymui. Pranešimo veiksmas atidaro aptarnavimo užsakymo informaciją šoninėje srityje.

Pranešimas siunčiamas technikui, kuris gauna programoje

Momentinio priedo su MSN orų jungtimi pavyzdys

Šis papildinys grąžina dabartinį orą konkrečioje vietoje naudojant MSN orų jungtį.

Būtinosios sąlygos:

  1. "MSN Weather" ryšio nuoroda kūrimas, jei dar nėra aplinkoje: Sukurkite ryšio nuoroda programėlėje iš ryšio nuorodų srities dešinėje

  2. Kopijuoti fragmentas: Nukopijuokite veiksmo fragmentas iš ryšių srities

  3. Užbaikite redaguoti formulę naudodami "intellisense" ir, jei reikia, sunaudokite jungties atsakymas ypatybes: Užpildykite papildinio apibrėžimą redaktoriuje

  4. Įrašyti

  5. Patikrinkite priedą

Patarimas

Naudokite funkciją Su() , kad užfiksuotumėte visą atsakymas iš vieno veiksmo, jei norite pasiekti skirtingas atsakymas ypatybes. Toliau pateiktame pavyzdyje yra įvesties parametras Location (eilutė) ir išvesties parametras Out (eilutė).

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."
})

Geriausia praktika

Begalinės kilpos klaidų tvarkymas automatiniuose bazinės programavimo žinios papildiniuose

Nerašykite pataisos teiginio ant automatinio papildinio įvykus įvykiui "Atnaujinti", kai pataisa vyksta toje pačioje lentelėje kaip ir papildinys. Tai lemia begalines kilpas ir papildinių vykdymo nesėkmes.

Probleminis modelis: naudojant Patch() formulę suaktyvinamas kitas naujinimas. "Probleminė formulė automatiniuose įskiepiuose"

Rekomenduojamas modelis: vietoj to naudokite formulę, Set() kad išvengtumėte šios problemos. "Rekomenduojama formulė automatiniuose papildiniuose"

Taip pat žr.

bazinės programavimo žinios papildiniai Power Fx (peržiūros versija)