Ekziston një kërkesë në ACS, e cila ka kushte dhe, në përputhje me rrethanat, parametra.
Ka një parametër të paracaktuar kur raporti hapet çdo herë. Si ta specifikoni saktë në ACS?
Ti mund ta besh kete:
Procedura OnOpen ()
//.........................
DataParameter=SettingsComposer.Settings.DataParameters.Items.Find("Produkt");
DataParameter.Value = Directories.Nomenclature.FindBy Name("Thonjtë");
DataParameter.Use=true;
//...........................................
Procedura e Fundit
//////////////////////////////////////////
Karakteristikat e punës me parametrat e funksioneve virtuale
Parametri i kërkesës
Në gjuhën e pyetjes, është e mundur të specifikoni vlerën e një parametri të funksionit virtual. Në këtë rast, për shumicën e parametrave, një shprehje mund të përdoret si vlera e parametrit. Një parametër mund të veprojë edhe si shprehje.
Shembull: Regjistri i Akumulimit. Shitjet. Qarkullimet (& Fillimi)
Në këtë shembull, vlera e parametrit &Start do të përdoret si vlerë e parametrit të parë të tabelës virtuale.
Opsioni i përbërjes së të dhënave
Duke përdorur udhëzime speciale në trupin e pyetjes, mund të specifikoni se cili parametër i përbërjes së të dhënave do të përdoret si vlerë e parametrit të tabelës virtuale.
Akumulimi i Regjistrit. Shitjet. Qarkullimet ((& Periudha e Fillimit ))
Në këtë shembull, vlera e parametrit &StartPeriod do të përdoret si vlerë e parametrit të parë të tabelës virtuale, nëse vlera e tij është vendosur në cilësimet e përbërjes së të dhënave.
Ndarja e një parametri të pyetjes dhe një parametër i përbërjes së të dhënave
Nëse pyetja specifikon një shprehje parametri dhe një parametër të përbërjes së të dhënave, atëherë vlera e parametrit të përbërjes së të dhënave përdoret nëse vlera e këtij parametri vendoset në cilësimet e përbërjes. Përndryshe, rezultati i shprehjes së specifikuar në parametrin e funksionit virtual përdoret si vlerë e parametrit.
Akumulimi i Regjistrit. Shitjet. Qarkullimet (& Fillimi (& Periudha e Fillimit ))
Në këtë shembull, nëse vlera e parametrit StartPeriod është vendosur në cilësimet, atëherë vlera e tij do të përdoret. Përndryshe, shprehja origjinale, d.m.th. &Start, do të mbetet në tekstin e gjeneruar të pyetjes dhe vlera e këtij parametri do të përdoret si vlerë e parametrit të tabelës virtuale.
Opsionet kur plotësohen automatikisht fushat e të dhënave
Kur plotësoni automatikisht fushat e disponueshme të grupit të të dhënave të skemës së përbërjes së të dhënave, sistemi automatikisht shton parametrat e tabelës virtuale në skemë me emra që korrespondojnë me emrat e parametrave të tabelës virtuale, nëse parametri i tabelës virtuale nuk ka një përshkrim të të dhënave. parametri i përbërjes.
Pra, hyrja:
Akumulimi i Regjistrit. Shitjet. Qarkullimet (& Fillimi)
korrespondon me sa vijon:
Akumulimi i Regjistrit. Shitjet. Qarkullimet (& Fillimi (& Periudha e Fillimit ), (& Periudha e Fundit))
Dhe vlera e parametrit &Start përdoret vetëm nëse vlera e parametrit &StartPeriod nuk është vendosur në cilësimet.
[Duhet të regjistroheni për të parë lidhjen]
Kujdes! Këtu është një version provë i mësimit, materialet e të cilit mund të mos jenë të plota.
Hyni si student
Identifikohu si student për të hyrë në përmbajtjen e shkollës
1C 8.3 Sistemi i përbërjes së të dhënave për fillestarët: krijimi i një lidhjeje midis grupeve të të dhënave
- Shkruani një raport që shfaq klientët dhe produktet e tyre të preferuara. Secili klient ka një ngjyrë të preferuar, dhe çdo produkt ka ngjyrën e vet - është në bazë të këtyre ngjyrave që ju duhet të përcaktoni "të preferuarin" e produktit. Për shembull, nëse ngjyra e preferuar e Andreit është e kuqja, atëherë një nga ushqimet e tij të preferuara do të jenë domatet (ato janë të kuqe).
- Aplikoni dy grupe të dhënash në raport. Grupi i parë janë të dhëna nga tabela e referencës "Klientë". E dyta - të dhëna nga tabela e librit të referencës "Ushqimi".
- Zbatoni lidhja e këtyre dy grupeve në mënyrë që vetëm produktet e preferuara për secilin nga klientët të mbeten në raport.
Krijimi i një raporti të ri
Hapni bazën e të dhënave "Gastronom" në konfigurues dhe krijoni një raport të ri përmes menysë kryesore:
Lloji i dokumentit - "Raport i jashtëm":
Në formën e një raporti të ri, specifikoni emrin "Mësimi 6" dhe klikoni butonin "Skema e përbërjes së të dhënave të hapura":
Lëreni emrin e paracaktuar të skemës:
Shtimi i të dhënave të parë
Në diagramin që hapet, shkoni te skeda "Setet e të dhënave" dhe zgjidhni "Shto të dhënat e të dhënave - pyetje" përmes shenjës së gjelbër plus:
Ne e quajmë konstruktorin e pyetjes:
Specifikoni tabelën "Klientë" dhe fushat që dëshironi të merrni nga pyetja:
Shtimi i një grupi të dhënash të dytë
Shtimi i një grupi të dhënash të dytë:
Zgjidhni atë (DataSet2) dhe thirrni përsëri konstruktorin e pyetjes:
Specifikoni tabelën e librit të referencës "Ushqimi" dhe fushat që dëshironi të merrni nga kërkesa:
Ky është teksti i kërkesës:
Ju lutemi vini re se tani kemi dy grupe të dhënash në raport: DataSet1 dhe DataSet2. Secili ka tekstin dhe të dhënat e veta të kërkesës.
Duke i bërë emrat më përshkrues
Për qartësi, le të riemërtojmë Dataset1 në Clients dhe Dataset2 në Food.
Bëni këtë duke klikuar dy herë në secilin prej grupeve:
Ne mund të përdorim të dhënat e secilit prej grupeve në raportin tonë. Ne do t'i qasemi këtyre të dhënave përmes fushave.
Aktualisht, grupi "Klientë" ka këto fusha: "Emri" dhe "Ngjyra e preferuar", dhe grupi "Ushqimi": "Emri" dhe "Ngjyra".
Shohim që emrat kryqëzohen dhe lehtë mund të ngatërrohemi. Pra, le të ndryshojmë emrat e fushave për të qenë më përshkrues.
Zgjidhni grupin "Klientë" dhe ndryshoni emrat e fushave si kjo:
Pastaj zgjidhni grupin "Ushqim" dhe ndryshoni emrat e fushave si kjo:
Thirrja e konstruktorit të cilësimeve
Më në fund, shkoni te skedari "Cilësimet" dhe shtypni shkopin magjik për të shfaqur konstruktorin e cilësimeve:
Lloji i raportit - "Lista...":
Zgjidhni fushat për raportin nga të dy grupet:
Shihni pse ishte kaq e rëndësishme ndryshimi i emrave të fushave? Në fazën e cilësimeve të përbërjes së të dhënave, ne nuk shohim se nga cilat grupe janë këto fusha. Ne shohim vetëm emrat e tyre.
Kontrollimi i raportit
Ne e ruajmë raportin dhe e gjenerojmë atë në modalitetin e përdoruesit:
Po. Mirë, por jo në të vërtetë. Një i ashtuquajtur ndërlidhje e dy grupeve ka ndodhur (ju duhet të njiheni me këtë nga bashkimet në pyetjet që kemi studiuar në modulet e mëparshme). Çdo regjistrim nga tabela "Klientë" ka një rekord përkatës nga tabela "Ushqimi".
Por nga të gjitha këto regjistrime, ne duhet të lëmë vetëm ato për të cilat fusha "FavoriteCustomerColor" është e barabartë me fushën "FoodColor":
Lidhja e dy grupeve të të dhënave
Për ta bërë këtë, ne do të lidhim dy grupe të dhënash (Klientë dhe Ushqim) nga fushat FavoriteCustomerColor dhe FoodColor.
Shkoni te skeda "Lidhjet e të dhënave" dhe klikoni në butonin plus për të shtuar një lidhje të re:
Vendosni parametrat siç tregohet më poshtë:
Unë do të bëj një shpjegim.
Burimi dhe marrësi i komunikimit. Epo, gjithçka është e qartë këtu. Specifikoni grupin e parë (Klientë) dhe grupin e dytë (Ushqimin) e të dhënave. Dua të tërheq vëmendje të veçantë për faktin se komunikimi do të kryhet sipas parimit bashkimi i jashtëm majtas(e kemi kaluar në temën e kërkesave në modulet e mëparshme). Bazuar në këtë, ju duhet të zgjidhni se cili grup do të jetë burimi dhe cili marrës.
shprehje burimore. Specifikoni këtu një shprehje ose thjesht një fushë nga grupi i të dhënave burimore (ne kemi specifikuar fushën e ngjyrës së preferuar të klientit nga grupi i klientëve këtu).
shprehje marrës. Specifikoni këtu një shprehje ose thjesht një fushë nga grupi i të dhënave të marrësit (ne specifikuam fushën Food Color nga grupi i ushqimit këtu).
Kështu, kjo lidhje do të lërë vetëm ato rreshta nga lista e mëparshme për të cilat fusha Favorite Colour e klientit është e barabartë me fushën FoodColor.
Ruani raportin dhe ekzekutoni atë në modalitetin e përdoruesit:
Mirë!
Unë do të bëj një shpjegim për fushën " Gjendja e komunikimit", për të cilën programuesit fillestar aq shpesh rrahin shtizat e tyre.
Kushti i lidhjes është një fushë ndihmëse. Mund të shkruani shprehje atje. që përfshin fusha vetëm nga grupi i të dhënave të specifikuar në burimin e lidhjes.
Në këtë rast, për të gjitha rreshtat nga burimi i lidhjes, kjo shprehje (gjendja e lidhjes) do të kontrollohet para lidhjes. Dhe nëse kjo shprehje është E VËRTETË, atëherë do të bëhet një përpjekje për të lidhur këtë varg me vargjet nga lavazhi i lidhjes. Nëse shprehja është FALSE, nuk do të bëhen përpjekje të tilla.