Principy datových karetUnderstand data cards

Ovládací prvky Karta jsou stavební součásti ovládacích prvků Formulář pro úpravy a Formulář pro zobrazení.Card controls are the building blocks of the Edit form and Display form controls. Formulář představuje celý záznam a každá karta představuje jedno pole daného záznamu.The form represents the entire record, and each card represents a single field of that record.

S kartami můžete snadněji pracovat v pravém podokně, když nejprve vyberete ovládací prvek formuláře v pracovním prostoru návrhu.You can interact with cards most easily in the right-hand pane after you select a form control in the design workspace. V tomto podokně můžete zvolit pole, která chcete zobrazit, jak se má každé pole zobrazit a pořadí, v jakém je chcete zobrazit.In that pane, you can choose which fields to show, how to show each field, and in what order to show them. Tento příklad ukazuje ovládací prvek Formulář pro úpravy v aplikaci vytvořené ze sharepointového seznamu s názvem Assets.This example shows an Edit form control in an app built from a SharePoint list that's named Assets.

Pokud chcete začít pracovat s kartami, přečtěte si témata o přidání formuláře a o principech datových formulářů.To get started with cards, see add a form and understand data forms. Zbývající část tohoto tématu obsahuje větší podrobnosti o tom, jak karty fungují a jak je můžete přizpůsobit nebo dokonce vytvořit vlastní.The remainder of this topic goes into more detail about how cards work and how you can customize or even create your own.

Předdefinované kartyPredefined cards

PowerApps nabízí předdefinovanou sadu karet pro řetězce, čísla a jiné datové typy.PowerApps offers a predefined set of cards for strings, numbers, and other data types. V pravém podokně jsou zobrazené dostupné možnosti, kde můžete změnit kartu použitou pro pole:In the right-hand pane, you can see the variations available and change the card used for a field:

V tomto příkladu je vybraná karta s jedním řádkem textu, ale adresa URL textu je delší, než se dá zobrazit na jednom řádku.In this example, a single-line text card is selected, but the URL's text is longer than can be shown on a single line. Změňme ji na kartu s více řádky textu, aby naši uživatelé měli více místa na úpravy:Let's change this to a multi-line text card to give our users more room to edit:

Několik polí tohoto zdroje dat se nezobrazuje, ale pole můžete zobrazit nebo skrýt zaškrtnutím jeho políčka.Several fields of this data source aren't being shown, but you can show or hide a field by selecting its checkbox. Tento příklad ukazuje, jak zobrazit pole SecurityCode.This example illustrates how to show the SecurityCode field.

Přizpůsobení kartyCustomize a card

Karty tvoří další ovládací prvky.Cards comprise other controls. V ovládacím prvku Formulář pro úpravy uživatel zadá data do standardního ovládacího prvku Textové zadání, který přidáte z karty Vložit.In an Edit form control, the user enters data in a standard Text input control that you add from the Insert tab.

Projděme si příklad toho, jak změnit vzhled karty pomocí manipulace s ovládacími prvky v ní.Let's walk through an example of how to change a card's appearance by manipulating controls in it.

  1. Nejprve se vraťme na kartu, kterou jsme naposledy vložili, pro pole SecurityCode.First, let's return to the card that we inserted most recently, for the SecurityCode field. Tuto kartu kliknutím nebo klepnutím vyberte:Select this card by clicking or tapping it once:

  2. Vyberte ovládací prvek Textové zadání v rámci karty kliknutím nebo klepnutím na tento prvek.Select the Text input control inside the card by clicking or tapping the input control itself.

  3. Tento ovládací prvek v rámci karty přesuňte přetažením oblasti výběru a změňte jeho velikost tak, že přetáhnete úchyty podél hrany oblasti výběru:Move this control within the card by dragging the selection box, and resize the control by dragging the handles along the edge of the selection box:

Můžete změnit velikost ovládacích prvků, přesunout je a provádět s nimi další úpravy na kartě, ale bez odemknutí ji nemůžete odstranit.You can resize, move, and make other modifications to controls within a card, but you can't delete it without unlocking it first.

Odemčení kartyUnlock a card

Kromě toho, že karty obsahují ovládací prvky, jsou karty samy ovládací prvky, které mají vlastnosti a vzorce stejně jako jiné ovládací prvky.In addition to containing controls, cards themselves are controls that have properties and formulas just like any other control. Pokud se rozhodnete zobrazit pole ve formuláři, v pravém podokně se pro vás automaticky vytvoří karta a vygenerují se potřebné vzorce.When you choose to display a field on a form, the right-hand pane automatically creates the card for you and generates the needed formulas. Tyto vzorce můžeme vidět na kartě Upřesnit v pravém podokně:We can see these formulas in the Advanced tab of the right-hand pane:

Okamžitě vidíme jednu z nejdůležitějších vlastností karty: vlastnost DataField.We immediately see one of the most important properties of the card: the DataField property. Tato vlastnost určuje, které pole zdroje dat uživatel vidí a které může na této kartě upravit.This property indicates which field of the data source the user sees and can edit in this card.

Na kartě Upřesnit ukazuje banner v horní části, že vlastnosti této karty jsou zamknuté.On the Advanced tab, the banner at the top indicates that the properties of this card are locked. Ikona zámku se také zobrazí vedle vlastností DataField, DisplayName a Required.A lock icon also appears next to the DataField, DisplayName, and Required properties. Tyto vzorce vytvořilo pravé podokno a zámek je chrání proti náhodným změnám.The right-hand pane created these formulas, and the lock prevents accidental changes to these properties.

Klikněte nebo klepněte na banner v horní části karty, aby se odemkla a vy jste mohli tyto vlastnosti upravovat:Click or tap the banner at the top to unlock the card so that you can modify these properties:

Pojďme upravit DisplayName tak, že vložíme mezeru mezi Asset a ID.Let's modify the DisplayName to put a space between Asset and ID. Touto změnou změníme, co se pro nás vygenerovalo.By making this change, we're altering what was generated for us. V pravém podokně má tato karta jiný popisek:In the right-hand pane, this card has a different label:

Teď jsme převzali kontrolu nad touto kartou a můžeme ji dál upravit, aby vyhovovala našim potřebám.We've now taken control over this card and can modify it further to fit our need. Přišli jsme ale o možnost změnit kartu z jednoho znázornění na jiné (například s jedním řádkem textu a více řádky textu), jako jsme to udělali dříve.But we've lost the ability to change the card from one representation to another (for example, single-line text to multi-line text) as we did before. Předdefinovanou kartu jsme převedli na vlastní kartu, kterou teď ovládáme.We've transformed the predefined card into a "custom card" that we now control.

Důležité

Pokud kartu odemknete, nejde už znovu zamknout.You can't relock a card if you unlock it. Pokud chcete mít kartu znovu zamknutou, odeberte ji a znovu ji vložte v pravém podokně.To get a card back to a locked state, remove it, and reinsert it in the right-hand pane.

Vzhled a chování odemknuté karty můžete změnit různými způsoby, například přidáním a odstraněním ovládacích prvků na ní.You can change the appearance and behavior of an unlocked card in a variety of ways, such as adding and deleting controls within it. Můžete například z nabídky Ikony na kartě Vložit přidat tvar hvězdy.For example, you can add a star shape from the Icons menu on the Insert tab.

Hvězda je teď součástí karty a bude se s ní přemisťovat, pokud například změníte pořadí karet v rámci formuláře.The star is now a part of the card and will travel with it if, for example, you reorder the cards within the form.

Jako jiný příklad můžete odemknout kartu ImageURL a potom na ni přidat ovládací prvek Obrázek z karty Vložit:As another example, unlock the ImageURL card, and then add an Image control to it from the Insert tab:

Na řádku vzorců nastavte vlastnost Obrázek tohoto ovládacího prvku na TextBox.Text, kde TextBox je název ovládacího prvku Textové zadání, který obsahuje adresu URL:In the formula bar, set the Image property of this control to TextBox.Text, where TextBox is the name of the Text input control that holds the URL:

Tip

Když chcete zobrazit název ovládacího prvku, stiskněte klávesu Alt.Press the Alt key to show the name of each control.

A teď vidíme obrázky a můžeme upravit jejich adresy URL.And now we can see the images and edit their URLs. Všimněte si, že bychom bývali mohli použít Parent.Default jako vlastnost Image, ale ta by se neaktualizovala, když by uživatel změnil adresu URL.Note that we could have used Parent.Default as the Image property, but it wouldn't have updated if the user changed the URL.

Stejnou věc můžeme udělat na druhé obrazovce této aplikace, kde používáme ovládací prvek Formulář pro zobrazení k zobrazení podrobností záznamu.We can do the same thing on the second screen of this app, where we use a Display form control to display the details of a record. V takovém případě může být vhodné skrýt popisek (nastavit vlastnost Visible popisku, ne karty, na false), protože uživatel nebude upravovat adresu URL na této obrazovce:In this case, we may want to hide the label (set the Visible property of the label, not the card, to false) because the user won't edit the URL on that screen:

Interakce s formulářemInteract with a form

Po odemknutí karty můžete změnit způsob interakce s formulářem, který ji obsahuje.After you unlock a card, you can change how it interacts with the form that contains it.

Níže jsou uvedené pokyny, jak by ovládací prvky měly fungovat s jejich kartou a jak by měly karty fungovat s formulářem.Below are some guidelines for how controls should work with their card and how the cards should work with the form. Jsou to jediné pokyny.These are only guidelines. U každého ovládacího prvku v PowerApps platí, že můžete vytvořit vzorce, které odkazují na libovolný jiný ovládací prvek v PowerApps, ať už jde o karty nebo ovládací prvky na kartách.As with any control in PowerApps, you can create formulas that reference any other control in PowerApps, and that's no less true for cards and controls within cards. Buďte kreativní: Aplikaci můžete vytvořit mnoha způsoby.Be creative: you can create an app in many ways.

Vlastnost DataFieldDataField property

Nejdůležitější vlastnost na kartě je DataField.The most important property on the card is the DataField property. Tato vlastnost řídí ověřování, jaké pole se aktualizuje a další aspekty karty.This property drives validation, what field is updated, and other aspects of the card.

Přitékající informaceInformation flowing in

Formulář jako kontejner zpřístupňuje ThisItem pro všechny karty v něm.As a container, the form makes ThisItem available to all cards within it. Tento záznam obsahuje všechna pole pro požadovaný aktuální záznam.This record contains all of the fields for the current record of interest.

Vlastnost Default každé karty by měla být nastavená na ThisItem.FieldName.The Default property of every card should be set to ThisItem.FieldName. Za určitých okolností by mohlo být vhodné tuto hodnotu transformovat při vstupu do systému.Under certain circumstances, you might want to transform this value on the way in. Může být například vhodné formátovat řetězec nebo přeložit hodnotu z jednoho jazyka do jiného.For example, you might want to format a string or translate the value from one language to another.

Každý ovládací prvek v rámci karty by měl odkazovat na Parent.Default, aby se dostal k hodnotě pole.Each control within the card should reference Parent.Default to get at the field's value. Tato strategie poskytuje úroveň zapouzdření pro kartu tak, aby se vlastnost Default karty mohla změnit a nemusely se přitom měnit interní vzorce karty.This strategy provides a level of encapsulation for the card so that the card's Default property can change without changing the internal formulas of the card.

Ve výchozím nastavení jsou vlastnosti DefaultValue a Required převzaté z metadat zdroje dat na základě vlastnosti DataField.By default, DefaultValue and Required properties are taken from the data source's metadata based on the DataField property. Tyto vzorce můžete přepsat vlastní logikou a integrovat metadata zdroje dat pomocí funkce DataSourceInfo.You can override these formulas with your own logic, integrating the data source's metadata by using the DataSourceInfo function.

Odtékající informaceInformation flowing out

Poté, co uživatel pomocí ovládacích prvků na kartách upraví záznam, uloží funkce SubmitForm tyto změny do zdroje dat.After the user modifies a record by using controls in the cards, the SubmitForm function saves those changes to the data source. Při spuštění této funkce ovládací prvek formuláře přečte hodnoty vlastnosti DataField každé karty, aby věděl, která pole se mají změnit.When that function runs, the form control reads the values of each card's DataField property to know what field to change.

Ovládací prvek formuláře také přečte hodnotu vlastnosti Update každé karty.The form control also reads the value of each card's Update property. Tato hodnota se uloží ve zdroji dat pro toto pole.This value will be stored in the data source for this field. Toto je místo, kde použít jinou transformaci, třeba vrátit zpět transformaci, která byla použita ve vzorci Default karty.This is the place to apply another transform, perhaps to reverse the transform that was applied in the card's Default formula.

Vlastnost Valid vychází z metadat zdroje dat na základě vlastnosti DataField.The Valid property is driven from the metadata of the data source, based on the DataField property. Také je založená na vlastnosti Required a jestli vlastnost Update obsahuje hodnotu.It's also based on the Required property and whether the Update property contains a value. Pokud hodnota ve vlastnosti Update není platná, poskytne vlastnost Error popisnou chybovou zprávu.If the value on the Update property isn't valid, the Error property provides a user-friendly error message.

Pokud vlastnost DataField karty je prázdná, je karta jenom kontejner ovládacích prvků.If the DataField property of a card is blank, the card is just a container of controls. Její vlastnosti Valid a Update nehrají roli, když se formulář odesílá.Its Valid and Update properties don't participate when the form is submitted.

Rozbor příkladuDissecting an example

Podívejme se na ovládací prvky, které tvoří základní kartu pro zadávání dat.Let's look at the controls that make up a basic data-entry card. Místo mezi ovládacími prvky se zvětšilo, aby byl každý lépe vidět:The space between controls has been increased to show each more clearly:

Podržte stisknutou klávesu Alt, aby se zobrazily názvy ovládacích prvků, které tvoří tuto kartu:Hold down the Alt key to show the names of the controls that make up this card:

Díky čtyřem ovládacím prvkům tato karta funguje:Four controls make this card work:

NázevName TypType PopisDescription
TextRequiredStarTextRequiredStar Ovládací prvek PopisekLabel control Zobrazí hvězdičku, které se běžně používá ve formulářích pro zadávání dat k označení, že pole je povinné.Displays a star, which is commonly used on data-entry forms to indicate that a field is required.
TextFieldDisplayNameTextFieldDisplayName Ovládací prvek PopisekLabel control Zobrazí popisný název tohoto pole.Displays the user-friendly name of this field. Tento název se může lišit od toho, co je ve schématu zdroje dat.This name can differ from what is in the data source's schema.
InputTextInputText Ovládací prvek Vstupní textInput text control Zobrazí počáteční hodnotu pole a umožňuje uživatelům tuto hodnotu změnit.Displays the initial value of the field and allows the user to change that value.
TextErrorMessageTextErrorMessage Ovládací prvek PopisekLabel control Zobrazí uživateli popisnou chybovou zprávu, pokud dojde k potížím s ověřením.Displays a user-friendly error message to the user if a problem occurs with validation. Také zajistí, aby pole mělo hodnotu, pokud je třeba.Also ensures that the field has a value if one is required.

K naplnění těchto ovládacích prvků daty je možné tyto vlastnosti řídit z vlastností karty pomocí těchto klíčových vzorců.To populate these controls with data, their properties can be driven from the properties of the card, through these key formulas. Všimněte si, že žádný z těchto vzorců neodkazuje na konkrétní pole.Note that none of these formulas refers to a specific field. Místo toho všechny informace pocházejí z karty.Instead, all information comes from the card.

Vlastnost ovládacího prvkuControl property VzorecFormula PopisDescription
TextRequiredStar.VisibleTextRequiredStar.Visible Parent.RequiredParent.Required Hvězdička se zobrazí jenom v případě, že je pole povinné.The star appears only if the field is required. Vyžaduje se vzorec, který řídíte vy nebo metadata zdroje dat.Required is a formula that's driven by you or the metadata of the data source.
TextFieldDisplayName.TextTextFieldDisplayName.Text Parent.DisplayNameParent.DisplayName Ovládací prvek textového pole zobrazuje popisný název, který poskytujete vy nebo metadata zdroje dat a který je nastavený na vlastnost DisplayName karty.The text-box control shows the user-friendly name, which you or the data source's metadata provides, and which is set on the card's DisplayName property.
InputText.DefaultInputText.Default Parent.DefaultParent.Default Ovládací prvek pro textové zadání původně ukazuje hodnotu pole ze zdroje dat, jak ji poskytuje výchozí hodnota karty.The text-input control initially shows the value of the field from the data source, as provided by the card's default value.
TextErrorMessage.TextTextErrorMessage.Text Parent.ErrorParent.Error Pokud dojde k potížím ověřování, vlastnost Error karty poskytne příslušnou chybovou zprávu.If a validation problem occurs, the card's Error property provides an appropriate error message.

Pokud chcete informace z těchto ovládacích prvků získat a vložit je zpátky do zdroje dat, máme následující klíčové vzorce:To pull information out of these controls and push it back into the data source, we have the following key formulas:

Název ovládacího prvkuControl name VzorecFormula PopisDescription
DataCard.DataFieldDataCard.DataField "ApproverEmail""ApproverEmail" Název pole, které uživatel může na této kartě zobrazit a upravit.The name of the field that the user can display and edit in this card.
DataCard.UpdateDataCard.Update InputText.TextInputText.Text Hodnota, která se má ověřit a vložit zpět do zdroje dat při spuštění příkazu SubmitForm.The value to validate and push back into the data source when SubmitForm runs.