Používanie ovládacieho prvku Formulár entityUse the Entity form control

Vytvárajte aplikácie rýchlejšie pomocou ovládacieho prvku Formulár entity, ktorým do entity služby Common Data Service pridáte komplexné formuláre.Create apps faster by using the Entity form control to add rich forms for a Common Data Service entity.

Úvodné informácie k ovládaciemu prvkuFormulár entity nájdete v tomto blogovom príspevku: Nový ovládací prvok Formulár entity (experimentálna funkcia) pre službu Common Data Service.For an introduction to the Entity form control, see this blog post: New entity form control (experimental feature) for Common Data Service.

Dôležité

Ako je bližšie popísané v blogovom príspevku, ovládací prvok Formulár entity je v experimentálnej fáze, preto buďte pri používaní ovládacieho prvku Formulár entity v produkčných aplikáciách obozretní, aspoň zatiaľ.Please be aware of the experimental nature of the Entity form control as outlined in the blog post, and be careful about using the Entity form control in production apps, at least for now.

Základné vlastnostiKey properties

Tu sú kľúčové vlastnosti ovládacieho prvku Formulár entity.Here are the key properties of an Entity form control.

DataSource – určuje zdroj údajov obsahujúci záznamy, ktoré chcete zobraziť.DataSource – Specifies the data source that contains the record(s) that you want to display.

Poznámka

Momentálne sa ako zdroj údajov pre ovládací prvok Formulár entity podporujú iba entity v službe Common Data Service.Currently only entities in the Common Data Service are supported as data sources for the Entity form control.

Pattern – určuje štýl formulára, ktorý chcete v ovládacom prvku Formulár entity zobraziť.Pattern – Specifies the style of the form that you want to display in the Entity form control. Túto vlastnosť nastavte pomocou enumerácie FormPattern.Set this property by using the FormPattern enumeration.

  • FormPattern.List – zobrazí tabuľkový zoznam záznamov.FormPattern.List – Displays a tabular list of records.
  • FormPattern.CardList – zobrazí záznamy ako zoznam kariet.FormPattern.CardList – Displays a card list of records.
  • FormPattern.Details – zobrazí formulár na zobrazenie alebo úpravu podrobností jedného záznamu.FormPattern.Details – Displays a form to view or edit the details of a single record.
  • FormPattern.None – nebol explicitne zadaný žiadny štýl.FormPattern.None – No style has been explicitly specified. Ako predvolená sa použije vlastnosť List v prípade aplikácií pre tablet a CardList v prípade aplikácií pre telefón.Defaults to List for tablet apps and CardList for phone apps.

Item – určuje záznam v zdroji údajov, ktorý by mal ovládací prvok Formulár entity zobraziť.Item – Specifies the record in the data source that the Entity form control should display. Táto vlastnosť sa používa iba v prípade, že je vlastnosť Pattern nastavená na možnosť FormPattern.Details.This property is used only when Pattern is set to FormPattern.Details.

Selected – načíta záznam, ktorý je momentálne vybratý.Selected – Gets the record that’s currently selected.
Príklad: Ak ovládací prvok Formulár entity zobrazí zoznam záznamov predajných objednávok, vlastnosť Selected vráti aktuálne vybratý záznam.Example: If the Entity form control displays a list of sales-order records, the Selected property will give you the record that’s currently selected. Môžete tiež pristupovať k poľu v zázname.You can also access a field within a record. (Môžete napríklad určiť hodnotu poľa Account vybratého záznamu ako Selected.Account.)(For example, specify the value of the Account field of the selected record as Selected.Account.)

SelectableFields – určuje, ktoré polia sa majú zobraziť ako prepojenia.SelectableFields – Specifies which fields should appear as links. Hodnotu tejto vlastnosti nastavte pomocou nasledujúcej syntaxe:Set the value of this property by using this syntax:
{NázovPoľa1 : true, NázovPoľa2 : true}{Field1Name : true, Field2Name : true}
Príklad: Ak chcete, aby sa polia SalesOrderId a Account zobrazovali vo formulári ako prepojenia, nastavte vlastnosť SelectableFields tohto formulára na túto hodnotu:Example: If you want the SalesOrderId and Account fields to appear as links in a form, set the SelectableFields property of that form to this value:
{SalesOrderId : true, Account : true}{SalesOrderId : true, Account : true}

SelectedField – určuje, na ktoré pole používateľ klikol alebo ťukol.SelectedField – Determines which field was clicked or tapped. Táto možnosť sa vzťahuje iba na polia určené ako SelectableFields.This applies only to the fields specified as SelectableFields.
Príklad: Ak vlastnosť SelectableFields nastavíte na {SalesOrderId : true, Account : true} a používateľ klikne alebo ťukne na pole Account, hodnota SelectedField.Account sa nastaví na true.Example: If you set the SelectableFields property to {SalesOrderId : true, Account : true} and the user clicks or taps the Account field, SelectedField.Account is set to true.

OnFieldSelect – určuje, akým spôsobom bude aplikácia reagovať, keď používateľ klikne alebo ťukne na pole.OnFieldSelect – How an app responds when the user clicks or taps a field. Táto možnosť sa vzťahuje iba na polia určené ako SelectableFields.This applies only to the fields specified as SelectableFields.

Mode – určuje režim formulára.Mode – Determines the mode of the form. Ak chcete zmeniť režim, použite funkciu ViewForm, EditForm alebo NewForm.To change the mode, use the ViewForm, EditForm, or NewForm function. Tieto funkcie sa dajú použiť iba v prípade, ak je vlastnosť Pattern nastavená na FormPattern.Details.These functions work only when the Pattern property is set to FormPattern.Details. Hodnotu vlastnosti Mode nastavte na hodnotu enumerácie FormMode.Set the value of the Mode property to a value of the FormMode enumeration.

  • FormMode.View – umožňuje používateľom zobrazovať záznamy, ale nie ich upravovať ani pridávať.FormMode.View – Allows users to view but not edit or add a record.
  • FormMode.Edit – umožňuje používateľom upravovať záznamy.FormMode.Edit – Allows users to edit a record.
  • FormMode.New – umožňuje používateľom pridávať záznamy.FormMode.New – Allows users to add a record.

OnSuccess – spôsob reakcie aplikácie v prípade úspechu údajovej operácie.OnSuccess – How an app responds when a data operation has been successful.

OnFailure – spôsob reakcie aplikácie v prípade neúspechu údajovej operácie.OnFailure - How an app responds when a data operation has been unsuccessful.

Unsaved – určuje, či záznam, ktorý používateľ upravuje, má neuložené zmeny.Unsaved – Determines whether a record that a user is editing has unsaved changes.

Tieto zdieľané funkcie môžete používať s ovládacími prvkami Formulár entity a Formulár na úpravy.You can use these shared functions with either the Entity form control or the Edit form control. S ovládacím prvkom Formulár entity je možné tieto funkcie použiť iba v prípade, že je jeho vlastnosť Pattern nastavená na FormPattern.Details.These functions work with the Entity form control only when its Pattern property is set to FormPattern.Details.

ViewForm – nastaví vlastnosť Mode ovládacieho prvku Formulár entity na FormMode.View.ViewForm – Sets the Mode property of an Entity form control to FormMode.View.

EditForm – nastaví vlastnosť Mode ovládacieho prvku Formulár entity na FormMode.Edit.EditForm- Sets the Mode property of an Entity form control to FormMode.Edit.

NewForm – nastaví vlastnosť Mode ovládacieho prvku Formulár entity na FormMode.New.NewForm - Sets the Mode property of an Entity form control to FormMode.New.

SubmitForm – uloží zmeny, keď používateľ upraví záznam v ovládacom prvku Formulár entity.SubmitForm - Saves changes when a user edits a record in an Entity form control.

ResetForm – zruší neuložené zmeny, keď používateľ upravuje záznam v ovládacom prvku Formulár entity.ResetForm - Abandons unsaved changes when a user edits a record in an Entity form control.

Teraz, keď sme si zhrnuli rôzne vlastnosti a funkcie, poďme sa na ne pozrieť v praxi.Now that you have an overview of the various properties and functions, let’s look at them in action.

Poznámka

Ak nemáte prístup k databáze Common Data Service, vytvorte si ju ešte predtým, ako začnete postupovať podľa nasledujúcich krokov.If you don’t have access to a Common Data Service database, create one before you start to follow these steps.

Zobrazenie zoznamu záznamovDisplay a list of records

Nasledujúcich päť postupov predstavuje jeden komplexný príklad použitia ovládacieho prvku Formulár entity.The next five procedures provide a single, end-to-end example of how to use Entity form controls. V tomto postupe pridáte formulár obsahujúci zoznam predajných objednávok.In this procedure, add a form that shows a list of sales orders.

  1. Vytvorte prázdnu aplikáciu pre tablet.Create a blank tablet app.

  2. Prvú obrazovku premenujte na SalesOrderListScreen.Rename the first screen SalesOrderListScreen.

  3. Na karte Vložiť kliknite alebo ťuknite na Formuláre a potom na Formulár entity (experimentálny).On the Insert tab, click or tap Forms, and then click or tap Entity form (experimental).

    Ovládací prvok Formulár entity sa pridá na obrazovku.An Entity form control is added to the screen.

  4. Premenujte ovládací prvok Formulár entity na SalesOrderListForm a upravte jeho veľkosť tak, aby prekrýval celú obrazovku.Rename the Entity form control SalesOrderListForm, and resize it to cover the entire screen.

  5. Na pravej table kliknite alebo ťuknite na ikonu databázy vedľa textu Nie je vybratý žiadny zdroj údajov a potom kliknite alebo ťuknite na položku Pridať zdroj údajov.In the right-hand pane, click or tap the database icon next to the text No data source selected, and then click or tap Add a data source.

  6. V zozname pripojení kliknite alebo ťuknite na pripojenie pre vašu databázu.In the list of connections, click or tap the connection for your database.

  7. V zozname entít kliknite alebo ťuknite na položku Sales order a potom na možnosť Pripojiť.In the list of entities, click or tap Sales order, and then click or tap Connect.

    Vytvorí sa zdroj údajov pre entitu Sales order a vlastnosť DataSource formulára entity SalesOrderListForm sa nastaví na tento zdroj údajov.A data source for the Sales order entity is created, and the DataSource property of the SalesOrderListForm is set to that data source.

    Ovládací prvok Formulár entity zobrazuje zoznam predajných objednávok.The Entity form control shows a list of sales orders. Pomocou ovládacieho prvku Formulár entity ste si rýchlo zobrazili formulár zoznamu bez toho, aby ste ho museli vytvárať ručne.By using the Entity form control, you quickly displayed a list form without having to manually build it.

    Nenastavili ste vlastnosť Pattern ovládacieho prvku Formulár entity, takže sa pre ňu nastaví predvolená hodnota vzoru List.You didn’t set the Pattern property for the Entity form control, so it defaults to the List pattern. Okrem toho sa na zobrazenie formulára zoznamu použije skupina polí DefaultList entity Sales order.In addition, the DefaultList field group of the Sales order entity is used to display the list form. Formulár je dynamický a automaticky odráža všetky zmeny v skupine polí.The form is also dynamic and will automatically reflect any change in the field group.

Zobrazenie podrobností záznamuDisplay the details of a record

Pridajme si ďalší ovládací prvok Formulár entity na zobrazenie podrobností predajnej objednávky vybratej v zozname, ktorý ste vytvorili predtým.Let’s add another Entity form control to display the details of the sales order that’s selected in the list that you created earlier.

  1. Zmeňte veľkosť formulára entity SalesOrderListForm tak, aby prekrýval polovicu obrazovky. Potom pridajte druhý ovládací prvok Formulár entity a umiestnite ho na druhú polovicu obrazovky.Resize SalesOrderListForm to cover half the screen, and add a second Entity form control to cover the other half of the screen.

  2. Druhý ovládací prvok Formulár entity premenujte na SalesOrderDetailsForm a pripojte ho k zdroju údajov Sales order, ktorý ste vytvorili predtým.Rename the second Entity form control SalesOrderDetailsForm, and connect it to the Sales order data source that you created earlier.

  3. Nastavte vlastnosť Pattern formulára entity SalesOrderDetailsForm na FormPattern.Details.Set the Pattern property of SalesOrderDetailsForm to FormPattern.Details.

    Formulár entity SalesOrderDetailsForm používa na zobrazenie formulára skupinu polí DefaultDetails entity Sales order.SalesOrderDetailsForm uses the DefaultDetails field group of the Sales order entity to display the form. Rovnako ako v prípade formulára entity SalesOrderListForm môžete rýchlo zobraziť podrobnosti záznamu bez toho, aby ste museli formulár vytvárať ručne.As with the SalesOrderListForm, you can quickly show record details without having to manually build a form.

  4. Vlastnosť Item formulára entity SalesOrderDetailsForm nastavte na SalesOrderListForm.Selected.Set the Item property of SalesOrderDetailsForm to SalesOrderListForm.Selected.

    Formulár entity SalesOrderDetailsForm zobrazí podrobnosti záznamu, na ktorý používateľ klikne alebo ťukne vo formulári entity SalesOrderListForm.SalesOrderDetailsForm will display the details of the record that the user clicks or taps in SalesOrderListForm.

  5. Stlačením klávesa F5 zobrazte ukážku aplikácie a potom kliknite alebo ťuknite v zozname vľavo na predajnú objednávku.Preview the app by pressing F5, and then click or tap a sales order in the list on the left.

    Na pravej strane sa zobrazia podrobnosti vybratej objednávky.The details of the order that you selected appear on the right side.

Konfigurácia poľa na prechod na ďalšiu obrazovkuConfigure a field to navigate to another screen

Teraz si do aplikácie pridáme niekoľko ďalších obrazoviek a v ovládacom prvku Formulár entity nakonfigurujeme polia, ktoré budú na tieto obrazovky navigovať, keď na ne používateľ klikne alebo ťukne.Next let’s add more screens to our app and then configure fields in an Entity form control to navigate to another screen in the app when the user clicks or taps a field.

  1. Pridajte do aplikácie druhú obrazovku a premenujte ju na SalesOrderDetailsScreen.Add a second screen to the app, and rename the screen SalesOrderDetailsScreen.

  2. Vystrihnite formulár entity SalesOrderDetailsForm, prilepte ho na obrazovku SalesOrderDetailsScreen a zmeňte jeho veľkosť tak, aby prekrýval väčšinu obrazovky – ponechajte iba miesto pre ikonu v hornej časti.Cut the SalesOrderDetailsForm, paste it on the SalesOrderDetailsScreen, and resize the form to cover most of the screen, leaving enough space for an icon at the top.

  3. Do ľavého horného rohu obrazovky SalesOrderDetailsScreen pridajte ikonu šípky späť.Add a back-arrow icon near the upper-left corner of SalesOrderDetailsScreen.

  4. Pre vlastnosť OnSelect ikony šípky späť nastavte funkciu Back.Set the OnSelect property of the back-arrow icon to the Back function.

  5. Na obrazovke SalesOrderListScreen zmeňte veľkosť formulára entity SalesOrderListForm tak, aby prekrýval celú obrazovku.On the SalesOrderListScreen, resize the SalesOrderListForm to cover the entire screen.

  6. Kliknutím alebo ťuknutím vyberte formulár entity SalesOrderListForm.Click or tap the SalesOrderListForm to select it.

  7. Na pravej table v časti Pole nastavte pre pole SalesOrderId navigáciu na obrazovku SalesOrderDetailsScreen.In the right-hand pane, under Fields, set SalesOrderId to navigate to the SalesOrderDetailsScreen.

    Ovládací prvok Formulár entity zobrazuje hodnoty v poľu SalesOrderId (prvý stĺpec v zozname) ako prepojenia.The Entity form control displays the values in the SalesOrderId field (the first column in the list) as links.

  8. Stlačením klávesa F5 zobrazte ukážku aplikácie a potom kliknite alebo ťuknite v zozname predajných objednávok na prepojenie.Preview the app by pressing F5, and then click or tap a link in the list of sales orders.

    Otvorí sa druhá obrazovka so zobrazenými podrobnosťami o zadanej predajnej objednávke.The second screen opens and displays the details of the sales order that you specified.

    Ak chcete zobraziť podrobnosti inej predajnej objednávky, prejdite kliknutím alebo ťuknutím na šípku späť do zoznamu a kliknite alebo ťuknite na prepojenie inej objednávky, ktorej podrobnosti chcete zobraziť.To display the details of a different sales order, click or tap the back arrow to navigate back to the list, and then click or tap the link of the order for which you want to show details.

Vlastnosť Item formulára entity SalesOrderDetailsForm je nastavená na SalesOrderListForm.Selected, takže formulár entity SalesOrderDetailsForm zobrazuje podrobnosti o zázname, ktorý používateľ vyberie vo formulári entity SalesOrderListForm.The Item property of the SalesOrderDetailsForm is set to SalesOrderListForm.Selected so that SalesOrderDetailsForm shows details about the record that the user selects in SalesOrderListForm. Môžete tiež zobrazovať kontext vybratého záznamu – pomocou kontextovej premennej NavigationContext, ktorá sa automaticky vytvorí, keď na table na prispôsobenie formulára nakonfigurujete pre určité pole prechod na inú obrazovku.You can also get the context of the selected record by using the NavigationContext context variable, which gets automatically created when you use the form-customization pane to configure a field to navigate.

  1. Vlastnosť Item formulára entity SalesOrderDetailsForm nastavte na NavigationContext.Set the Item property of SalesOrderDetailsForm to NavigationContext.

  2. Stlačením klávesa F5 zobrazte ukážku aplikácie a potom kliknite alebo ťuknite v zozname predajných objednávok na prepojenie.Preview the app by pressing F5, and then click or tap a link in the list of sales orders.

    Aplikácia otvorí obrazovku SalesOrderDetailsScreen so zobrazenými podrobnosťami o zadanej predajnej objednávke.The app opens SalesOrderDetailsScreen and displays the details of the sales order that you specified.

Poďme si podrobne popísať, ako tabla na prispôsobenie formulára nastavuje navigáciu a kontext.Let’s dig into how the form-customization pane sets up the navigation and context for us.

Vlastnosť SelectableFields formulára entity SalesOrderListForm určuje pole SalesOrderId ako voliteľné.The SelectableFields property of the SalesOrderListForm specifies SalesOrderId as a selectable field.

Toto nastavenie prebehlo automaticky, keď sme na table na prispôsobenie formulára nastavili, aby pole SalesOrderId navigovalo na obrazovku SalesOrderDetailsScreen.This was set up automatically when we used the form-customization pane to make the SalesOrderId field navigate to the SalesOrderDetailsScreen. Preto sa hodnoty v poľu SalesOrderId zobrazujú ako prepojenia.Therefore, the values in the SalesOrderId field appear as links.

Pre vlastnosť OnFieldSelect formulára entity SalesOrderListForm je nastavená funkcia If, ktorá označuje, či používateľ klikol alebo ťukol na pole Sales order ID (ID predajnej objednávky): SalesOrderListForm.SelectedField.SalesOrderId = true.The OnFieldSelect property of the SalesOrderListForm is set to an If function, which determines whether the user clicks or taps the Sales order ID field: SalesOrderListForm.SelectedField.SalesOrderId = true.

Ak sa funkcia vyhodnotí ako true, otvorí sa obrazovka SalesOrderDetailsScreen s kontextovou premennou NavigationContext, ktorú sme použili predtým.If the function is evaluated as true, the SalesOrderDetailsScreen opens with the context variable named NavigationContext that we used earlier.

Všetky tieto kroky tiež prebehli automaticky, keď sme v table na prispôsobenie formulára nastavili, aby pole SalesOrderId navigovalo na obrazovku SalesOrderDetailsScreen.All this was also set up automatically when we used the form-customization pane to make the SalesOrderId field navigate to the SalesOrderDetailsScreen.

Preto keď používateľ klikne alebo ťukne na pole ID predajnej objednávky, funkcia If sa vyhodnotí ako true, zavolá sa funkcia Navigate so zodpovedajúcim kontextom a otvorí sa obrazovka s podrobnosťami.Therefore, when the user clicks or taps a sales order ID field, the If function evaluates to true, and the Navigate function is called with the corresponding context, opening the details screen.

Poznámka

Pri použití tably na prispôsobenie formulára sa kontextová premenná NavigationContext určí automaticky.When you use the form-customization pane, the NavigationContext is intelligently determined for you. Keď používateľ klikne alebo ťukne na položku SalesOrderId, položka NavigationContext sa nastaví na možnosť SalesOrderListForm.Selected, ako to demonštruje vzorec vyššie.When the user clicks or taps SalesOrderId, NavigationContext is set to SalesOrderListForm.Selected, as the earlier formula shows. Ak ste navigáciu nastavili napríklad pre pole Account, bude mať premenná NavigationContext nastavenie SalesOrderListForm.Selected.Account. Tým sa zaistí postúpenie správneho kontextu.If we had specified the Account field for navigation instead, NavigationContext would have been set to SalesOrderListForm.Selected.Account, ensuring that the correct context is passed. Avšak na to, aby sa daný kontext mohol používať, bude potrebné pripojiť v službe Common Data Service ovládací prvok Formulár entity k entite Account.However, to consume that context, you would need an Entity form control connected to the Account entity in the Common Data Service.

Úprava a uloženie záznamuEdit and save a record

Nakoniec si ukážeme, ako je možné záznam v ovládacom prvku Formulár entity upravovať a ukladať.Finally let’s look at how we can edit and save a record in an Entity form control.

  1. Na obrazovku SalesOrderDetailsScreen pridajte ikonu na úpravy a jej vlastnosť OnSelect nastavte na tento vzorec:On the SalesOrderDetailsScreen, add an edit icon, and then set its OnSelect property to this formula:
    EditForm(SalesOrderDetailsForm)EditForm(SalesOrderDetailsForm)

  2. Vedľa ikony na úpravy pridajte ikonu znaku začiarknutia a vlastnosť OnSelect ikony znaku začiarknutia nastavte na tento vzorec:Add a checkmark icon next to the edit icon, and then set the OnSelect property of the checkmark icon to this formula:
    SubmitForm(SalesOrderDetailsForm)SubmitForm(SalesOrderDetailsForm)

  3. Stlačením klávesa F5 zobrazte ukážku aplikácie, kliknutím alebo ťuknutím na prepojenie Sales order ID zobrazte podrobnosti predajnej objednávky a potom kliknite alebo ťuknite na ikonu na úpravy.Preview the app by pressing F5, click or tap a Sales order ID link to view the details of a sales order, and then click or tap the edit icon.

    Vlastnosť Mode ovládacieho prvku Formulár entity je nastavená na FormMode.Edit, aby ste mohli záznam upravovať.The Mode of the Entity form control is set to FormMode.Edit so that you can edit the record.

  4. Aktualizujte stav objednávky na možnosť Faktúra.Update the Order status to Invoice.

  5. Aktualizujte predajcu na WRK014.Update the Sales person to WRK014.

    Na to, aby ste mohli vybrať predajcu, ovládací prvok Formulár entity automaticky zobrazí panel na podrobné vyhľadávanie.To help you pick the Sales person, the Entity form control automatically renders a rich detailed lookup. Na generovanie a zobrazenie tohto panela na vyhľadávanie používa ovládací prvok skupinu polí DefaultLookup entity Worker v službe Common Data Service.To generate and display this lookup, the control uses the DefaultLookup field group of the Worker entity in the Common Data Service. Entita Worker sa používa preto, že pole Sales person (Predajca) je typu Worker.The Worker entity is used because the Sales person field is of type Worker.

  6. Kliknutím alebo ťuknutím na ikonu znaku začiarknutia uložte zmeny.Click or tap the checkmark icon to save your changes.

Toto bol posledný krok témy, ktorá popisuje, akými spôsobmi je možné v aplikáciách používať ovládací prvok Formulár entity.This step concludes this article on how to use the Entity form control in your apps. Dúfame, že uvedené informácie boli užitočné a že vám pomôžu k tomu, aby ste mohli ovládací prvok Formulár entity začať používať vo svojich aplikáciách.We hope that you find the information covered here useful to get started using the Entity form control. Budeme veľmi radi, keď nám dáte vedieť svoj názor na ovládací prvok Formulár entity a prezradíte nám, ako hodnotíte našu snahu uľahčiť vám pridávanie komplexných formulárov do vašich aplikácií.We look forward to hearing what you think about the Entity form control and our overall push toward helping you quickly add rich forms to your apps.