Пример Dataverse додатних компоненти ниског кода (преглед)
[Ова тема представља прелиминарну документацију и може се променити.]
Циљ ових примера додатних компоненти је да вам помогну да почнете тако што ћете их интегрисати у апликације. Разумећете да ауторско искуство укључује креирање прилагођених Microsoft Dataverse АПИ-ја уз помоћ израза Power Fx , што може да покрене радње интерне или спољашње Dataverse.
Важно
- Ово је функција прегледа.
- Функције прегледа нису намењене за коришћење у производњи и могу да имају ограничене функционалности. Ове функције су доступне пре званичног објављивања како би клијенти могли раније да им приступе и пруже повратне информације.
Предуслов
Да бисте користили једну од примера додатних компоненти за догађај са подацима, апликација Dataverse акцелератора мора бити инсталирана у окружењу. Више информација: Предуслови за креирање додатне компоненте ниског кода
Напомена
Предлошци е-поште су доступни само за одређене табеле. Још информација: Креирање предложака за е-пошту
Враћање вредности која није негативна
У овом примеру, функција Абс() се користи за враћање не-негативне вредности аргумента. Ако је број негативан, Abs
даје позитиван еквивалент.
Репродукујте апликацију Dataverse Акцелератор, на командној траци изаберите ставку Нова радња > Тренутна додатна компонента.
Наведите < ДИЦТ__име за приказ > дисплаy наме </ДИЦТ__име за приказ >, као што су име формуле и опис.
Креирајте параметар
Out
за проверу ваљаности очекиваног понашања које има смисла, као што је ниска Опционално користите улазне параметре да бисте олакшали тестирање, што има смисла са формулом.У уређивачу формула преломите
Out
параметар у коврџавим заградама:{Out: "" }
Унесите израз који тестира формулу:
- Проверите ваљаност да ли интеллисенс прихвата формулу (текст постаје светлоплав).
- На пример, примените израз који обезбеђује излаз да бисте проверили ваљаност резултата.
{Out: "Abs(-5) = 5: " & Text( Abs(-5) = 5 ) }
Кликните на дугме Даље, а затим изаберите Сачувај.
Изаберите опцију Тестирај да бисте тестирали формулу. Користите излазни параметар да бисте проверили ваљаност резултата.
Провера ваљаности уноса и прилагођене грешке
Откривање дупликата
Примените проверу ваљаности уноса на страни сервера, као што је откривање грешака дупликата које баца прилагођену поруку о грешци.
- Репродукујте апликацију Dataverse Акцелератор, на командној траци изаберите ставку Нова радња > Аутоматизована додатна компонента.
- У поље Име унесите дупликат .
- За табелу изаберите ставку Контакт.
- За покретање ове додатне компоненте када је ред у реду, изаберите ставку Креирано.
- У поље Формула унесите ову формулу:
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")
)
- Изаберите Сачувај.
Тестирање додатне компоненте
- Да бисте тестирали додатну компоненту, креирајте апликацију подлоге за цртање помоћу табеле контаката тако што ћете пратити кораке овде: Наведите табелу
- Креирајте ред за контакт.
- Креирајте други контакт са истим именом као у претходном кораку.
- Приказује се порука која означава пронађене дуплиране записе. Изаберите занемари и сачувај на одзивнику поруке о грешци.
Приказује се ова прилагођена порука о грешци: Имате два контакта са истим првим и презиме.
Валидација података
Прикажите одређене типове грешака помоћу набројања ЕррорКинд .
Креирајте нову аутоматизовану додатну компоненту.
Наведите следеће вредности:
- Име :Провера ваљаности уноса
- Опис : Проверава важећи датум и баца грешку ако је неважећа
- Табела :Заказана обавеза
- Покрени ову додатну компоненту када је ред: Ажуриран
Унесите доле наведену формулу:
If(ThisRecord.'Due Date' < Now(), Error({ Kind: ErrorKind.Validation , Message: "The due date cannot be in the past" }) );
У оквиру Више опција поставите када би ово требало да се покрене на опцију "Пре операције"; желите да покренете ово правило пре него што се подаци чувају да бисте спречили неважеће податке.
Изаберите Сачувај.
Идите на функцију Грешка() да бисте сазнали више о прилагођеним грешкама.
Слање е-поште на основу догађаја са подацима
Предуслови:
- Синхронизација на страни сервера је подешена за ваше окружење. Више информација:Подешавање синхронизације е-поште, заказаних обавеза, контаката и задатака на страни сервера
- Предложак е-поште.
Пример предлошка е-поште
Ево примера предлошка е-поште који можете да креирате за догађај података заснован на СенМаил-у:
- Тип предлошка: Глобално
- Име : Наручите Хвала
- Опис :Користите овај образац да бисте се захвалили купцу што је наручио код вас.
- Тема:
Thank you for your order <orderconfirmation-{!salesorder:Order Number; }>
- Тело : Користите овај код.
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
Креирање аутоматизоване додатне компоненте
- Репродукујте апликацију Dataverse Акцелератор, а затим изаберите ставку Нова додатна компонента у оквиру Аутоматизоване додатне компоненте.
- Унесите следеће информације:
Име: СендЕмаилУпонЦреате
Табела : Изаберите име логичке табеле улазних поруџбина, а то је "Редослед продаје". Овај догађај је заснован на табели "Улазне поруџбине".
Покрени ову додатну компоненту са редом је: Креирано
Формула : Налепите кôд испод у поље за формулу . За више информација прилоћите функцију СендЕмаилФромТемплате да бисте послалиЕмаилФромТемплате Ацтион.
XSendEmailFromTemplate( LookUp('Email Templates',StartsWith(title,"Order Thank You")).'Email Template', ThisRecord, LookUp(Users,'Primary Email'="sampleemail@sample.com"),[ThisRecord.Email] )
- Изаберите ставку Више > опција после операције.
- Изаберите Сачувај.
Појавиће се порука о потврди коју је Плугин успешно сачувао .
Слање обавештења у апликацији на основу тренутне радње
Обавештења у апликацији омогућавају произвођачима да конфигуришу контекстуална, акциона обавештења за кориснике у апликацијама са моделима.
Креирање додатне компоненте ниског кода која шаље обавештење у апликацији
- Репродукујте апликацију Dataverse акцелератора, а затим изаберите ставку Нова додатна компонента у оквиру тренутних додатних компоненти.
- Унесите следеће информације, кликните на дугме Даље:
- Име: ObavestiteTechnican1
- Опис : Ова тренутна додатна компонента обавештава корисника апликације.
- На страници "Дефиниције " креирајте улазне параметре са овим типовима података:
- ИД поруџбине: ниска
- ТецхницианЕмаил: Стринг
- Формула. Налепите следећи кôд у поље за формулу . За више информација о овој функцији посетите радњу СендАппНотифицатион.
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' ) ] )
- Изаберите Следеће.
- На страници Резиме · изаберите ставку Сачувај.
Позивање тренутне радње обавештења у апликацији
- Изаберите апликацију подлоге за цртање, а затим на командној траци изаберите ставку Уреди (или креирајте нову).
- Изаберите екран у левом окну за навигацију или креирајте нови.
- У менију " Уметање" додајте дугме страници помоћу техничара за обавештавање о тексту.
- Кликните на дугме и унесите следеће у поље за формулу фx, где је DataCardValue17 колона која садржи ИД поруџбине, а DataCardValue15 је колона која садржи е-адресу техничара. У овом примеру користи се апликација подлоге под именом "Апликација налога за сервис".
Environment.cr8b8_Notifytechnician1({ OrderID: DataCardValue17.Text, TechnicianEmail: DataCardValue15.Text }); Notify("The technician was notified!", NotificationType.Success, 2000);
- Сачувајте и објавите промене.
Када је у апликацији изабрана радња техничара за обавештавање, техничару који је додељен налогу за сервис шаље се обавештење у апликацији. Радња на обавештењу отвара детаље налога за сервис у бочном окну.
Узорак тренутне додатне компоненте помоћу МСН Wеатхер конектора
Ова додатна компонента враћа тренутну временску прогнозу за одређену локацију помоћу МСН Wеатхер конектора.
Предуслови:
- Предуслови за креирање додатне компоненте ниског кода
- МСН Wеатхер конектор је дозвољен у окружењу
Креирајте референцу везе за МСН Wеатхер ако још није доступна у окружењу:Креирајте
Копирај исечак:
Завршите уређивање формуле користећи интеллисенсе и потрошите својства одговора на линију спајања по потреби:
Сачувај
Савет
Користите функцију Wитх() да бисте ухватили цео одговор из једне радње ако желите да приступите различитим својствима која одговор можда има. У доленаведеном примеру постоји улазни параметар Location
(ниска) и излазни параметар Out
(ниска).
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."
})
Најбољи примери из праксе
Решавање бесконачних грешака у петљи у аутоматизованим додатним компонентама ниског кода
Немојте писати изјаву о закрпи на аутоматизованој додатној компоненти након догађаја "Ажурирање", где се закрпа одвија на истој табели као и додатна компонента. То доводи до бесконачних петљи и отказивања извршавања додатних компоненти.
Проблематичан образац: Коришћење Patch()
формуле покреће другу исправку.
Препоручени образац: Уместо тога употребите Set()
формулу да бисте избегли овај проблем.
Погледајте и
Повратне информације
https://aka.ms/ContentUserFeedback.
Стиже ускоро: Током 2024. године постепено ћемо укидати проблеме са услугом GitHub као механизам повратних информација за садржај и заменити га новим системом повратних информација. За додатне информације, погледајте:Пошаљите и прегледајте повратне информације за