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.
A kitalált adatoknak a Northwind Traders adatbázisában történő kezeléséhez a vászonalapú alkalmazásban hozzon létre egy részletes katalógust. Ez a témakör egy sorozat része, amely elmagyarázza, hogyan hozhat létre egy üzleti alkalmazást a relációs adatokra építve a Microsoft Dataverse szolgáltatásban. A legjobb eredményekért olvassa el az alábbi témaköröket a megadott sorrendben:
- Rendelési katalógus létrehozása.
- Hozzon létre egy összefoglaló űrlapot.
- Hozzon létre egy részletgyűjteményt (ez a témakör).
Előfeltételek
A témakör megkezdése előtt telepítenie kell az adatbázist a témakör korábban leírtak szerint. Ezután létre kell hoznia a rendelési katalógust és az összefoglaló űrlapot, vagy meg kell nyitnia a Northwind Orders (Canvas) – Begin Part 3 alkalmazást, amely már tartalmazza ezt a katalógust és az űrlapot.
Újabb címsor létrehozása
A képernyő tetején válassza ki a címsorként működő Címke vezérlőt, másolja ki a Ctrl-C billentyűkombinációval, majd illessze be a Ctrl-V billentyűkombinációval:
Méretezze és helyezze át a másolatot úgy, hogy az pont az összefoglaló űrlap alatt jelenjen meg.
Távolítsa el a másolatot a szövegből az alábbi két módszer valamelyikével:
- Kattintson duplán a szövegre a kijelöléséhez, majd nyomja le a Delete billentyűt.
- Állítsa a címke Text tulajdonságát egy üres sztringre (" ").
Katalógus hozzáadása
Üres függőleges elrendezésű Katalógus vezérlőelem beszúrása :
A bal felső sarokban megjelenik az új galéria, amely a rendelési adatokat mutatja.
Zárja be a kiúszó adatforrás párbeszédpanelt, majd méretezze és helyezze át a részletes katalógust a jobb alsó sarokba az új címsor alatt:
Állítsa a részletkatalógus Elemek tulajdonságát a következő képletre:
Gallery1.Selected.'Order Details'
Ha hiba jelenik meg, ellenőrizze, hogy a rendelési katalógus neve Galéria1 (a Tree nézet ablaktáblában, a bal szél közelében). Ha a katalógusnak más neve van, nevezze át Gallery1 névre.
Ezzel összekapcsolta a két katalógust. Amikor a felhasználó kiválaszt egy rendelést a rendelési katalógusban, ez a kijelölés azonosít egy rekordot a Rendelések táblában. Ha a rendelés egy vagy több sort tartalmaz, a Rendelések tábla rekordja a Rendelés részletei tábla egy vagy több rekordjához van csatolva, és a rekordok adatai megjelennek a részlettárban. Ez a viselkedés a Rendelések és aRendelés részletei tábla között létrehozott egy-a-többhöz kapcsolatot tükrözi. A megadott képlet „végigsétál” a kapcsolaton a pont jelölés használatával.
Terméknevek megjelenítése
A részletes katalógusban válassza az Elem hozzáadása lehetőséget a Beszúrás lapon a katalógussablon kiválasztásához:
Ügyeljen arra, hogy a katalógus helyett a annak sablonját válassza. A határolókeretnek valamivel a katalógus határán belül kell lennie, és valószínűleg rövidebbnek kell lennie, mint annak magassága. Amikor vezérlőket szúr be ebbe a sablonba, azokat a rendszer katalógus minden egyes elemére vonatkozóan megismétli.
A Beszúrás lapon szúrjon be egy címkét a részlettárba.
A címkének szerepelnie kell a galériában; ha nincs így, próbálja meg újra, de ügyeljen rá, hogy a címke beszúrása előtt jelölje ki a katalógus sablonját.
Állítsa az új címke Text tulajdonságát a következő képletre:
ThisItem.Product.'Product Name'
Ha nem jelenik meg szöveg, válassza a 0901-es rendelés nyilat a rendelési katalógus alján.
Méretezze át a címkét, hogy a teljes szöveg megjelenjen:
Ez a kifejezés a Rendelés részletei tábla egyik rekordjából indul ki. A rekord a ThisItem a Rendelési termékek táblához több-az-egyhez kapcsolaton keresztül történik:
A rendszer kinyeri a Terméknév oszlopot (és a használni kívánt egyéb oszlopokat):
Termékképek megjelenítése
A Beszúrás lapon szúrjon be egy Kép vezérlőelemet a részletgyűjteménybe:
Méretezze át és helyezze át a képet és a címkét egymás mellé.
Tipp.
A méretre és a vezérlőelem helyzetére vonatkozó aprólékos szabályozás érdekében az Alt billentyű lenyomása nélkül kezdje az átméretezést vagy áthelyezést, majd folytassa a vezérlő átméretezését vagy áthelyezését az Alt billentyű lenyomva tartása közben:
Állítsa a kép Image tulajdonságát a következő képletre:
ThisItem.Product.Picture
A kifejezés ismét egy olyan termékre hivatkozik, amely ehhez a rendelési részlethez van társítva, és kinyeri a megjelenítendő Kép mezőt .
Csökkentse a katalógus sablonjának magasságát, hogy egyszerre több Rendelés részletei rekord jelenjen meg:
Termék mennyiségének és költségének megjelenítése
A Beszúrás lapon szúrjon be egy másik címkét a részletgyűjteménybe, majd méretezze át és helyezze át az új címkét a termékinformációk jobb oldalára.
Állítsa az új címke Text tulajdonságát a következő kifejezésre:
ThisItem.Quantity
Ez a képlet közvetlenül a Rendelés részletei táblából kéri le az adatokat (nincs szükség kapcsolatra).
A Kezdőlap lapon módosítsa a vezérlő igazítását Jobbra:
A Beszúrás lapon szúrjon be egy másik címkét a részlettárba, majd méretezze át és helyezze át a címkét a mennyiségi címkétől jobbra.
Állítsa az új címke Text tulajdonságát a következő képletre:
Text( ThisItem.'Unit Price', "[$-en-US]$ #,###.00" )
Ha nem adja meg a nyelvi címkét ([$-en-US]), akkor a nyelv és a régió alapján lesz hozzáadva. Ha más nyelvi címkét használ, távolítsa el a $ záró szögletes zárójel (]) utáni jelet, majd adja hozzá a saját pénznemszimbólumát ehhez a helyhez.
A Kezdőlap lapon módosítsa a vezérlő igazítását Jobbra:
A Beszúrás lapon szúrjon be egy másik címkevezérlőt a részlettárba, majd méretezze át és helyezze át az új címkét az egységártól jobbra.
Állítsa az új címke Text tulajdonságát a következő képletre:
Text( ThisItem.Quantity * ThisItem.'Unit Price', "[$-en-US]$ #,###.00" )
Ha nem adja meg a nyelvi címkét ([$-en-US]), akkor a nyelv és a régió alapján lesz hozzáadva. Ha a címke eltér, akkor a záró szögletes zárójel ( $ ]) utáni szimbólum helyetta saját pénznemszimbólumot kell használnia.
A Kezdőlap lapon módosítsa a vezérlő igazítását Jobbra:
Egyelőre befejezte a vezérlők hozzáadását a részletes katalógushoz.
A Fanézet panelen válassza a Screen1 lehetőséget , hogy a részletkatalógus már ne legyen kijelölve.
Szöveg hozzáadása az új címsorhoz
A Beszúrás lapon szúrjon be egy másik címkét a képernyőre:
Méretezze át és helyezze át az új címkét a termékek képei fölé a második címsorban, majd módosítsa a szöveg színét fehérre a Kezdőlap lapon .
Kattintson duplán a címke szövegére, majd írja be a Termék parancsot:
Másolja ki és illessze be a termék címkéjét, majd méretezze át, és helyezze át a másolatot a mennyiség oszlop fölé.
Kattintson duplán az új címke szövegére, majd írja be a Mennyiség parancsot:
Másolja ki és illessze be a mennyiség címkéjét, majd méretezze át, és helyezze át a másolatot az egységár oszlop fölé.
Kattintson duplán az új címke szövegére, majd írja be az Egységár parancsot:
Másolja ki és illessze be az egységár címkéjét, majd méretezze át, és helyezze át a másolatot az kiterjesztett ár oszlop fölé.
Kattintson duplán az új címke szövegére, majd írja be a Kiterjesztett szöveget:
Rendelés összegeinek megjelenítése
Csökkentse a részletes katalógus magasságát, hogy helyet hagyjon a megrendelés összegének a képernyő alján:
Másolja ki és illessze be a címsort a képernyő közepére, majd mozgassa a másolatot a képernyő aljára:
Másolja és illessze be a termékcímkét a középső címsorból, majd helyezze át a másolatot az alsó címsorba, közvetlenül a Mennyiség oszloptól balra.
Kattintson duplán az új címke szövegére, majd írja be az alábbi szöveget:
Rendelés összege:Másolja ki és illessze be a megrendelés végösszegei címkét, majd méretezze át és helyezze át a másolatot a megrendelés végösszegei címke jobb oldalára.
Állítsa az új címke Text tulajdonságát a következő képletre:
Sum( Gallery1.Selected.'Order Details', Quantity )
Ez a képlet egy delegálási figyelmeztetést ad, de figyelmen kívül hagyhatja, mivel egyetlen megrendelés sem fog több mint 500 terméket tartalmazni.
A Kezdőlap lapon állítsa az új címke szövegigazítását jobbra:
Másolja és illessze be ezt a címkevezérlőt, majd méretezze át és helyezze át a másolatot a Bővített oszlopba.
Állítsa a másolat Text tulajdonságát a következő képletre:
Text( Sum( Gallery1.Selected.'Order Details', Quantity * 'Unit Price' ), "[$-en-US]$ #,###.00" )
Ez a képlet egy delegálási figyelmeztetést ad, de figyelmen kívül hagyhatja, mivel egyetlen megrendelés sem fog több mint 500 terméket tartalmazni.
Új részletek helyének hozzáadása
Egy katalógusban megjeleníthet adatokat, de nem frissítheti azokat, és nem adhat hozzá új rekordokat. A részletkatalógus alatt hozzáadhat egy területet, ahol a felhasználó konfigurálhat egy rekordot a Rendelés részletei táblában, és beillesztheti a rekordot egy rendelésbe.
Csökkentse a részletes katalógus magasságát, hogy helyet szabadítson fel alatta egy egyelemű szerkesztési terület számára.
Ezen a területen olyan vezérlőket fog hozzáadni, amelyek segítségével a felhasználó megadhat egy részletes rendelést:
A Beszúrás lapon szúrjon be egy címkét, majd méretezze át és helyezze át a részlettárba.
Kattintson kétszer az új címke szövegére, majd nyomja meg a Delete gombot.
A Kezdőlapon állítsa az új címke kitöltési színét világoskék értékre:
Jelöljön ki egy terméket
A Beszúrás lapon válassza a Vezérlők kombinált lista> lehetőséget:
A kombinált lista vezérlőelem a bal felső sarokban jelenik meg.
Az úszó panel párbeszédpanelen válassza ki a Termékek rendelése adatforrást.
A kombinált lista Tulajdonságok lapján válassza a Szerkesztés ( a Mezők mellett) lehetőséget az Adatok ablaktábla megnyitásához. Győződjön meg arról, hogy az Elsődleges szöveg és a SearchField nwind_productname értékrevan állítva.
A logikai nevet azért kell megadni, mert az Adatok ablaktábla ebben az esetben még nem támogatja a megjelenítendő neveket:
Zárja be az Adatok ablaktáblát .
A jobb szél közelében lévő Tulajdonságok lapon görgessen lefelé, kapcsolja ki a Többszörös kijelölés engedélyezése beállítást, és győződjön meg arról, hogy a Keresés engedélyezése be van kapcsolva:
Méretezze át és helyezze át a kombinált listát a világoskék területre, közvetlenül a részletes katalógus Termék neve oszlopa alá:
Ebben a kombinált listában a felhasználó megad egy rekordot a Termék táblában az alkalmazás által létrehozandó Rendelés részletei rekordhoz.
Az Alt billentyűt lenyomva tartva válassza ki a kombimált lista lefelé mutató nyilát.
Tipp.
Az Alt billentyű lenyomva tartása mellett az előnézeti mód megnyitása nélkül is együttműködhet a Power Apps Studio vezérlőivel.
A megjelenő terméklistában válasszon ki egy terméket:
Termékkép hozzáadása
A Beszúrás lapon válaszd a Média>Kép lehetőséget:
A bal felső sarokban megjelenik a Kép vezérlő:
Méretezze át és helyezze át a képet a másik termék képeinek világoskék területére, és a kombinált lista mellé.
Állítsa a kép Image tulajdonságát a következőre:
ComboBox1.Selected.Picture
Ugyanazt a trükköt használja, mint amikor az alkalmazotti képet megjeleníti az összefoglaló űrlapon. A kombinált lista Selected tulajdonsága a felhasználó által kiválasztott termék teljes rekordját adja vissza, beleértve a Kép mezőt is.
Mennyiség mező hozzáadása
A Beszúrás lapon válassza a Szöveges szövegbevitel> lehetőséget:
A Szövegbevitel vezérlőelem a bal felső sarokban jelenik meg:
Méretezze át és helyezze át a szövegbeviteli mezőt a kombinált listától jobbra, közvetlenül a részletes katalógus Mennyiség oszlopa alá:
Ennek a szövegbeviteli mezőnek a használatával a felhasználó megadja a Rendelés részletei rekord Mennyiség mezőjét.
Állítsa a vezérlő Alapértelmezett tulajdonságát a következőre: "" :
A Kezdőlap lapon állítsa a vezérlő szövegigazítását Jobbra:
Az egység- és kibővített árak megjelenítése
A Beszúrás lapon szúrjon be egy Címke vezérlőelemet.
A címke a képernyő bal felső sarkában jelenik meg:
Méretezze át és helyezze át a címkét a szövegbeviteli vezérlő jobb oldalára, és állítsa a címke Text tulajdonságát a következő képletre:
Text( ComboBox1.Selected.'List Price', "[$-en-US]$ #,###.00" )
Ez a vezérlő a Termékrendelés táblában jeleníti meg a Listaárat. Ez az érték határozza meg az Egységár mezőt a Rendelés részletei rekordban.
Feljegyzés
Ebben az esetben az érték írásvédett, de más helyzetekben lehetsgées, hogy az alkalmazás felhasználójának módosítania kell azt. Ebben az esetben használjon egy Szövegbevitel vezérlőelemet, és állítsa az Alapértelmezett tulajdonságát Listaár értékre.
A Kezdőlap lapon állítsa a listaárcímke szövegigazítását jobbra:
Másolja ki és illessze be a listaárcímkét, majd méretezze át és helyezze át a másolatot a listaárcímke jobb oldalára.
Állítsa az új címke Text tulajdonságát a következő képletre:
Text( Value(TextInput1.Text) * ComboBox1.Selected.'List Price', "[$-en-US]$ #,###.00" )
Ez a vezérlő mutatja a kiterjesztett árat az alkalmazás felhasználója által megadott mennyiség és az alkalmazás által kiválasztott termék listaára alapján. Ez tisztán információkkal szolgál az alkalmazás felhasználója számára.
Kattintson duplán a mennyiségre vonatkozó szövegbeviteli vezérlőre, majd írja be a számot.
A Kiterjesztett árcímke újraszámítása az új érték megjelenítéséhez történik:
Hozzáadás ikon hozzáadása
A Beszúrás lapon válassza az Ikonok hozzáadása lehetőséget>:
Az ikon a képernyő bal felső sarkában jelenik meg.
Méretezze át és helyezze át ezt az ikont a világoskék terület jobb szélére, majd állítsa az ikon OnSelect tulajdonságát a következő képletre:
Patch( 'Order Details', Defaults('Order Details'), { Order: Gallery1.Selected, Product: ComboBox1.Selected, Quantity: Value(TextInput1.Text), 'Unit Price': ComboBox1.Selected.'List Price' } ); Refresh( Orders ); Reset( ComboBox1 ); Reset( TextInput1 )
Általában a Patch függvény frissíti és létrehozza a rekordokat, és a képlet adott argumentumai határozzák meg a függvény által végrehajtott módosításokat.
Az első argumentum azt az adatforrást (ebben az esetben a Rendelés részletei táblát) határozza meg, amelyben a függvény frissíteni vagy rekordot hoz létre.
A második argumentum azt adja meg, hogy a függvény létrehoz egy rekordot a Rendelés részletei tábla alapértelmezett értékeivel, hacsak a harmadik argumentum másként nem rendelkezik.
A harmadik argumentum azt adja meg, hogy az új bejegyzésben szereplő négy oszlop a felhasználótól származó értékeket tartalmaz.
- A Rendelés oszlop a felhasználó által a rendelési katalógusban kiválasztott rendelés számát tartalmazza.
- A Termék oszlop annak a terméknek a nevét fogja tartalmazni, amelyet a felhasználó a termékeket megjelenítő kombinált listában kiválasztott lesz.
- A Mennyiség oszlop a felhasználó által a szövegbeviteli mezőben megadott értéket fogja tartalmazni.
- Az Egységár oszlop tartalmazza annak a terméknek a listaárát, amelyet a felhasználó a rendelési részlethez választott.
Feljegyzés
Létrehozhat olyan képleteket, amelyek bármely oszlop adatait használják (a Termékek rendelése táblázatban) az alkalmazás felhasználója által a termékeket megjelenítő kombinált listában kiválasztott termékhez. Amikor a felhasználó kiválaszt egy rekordot a Termékek rendelése táblában, nem csak a termék neve jelenik meg a kombinált listában, hanem a termék egységára is megjelenik egy címkén. A vászonalapú alkalmazások minden keresési értéke egy teljes rekordra hivatkozik, nem csak az elsődleges kulcsra.
A Frissítés függvény biztosítja, hogy a Rendelések tábla tükrözze azt a rekordot, amelyet éppen hozzáadott a Rendelés részletei táblához. A Visszaállítás függvény törli a termék-, mennyiség- és egységár-adatokat, így a felhasználó könnyebben létrehozhat egy másik rendelési adatot ugyanahhoz a rendeléshez.
Nyomja meg az F5 billentyűt, majd válassza a Hozzáadás ikont.
A megrendelés a megadott információkat tükrözi:
(opcionális) Vegyen fel egy újabb elemet a megrendelésbe.
Az Esc billentyű lenyomásával zárja be az előnézeti módot.
Megrendelés részleteinek eltávolítása
A képernyő közepén válassza ki a részletes katalógus sablonját:
A Beszúrás lapon válaszd az Ikonok>Kuka lehetőséget:
A Kuka ikon a katalógus sablonjának bal felső sarkában jelenik meg.
Méretezd át és helyezd át a Kuka ikont a részletes galéria sablonjának jobb oldalára, majd állítsd be az ikon OnSelect tulajdonságát erre a képletre:
Remove( 'Order Details', ThisItem ); Refresh( Orders )
Jelen útmutató írásakor egy rekordot nem lehet közvetlenül eltávolítani egy kapcsolatból, ezért a Remove funkció közvetlenül a kapcsolódó táblából távolít el egy rekordot. A ThisItem meghatározza az eltávolítandó rekordot, amely ugyanabból a rekordból származik a részletes galériában, ahol a Kuka ikon megjelenik.
A művelet ismét gyorsítótárazott adatokat használ, így a Refresh függvény tájékoztatja az Orders táblát, hogy az alkalmazás módosította az egyik kapcsolódó tábláját.
Nyomja meg az F5 billentyűt az Előnézet mód megnyitásához, majd válassza a Kuka ikont minden olyan `Rendelés részletei` rekord mellett, amelyet el szeretne távolítani a rendelésből.
Próbálja meg hozzáadni és eltávolítani a különböző rendelési részleteket a megrendelésekből:
Következtetés
Összefoglalva, hozzáadott egy újabb katalógust a megrendelés részleteinek megjelenítéséhez, és néhány vezérlőt egy rendelés részleteinek hozzáadásához vagy eltávolításához az alkalmazásból. Az alábbi elemeket használta:
- Egy második galériavezérlő, amely egy-a-többhöz kapcsolaton keresztül kapcsolódik a rendelési galériához: Gallery2.Items =
Gallery1.Selected.'Order Details'
- Egy több-az-egyhez kapcsolat a Rendelés részletei táblától a Rendelési termékek tábláig:
ThisItem.Product.'Product Name'
ésThisItem.Product.Picture
- A Choices függvény a termékek listájának lekéréséhez:
Choices( 'Order Details'.Product' )
- A kiválasztott kombinációs lista tulajdonsága, mint a teljes több-az-egyhez kapcsolódó rekord:
ComboBox1.Selected.Picture
ésComboBox1.Selected.'List Price'
- A Patch függvény egy Rendelési részletek rekord létrehozásához:
Patch( 'Order Details', Defaults( 'Order Details' ), ... )
- Az Eltávolítás függvény egy Rendelési részletek rekord törléséhez:
Remove( 'Order Details', ThisItem )
Ez a témasorozat egy gyors áttekintést biztosított a Dataverse kapcsolatok és választási lehetőségek használatáról egy vászonalkalmazásban, oktatási célokra. Mielőtt bármilyen alkalmazást élesben is közzétenne, fontolja meg a mezők érvényesítését, a hibakezelést és számos egyéb tényezőt is.