Suvestinės formos kūrimas drobės programoje
Vadovaudamiesi išsamiomis instrukcijomis drobės programoje sukurkite suvestinės formą, skirtą išgalvotiems „Northwind Traders“ duomenų bazės duomenims tvarkyti. Ši tema yra viena iš mokymo dalių, kurioje aiškinama, kaip sukurti verslo programą, pagrįstą „Microsoft Dataverse“ sąryšiniais duomenimis. Kad pasiektumėte geriausių rezultatų, peržiūrėkite šias temas nurodyta tvarka:
- Užsakymų galerijos kūrimas.
- Suvestinės formos kūrimas (ši tema).
- Informacijos galerijos kūrimas.
Būtinosios sąlygos
- Įdiekite „Northwind Traders“ duomenų bazę ir programas.
- Perskaitykite „Northwind Traders“ drobės programos apžvalgą.
- Patys sukurkite užsakymų galeriją arba atidarykite dalyje „Northwind Orders“ (drobės programa). 2 dalis nurodytą programą, kurioje jau yra minėta galerija.
Pavadinimo juostos pridėjimas
Programos viršuje sukurkite pavadinimo juostą, kurioje bus sukurti veiksmų mygtukai pagal šioje temoje nurodytas instrukcijas.
Srityje Medžio rodinys pasirinkite Screen1, kad netyčia neįtrauktumėte valdiklio į užsakymų galeriją:
Skirtuke Įterpimas pasirinkite Žyma, kad įterptumėte valdiklį Žyma:
Nauja žyma turėtų būti rodoma tik kartą virš galerijos. Jei ji rodoma kiekviename galerijos elemente, panaikinkite pirmą žymos egzempliorių, įsitikinkite, kad pasirinktas ekranas (kaip aprašyta ankstesniame žingsnyje), ir iš naujo įterpkite žymą.
Perkelkite naują žymą ir pakeiskite jos dydį, kad ji būtų ekrano viršuje:
Dukart spustelėkite žymos tekstą ir įveskite Northwind Orders.
Tą patį rezultatą galite gauti formulės juostoje modifikuodami ypatybę Text:
Skirtuke Pagrindinis suformatuokite žymą:
- Padidinkite šrifto dydį iki 24 punktų.
- Paryškinkite tekstą.
- Pakeiskite teksto spalvą į baltą.
- Centruokite tekstą.
- Užpildykite foną tamsiai mėlynai.
Valdiklio Redaguoti formą pridėjimas
Šiame skyriuje įtrauksite valdiklius, kad būtų rodoma bet kokio užsakymo, kurį vartotojas pasirenka galerijoje, suvestinė.
Skirtuke Įterpimas įterpkite valdiklį Redaguoti formą:
Pagal numatytuosius parametrus forma rodoma viršutiniame kairiajame kampe, kuriame ją gali būti sunku rasti dėl kitų valdiklių:
Perkelkite formą ir pakeiskite jos dydį, kad ji uždengtų vietą viršutiniame dešiniajame ekrano kampe po pavadinimo juosta:
Srityje Ypatybės pasirinkite išplečiamąjį sąrašą Duomenų šaltinis.
Pasirinkite duomenų šaltinį Užsakymai.
Laukų įtraukimas ir išdėstymas
Netoli dešiniojo krašto esančiame skirtuke Ypatybės pasirinkite Redaguoti laukus, kad atidarytumėte sritį Laukai.
Jei sritis Laukai nėra tuščia, pašalinkite laukus, kurie jau buvo įterpti.
Kai laukų sąrašas yra tuščias, pasirinkite Įtraukti lauką, tada pažymėkite laukų Klientas ir Darbuotojas žymimuosius langelius.
Slinkite žemyn, kol pamatysite toliau nurodytus laukus, tada pažymėkite jų žymimuosius langelius:
- Pastabos
- Užsakymo data
- Užsakymo numeris
- Užsakymo būsena
- Apmokėjimo data
Srities Laukai apačioje pasirinkite Įtraukti, tada uždarykite sritį Laukai.
Formoje rodomi septyni laukai, kurie gali būti rodomi kitokia tvarka:
Pastaba
Jei kuriame nors lauke rodoma raudona klaidos piktograma, gali būti, kad gaunant duomenis iš šaltinio kilo problema. Norėdami ištaisyti klaidą, atnaujinkite duomenis:
- Skirtuke Rodinys pasirinkite Duomenų šaltiniai.
- Srityje Duomenys pasirinkite Duomenų šaltiniai.
- Šalia Užsakymai pasirinkite daugtaškį (...), pasirinkite Atnaujinti, tada uždarykite sritį Duomenys.
Jei kliento pavadinimo ar darbuotojo vardo pasirinktinio įvedimo lauke vis dar rodoma klaida, patikrinkite kiekvieno lauko reikšmes Pirminis tekstas ir SearchField pasirinkdami lauką ir atidarydami sritį Duomenys. Kliento lauke abiejuose laukuose turi būti nustatyta reikšmė nwind_company. Darbuotojo lauke abiejuose laukuose turi būti nustatyta reikšmė nwind_lastname.
Pasirinkę formą, dešiniajame krašte esančiame skirtuke Ypatybės pakeiskite formos stulpelių skaičių ir vietoj 3 pasirinkite 12.
Tai padarę galėsite lanksčiau išdėstyti laukus:
Daugelyje vartotojo sąsajos dizainų naudojamas 12 stulpelių maketas, nes tada galima vienodai išdėstyti 1, 2, 3, 4, 6 ir 12 valdiklių eilutes. Šioje temoje kursite eilutes, kuriose yra 1, 2 arba 4 valdikliai.
Perkelkite laukus ir pakeiskite jų dydį vilkdami lauko rankenėles, kaip ir naudodami bet kokį kitą valdiklį, kad kiekvienoje eilutėje būtų toliau pateiktos duomenų kortelės nurodyta tvarka:
- Pirmoji eilutė: Užsakymo numeris, Užsakymo būsena, Užsakymo data ir Apmokėjimo data
- Antroji eilutė: Klientas ir Darbuotojas
- Trečioji eilutė: Pastabos
Pastaba
Galite praplėsti duomenų korteles Pastabos, Klientas ir Darbuotojas, kad būtų patogiau jas išdėstyti.
Daugiau informacijos, kaip išdėstyti laukus formoje: Duomenų formos maketo, skirto drobės programoms, paaiškinimas.
Laiko valdiklių paslėpimas
Šiame pavyzdyje jums nereikia, kad datos laukuose būtų rodomas laikas valandomis, nes toks detalumo lygis gali trikdyti vartotoją. Jei juos panaikinsite, gali kilti problemų formulėse, kurios remiasi tais valdikliais, kad atnaujintų datos reikšmes arba nustatytų kito valdiklio padėtį duomenų kortelėje. Geriau paslėpkite laiko valdiklius nustatydami jų ypatybę Visible.
Srityje Medžio rodinys pasirinkite duomenų kortelę Užsakymo data.
Kortelės pavadinimas gali būti kitoks, bet joje yra laukas Užsakymo data.
Laikydami nuspaudę klavišą „Shift“, pasirinkite valandų, minučių ir dvitaškio, kuris naudojamas kaip skyriklis, valdiklius duomenų kortelėje Užsakymo data.
Nustatykite valdiklio ypatybės Visible reikšmę false.
Visi pasirinkti valdikliai formoje neberodomi:
Pakeiskite valdiklio Datos parinkiklis dydį, kad būtų rodoma visa data:
Toliau atliksite tuos pačius paskutinius veiksmus naudodami lauką Apmokėjimo data.
Srityje Medžio rodinys pasirinkite laiko valdiklius duomenų kortelėje Apmokėjimo data:
Nustatykite pasirinkto valdiklio ypatybės Visible reikšmę false:
Pakeiskite kortelės Apmokėjimo data datos parinkiklio dydį:
Užsakymų galerijos prijungimas
Srityje Medžio rodinys sutraukite formą, kad būtų lengviau rasti užsakymų galerijos pavadinimą, tada, jei reikia, pakeiskite jos pavadinimą į Gallery1.
Nustatykite suvestinės formos ypatybės Item reikšmę kaip šią išraišką:
Gallery1.Selected
Formoje pateikiama bet kokio užsakymo, kurį programos vartotojas pasirenka sąraše, suvestinė.
Duomenų kortelės pakeitimas
Užsakymo numeris yra identifikatorius, kurį „Dataverse“ priskiria automatiškai, kai sukuriate įrašą. Šis laukas turi valdiklį Teksto įvestis pagal numatytuosius parametrus, bet jūs jį pakeisite žyma, kad vartotojas negalėtų redaguoti šio lauko.
Pasirinkite formą, dešiniajame krašte esančiame skirtuke Ypatybės pasirinkite Redaguoti laukus, tada pasirinkite lauką Užsakymo numeris:
Atidarykite sąrašą Valdiklio tipas:
Pasirinkite duomenų kortelę Žiūrėti tekstą:
Uždarykite sritį Laukai.
Vartotojas nebegali keisti užsakymo numerio:
Skirtuke Pagrindinis pakeiskite užsakymo numerio šrifto dydį į 20 punktų, kad būtų lengviau rasti lauką:
Ryšio „daugelis su vienu“ naudojimas
Užsakymų lentelėje yra ryšys "daugelis su vienu" su darbuotojų lentele: kiekvienas darbuotojas gali sukurti daug užsakymų, tačiau kiekvieną užsakymą galima priskirti tik vienam darbuotojui. Kai vartotojas pasirinktinio įvedimo lauko valdiklyje pasirenka darbuotoją, jo ypatybė Pasirinkta pateikia visą to darbuotojo įrašą iš lentelės Darbuotojai . Taigi galite sukonfigūruoti valdiklį Vaizdas, kad būtų rodoma darbuotojo, kurį vartotojas pasirenka pasirinktinio įvedimo lauke, nuotrauka.
Pasirinkite duomenų kortelę Darbuotojas:
Dešinėje pusėje esančiame skirtuke Išsamiau atrakinkite duomenų kortelę, kad galėtumėte redaguoti formules, kurios prieš tai buvo tik skaitomos:
Duomenų kortelėje sumažinkite pasirinktinio įvedimo lauko plotį, kad padarytumėte vietos darbuotojo nuotraukai:
Skirtuke Įterpimas pasirinkite Medija > Vaizdas:
Vaizdas rodomas duomenų kortelėje, kuri išplečiama, kad joje tilptų nuotrauka:
Pakeiskite vaizdo dydį ir padėkite jį pasirinktinio įvedimo lauko dešinėje:
Nustatykite vaizdo ypatybę Image pagal šią formulę, atitinkamai pakeisdami numerį DataCardValue pabaigoje:
DataCardValue7.Selected.Picture
Rodoma pasirinkto darbuotojo nuotrauka.
Laikydami nuspaudę klavišą ALT, pasirinktinio įvedimo lauke pasirinkite kitą darbuotoją, kad įsitikintumėte, jog nuotrauka taip pat pasikeičia.
Įrašymo piktogramos pridėjimas
Srityje Medžio rodinys pasirinkite Screen1, tada pasirinkite Įterpimas > Piktogramos > Varnelė:
Pagal numatytuosius parametrus varnelės piktograma rodoma viršutiniame kairiajame kampe, kur ją gali būti sunku rasti tarp kitų valdiklių:
Skirtuke Pagrindinis pakeiskite piktogramos ypatybę Color į baltą spalvą, pakeiskite piktogramos dydį ir perkelkite ją prie pavadinimo juostos dešiniojo krašto:
Srityje Medžio rodinys įsitikinkite, kad formos pavadinimas yra Form1, tada nustatykite piktogramos ypatybę OnSelect pagal šią formulę:
SubmitForm( Form1 )
Kai vartotojas pasirenka piktogramą, funkcija SubmitForm surenka visas formoje pakeistas reikšmes ir pateikia jas duomenų šaltiniui. Kol pateikiami duomenys, ekrano viršuje rodoma bėgančių taškelių juosta, o baigus procesą užsakymų galerijoje matomi pritaikyti pakeitimai.
Nustatykite piktogramos DisplayMode ypatybę pagal šią formulę:
If( Form1.Unsaved, DisplayMode.Edit, DisplayMode.Disabled )
Jei formoje įrašyti visi pakeitimai, piktograma yra išjungta ir rodoma DisabledColor spalva, kurią nustatysite atlikdami toliau pateiktus veiksmus.
Nustatykite toliau nurodytą piktogramos DisabledColor ypatybės reikšmę:
Gray
Vartotojas gali įrašyti užsakymo pakeitimus pasirinkdamas varnelės piktogramą, kuri vėliau yra rodoma išjungta ir blanki, kol vartotojas padaro kitą pakeitimą:
Atšaukimo piktogramos pridėjimas
Skirtuke Įterpimas pasirinkite Piktogramos > Atšaukti:
Pagal numatytuosius parametrus piktograma rodoma viršutiniame kairiajame kampe, kur ją gali būti sunku rasti tarp kitų valdiklių:
Skirtuke Pagrindinis pakeiskite piktogramos ypatybę Color į baltą spalvą, pakeiskite piktogramos dydį ir padėkite ją varnelės piktogramos kairėje:
Nustatykite atšaukimo piktogramos OnSelect ypatybę pagal šią formulę:
ResetForm( Form1 )
Funkcija ResetForm atšaukia visus formos pakeitimus, t. y. grąžinama pirminė formos būsena.
Nustatykite atšaukimo piktogramos DisplayMode ypatybę pagal šią formulę:
If( Form1.Unsaved Or Form1.Mode = FormMode.New, DisplayMode.Edit, DisplayMode.Disabled )
Ši formulė šiek tiek skiriasi nuo varnelės piktogramos formulės. Atšaukimo piktograma rodoma išjungta, jei visi pakeitimai yra įrašyti arba forma naudojama režimu Nauja (tai padarysite atlikdami toliau nurodytus veiksmus). Tokiu atveju ResetForm atmeta naują įrašą.
Nustatykite toliau nurodytą atšaukimo piktogramos DisabledColor ypatybės reikšmę:
Gray
Vartotojas gali atšaukti užsakymo pakeitimus, o įrašymo ir atšaukimo piktogramos yra išjungtos ir blankios, jei visi pakeitimai yra įrašyti:
Įtraukimo piktogramos pridėjimas
Skirtuke Įterpimas pasirinkite Piktogramos > Įtraukti.
Pagal numatytuosius parametrus piktograma Įtraukti rodoma viršutiniame kairiajame kampe, kur ją gali būti sunku rasti tarp kitų valdiklių:
Skirtuke Pagrindinis pakeiskite įtraukimo piktogramos ypatybę Color į baltą spalvą, pakeiskite piktogramos dydį ir padėkite ją atšaukimo piktogramos kairėje:
Nustatykite įtraukimo piktogramos OnSelect ypatybę pagal šią formulę:
NewForm( Form1 )
Funkcija NewForm formoje rodo tuščią įrašą.
Nustatykite įtraukimo piktogramos DisplayMode ypatybę pagal šią formulę:
If( Form1.Unsaved Or Form1.Mode = FormMode.New, DisplayMode.Disabled, DisplayMode.Edit )
Formulė išjungia įtraukimo piktogramą šiomis sąlygomis:
- Vartotojas atlieka keitimus, bet jų neįrašo arba atšaukia juos, o tai yra priešingai nei varnelės ir atšaukimo piktogramų atveju.
- Vartotojas pasirenka įtraukimo piktogramą, bet nepadaro jokių pakeitimų.
Nustatykite toliau nurodytą įtraukimo piktogramos DisabledColor ypatybės reikšmę:
Gray
Vartotojas gali sukurti užsakymą, jei neatliko jokių pakeitimų arba jei įrašė arba atšaukė atliktus pakeitimus. (Jei vartotojas pasirenka šią piktogramą, jis negali jos pasirinkti dar kartą, kol neatliks vieno ar daugiau pakeitimų ir jų neįrašys arba neatšauks):
Pastaba
Jei sukursite ir įrašysite užsakymą, gali reikėti slinkti užsakymų galerijoje, kad rastumėte naują užsakymą. Bendroji kaina nebus rodoma, nes dar neįtraukėte jokios užsakymo informacijos.
Šiukšlinės piktogramos įtraukimas
Skirtuke Įterpimas pasirinkite Piktogramos > Šiukšlinė:
Pagal numatytuosius parametrus piktograma Šiukšlinė rodoma viršutiniame kairiajame kampe, kur ją gali būti sunku rasti tarp kitų valdiklių:
Skirtuke Pagrindinis pakeiskite šiukšlinės piktogramos ypatybę Color į baltą spalvą, pakeiskite piktogramos dydį ir padėkite ją įtraukimo piktogramos kairėje:
Nustatykite šiukšlinės piktogramos OnSelect ypatybę pagal šią formulę:
Remove( Orders, Gallery1.Selected )
Funkcija Remove pašalina įrašą iš duomenų šaltinio. Šioje formulėje funkcija pašalina įrašą, pasirinktą užsakymų galerijoje. Šiukšlinės piktograma rodoma šalia suvestinės formos (ne užsakymų galerijos), nes formoje rodoma daugiau informacijos apie įrašą, todėl vartotojas gali lengviau identifikuoti įrašą, kurį formulė panaikins.
Nustatykite šiukšlinės piktogramos DisplayMode ypatybę pagal šią formulę:
If( Form1.Mode = FormMode.New, DisplayMode.Disabled, DisplayMode.Edit )
Ši formulė išjungia šiukšlinės piktogramą, jei vartotojas kuria įrašą. Kol vartotojas neįrašo įrašo, funkcija Remove neturi įrašo, kurį galėtų panaikinti.
Nustatykite toliau nurodytą šiukšlinės piktogramos DisabledColor ypatybės reikšmę:
Gray
Vartotojas gali panaikinti užsakymą.
Santrauka
Taigi jūs įtraukėte formą, kurioje vartotojas gali peržiūrėti ir redaguoti kiekvieno užsakymo suvestinę. Joje naudojami šie elementai:
- Forma, kurioje rodomi duomenys iš užsakymų lentelės: Form1.DataSource =
Orders
- Ryšys tarp formos ir užsakymų galerijos: Form1.Item =
Gallery1.Selected
- Alternatyvus lauko Užsakymo numeris valdiklis: Žiūrėti tekstą
- Ryšys „daugelis su vienu“, kad būtų duomenų kortelėje Darbuotojas būtų rodoma darbuotojo nuotrauka:
DataCardValue1.Selected.Picture
- Piktograma, leidžianti įrašyti užsakymo pakeitimus:
SubmitForm( Form1 )
- Piktograma, leidžianti atšaukti užsakymo pakeitimus:
ResetForm( Form1 )
- Užsakymo kūrimo piktograma:
NewForm( Form1 )
- Užsakymo panaikinimo piktograma:
Remove( Orders, Gallery1.Selected )
Kitas veiksmas
Kitoje temoje įtrauksite naują galeriją, kad būtų rodomi kiekvieno užsakymo produktai, ir keisite informaciją naudodami funkciją Patch.
Pastaba
Ar galite mums pranešti apie dokumentacijos kalbos nuostatas? Atlikite trumpą apklausą. (atkreipkite dėmesį, kad ši apklausa yra anglų kalba)
Apklausą atliksite per maždaug septynias minutes. Asmeniniai duomenys nėra renkami (privatumo nuostatos).