Dizajner sheme sastava podataka - kartica postavki. Rezultati pretraživanja pomoću obrasca za odabir 1s SKD odabirom metode poređenja u parametrima

Pitanje: SKD, kako da otvorim traženi obrazac za izbor parametra?


Dobar dan Postoji izvještaj o sistemu kontrole pristupa, sadrži parametar Brend - tip Imenik.Nomenklatura. Kako mogu pozvati određeni obrazac za odabir za ovaj parametar? Pokušao sam u SKD-u na kartici "Parametri", odabrati željeni parametar - dvaput kliknuti na kolonu "Opcije uređivanja" - označiti okvir "Form za odabir" i upisati vrijednost Directory.Nomenclature.Form.SelectionFormRequired. Prilikom pokretanja izvještaja, i dalje se standardno koristi obrazac za odabir, a ne onaj koji je naveden u „Obrascu za izbor“. UT konfiguracija, uobičajeni oblici. Reci mi, molim te, gde, šta nije u redu?

odgovor: Ključna fraza Redovni obrasci, prebacite se na upravljane

Pitanje: Odaberite vrijednost na obrascu za odabir


Dobar dan

Redovna primjena.

Postoji dokument. Ima nekoliko detalja referentnog tipa, na primjer "DirectoryLink.Banks", sa vrijednošću "Bank1".

Potrebno je u obrascu za izbor imenika "Banke", programski ODABRATI element "Banka1", tj. ukucajte ponovo odaberite ovu vrijednost "Bank1".

Do sada sam uradio sledeće:
Procedura Izvrši SelectionInSelectionForm(Link)
DirectorySelectionForm = Directories.Banks.GetSelectionForm(,Link); //Primam obrazac za odabir direktorija Banke pomoću proslijeđenog parametra Link
//podesite izbor u ovom obrascu za odabir, prema mom linku u detaljima
DirectorySelectionForm.Selection.Link.Use = Tačno;
DirectorySelectionForm.Selection.Link.Value = veza;
DirectorySelectionForm.FormElements.DirectoryList.HierarchicalView = False;
DirectorySelectionForm.Open();
//ovdje je kod koji simulira pritisak na tipku Select, kako????
Kraj procedure

Pomozite ako se neko susreo sa ovim ili ima neku ideju.

Hvala ti.

odgovor:

Uradio sam to ovako:

Procedura ExecuteSelectionInSelectionForm(Link, rec) //parametar “link” je veza vrijednosti na obrascu dokumenta; "rec" - trenutni element forme, tj. polje za izbor
DirectorySelectionForm = Directories.Banks.GetSelectionForm(,Rec,Link);
DirectorySelectionForm.FormElements.DirectoryList.HierarchicalView = False;
OpenForm(DirectorySelectionForm, rijeke,);

Ako direktorij Izbor Form.Open() Onda
DirectorySelectionForm.Activate();
endIf;

DirectorySelectionForm.CurrentElement.CurrentRow = veza;
SelectionEl = DirectorySelectionForm.CurrentElement.CurrentRow;

Ako je SelectEl = nedefinirano ili NIJE popunjena vrijednost (SelectEl) onda
Izvještaj("Vrijednost "+Link+" nije pronađena u obrascu za odabir direktorija");
inače
DirectorySelectionForm.NotifyOfSelection(SelectEl);
endIf;

Kraj procedure

Pitanje: Dugme "Odaberi" na obrascu za odabir ili kako kliknuti na dugme "Odaberi".


Dobar dan

Redovna primjena.

Šta mislite o kliku na dugme “Odaberi” na obrascu za odabir dokumenta/direktorija?

Klik mišem i COM ne nudi automatizaciju.

Lista želja: u obrascu za odabir simulirajte pritisak na dugme „Odaberi“.

odgovor:Čini se da sam riješio problem... nekoliko pokretanja testa.

Dodato nakon 17 minuta
Do sada radi ovako:

1C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Procedura Izvedite SelectionInSelectionForm(Link, rec) //parametar "link" je veza vrijednosti na obrascu dokumenta; "rec" - trenutni element forme, tj. polje za izbor DirectorySelectionForm = Direktoriji. Banke. GetFormSelection(, Rec, Link) ; Obrazac za izbor imenika. Elementi forme. DirectoryList. HierarchicalView = False ; OpenForm(DirectorySelectionForm, rijeke, ) ; Ako Obrazac za izbor imenika. Open() Zatim obrazac za odabir direktorija. Aktiviraj() ; EndIf ; Obrazac za izbor imenika. CurrentItem. CurrentRow = veza; SelectionEl = Obrazac za odabir direktorija. CurrentItem. CurrentRow ; ako SelectEl = nedefinisano ili NIJE popunjena vrijednost (SelectEl) onda Report("Vrijednost" + Link + "nije pronađen u obrascu za odabir imenika") ; inače, DirectorySelectionForm. Obavijesti o izboru(ChoiceEl) ; EndIf ; Kraj procedure

Pitanje: Zašto vrijednost više nije odabrana iz obrasca za odabir?


Na obrascu dokumenta postoji polje tipa reference DocumentLink.PaymentOrderOutgoing. Kada se izabere, otvara se obrazac za odabir odlaznog naloga. Jednom kada je vrijednost odabrana, ona se ne ubacuje u obrazac kao što je odabrana. U početku sam mislio da je obrada odabira standardna obrada i programer je zaboravio registrirati obradu odabira. Ali tamo je sve tipično. Otvaram formu ne programski, u polju u kojem sam odlučio da ne vodim nikakve događaje. šta bi to moglo biti?
--- spajanje poruka, 2. januar 2018 ---

Još jedna aplikacija zasnovana na redovnim obrascima. Obrazac za odabir je upravljiv i otvara se iz običnog prozora. Ako se vratite na normalnu formu za odabir, onda je sve u redu.

odgovor:

Generalno, shvatio sam. Korisno je vidjeti šta dolazi u SelectedValue u obradi odabira. Ispostavilo se da je to niz. Kada sam ušao u formular za odabir, ispostavilo se da postoji potvrdni okvir za višestruki izbor. Skinuo sam ga i sve je radilo.

Pitanje: Pomozite mi da postavim izbor u obrascu za odabir imenika


Prilikom odabira druge ugovorne strane, programski prenosim prve znakove imena u obrazac za odabir. Kako se programski aktivira prvi element čiji se prvi znakovi podudaraju.

odgovor:

elektron je rekao:

Prilikom odabira druge ugovorne strane, programski prenosim prve znakove imena u obrazac za odabir. Kako programski napraviti da se aktivira prvi element čiji se prvi znakovi podudaraju.

Kliknite da proširite...

Odlučeno je. Napravio sam virtuelnu tastaturu na obrascu za izbor imenika “Counterparties”.
Kada pritisnete bilo koji taster, aktivira se kod
SearchResultByDetails = TechRef.FindByName(N, False);
Form Elements.DirectoryList.CurrentLine=SearchResultByAttributes;
gdje je H varijabla koja sadrži vrijednost ključa

Pitanje: Odaberite obrazac sa izborom za listu vrijednosti


Dobar dan. Trebam vašu pomoć u rješavanju jednostavnog problema.

Confa ZUP 2 .5 .113 .1 Postoji eksterni izveštaj, izveštaj ima atribut „lista baza“, tip lista vrednosti.
Postoji obrazac za prijavu. Na obrascu izvještaja, polje "ulazna lista baza", ValueType = "Lista vrijednosti", a tip ListValue = "DirectoryLink.ObjectPropertiesValue".

Kako otvoriti obrazac za odabir sa odabirom od strane vlasnika nekretnine?

Hvala unapred!

odgovor: Na kartici Opcije nalazi se kolona pod nazivom Opcije uređivanja. Tamo možete pokušati konfigurirati veze parametara odabira ili parametar odabira

Pitanje: Programski otvori obrazac za odabir dokumenta 1s 8.3


Kako programski otvoriti obrazac za odabir dokumenta 1s 8.3 i sačuvati odabranu vrijednost u varijablu?

Gugl je dao neka štaka rešenja, voleo bih da znam kako to da uradim ispravno.

odgovor:+ () PM također ima magičnu metodu - preuzimanje.

Tablični dio
Učitaj
sintaksa:

Skinuti(<Таблица>)
Opcije:

<Таблица>(obavezno) Tip: ValueTable.
Tabela vrijednosti iz koje se učitava tabelarni dio. Kolone tabele su kombinovane po imenima.
Opis:

Učitava tabelarni dio iz tablice vrijednosti. U tom slučaju se brišu svi prethodni redovi tabelarnog dijela. Prilikom učitavanja, vrijednosti u stupcima odjeljka tablice se popunjavaju vrijednostima iz stupaca tablice vrijednosti s odgovarajućim imenima.

Dostupnost:

Server, debeli klijent, eksterna veza.
Bilješka:

Metoda se može koristiti samo ako je dio tablice dobiven iz svojstva objekta. Ako je dio tablice dobiven iz svojstva veze (ili odabira), tada će korištenje ove metode uzrokovati grešku u vremenu izvođenja.
primjer:

Composition.Load(CompositionTable);

Pitanje: Prenošenje parametara u obrazac za odabir.


Molim te pomozi mi.
Iz dokumenta "Prodaja robe i usluga" poziva se obrazac za odabir ugovora (ERP). Konf je uređen, upoređujem ga sa standardnim. U ProcessingCreationOnServer obrasca za odabir, gledam u debugger Parameters.Selection. Samo ne mogu razumjeti kako se formira lista odabira - nema eksplicitnog poziva na ovu formu s parametrima, postoji samo jedan element odabira u svojstvu “SelectionParametersLink”, a već ih ima nekoliko u Parameters.Selection. Možda mi neko može reći gde da tražim.

Kartica replicira prilagođeni dijalog "Postavke", koji je dostupan korisniku da konfiguriše parametre izvještaja.

Popunjavanje postavki na ovoj kartici koristi se za konfiguraciju zadanog izvještaja u korisničkom modu izvještaja.
Prozor za podešavanje izveštaja dostupan je u režimu prilagođenog izveštaja, a razlika od podešavanja ACS-a u konfiguratoru je u tome što možete koristiti vrednosti nepredefinisanih podataka iz baze podataka.
Prozor postavki sastoji se od glavnog prozora u kojem se prikazuju liste grupiranja, tabela i grafikona i skupa kartica u kojima se postavljaju parametri podešavanja za objekte navedene u odjeljku grupisanja. Koje postavke se trenutno uređuju možemo označiti klikom na dugme sa natpisom koji objekt uređujemo:

Moguće je uređivati ​​opće postavke za cijeli izvještaj, a klikom na odgovarajuće dugme možete uređivati ​​postavke isključivo za odabrani objekt: element grupisanja, tabelu, grafikon.

Kartica "Parametri podataka"
Na ovoj kartici se postavljaju vrijednosti parametara podataka. Lista dostupnih parametara podataka određena je na kartici „Parametri“ ACS dijagrama, ovdje se postavljaju samo vrijednosti parametara koje je definirao korisnik. Štaviše, dostupni su samo oni parametri za koje je polje za potvrdu „Ograničena dostupnost“ poništeno u šemi kontrole pristupa.


Tabela sadrži nekoliko kolona:
1. “Koristi” - označavanjem korisnik označava da li će koristiti ovaj parametar za generiranje izvještaja.
2. “Parametar” - naziv parametra
3. “Vrijednost parametra” - vrijednost parametra ili indikacija odakle se vrijednost parametra može preuzeti. Na primjer, ako resetujete trenutnu vrijednost klikom na “X”, tada će se klikom na dugme “T” otvoriti izbor tipa parametra u dijalogu:

Izvor može biti bilo koja vrijednost jednostavnog tipa String, Date, Number, Boolean ili referenca na objekt u bazi podataka. Izvor za ovaj parametar može biti i vrijednost nekog drugog parametra da biste to učinili, odaberite vrijednost “Polje sastava podataka” i odaberite željeno polje sa liste parametara.
Za datume možete dodijeliti automatske vrijednosti za zamjenu: „Početak ovog dana“, „Početak ove sedmice“ itd.

Kartica “Izabrana polja”.
Na ovoj kartici definišete polja, osim grupisanja, koja će biti prikazana u izveštaju. Kartica sadrži dvije liste sa dostupnim poljima i odabranim poljima. Pored polja definiranih u skupovima podataka, za izlaz su dostupna parametri i sistemska polja “Sequence Number”, “Sequence NumberInGrouping”, “Level”, “LevelInGrouping”, kao i prilagođena polja definirana na kartici “Custom Fields”. .

Polja možete prenijeti dvostrukim klikom na naziv u lijevom prozoru ili korištenjem posebnog dugmeta na komandnoj tabli. Možete dodati sljedeće elemente: “Novo polje”, “Nova grupa”, “Novo autopolje”. “Novo polje” - dodaje element u kojem možete odabrati polje sa liste dostupnih polja. “Nova grupa” - možete grupirati više polja pod jednim naslovom. “Novo autopolje” - koristi se za označavanje da će polja prikazana za grupisanje biti odabrana iz postavki grupisanja višeg nivoa. Na primjer, nakon definiranja brojnih polja resursa za cijeli izvještaj, specificirali smo novo autopolje za grupisanje. Elemente možete izbrisati pomoću dugmeta Delete ili ih pomeriti po poziciji pomoću dugmadi za pomeranje. Označavanjem polja možete podesiti vidljivost polja u izvještaju.
Nakon što definišemo skup polja, možemo urediti polja u listi potrebno je da uđemo u mod za uređivanje polja, kliknemo na dugme za odabir i sa liste izaberemo željeno polje.

Za resurse su dostupna pojašnjenja za izračunavanje atributa za odabir: “% u grupi” - koristi se za izračunavanje udjela vrijednosti resursa za cijelu grupaciju u grupi, tj. kao rezultat, grupa na osnovu ukupne vrijednosti resursa će biti 100%; “% ukupno” - ukupan procenat, bez obzira na grupu, za sve vrijednosti resursa.
Za polja tipa objekta: imenik, dokument, itd. Moguće je specificirati detalje objekta u odabranim poljima.

Kartica "Izbor"
Na ovoj kartici definirate odabire koji utiču na rezultat izvještaja.


Kao i na kartici “Izabrana polja”, postoje dva prozora: na lijevoj strani su sva dostupna ACS polja za odabir u selekciji, desno su elementi i vrijednosti koji utiču na odabir. Također možete dodati novi element ili grupu elemenata pomoću gumba Dodaj. Elemente možete izbrisati pomoću dugmeta Delete ili ih pomeriti po poziciji pomoću strelica za pomeranje. Označavanjem polja možete regulisati aktivnost određene selekcije u izvještaju. Nakon klika na dugme “Slično”, na listu selekcionih elemenata dodaju se detalji odabira koji pojašnjavaju: “Režim prikaza” i “Prezentacija”.

Nakon dodavanja novog elementa na izbornu listu, sljedeća polja su dostupna za uređivanje:
“Ljeva vrijednost” - ACS polje ili polje jednostavnog tipa (“Broj”, “String”, “Datum”, “Boolean”), na koje se primjenjuje odabir
“Tip poređenja” - lista mogućih uslova odabira: “Jednako”, “Nije jednako”, “Na listi”, “U grupi sa liste”, “U grupi”, “Nije na listi”, “ Nije u grupi sa liste“, „Nije u grupi“, „Sadrži“, „Ne sadrži“, „Popunjeno“, „Nije popunjeno“
“Desna vrijednost” - vrijednost odabira, odgovara vrijednosti polja “Lijeva vrijednost”. Ako je "Tip poređenja" "Na listi", "U grupi sa liste", "Nije na listi", "Nije u grupi sa liste", tada je lista vrednosti dostupna za podešavanje
“Režim prikaza” - postoje dvije moguće opcije: “Brzi pristup” i “Normalno”. Ako je instaliran „Brzi pristup“, tada se, ako je moguće, vrijednosti za odabir prikazuju u obliku padajuće liste, što se posebno odnosi na male direktorije, nabrajanja ili vrste karakteristika koje se rijetko mijenjaju. “Normalno” je zadana metoda prikazivanja vrijednosti za objekte u obliku obrasca za odabir ili liste.
“Prikaz” - tekstualni prikaz selekcije u skraćenom režimu (ako se ne pritisne dugme “Detalji”), kao i prikaz selekcije prilikom prikaza izveštaja.
Odabirima možete dodati grupe - koje služe za kombinovanje nekoliko odabira, prema bilo kojem kriteriju “I”, “ILI”, “NE”.


Na primjer, trebate kombinirati nekoliko uvjeta koristeći operator AND. Da biste to uradili, potrebno je da u izbor dodate „Grupa I“ i navedete uslove u ovoj grupi. Dozvoljeno je gniježđenje grupa, uz pomoć kojih možete stvoriti složene uvjete. Pored “Group AND”, dostupni su “Group OR” i “Group Not”. Podrazumevano, postoji jednostavno lista uslova odabira koji ne pripadaju nijednoj grupi, međusobno povezani pomoću “AND” operatora.

Kartica „Sortiranje“.
Ova kartica specificira polja po kojima se vrši sortiranje.


Dodavanje polja na ovoj kartici slično je načinu na koji se radi na kartici “Izabrana polja”. Jedini parametar koji je naveden u odabranim poljima sortiranja je smjer sortiranja.

Kartica "Uslovni izgled"
Na kartici „Uslovno oblikovanje“ označavamo koja polja, uslovi odabira i uslovi registracije će biti primenjeni prilikom prikaza polja u izveštaju.


„Oblast“ je lista polja na koja utiče uslovni izgled.

“Odabir” - uslovi odabira pod kojima je važeća uslovna registracija

Uslovi odabira su specificirani na isti način kao na kartici “Izbor” glavnog prozora postavki izgleda.
“Uslovni dizajn” - kada popunite ovo polje, prikazuje se prozor sa izborom mogućih opcija dizajna za navedena polja.

Lista mogućih opcija dizajna:
Boja pozadine - Definira boju pozadine ćelija.
Boja teksta - Definiše boju teksta u ćelijama
Boja grafikona - Definira boju linija na grafikonu.
Boja ivice - Boja ivice
Stil obruba - Vrste graničnih linija
Stil ivice lijevo - lijevo
Stil gornjeg ruba - Vrh
Stil ivice desno - desno
Stil donje ivice - dno
Font - Vrsta fonta, debljina, nagib, itd.
Uvlačenje - Broj znakova za uvlačenje
Automatsko uvlačenje - Broj znakova za uvlačenje, koji se koriste u grupama
Horizontalna pozicija - Horizontalna pozicija teksta u ćeliji
Vertikalni položaj - Vertikalni položaj teksta u ćeliji
Položaj - Postavite tekst koji ne staje u ćeliju
Orijentacija teksta - Orijentacija teksta u stepenima (na primjer, okomito rotiranje za 90)
Format - Formatni niz vrijednosti
Istakni negativ - Potpišite da biste istakli negativne vrijednosti
Minimalna širina - Minimalna širina ćelije u tačkama
Minimalna visina - Minimalna visina ćelije
Max Height - Max Height
Tekst – tekst koji se prikazuje umjesto vrijednosti

Kartica "Prilagođena polja"
Na ovoj kartici možete odrediti prilagođena polja i formule po kojima će se polja izračunavati.


Kada kliknete na dodavanje polja, otvara se izbor tipa prilagođenog polja: “Novo polje za odabir”, “Novo polje izraza”.
“Polje za izbor” - pojavljuje se dijalog za kreiranje novog polja za odabir. Ovo polje će uzeti navedene vrijednosti u zavisnosti od uslova odabira navedenih u tabeli „Opcije“.

“Izraz polja” - koristi se u slučaju kada trebate umetnuti izračunata polja bez promjene sheme izgleda. Na primjer, shema sadrži resurse “Količina” i “Iznos”. U korisničkom modu želimo izračunati cijenu. Da bismo to učinili, unosimo formulu u polje dizajna izraza:

Možete koristiti izraze iz upita u prilagođenim poljima.
Također, da biste odredili ukupne zapise u izrazu, trebate koristiti agregatne funkcije SUM(..), QUANTITY(), MIN(..), MAX(..)

Kartica “Ostala podešavanja”.
Na kartici „Ostala podešavanja“ definišete postavke koje utiču na raspored grupisanja, polja za izbor, resurse itd.

Izgled dizajna Definirani unaprijed definirani izgledi dizajna
Lokacija zbrojeva Parametar utječe na lokaciju zbrojeva
Lokacija grupisanih polja
Lokacija frakcija
Lokacija detalja
Lokacija resursa
Horizontalni raspored ukupnih zbrojeva
Vertikalni raspored ukupnih zbrojeva
Tip zaglavlja polja
Vrsta grafikona
Osnovna vrijednost
Preskoči osnovnu vrijednost
Sastav potpisa
Klizni način rada
Prikaz tabele podataka
Maksimalna vrijednost
Minimalna vrijednost
Ivica
Gradijent
Font
Boja pozadine
Stil linije
Postavljanje legende
Trake mjerne karte
Prikaži naslov
Naslov
Parametri izlaznih podataka
Izbor prikaza

Prozor postavki grupisanja


Postavke sheme sastava podataka mogu sadržavati strukturu koja uključuje dostupne elemente postavki.
Ovi elementi su:
grupiranje;
stol;
dijagram;
ugniježđeni izvještaj.

Za grupisanje su dostupne sljedeće postavke:
Zastavica upotrebe grupisanja - ako je postavljena, grupisanje se koristi tokom rasporeda;
Grupisanje polja - skup polja po kojima se vrši grupisanje. Svako polje za grupisanje sistema sastava podataka ima sljedeća svojstva:
- Field use flag - ako je postavljeno, polje se koristi;
- Polje grupisanja - putanja do podataka polja po kojima se vrši grupisanje;
- Tip grupisanja – tip grupisanja (Hijerarhija, Samo Hijerarhija, Elementi);
- Vrsta dodavanja – potreba za dodavanjem datuma u periodu;
- Datum početka - datum početka perioda. Može sadržavati konstantnu vrijednost ili vrijednost polja;
- Datum završetka - datum završetka perioda. Može sadržavati konstantnu vrijednost ili je vrijednost polje;

Prilikom grupisanja po polju perioda, polje roditeljskog perioda se automatski dodaje grupisanju, što nije dodatni period, ako roditeljske grupe nisu grupisane po ovom nadređenom polju perioda.
Na primjer, ako se grupisanje vrši pomoću polja Snimač, tada će se polje PeriodSecond automatski dodati grupisanju.
Međutim, zabranjeno je kreiranje grupa na osnovu detalja polja perioda.

Značajke kreiranja izvještaja u 1C v8 u načinu debelog klijenta

Kako odabrati opciju?

  • Postavite dugme „Odaberi opciju“ na tablu sa izveštajima
  • Postavite polje "OnDate" na obrazac.

Primjer koda: ProcedureFormActionSelectOption(Button) layout = GetLayout("MainDataLayoutScheme"); spOptions = New ValueList; Za svaku opciju iz layout.OptionsSettings Loop spOptions.Add(option.Settings, option.View); EndCycle;

odabir = cnOptions.SelectItem(); Ako je izbor = nedefinisano onda vrati; endIf;

SettingsComposer.LoadSettings(selection.Value);

Generiraj(); Kraj procedure

Procedura OnDateOnChange(Element) Generate(); Kraj procedure

Procedura Generate()FormElements.Result.Clear(); Postavke Composer.Settings.DataParameters.SetParameterValue("Period", ToDate); ComposeResult(FormElements.Result); Kraj procedure

Procedura prilikom otvaranja() OnDate = CurrentDate(); Generiraj(); Kraj procedure

Mogućnosti kreiranja izvještaja putem sistema kontrole pristupa

Korak po korak kreiranje izvještaja

  1. Kreirajte izvještaj u čvoru Izvještaji
  2. Kreirajte izgled u izvještaju čiji je tip Shema rasporeda podataka
  3. U svojstvima izvještaja postavite: Osnovni raspored podataka = Kreirani izgled
  4. U svojstvima izvještaja postavite podsistem kojem pripada (izvještaj u Enterpriseu će biti prikazan u gornjem navigacijskom panelu)
  5. Kreirajte upit u Layoutu (stavka: Dodaj skup podataka - Upit)
  6. Na kartici Opcije za Layout morate poništiti sve linije u koloni Ograničenje dostupnosti - tj. svi parametri će biti dostupni za uređivanje od strane korisnika
  7. Na kartici Postavke rasporeda, u prozoru u kojem je prikazan čvor Izvještaj, potrebno je kreirati novo grupisanje bez navođenja polja za grupisanje - kreirat će se detaljna linija
  8. Na kartici Postavke u rasporedu, u prozoru u kojem je prikazan dodatni skup oznaka, odaberite dodatno. Kartica Parametri - označite sve parametre kvačicom i na svakom parametru kliknite na element Svojstva elementa korisničkih postavki, otvoriće se prozor postavki parametara u kojem trebate označiti kućicu - Uključi parametar u korisničke postavke
  9. Na kartici Postavke u rasporedu, u prozoru u kojem je prikazan dodatni skup oznaka, odaberite dodatno. Kartica SelectedFields - tamo trebate dodati kolone koje će biti prikazane u izvještaju
  10. Pokrenite Enterprise, otvorite izvještaj, postavite vrijednosti parametara, Generate (provjerite da li je odabrana opcija generiranja glavnog izvještaja)

Kako dodati parametar koji ne može uređivati ​​korisnik?

Na primjer, moramo postaviti parametar upita "Infobase"

  • U obrascu izgleda izgleda, na kartici Opcije, poništite izbor u polju za potvrdu „Uključi u dostupna polja“ i „Ograniči dostupnost“ za željeni parametar.
  • U obrascu izgleda izgleda, na kartici Postavke, na podkartici Parametri (na dnu), poništite izbor željenog parametra, otvorite svojstva (dugme sa ključem), na ovom obrascu:
    • Isključite "Uključi u korisničke postavke"
    • Postavite način uređivanja na "Nedostupno"


  • U modulu obrasca izvještaja u rukovatelju događaja "Prilikom učitavanja opcije na server" (možete i prilikom otvaranja, ali NE i prilikom kreiranja na serveru, pošto se izvršava PRIJE učitavanja postavki izvještaja i postavke će biti prepisane) programski postavite parametar:

&Na serveru Procedura prilikom učitavanja opcije na server (Postavke)

//Podešavanje parametra Settings = Report.Settings Composer.Settings; Settings.DataParameters.SetParameterValue("InformationBase", Report.InformationBase); Kraj procedure

Kako postaviti opcije izvještaja?

  • U obrascu za izgled na kartici Postavke u polju s lijeve strane možete kreirati potrebne opcije izvještaja

Kako podesiti grupisanje?

  • U obrascu za izgled na kartici Postavke u polju u gornjem desnom uglu možete kreirati potrebna grupisanja

Kako programski prikazati izvještaj?

U modulu obrasca:

&Na klijentskoj proceduri GenerateReportExecute()

ThisForm.ComposeResult();

Kraj procedure

Kako testirati izvještaj?

Treba da uradite:

  • Najpogodniji način za kreiranje situacije u klijentskom testu je kroz tabelu situacija
  • dobiti obrazac izvještaja - form = GetForm("Report.Process Movement.Form.ReportForm");
  • učitajte željenu varijantu izvještaja - postavite parametar proširenja obrasca izvještaja "Variant Key" (naziv postavke u izgledu sastava podataka)
  • učitati potrebne postavke izvještaja - ? popunjavanje parametra proširenja obrasca izvještaja “UserSettings” (tip “UserDataCompositionSettings”) nije uspjelo, sve je komplikovano, pogledajte dolje.
  • otvoreni obrazac - form.Open()
  • izvršiti formiranje - form.ArrangeResult();
  • provjerite sadržaj obrasca dokumenta za proračunsku tablicu - bilo bi lijepo imati funkcije poređenja sa referentnim mxl
  • zatvori formu - form.Close(); - ili ga možda ne morate otvarati, morate provjeriti

vidi takođe

  • Opis: meni pomoći/pomoćnik za sintaksu/kartica Sadržaj/upravljani objekti sučelja aplikacije/upravljana proširenja obrasca/upravljana ekstenzija obrasca za izvještaj/opcije obrasca

Kako učitati potrebne postavke izvještaja?

U dokumentaciji je opisano da postoji takav parametar za proširenje obrasca izvještaja "UserSettings" tipa "UserDataCompositionSettings", ali postoji vrlo složena struktura objekta, nije ga bilo moguće koristiti.

Zaista radna šema:

1. Kreirajte parametre u izvještaju

  • Tip perioda StandardPeriod
  • Odabir tipa ValueList (Struktura bi bila bolja, ali je nema na listi tipova parametara, kao ni proizvoljni tip)

2. Prodajemo potrebne parametre u GetForm proceduru:

period = NewStandardPeriod; period.Option = StandardPeriodOption.CustomPeriod; period.StartDate = CurrentDate; period.EndDate = sutrašnji datum;

odabir = Nova lista vrijednosti; selection.Add(Testing.GetObject(stSituation, "BP1"), "BusinessProcess");

stParameters = Nova struktura("Ključ varijante, period, izbor", "glavni", period, izbor); // OpenFormModal("Report.Process Movement.Form.ReportForm", stParameters); form = GetForm("Report.Process Movement.Form.ReportForm", stParameters);

3. Postavite parametre u obrascu za obradu događaja

&OnServer funkcija spGet(spList, view) Izvoz za svaki element iz spList petlje Ako element.View = view Onda vrati element.Value; endIf; EndCycle; Return Undefined; EndFunction

&Na serverskoj proceduri SetCustomSettingsValue(Postavke, Ime, Vrijednost) za svaki element iz Settings.Elements Loop If TypeValue(element) = Type("DataCompositionSettingsParameterValue") Onda ako String(element.Parameter) = Name Zatim element.Value = Value; element.Use = Tačno; endIf; endIf; EndCycle; Kraj procedure

&Na serverskoj proceduri SetCustomSelectionValue(Postavke, Ime, Vrijednost) Za svaki element From Settings.Elements Loop If TypeValue(element) = Type("DataComposition Selection") Zatim za svaki odabir From element.Elements Loop If Row(selection.LeftValue) = Ime Zatim odabir .RightValue = Vrijednost; selection.Use = Tačno; endIf; EndCycle; endIf; EndCycle; Kraj procedure

&Na serveru Procedura prilikom učitavanja opcije na server (Postavke)

Naziv CurrentVariant = Prikaz CurrentVariant;

Postavke = Report.SettingsComposer.Settings; Settings.DataParameters.SetParameterValue("InformationBase", Report.InformationBase);

Kraj procedure

&Procedura na serveru prilikom učitavanja korisničkih postavkiOnServer(Postavke) Postavke = Report.Settings Linker.UserSettings;

<>"00010101" Zatim Postavke = Report.Settings Composer.UserSettings; SetCustomSettingValue(Postavke, "Period", Parameters.Period); endIf;

ssBusinessProcess = spGet(Parameters.Selection, "BusinessProcess"); Ako ssBusinessProcess<>Undefined Zatim SetCustomSelectionValue(Postavke, "BusinessProcess", ssBusinessProcess); endIf;

Kraj procedure

napomene:

  • Postoje parametri podataka, odnosno ono što je postavljeno u parametrima ACS zahtjeva
  • Neki od njih su dodijeljeni u postavkama opcija u UserSettings (u svojstvima parametara nalazi se zastavica "Uključi u korisničke postavke"
  • Čak i ako prilikom učitavanja na serveru učitate potrebne vrijednosti u parametre podataka, tada se otvara obrazac u koji se automatski učitavaju postavke koje su posljednji put spremljene. Ove postavke "prekidaju" postavke podataka prilikom generiranja izvještaja
  • U rukovatelju WhenLoadingUserSettingsOnServer, proslijeđeni objekt Settings je kopiju stvarne postavke, dakle, da biste promijenili postavke koje se pojavljuju na obrascu, potrebno je popuniti Report.Settings Composer.UserSettings objekt

Kako napraviti više (list) parametara upita u ACS-u?

Upit mora koristiti izraz "U (&ParameterName)"(cm. Logički izrazi u 1Cv8 jeziku upita)

Prilikom postavljanja izgleda ACS dijagrama na kartici "Parametri", za ovaj parametar morate označiti okvir u stupcu "Lista dostupnih vrijednosti". U ovom slučaju, kada odaberete parametar, ACS prikazuje obrazac za uređivanje liste u koji možete dodati bilo koju vrijednost parametra.

Kako onemogućiti parametre upita u sistemu kontrole pristupa?

U SKD upitu morate koristiti konstrukcije okružene vitičastim zagradama "{}" .

Ako je potvrdni okvir za odgovarajući parametar poništen u obrascu izvještaja (panel za brza podešavanja), tada se ova konstrukcija uklanja iz zahtjeva.

Pogledajte više detalja. Proširenje jezika upita za sistem sastavljanja podataka (1Cv8)

Kako napraviti izvještaj sa širinom stupca?

Da biste to uradili, u podešavanju opcije izveštaja (uređivanje izgleda podataka, kartica „Podešavanja“, polje u gornjem desnom uglu), potrebno je da dodate „Tabelu“ kao prvo grupisanje.

Nakon toga, grane „Redovi“ i „Kolone“ se pojavljuju u čvoru „Tabela“, gde se dodaju potrebna grupisanja.

Kako konfigurirati izlazni format polja?

U uređivaču izgleda sastava podataka, na kartici “Skupovi podataka” u gornjem desnom dijelu nalazi se lista polja izvještaja.

Postoje dvije mogućnosti:

  1. Postavite vrijednost kolone "Izraz pogleda".
    • ovdje možete unijeti jezični izraz koji proizvodi željeni niz
    • ne radi sa poljima resursa
  2. Postavite vrijednost kolone "Dizajn".
    • u dizajnu postoji svojstvo "Format" - ova vrijednost je slična parametru jezičke funkcije "Format", možete postaviti željeni izgled
    • konverzija tipa ovdje nije moguća

Za polja resursa možete odrediti izraze za izračunavanje (kartica "Resursi") - na primjer,

Iznos(vrijeme)/3600,0

za pretvaranje iz sekundi u sate.

Potrebna preciznost se može podesiti kroz polje “Dizajn” na kartici “Setovi podataka”.

Karakteristike podešavanja parametara za sistem sastavljanja podataka

Postoje najmanje TRI tipa parametara i zahtijevaju različitu obradu:

Data Options

Parametri podataka su definirani u zahtjevu (izvoru podataka) sistema kontrole pristupa.

Parametri podataka se prosljeđuju zahtjevu izvora podataka i definiraju podatke koji će se dohvatiti.

Objekt Settings Composer ima posebno svojstvo za rad s parametrima podataka Postavke Composer.Settings.DataOptions

Možete ga postaviti pozivom poput

Postavke = Report.SettingsComposer.Settings; Settings.DataParameters.SetParameterValue("InformationBase", Report.InformationBase);

Odabir

Selekcije se postavljaju na primljene podatke poslije izdvajanje iz izvora podataka.

Objekt Settings Composer ima posebno svojstvo za rad sa selekcijama ComposerSettings.Settings.Selection.

Na primjer: Postavke = Report.SettingsComposer.Settings; Settings.DataParameters.SetParameterValue("InformationBase", Report.InformationBase);

Za svaki element From Parameters.Selection Cycle Selection Element = Settings.Selection.Elements.Add(Type("Element za odabir sastava podataka")); Element odabira.Tip poređenja = Vrsta poređenja sastava podataka.Jednako; SelectionElement.LeftValue = NewDataCompositionField(element.View); SelectionElement.RightValue = element.Value; EndCycle;

Prilagođene postavke

Korisničke postavke definiraju podatke koje korisnik može prilagoditi na obrascu.

Korisničke postavke mogu se prikazati na obrascu u posebnoj tabeli i mogu se pozvati klikom na dugme "Postavke" i iz menija "Sve radnje".

Prilagođene postavke povezan sa parametrima podataka i selekcijama na neki prilično složen način, ova veza se može vizualno konfigurirati, ali je programski rad s njima nekako vrlo nezgodan.

Do sada nismo pronašli ništa bolje od postavljanja vrijednosti postojeće kolekcije po indeksu, što prirodno može nestati kada promijenite ACS izgled u vizualnom uređivaču.

Osim toga, ako je neki parametar podataka deklariran kao korisnički definiran, tada programska postavka parametra podataka (vidi gore) nije dovoljna; Stoga, za takve parametre nema smisla postavljati parametar podataka, potrebno je odmah instalirati prilagođeno podešavanje.

Zgodno mjesto za postavljanje potrebnih vrijednosti je rukovalac događaja "When LoadingUserSettingsOnServer" ekstenzije obrasca izvještaja.

&Na serveru Procedura prilikom učitavanja korisničkih postavki na server (Postavke)

Ako Parameters.Period.End Date<>"00010101" Zatim Postavke = Report.Settings Composer.UserSettings; Settings.Items.Value = Opcije.Period; endIf;

Kraj procedure

Korištenje izvora podataka kao objekta

Da biste koristili skup podataka tipa objekta, trebate proslijediti vanjski izvor podataka metodi Initialize objekta Procesor sastava podataka.

DecryptionData = nedefinisano;

LayoutLinker = newDataLayoutLayoutLinker; LayoutLayout = LayoutLinker.Execute(DataCompositionSchema, SettingsLinker.Settings, DecryptionData);

CompositionProcessor = newDataCompositionProcessor; LayoutProcessor.Initialize(LayoutLayout, New Structure("Data", GetDataExternalSource()), DecryptionData);

U prilogu je jednostavan primjer (da bi primjer funkcionirao, morate imati imenike “Counterparties” i “Counterparty Agreements”).

Pažnja! Ovo je uvodna verzija lekcije, čiji materijali mogu biti nepotpuni.

Prijavite se na stranicu kao student

Prijavite se kao učenik za pristup školskim materijalima

Sistem sastavljanja podataka 1C 8.3 za početnike: povezivanje skupova podataka

  • Napišite izvještaj koji prikazuje kupce i njihove omiljene proizvode. Svaki klijent ima omiljenu boju, a svaki proizvod ima svoju boju - na osnovu ovih boja morate odrediti "omiljeniku" proizvoda. Na primjer, ako je Andreyjeva omiljena boja crvena, onda će jedna od njegovih omiljenih namirnica biti paradajz (crveni su).
  • Primijenite dva skupa podataka u izvještaj. Prvi skup su podaci iz tablice direktorija "Klijentsi". Drugi su podaci iz tabele imenika „Hrana“.
  • Implementirati vezu između ova dva skupa, tako da izvještaj sadrži samo omiljene proizvode za svakog klijenta.

Kreirajte novi izvještaj

Otvorite bazu podataka "Gastronom" u konfiguratoru i kreirajte novi izvještaj kroz glavni meni:

Vrsta dokumenta - "Spoljni izvještaj":

U obliku novog izvještaja navedite naziv „Lekcija 6“ i kliknite na dugme „Otvori dijagram sastava podataka“:

Ostavite zadani naziv šeme:

Dodavanje prvog skupa podataka

U dijagramu koji se otvori idite na karticu "Skupovi podataka" i odaberite "Dodaj skup podataka - upit" koristeći zeleni znak plus:

Pozovite konstruktora zahtjeva:

Navodimo tabelu "Kupci" i polja koja treba dobiti iz zahtjeva:

Dodavanje drugog skupa podataka

Dodajte drugi skup podataka:

Odaberite ga (DataSet2) i ponovo pozovite konstruktor upita:

Navodimo tablicu imenika "Hrana" i polja koja je potrebno dobiti iz zahtjeva:

Rezultirajući tekst zahtjeva je bio:

Imajte na umu da sada imamo dva skupa podataka u izvještaju: skup podataka1 i skup podataka2. Svaki od njih ima svoj tekst i podatke.

Učinite imena opisnijima

Radi jasnoće, preimenujmo DataSet1 u Customers i DataSet2 u Food.

Učinite to dvostrukim klikom na svaki od skupova:

Podatke iz svakog skupa možemo koristiti u našem izvještaju. Ovim podacima ćemo pristupiti putem polja.

Trenutno, set “Kupci” ima sljedeća polja: “Ime” i “FavoriteColor”, a set “Hrana” ima: “Naziv” i “Boja”.

Vidimo da se imena preklapaju i lako se možemo zbuniti. Zato promijenimo nazive polja da budu smisleniji.

Odaberite skup "Klijentsi" i promijenite nazive polja na sljedeći način:

Zatim odaberite set “Hrana” i promijenite nazive polja na sljedeći način:

Pozivanje konstruktora postavki

Na kraju, idite na karticu "Postavke" i kliknite na čarobni štapić da biste otvorili dizajner postavki:

Vrsta izvještaja - "Lista...":

Odaberite polja za izvještaj iz oba skupa:

Vidite zašto je bilo toliko važno promijeniti nazive polja? U fazi podešavanja sastava podataka, ne vidimo iz kojih skupova su ova polja. Vidimo samo njihova imena.

Provjeravam izvještaj

Spremamo izvještaj i generiramo ga u korisničkom načinu rada:

Da. U redu, ali ne baš. Došlo je do takozvanog unakrsnog spajanja dva skupa (trebalo bi da ste dobro upoznati s tim iz spojeva u upitima koje smo proučavali u prethodnim modulima). Svaki zapis iz tabele Kupci ima odgovarajući zapis iz tabele Hrana.

Ali iz svih ovih zapisa moramo ostaviti samo one čije je polje „Customer’s FavoriteColor” jednako polju „FoodColor”:

Povezujemo dva skupa podataka

Da bismo to učinili, spojit ćemo dva skupa podataka (Kupci i Hrana) koristeći polja Customer's FavoriteColor i FoodColor.

Idite na karticu "Veze skupa podataka" i kliknite na dugme plus da dodate novu vezu:

Konfigurišemo parametre kao na slici ispod:

Daću objašnjenje.

Izvor i prijemnik komunikacije. Pa, ovde je sve jasno. Označavamo prvi skup (Kupci) i drugi skup (Hrana) podataka. Posebno bih skrenuo pažnju na to da će se komunikacija odvijati po principu vanjski lijevi spoj(o tome smo govorili u temi zahtjeva u prethodnim modulima). Na osnovu toga morate odabrati koji će set biti izvor, a koji prijemnik.

Izvor izraza. Ovdje ukazujemo na izraz ili jednostavno polje iz izvornog skupa podataka (naveli smo polje ClientFavoriteColor iz Client skupa ovdje).

Izraz prijemnika. Ovdje označavamo izraz ili jednostavno polje iz skupa podataka prijemnika (ovdje smo naznačili polje ColorFood iz skupa hrane).

Dakle, ova veza će ostaviti sa prethodne liste samo one redove za koje je polje FavoriteColor Kupca jednako polju FoodColor.

Sačuvajmo izvještaj i pokrenimo ga u korisničkom modu:

Odlično!

Daću objašnjenje o terenu" Stanje komunikacije“, o čemu programeri početnici tako često udaraju u koplja.

Uvjet veze je pomoćno polje. Tamo možete napisati izraze koji uključuju polja samo iz skupa podataka navedenog u izvoru veze.

U ovom slučaju, za sve redove iz izvora veze, ovaj izraz (uvjet veze) će se provjeriti prije nego što se veza napravi. A ako je ovaj izraz TRUE, tada će se pokušati uspostaviti veze između ovog reda i redova iz prijemnika veze. Ako je izraz FALSE, onda neće biti učinjeni takvi pokušaji.