Če je vrednost v dinamičnem seznamu 1c 8.3.

Končno so se uresničile sanje katerega koli "sedem moškega". Kako pogosto so uporabniki programa 7.7 zahtevali normalen izbor nomenklature. Tako si lahko ogledate stanja in cene ter nastavite filtre. Moral sem se domisliti različnih trikov, vključno s pisanjem zunanjih komponent. Dinamični seznami so bili prikazani v 1C 8.2. Predlagam, da razmislimo, kaj je to in kaj nam lahko dajo v 1C 8.3.

Za osnovo vzemimo nekaj testne konfiguracije 1C: "Enterprise Accounting 3.0". Zdaj ne bomo izbirali, dodajte le še en izbirni obrazec v referenčni imenik nomenklature in ga začasno postavite za glavnega:

Ko bo sistem ustvarjen, bo privzeto v obrazec dodalo polje tabele vrste "Dinamični seznam".

Pojdimo v njegove lastnosti in poglejmo, kaj je tam.

Najprej nas zanima potrditveno polje »Zahteva po meri«. Razkril nam bo vse prednosti dinamičnega seznama. Svojo zahtevo bomo lahko napisali s parametri. Potrdite polje in kliknite povezavo "Odpri":

Odpre se okno s pripravljeno kodo za. Zaenkrat so tam preprosto navedena vsa polja referenčnega zvezka nomenklature.

Brezplačno si zagotovite 267 video vadnic 1C:

Kot lahko vidite, obstaja gumb za klic "" in potrditveno polje, ki omogoča dinamično spreminjanje vsebine seznama. Se pravi, ko drug uporabnik kaj spremeni v imeniku, se bo to spremenilo tudi na našem seznamu. Poleg tega obstaja zavihek "Nastavitve", vendar se bomo tega dotaknili kasneje.

Poizvedba po meri na dinamičnem seznamu

Najprej ustvarimo zahtevo, ki jo potrebujemo z bilancami in cenami. Bolj ali manj tako:

Zavihek nastavitev

In zdaj najbolj okusno! Pojdite na zavihek "Nastavitve". In takoj vidimo, da lahko na prvem zavihku poljubno izberemo poljubno polje v zahtevi:

Programska nastavitev parametrov poizvedbe na dinamičnem seznamu 1C 8.3

Ne pozabite, da imamo v zahtevi dva parametra: "Obdobje" in "Vrsta cene". Posredovati jih moramo zahtevi, sicer bo prišlo do napake.

Te parametre zapišite v parametre obrazca in v modul obrazca dodajte naslednje vrstice:

& AtServer Postopek OnCreateAtServer (neuspeh, standardna obdelava) Seznam. Parametri. SetValueParameter ("Obdobje", Parametri. Datum); Seznam. Parametri. SetValueParameter ("PriceType", Parametri .PriceType); Konec postopka

Med dokončanjem konfiguracij se vsak programer 1C sooči z dinamičnimi seznami.
Dinamični seznam je vmesniški objekt, ki se uporablja za prikaz različnih seznamov predmetov baze podatkov ali neobjektnih podatkov - zapisov registra.
Za prikaz seznama elementov se na primer uporablja dinamični seznam:

Če želite prikazati zmogljivosti dinamičnega seznama, ustvarimo zunanjo obdelavo in dodajte glavni obrazec. V obrazec dodamo nov atribut z vrsto »Dinamični seznam«. Pojdimo na njegove lastnosti in poglejmo, kaj je tam.
Zanima nas lastnost "Prostovoljna zahteva". Če ga omogočite, nam bodo prikazane vse zmogljivosti dinamičnega seznama. Poizvedbo bomo lahko napisali z uporabo skoraj vseh zmožnosti jezika poizvedb 1C: Enterprise. Potrdite polje in kliknite povezavo "Odpri":

Na našem seznamu bo privzeto prikazan seznam postavk s skupnim stanjem za vsa skladišča. Če želite implementirati tak seznam, dodajte naslednjo poizvedbo:


Kot glavno tabelo bomo izbrali "Directory.Nomenclature", to nam bo omogočilo delo z dinamičnim seznamom, tako kot s seznamom elementov - dodajanje, spreminjanje, označevanje elementov za brisanje imenika. Z nastavitvijo glavne tabele je na voljo tudi možnost dinamičnega branja podatkov - to pomeni, da bodo po potrebi izbrani v delih.
Nato moramo ustvariti elemente obrazca za naš seznam:

Če poskusimo začeti obdelavo v tej obliki, dobimo napako:


Če ga želite odpraviti, morate za parameter "Obdobje" nastaviti vrednost. Če želite to narediti, lahko uporabite metodo "SetParameterValue" zbirke "Parametri" dinamičnega seznama. Metoda ima dva parametra:
... "Parameter" - vrsta: niz; Parameter DataComposition. Ime parametra ali parametra sestave podatkov, katerega vrednost želite nastaviti;
... "Vrednost" - vrsta: poljubno. Vrednost, ki jo je treba nastaviti.
Lahko ga pokličete v OnCreateAtServer obdelovalniku obrazca:

Imate vprašanje, ali potrebujete pomoč svetovalca?


Uporabniku bomo omogočili, da spremeni rok za prejemanje stanj. Če želite to narediti, dodajte rekvizite in z njimi povezan element obrazca »Datum«:


V rokovalniku "OnChange" elementa obrazca "Date" pokličite metodo "SetParameterValue" in podajte vrednost povezane spremenljivke kot vrednost. Na enak način spremenimo postopek "OnCreateAtServer" obrazca. Ker je metoda na voljo na odjemalcu, ni potreben klic strežnika:


Ko se datum spremeni, se bodo ostanki samodejno posodobili:




Recimo, da želijo uporabniki videti trenutno stanje ali predvidene prejemke. Razmislimo o eni od možnosti izvajanja. Dodajmo podpornike logičnih obrazcev in povezano stikalo:


Pri spreminjanju vrednosti stikala bomo spremenili besedilo zahteve. Za to bomo uporabili obdelovalec dogodkov OnChange elementa obrazca DisplayQuantityOnIncoming. Spremeniti moramo lastnost "QueryText" dinamičnega seznama, odvisno od vrednosti atributa. Ker ta lastnost ni na voljo na odjemalcu, je potreben postopek klica strežnika:


Rezultat sprememb:



Poleg primitivnih podatkovnih tipov, ki jih je mogoče najti v katerem koli programskem jeziku, obstajajo tudi edinstveni tipi v 1C. Vsak od njih ima svoje lastnosti, metode, funkcije, namen in odtenke uporabe v sistemu. Ena od teh vrst je dinamični seznam, ki močno olajša številne aplikacijske naloge. Zato morajo razvijalci poznati in biti sposobni ravnati s tem vsestranskim orodjem.

Možnosti dinamičnih seznamov v 1C

Namen te vrste je prikazati informacije iz vseh tabel baze podatkov, ne glede na njihovo vrsto. Mehanizem je bil ustvarjen na podlagi ACS in ima podobne zmogljivosti. Toda to ne pomeni, da boste zahtevo zagotovo morali napisati v jeziku 1C, čeprav ta priložnost obstaja in jo morate izkoristiti. Lahko preprosto določite tabelo, podatke, ki vas zanimajo, in 1C bo neodvisno oblikoval najpreprostejšo poizvedbo.

Če želite videti, kako je oblikovan dinamični seznam in katere podatke prikazuje, morate v konfiguratorju odpreti upravljane obrazce, kjer se nahaja: na seznamu atributov v kontekstnem meniju odprite njegove lastnosti in bodite pozorni na " Element zahteve po meri ". Če potrditveno polje ni, potem parameter "Glavna tabela" odraža tabelo zbirke podatkov, iz katere so podatki vzeti. V nasprotnem primeru dinamični seznam odraža podatke poljubne poizvedbe, kar je mogoče videti z odpiranjem nastavitve seznama.

Shema ad-hoc poizvedb se uporablja veliko pogosteje, saj ponuja odlično priložnost za združevanje in prikaz najrazličnejših podatkov. Ta mehanizem se najpogosteje uporablja za prikaz stanja zalog, cen artiklov, prejemkov, izdaj ali nakupov. Uporabljati ga je treba previdno, saj lahko uspešnost s kompleksnimi poizvedbami upade.

Še ena uporabna lastnost dinamičnega seznama se odpre, ko kliknete napis "Prilagodi seznam". Ta meni vam omogoča, da postanejo informacije bolj dostopne in razumljive končnim uporabnikom, tudi če uporabljate standardni nabor polj. Ne glede na to, ali je zahteva poljubna ali ne, boste videli zavihek »Nastavitve«, kjer lahko določite:

  • Izbira dinamičnega seznama;
  • Združevanja v skupine;
  • Razvrščanje;
  • Dekor.

Uporaba parametrov omogoča dinamične sezname vsestransko in dovolj prilagodljive. Prav tako jih lahko povežete s podrobnostmi na upravljanem obrazcu, podatki pa se bodo spreminjali glede na parametre, ki jih je izbral uporabnik. Uporabo teh mehanizmov lahko razumemo in cenimo na podlagi primerov resničnih problemov.

Kot primer si oglejmo problem odražanja stanja zalog na nadzorovani obliki. V resnični praksi so takšna naročila precej pogosta v različnih konfiguracijah, dinamični seznam pa je idealen kot orodje. Za to nalogo bomo morali uporabiti poljubno poizvedbo, parametre dinamičnega seznama in njegove nastavitve.

Za večjo jasnost ustvarimo ločeno zunanjo obdelavo in nanjo postavimo dinamični seznam. Za izvedbo našega načrta bo tabela z nomenklaturo majhna, zato moramo dovoliti poljubno poizvedbo. V njem bomo opisali levo povezavo imenika s seznamom nomenklature in registrom bilanc ter postavili imenik kot glavno tabelo. Takšna shema bo uporabnikom, ki delajo z dinamičnim seznamom, omogočila dodajanje ali spreminjanje elementa.



NomenklaturaPerechen.Naimenovanie AS SELECT Ime, TovaryNaSkladahOstatki.Sklad kot skladišča, TovaryNaSkladahOstatki.KolichestvoOstatok AS KolichestvoOstatok Spravochnik.Nomenklatura spojine, kot LEVO NomenklaturaPerechen RegistrNakopleniya.TovaryNaSkladah.Ostatki (& TekuhtsayaData,) KOT V TovaryNaSkladahOstatki NomenklaturaPerechen.Ssylka = TovaryNaSkladahOstatki.Nomenklatura KJE

Ker je naša zahteva uporabila parameter "CurrentDate", moramo pred uporabo obdelave nastaviti njegovo vrednost. Za to mu v modulu obrazca v postopku "OnCreationOnServer" s standardnim ukazom dodelimo funkcijo "CurrentSessionDate". Na kontrolnem obrazcu moramo prikazati tudi dinamični seznam in zaradi jasnosti spremeniti vrstni red polj. Atribut »Nomenclature Remains« povlecite v elemente obrazca (zgornji levi del) in spremenite vrstni red polj v tabeli na obrazcu z modrimi puščicami.

& AtServer Postopek OnCreateAtServer (Napaka, Standardna obdelava) RemainingNomenclature.Parameters.SetParameterValue ("CurrentDate", CurrentSessionDate ()) EndProcedure


Že na tej stopnji lahko odpremo zunanjo obdelavo v 1C in vidimo, da dinamični seznam deluje. Lahko si ogledamo ostanke, ustvarimo predmet in skupino, iščemo. Pogosto se od strank zahteva, da dodajo možnost, da izberejo datum, ko bodo videli stanja. V primeru obrazca z dinamičnim seznamom to zagotavlja dodatno polje in z njegovo pomočjo nastavlja parametre.

Dodajte atribut "DateLeft" vrste "Date" in ga prenesite v elemente obrazca. V dogodkih polja ustvarite dogodek "OnChange" in napišite kodo za nastavitev parametra "CurrentDate", uporabljenega v dinamični poizvedbi. Da bo uporabnik, ko odpre obrazec, takoj razumel, na kateri datum vidi ostanke, naredili majhne spremembe v postopku "OnCreationOnServer".



& AtServer Postopek OnCreateAtServer (Prekliči, Standardna obdelava) RemainingDate = CurrentSessionDate (); RemainingNomenclature.Parameters.SetValueParameter ("CurrentDate", Preostali datum); EndProcedure & OnClient Procedure RemainingDateOnChange (Element) Nomenclature Remains.Parameters.SetParameterValue ("CurrentDate", Preostali datum); Konec postopka

Rezultat tega je, da lahko obrazec za dinamični seznam prikazuje stanja na kateri koli datum.

Pokrili smo le majhen del zmogljivosti tega orodja, vendar je to že dovolj, da razumemo priročnost take vrste, kot je dinamični seznam. Podoben mehanizem se uporablja za različne naloge, vendar ga najpogosteje najdemo v tipičnih konfiguracijah v upravljanih oblikah:

  1. Izbor;
  2. Seznami.

Za pridobitev dinamičnega seznama in njegove poizvedbe v tipičnih upravljanih oblikah mora razvijalec odpreti zahtevani obrazec v konfiguratorju. V razdelku rekviziti poiščite atribut s podatkovnim tipom "DynamicList" (najpogosteje je poudarjen krepko). Njegove lastnosti vsebujejo besedilo zahteve, filtre in druge nastavitve.

Natisni (Ctrl + P)

Dinamični seznam

1. Splošne informacije

Dinamični seznam je posebna podatkovna vrsta, ki omogoča prikaz poljubnih informacij iz tabel zbirke podatkov na obrazcu. Če želite to narediti, morate podati tabelo, iz katere želite prikazati podatke, ali opisati nastalo izbiro v jeziku poizvedbe.
Mehanizem temelji na sistemu za sestavo podatkov in ponuja možnosti za razvrščanje, filtriranje, iskanje, združevanje in pogojno oblikovanje prejetih podatkov. V tem primeru je vir podatkov zahteva, ki jo sistem ustvari samodejno (na podlagi določenih podatkov) ali pa jo razvijalec ročno zapiše.

Riž. 1. Možnosti za ustvarjanje dinamičnega seznama

Pri ustvarjanju obrazca rekviziti kot Dinamični seznam razvijalec lahko izbere dva načina za oblikovanje poizvedbe o podatkih:
● Z določitvijo glavne tabele - v tem primeru je dovolj, da preprosto navedete tabelo (lastnost Glavne tabele), iz katere želite prejemati podatke, in sistem bo samodejno oblikoval poizvedbo o podatkih (glejte desni del v Slika 1).
● Ročno oblikovanje zahteve - za to morate nastaviti lastnost zahteve po meri (glejte levi del slike 1). Po tem bo na voljo ročno generiranje zahteve za prejemanje podatkov iz informacijske baze.
Poizvedbo lahko uporabite za izbiro podatkov iz več tabel, tako da lahko določite glavno tabelo. To je potrebno, da lahko dinamični seznam določi, kateri podatki so glavni in kateri sekundarni, ter lahko pravilno izbere in prikaže informacije ter nudi standardne ukaze. Če pa je v poizvedbi nemogoče določiti glavno tabelo, jo lahko izpustimo, vendar potem
dinamični seznam ne bo zagotavljal ukazov, povezanih z glavno tabelo. Poleg tega se bo v tem primeru (brez določitve glavne tabele) učinkovitost pridobivanja podatkov po dinamičnem seznamu znatno zmanjšala.
Da bi izboljšali zmogljivost, je priporočljivo, da so vse povezave, uporabljene v poljubni poizvedbi samo za pridobivanje dodatnih podatkov, neobvezne z razširitvijo jezika poizvedbe sistema za sestavo podatkov.
Za dinamični seznam, ki je glavni atribut obrazca, je mogoče vrednosti filtra nastaviti s parametrom obrazca Izbira... Za to je treba navesti ime lastnosti strukture, ki je v parametru Izbira,
sovpadalo z imenom izbirnega polja dinamičnega seznama. V tem primeru bo vrednost lastnosti strukture nastavljena kot prava vrednost filtrirnega elementa. Če se kot vrednost elementa parametra Izbira dinamičnega obrazca seznama posreduje matrika, fiksno polje ali seznam vrednosti, se izboru na desni doda pogoj z možnostjo Na seznamu vrednost, v katero je postavljen seznam vrednosti (v katerega se pretvori matrika in fiksna matrika).
Poizvedbo, v kateri se s parametrom oblikuje vrednost polja, lahko uporabimo kot poljubno poizvedbo na dinamičnem seznamu, na primer:

IZBERITE
IZBIRA
KDAJ Dostava. Stopnja = 1 TADA & Predaja
ELSE Dostava. Koeficient
KONČAJ KOT RAZMERJE
OD

Poleg tega, če se vrsta vrednosti parametra razlikuje od vrste atributa objekta (npr. Rekviziti1 je tipa Številka, vrednost parametra pa je vrsta Vrstica), potem morate za pravilen prikaz polja izrecno uvrstiti vrednost parametra v zahtevani tip:

IZBERITE
IZBIRA
KDAJ Dostava. Stopnja = 1 TADA IZRECNA (& Predstavitev KOT Vrstica (100)) DRUGA Pošiljka. Koeficient
KONČAJ KOT RAZMERJE
OD
Document.DeliveryProducts AS Shipping

Če je polje, s katerim je nastavljena izbira, onemogočeno z uporabo funkcionalnih možnosti, potem izbira s tem poljem ni nastavljena, tudi če je vrednost izbora posredovana kot parametri obrazca ali povezave parametrov izbire.
Z uporabo lastnosti dinamičnega branja podatkov je dinamični seznam označen s potrebo po branju podatkov v majhnih delih
(glejte spodaj za več podrobnosti o tem, kako pridobiti podatke z dinamičnim seznamom in podatke predpomnjenja). Ne glede na to funkcijo veljajo naslednji pogoji:

● Če je pogled nastavljen na hierarhični seznam, bodo prebrani samo podatki trenutne skupine in podatki vseh nadrejenih članov (brez podrejenih članov).
● Če je nastavljen način drevesnega pogleda, bodo prebrani samo podatki odprtih drevesnih vozlišč.
● Enkratno nalaganje podatkov dinamičnega seznama ni podprto, če je nastavljen hierarhični pogled (lastnost Display je nastavljena na Tree) in je začetni drevesni pogled nastavljen na Expand all levels. Za pridobitev podatkov bo na strežnik poslanih toliko zahtev, kolikor je vozlišč na prikazanem seznamu.
V enem samem pridobivanju podatkov dinamični seznam znova uporabi prej ustvarjene začasne tabele, če so izpolnjeni naslednji pogoji:
● Zahteva po paketnem seznamu manjka po zahtevi po glavnem paketu.
● Sestava začasnih tabel in polj v njih se ni spremenila od prejšnjega izvajanja paketne poizvedbe.

Pri svojem delu dinamični seznam uporablja vrednosti naslednjih lastnosti atributov metapodatkov:
● format,
● oblika urejanja,
● namig,
● znak poudarjanja negativnih vrednosti,
● maska,
● znak večvrstičnega načina,
● znak razširjenega urejanja,
● način gesla.
Pri prikazu in urejanju izbire in parametrov sistema sestave podatkov se uporablja format za urejanje ustreznega polja.

2. Omejitve in značilnosti

Ko nastavite filtriranje na dinamičnem seznamu, ne pozabite, da filtriranje ne vpliva na skupine, če je za dinamični seznam izbran način prikaza hierarhičnega seznama ali drevesnega prikaza. Z "skupinami" je mišljen element kataloga ali načrta značilnih vrst, za katere je lastnost EtoGroup nastavljena na True.
Izbori, ki jih dinamični seznam samodejno uporabi za standardne lastnike, starše, datum, obdobje in to skupino, se uporabijo
standardna sredstva sistema za sestavo podatkov. Izbire, ki jih dinamični seznam samodejno naloži na ključnih poljih, je mogoče uporabiti tako s standardnimi sredstvi sistema za sestavo podatkov kot z neposrednim dodajanjem pogoja v besedilo poizvedbe IN v polja glavne tabele. Zaradi uporabe filtrov s sestavo jih je mogoče uporabiti tako v ugnezdenih poizvedbah kot v parametrih navideznih tabel.

Pri oblikovanju dinamičnih seznamov je priporočljivo, da vse dinamične sezname preizkusite s poljubnimi poizvedbami. Med postopkom preverjanja se prepričajte, da če poizvedba seznama vsebuje ugnezdene poizvedbe ali navidezne tabele in so na voljo polja z vzdevki, ki se ujemajo z vzdevki standardnega polja Lastnik, Starš, Datum, Obdobje, Ta skupina ali ključ, potem ta polja so veljavna. ustrezajo standardnim rekvizitom, s katerimi imajo enak vzdevek. Če temu ni tako, morate zahtevo spremeniti tako, da se ujema, oz
psevdonim je bil drugačen.
Če izberete ročno oblikovanje zahteve, bodo zahtevi naložene nekatere omejitve:
● Uporaba stavka FIRST v poizvedbi dinamičnega seznama ni podprta. Če želite uporabiti izbor, omejen s številom zapisov na dinamičnem seznamu, morate preoblikovati poizvedbo za ustvarjanje dinamičnega seznama tako, da bo dejanska vsebina poizvedbe postavljena v podpoizvedbo in omejiti število pridobljenih zapisov v tej poizvedbi. Namesto podpoizvedbe lahko uporabite tudi začasno tabelo.
● Filtriranje, razvrščanje in združevanje niso podprti:

  • Glede na podrobnosti tabelarnih odsekov.
  • Ogled polj.
  • Polje podatkovne različice.
  • Polje vnaprej določenih podatkovnih imen.
  • Polje Vrsta tabele kontnega načrta.
  • Polje Tip premika tabele registra kopičenja.
  • Vrsta polja Vrednosti grafikona značilnih tipov.
  • Vrsta polja Vrsta;
  • Polje vrste niza (neomejena dolžina).
  • Polje tipa BinaryData.

● Razvrščanje in razvrščanje po poljih Subconto ni podprto<НомерСубконто>in ViewSubconto<НомерСубконто>tabele gibanj Subkonto računovodskega registra.
● Združevanje po poljih, ki so izrazi v jeziku poizvedbe in vsebujejo sestavljene funkcije, ni podprto.
● Ko je izbrana glavna tabela, ima poizvedba za dinamični seznam naslednje omejitve:

  • Pridruževanja niso podprta.
  • Uporaba odseka NAROČI PO ni podprta. Poizvedbo uporabite brez glavne tabele ali v nastavitvah dinamičnega seznama določite zahtevano naročanje.

● Če je dinamični seznam prikazan kot hierarhični seznam ali drevo, potem zapis ne bo prikazan na dinamičnem seznamu, če ne bo prikazan vsaj eden od staršev tega zapisa. Z drugimi besedami, za prikaz elementa v hierarhičnem seznamu mora dinamični seznam prikazati tudi vse starše tega elementa do vrha seznama. V tem primeru vrh seznama pomeni bodisi
korenski element hierarhičnega predmeta, prikazan na dinamičnem seznamu, ali element, nastavljen na lastnost TopLevel razširitve tabele obrazcev za dinamični seznam.

Uporaba naslednjih tabel kot glavne tabele dinamičnih seznamov ni podprta:

● Tabela, ki nima ključa, ki enolično identificira vsak zapis tabele (sklic na tabele objektov in ključ zapisa za tabele registra). Naslednje tabele pa lahko nastavite kot glavno tabelo dinamičnega seznama (kljub pomanjkanju ključa):

● tabela Podčlen računovodskega registra;
● vse virtualne tabele računovodskega registra, razen tabele MovementsSubkonto;
● tabele konstantnih vrednosti (vključno s tabelo Konstante);
● tabele zunanjih virov podatkov brez ključnih polj;
● tabele kock zunanjih virov podatkov;
● tabele registra kopičenja:

  • vrtljiva miza;
  • preostala miza;
  • preglednica obratov in bilanc.

● tabele registra za izračun:

  • tabela dejanske veljavnosti;
  • grafični podatki;
  • osnovni podatki.

● tabele tabelarnih odsekov predmetov;
● Spremenite registracijske tabele (uporabljajo se v mehanizmih izmenjave podatkov);
● tabele zaporedja;
● Tabele dodeljevanja (uporabljajo se v mehanizmih periodičnih poravnav).
● Tabela, ki se uporablja v poizvedbi samo v zunanjem združevanju.

Z drugimi besedami, dinamični seznam z navedeno glavno tabelo bo pravilno deloval, če bo kot rezultat poizvedbe
kot vir podatkov se število vrstic, prejetih iz glavne tabele, ne poveča (ob upoštevanju naložene izbire). Če se zaradi izvrševanja poizvedbe poveča število vrstic, ki jih poizvedba prejme iz glavne tabele, bo to povzročilo kršitev edinstvenosti ključa zapisov tabele, prikazanih na seznamu. V tem primeru morate onemogočiti uporabo glavne tabele dinamičnega seznama.
Pri delu z dinamičnim seznamom je treba upoštevati pravice dostopa do podrobnosti, prikazanih na seznamu:
● Podatki stolpcev dinamičnega seznama, ki so označeni z lastnostjo Vedno uporabi, vendar za katere trenutni uporabnik nima pravice Pogled, se ne prenesejo na stranko odjemalca. Dostop do podatkov takih stolpcev (z uporabo lastnosti CurrentData in metodeRowData ())
na strani odjemalca ni možno.
● Če trenutni uporabnik nima pogleda desno na ključnem polju na dinamičnem seznamu, pri pridobivanju podatkov za ta dinamični seznam pride do napake pri kršitvi dostopa.
Za dinamični seznam, ki prikazuje seznam naštevanja, seznama ni mogoče interaktivno prilagoditi.
Sestava stolpcev in nastavitve dinamičnega seznama so s polji poizvedbe povezana z vzdevki izbirnih polj. Če vzdevek ni izrecno določen za izbrano polje v poizvedbi in je polje sistemsko polje, se kot vzdevek uporabi ime polja za angleško različico vgrajenega jezika.
Navedeno razmerje pomeni, da pri spreminjanju (ali izrecnem določanju vzdevka za polje, ki je uporabljalo samodejni vzdevek)
vzdevek polja zahteve, ki ustvarja podatke dinamičnega seznama, se bodo izgubile nastavitve atributa dinamičnega seznama, elementi obrazca bodo "izgubili" prikazane podrobnosti, nastavitve dinamičnega seznama bodo napačne itd.
Če je vir podatkov dinamičnega seznama tabela (navadna ali navidezna), ki omogoča nastavitev filtriranja po obdobjih, potem če uporabnik nastavi obdobje prikaza na takšnem dinamičnem seznamu (ukaz Nastavi interval datuma ...),
določene meje obdobja bodo nastavljene kot vrednosti filtriranja ali parametri navidezne tabele. Če s pomočjo jezikovne razširitve
poizvedbe za sistem za sestavo podatkov so bila izrecno navedena imena parametrov navidezne tabele - parametri z danim
imena. Tabele, za katere je mogoče nadzorovati obdobje prikaza ali obdelave podatkov:
● registrske tabele (glavna ali virtualna), za katere obstaja možnost izbire po obdobju (za poravnalni register - po obdobju registracije);
● glavne tabele dokumentov, poslovnih procesov in nalog;
● glavne tabele revij dokumentov;
● glavne tabele zaporedja, tabele mej zaporedja.
Kot parameter poizvedbe za dinamični seznam lahko uporabite matriko ali seznam vrednosti. Če pa je parameter seznam vrednosti, bo kot vrednost izbire uporabljena le prva vrednost seznama. Če dinamični seznam uporablja poizvedbo s parametri, je treba začetno nastavitev vrednosti parametrov izvesti v upravljalniku OnCreateAtServer.
Pri prikazu podatkov dinamičnega seznama upoštevajte naslednje točke:
● Programsko spreminjanje lastnosti dinamičnega seznama ne samodejno napolni ukaznih vrstic, povezanih z
s tem dinamičnim seznamom.
● Če je več polj združenih v skupino z načinom združevanja. Polja celic in združena polja imajo polje, ki je prikazano kot potrditveno polje, potem bo to potrditveno polje vedno prikazano najprej v nastali celici (na levi strani besedila).
Na dinamičnem seznamu pri določanju podatkovnega tipa za polja, ki vključujejo izraze parametre, polja ali črke, nastali tip določajo vrste polj in črk. Če vrsta vrednosti parametra ni vključena v nastali podatkovni tip, bo njegova vrednost okrnjena.
Na primer, v naslednjem primeru bo polje tipa Številka.

IZBIRA
KDAJ LAŽ
Nato 5
DRUGAČE
& Parameter
KONEC

Če parametru Parameter dodelite vrednost drugega tipa, bo dinamični seznam za to polje prejel vrednost 0 (privzeta vrednost za tip Number).
Če je v takem primeru potrebno izbrati parameter druge vrste, je priporočljivo uporabiti jezik poizvedbe EXPRESS... Na primer
če je v zgornjem primeru treba v parameter posredovati niz, ki ni daljši od 100 znakov, morate preprosto označbo parametra zamenjati z izrazom z izrecno pretvorbo tipa:

IZBIRA
KDAJ LAŽ
Nato 5
DRUGAČE
EXPRESS (& Parameter AS String (100))
KONEC

Če se parametri uporabljajo v poljubnem besedilu poizvedbe dinamičnega seznama v izrazih izbirnih polj, morate z gradnjo izrecno navesti vrsto parametrov EXPRESS... Na primer, namesto & Nomenklatura AS Nomenklatura uporaba
EXPRESS (& nomenklatura AS referenca. Nomenklatura) AS nomenklatura... V nasprotnem primeru lahko iskanje po iskalni vrstici deluje
napačno ali dajte napake.

3. Načini pridobivanja in predpomnjenja podatkov z dinamičnim seznamom

Pri pridobivanju podatkov za prikaz dinamični seznam uporablja enega od treh načinov:
1. Branje iz baze podatkov se izvaja v delih, pri čemer število podatkovnih postavk nekoliko presega število vrstic, ki so hkrati prikazane na seznamu (vendar ne manj kot 20). Podatki niso predpomnjeni na strežniku.
2. Branje iz baze podatkov se izvaja na straneh s 1000 podatkovnimi elementi. Podatki se predpomnijo na strežniku. Hierarhični podatki so predpomnjeni: Za vsakega nadrejenega sta shranjeni največ 2 strani elementov. Na dinamični seznam je shranjenih največ 20 strani s predmeti. Predpomnjenje bo omogočeno z dinamičnim seznamom za naslednje tabele:
● merilo za izbor;
● Vse tabele računovodskega registra, razen glavne tabele in tabele TransactionSubkonto;
● Vse tabele registra kopičenja, razen glavne tabele;
● Vse tabele informacijskega registra, razen glavne tabele;
● Vse tabele registra za izračun, razen glavne tabele;
● Naloge virtualne tabele po izvajalcu;
● tabele zunanjih virov brez ključev;
● Kocke zunanjih virov.

3. Branje iz baze podatkov se izvaja na straneh s 1000 elementi. Prvi del je enak 1 strani. Vsak naslednji del se poveča za 1 stran (ko dosežete konec prejšnjega vzorca). Bolj ko se "gledišče" približa koncu prikazanih podatkov, večji je vzorec, ki se odčita iz baze podatkov, pri čemer omejitev postane enaka vsem prikazanim podatkom. Podatki se shranjujejo v strežnik. Največje število vnosov v predpomnilnik in dinamični seznam je 1.000.000.
Odvisno od tega, kaj izbere glavna tabela dinamičnega seznama, in kakšno vrednost ima lastnost dinamičnega branja, se uporabi ena ali druga metoda branja podatkov:

● Ena od naslednjih tabel je določena kot vrednost lastnosti Glavne tabele: načrt menjave, katalog, seznam dokumentov, dnevnik dokumentov, grafikon značilnih tipov, kontni načrt, diagram vrst izračuna, poslovni proces, naloga, poslovna tabela procesne točke:



● Kot vrednost lastnosti glavne tabele je navedena ena od naslednjih tabel: glavna tabela informacijskega registra, zbirni register, računovodski register, register izračuna, navidezna tabela računovodskega registra MovementsSubkonto:

● Dinamično branje lastnosti:
● Nameščeno: uporablja se metoda 1 (metode so opisane zgoraj).
● Počiščeno: uporablja se metoda 2 (metode so opisane zgoraj).

● Lastnost glavne tabele vsebuje tabelo izbirnih meril ali tabelo nalog po izvršitelju (opravila po izvršitelju):
● Ključ, ki označuje vrstico tabele: Ref.

● Kot lastna tabela lastnosti je podana navidezna tabela registra informacij SliceFirst ali SliceLast:
● Ključ, ki označuje vrstico tabele: RecordKey.
● Lastnost Dinamično branje ni uporabna.
● Uporabljena je metoda 2 (metode so opisane zgoraj).

● Ena od tabel navideznih registrov je navedena kot lastnost glavne tabele, razen zgoraj naštetih:

● Lastnost Dinamično branje ni uporabna.

● Lastnost glavne tabele ni podana, uporablja se poljubna poizvedba:
● Ključ, ki označuje vrstico tabele: Številka.
● Lastnost Dinamično branje ni uporabna.
● Uporabljena je metoda 3 (metode so opisane zgoraj).

Za prikaz se podatki prenašajo na odjemalca v kosih, katerih velikost je enaka velikosti kosov pri 1. metodi branja podatkov (opisano na začetku tega razdelka).
Ko ustvarite obrazec, ki vsebuje dinamični seznam, se odjemalcu najprej pošlje 45 podatkovnih elementov vsakega vidnega dinamičnega seznama (če seznam vsebuje več kot 45 elementov). Če je na dinamičnem seznamu več kot 45 vrstic, bo ob odprtju obrazca opravljen dodaten klic strežnika za iskanje manjkajočih podatkovnih elementov.

4. Nastavitve dinamičnega seznama

Lastnost Prilagajanje seznama - s klikom na hiperpovezavo Odpri se odpre obrazec za prilagajanje prikaza dinamičnega seznama. Nastavitev seznama se izvede na enak način kot podobne operacije v sistemu za sestavljanje podatkov.


Riž. 2. Pogojni videz dinamičnega seznama

Pri nastavitvi dinamičnega seznama v konfiguraciji lahko razvijalec aplikacijske rešitve naredi naslednje:
● določite polja, po katerih bi bilo treba naročiti;
● opisati izbor podatkov na seznamu;
● določite pogojne nastavitve videza;
● določite polja, po katerih želite podatke združiti.
Razvrščanju je smiselno dodeliti razvijalca, če niste zadovoljni s privzetim razvrščanjem, ki ga je nastavil sistem.

NASVET. Ne smemo pozabiti, da slab izbor polj za razvrščanje (pa tudi izbor in združevanje podatkov) negativno vpliva na učinkovitost dinamičnega izbora.
Z vidika razvijalca aplikacije so nastavitve dinamičnega seznama sestavljene iz več delov, ki so med seboj povezani. Glavna lastnost, prek katere lahko nadzorujete nastavitve dinamičnega seznama, je Konfigurator... Ta objekt vsebuje tri sklope nastavitev, ki ob zagonu sistema določajo končne nastavitve, ki se uporabijo na dinamičnem seznamu:
● Nastavitve - nastavitve, ustvarjene v načinu konfiguratorja. Lastnost Naročite dinamični seznam omogoča hiter dostop do nastavitev. Naročilo povezovalnika nastavitev dinamičnega seznama, zato so naslednji konstrukti enakovredni:
List.Order in List.OptionComposer.Settings.Order;
● Uporabniške nastavitve - to so nastavitve, ki jih uporabnik spremeni v načinu 1C: Enterprise;
● FixedSettings - Te nastavitve so nastavljene iz vgrajenega jezika. Ta lastnost vsebuje tudi izbirne vrednosti, ki se posredujejo obrazcu z uporabo njegovih parametrov. Lastnosti izbire dinamičnega seznama, parametri in pogojno oblikovanje omogočajo hiter dostop do fiksnih nastavitev povezovalnika nastavitev dinamičnega seznama. Z drugimi besedami, ti zadetki so enakovredni:
List.Settings Composer.FixedSettings.Filter and List.Feed.
Pri oblikovanju končne nastavitve dinamičnega seznama se različne možnosti nastavitev združijo na naslednji način:
● Če je katera koli vrsta nastavitev v celoti označena kot po meri, nastale nastavitve vključujejo nastavitve po meri
(List.ComposerSettings.UserSettings). V tem primeru, če so kateri koli nastavitveni elementi označeni kot nedostopni, bodo te nastavitve postavljene v nastale nastavitve iz lastnosti List.Settings Composer. Nastavitve.
● Če je kakršna koli nastavitev kot uporabniška označena ne v celoti, temveč element za elementom, potem:
● Elementi, označeni kot po meri, bodo vključeni v nastavitve, ki izhajajo iz lastnosti List.OptionsComposer.UserSettings.
● Elementi, označeni kot nedostopni, bodo vključeni v nastale nastavitve iz lastnosti List.OptionsComposer.Settings.
● Stalne nastavitve (List.ConfigurationComposer.FixedSettings) se dodajo nastalim nastavitvam "takšne, kot so". Hkrati je situacija nesprejemljiva, ko so v fiksnih in nastavitvah po meri iste nastavitve, na primer izbira z isto levo vrednostjo v stanju.

Če nastavitve dinamičnega seznama vsebujejo nastavitve, ki so onemogočene s funkcionalnimi možnostmi, bodo te nastavitve odstranjene s seznama razpoložljivih nastavitev, ko bodo prejeti podatki dinamičnega seznama.
Nadzor nad tem, katere nastavitve bodo na voljo uporabniku in katere ne bodo izvedene v oknu nastavitev dinamičnega seznama.


Riž. 3. Nadzor vključitve v nastavitve po meri

Potrditveno polje na dnu okna (glejte sliko 3) je odgovorno za umestitev celotne vrste nastavitev v običajne (običajne ali hitre) nastavitve. Ta funkcija je na voljo za izbiro, naročanje, združevanje v skupine in pogojno oblikovanje. Če so nastavitve podane z načinom urejanja Quick Select, morate v lastnosti skupine nastavitev po meri tabele obrazcev, ki prikazuje dinamični seznam, podati prazno skupino obrazcev, v kateri bodo elementi, povezani s hitrimi nastavitvami po meri dinamičnega seznama. nahaja. Če skupina ni določena, hitre nastavitve uporabnika ne bodo prikazane na obrazcu. Prav tako je mogoče izrecno poklicati ustvarjanje nastavitev po meri z uporabo vgrajenega jezika z uporabo metode CreateCustomSettingsFormElements () za razširitev dinamičnega seznama.
Prav tako je mogoče izbrati možnost, da v uporabniške nastavitve umestite določene nastavitvene postavke. Ta funkcija je na voljo za izbiro in pogojne elemente (glej sliko 3).

Če je treba ob odpiranju dinamičnega seznama naložiti posebne nastavitve, je to mogoče storiti na dva načina:
● Uporaba parametra obrazca dinamičnega seznama CustomSettings. Podatki, ki jih vsebuje ta parameter, bodo vneseni v nastavitve po meri dinamičnega seznama.
● Uporaba parametra obrazca dinamičnega seznama CustomSettingsKey. Če ta parameter določite pri odpiranju obrazca, se bodo nastavitve po meri, ki se nahajajo v shrambi nastavitev z določenim ključem, naložile v dinamični seznam, ki je glavni atribut obrazca.

5. Poiščite na dinamičnem seznamu

Dinamični seznam, ki se nahaja na obrazcu, omogoča interaktivno iskanje v prikazanih podatkih. Iskanje lahko izvedete z naslednjimi orodji: iskalni niz, pogovorno okno za iskanje, iskanje trenutne vrednosti, uporaba zgodovine iskanja in nastavitev obdobja (za dinamične sezname, ki prikazujejo dokumente). Rezultat iskanja je omejen nabor zapisov
dinamični seznam (na voljo temu uporabniku), ki ustreza iskalnim kriterijem.
Za nadzor iskalnih zmogljivosti dinamičnega seznama se uporabljajo tri lastnosti tabele upravljanih obrazcev, ki prikazuje dinamični seznam:
● Položaj iskalnega niza - določa položaj iskalnega niza. Lahko ima naslednje vrednosti: Auto, Command Panel, None, Top, Bottom.


Riž. 4. Iskalni niz na dinamičnem seznamu

Če je vrednost te lastnosti nastavljena na ukazno vrstico, bo iskalni niz prikazan v ukazni vrstici obrazca (če je dinamični seznam glavni atribut obrazca) ali v ukazni vrstici, povezani z dinamičnim seznamom . Iskalna vrstica v ukazni vrstici je vedno ugnezdena na desni rob ukazne vrstice (skupaj z gumbi na desni strani iskalne vrstice).
Če je lastnost nastavljena na Ne, bo iskalni niz v obrazcu odsoten, ob začetku iskalnega niza pa se odpre pogovorno okno.
Če je lastnost nastavljena na Top, bo iskalni niz postavljen med ukazno podokno seznama in tabelo, ki prikazuje dinamični seznam. Če je lastnost nastavljena na Dno, bo iskalni niz postavljen takoj za tabelo, ki prikazuje dinamični seznam.


● Če je lastnost načina združljivosti nastavljena na Ne uporabljaj ali je starejša od različice 8.3.4, je vrednost ukazna plošča.
Na iskalno vrstico pojdite na naslednji način:
● s pritiskom na bližnjične tipke Ctrl + F;
● miška;
● Ko začnete tipkati na dinamičnem seznamu (ob upoštevanju vrednosti lastnosti dinamičnega seznama TypingSearch).
● Položaj stanja pogleda - opisuje, kje bo prikazano stanje pogleda: katera polja so bila iskana in katere vrednosti
iskali na vseh področjih. Lahko ima naslednje vrednosti: samodejno, nič, zgoraj, spodaj


Riž. 5. Stanje iskanja na dinamičnem seznamu

Če je lastnost nastavljena na Ne, stanje prikaza ne bo na obrazcu. Posledično bo mogoče ugotoviti, ali je bilo iskanje opravljeno ali ne, samo po razpoložljivosti gumba Prekliči iskanje.
Če je lastnost nastavljena na Vrh, bo stanje pogleda postavljeno med podokno ukaza seznama in tabelo, ki prikazuje dinamični seznam. Če je lastnost nastavljena na Dno, bo stanje pogleda postavljeno takoj za tabelo, ki prikazuje dinamični seznam.
Če je bil obrazec ustvarjen v 1C: Enterprise različice 8.3.4 in starejših, je lastnost nastavljena na No. Če je bil obrazec ustvarjen v 1C: Enterprise različice 8.3.5 in novejših, je lastnost nastavljena na Samodejno. Realna vrednost nepremičnine bo v tem primeru določena na naslednji način:
● Če je lastnost Način združljivosti nastavljena na različico 8.3.4 (ali nižjo) - je vrednost None;
● Če je lastnost načina združljivosti nastavljena na Ne uporabljaj ali je starejša od vrednosti Različica 8.3.4 - vrednost Vrh;
● Položaj nadzora iskanja - Določa, kje bo prikazan gumb za nadzor iskanja. Gumb odpre meni, ki vsebuje naslednje podatke: ukazi Najdi po trenutni vrednosti, Napredno iskanje, Prekliči iskanje, Nastavi obdobje (za sezname dokumentov in revij) in zgodovino iskalnih poizvedb (zadnjih 5 poizvedb). Lastnost lahko zavzame vrednosti: Samodejno, Brez, Ukazna vrstica.


Riž. 6. Nadzor iskanja na dinamičnem seznamu

Če je lastnost nastavljena na Ne, potem gumb za nadzor iskanja v obrazcu ne bo (ukazi pa bodo na voljo v meniju Več). Vrednost lastnosti podokna ukaz postavi gumb na podokno ukazov, povezano s tabelo, ki prikazuje dinamični seznam.
Če je bil obrazec ustvarjen v 1C: Enterprise različice 8.3.4 in starejših, je lastnost nastavljena na No. Če je bil obrazec ustvarjen v 1C: Enterprise različice 8.3.5 in novejših, je lastnost nastavljena na Samodejno. Realna vrednost nepremičnine bo v tem primeru določena na naslednji način:
● Če je lastnost Način združljivosti nastavljena na različico 8.3.4 (ali nižjo) - je vrednost None;
● Če je lastnost Način združljivosti nastavljena na Ne uporabljaj ali je starejša od vrednosti Različica 8.3.4 - vrednost ukazne vrstice;
Če obrazec vsebuje več ukaznih plošč, katerih vir ukazov je ena tabela upravljanega obrazca (ki prikazuje podatke z dinamičnega seznama), bosta iskalni niz in gumb za nadzor iskanja le v eni ukazni plošči:
● Ali pa v ukazni vrstici samega dinamičnega seznama (če je za to omogočeno samodejno dokončanje)
● Ali v kateri koli od preostalih ukaznih plošč.

Upoštevajmo funkcije uporabe iskanja na dinamičnem seznamu:
● Da je iskanje priročno za uporabo (tudi s stališča uspešnosti), morate omogočiti iskanje po celotnem besedilu za vse konfiguracijske objekte, ki jih je mogoče uporabiti kot glavno tabelo dinamičnega seznama. Tudi iskanje po celotnem besedilu mora vključevati vse atribute konfiguracijskih objektov, ki jih je mogoče prikazati na dinamičnem seznamu in po katerih je morda potrebno iskanje.
Če je predmet izključen iz iskanja po celotnem besedilu, bo zadevni iskalnik deloval, vendar bo uspešnost takega iskanja izredno nizka. Ni priporočljivo uporabljati iskanja na objektih, ki niso indeksirani z iskanjem celotnega besedila.
● Aplikacijska rešitev mora imeti načrtovano opravilo, ki redno posodablja indeks iskanja po celotnem besedilu.

● Iskanje se ne izvede v vseh stolpcih dinamičnega seznama (in konfiguracijskega predmeta), ampak le v tistih stolpcih, ki so prikazani v tabeli.
● Iskanje po dinamičnem seznamu po poljih referenčnih tipov s poljubno predstavitvijo poteka po poljih, za katera se uporablja
oblikovanje pogleda (glej tukaj). Polja, vključena v pogled, so pridobljena ob upoštevanju upravljavca ViewFieldGetProcessing () ustreznega predmeta.
● Za dinamične sezname z določeno glavno tabelo se v glavni tabeli uporablja iskanje po celotnem besedilu. Vse neindeksirane povezave iz glavne tabele bodo dodane med rezultate celotnega besedila iskanja. Rezultat iskanja po celotnem besedilu za glavno tabelo se uporablja kot izbor po ključnih poljih. Celotno besedilno iskanje se izvede tudi na poljih, prikazanih na seznamu iz drugih tabel (če se za polje in konfiguracijski objekt uporablja iskanje po celotnem besedilu). Brez omogočenega iskanja po celotnem besedilu so podatki lahko
Najdeno, iskanje pa bo zelo počasno.
Če pride do napake med poskusom iskanja po celotnem besedilu, se iskanje izvede brez iskanja po celotnem besedilu.
To se lahko na primer zgodi pri iskanju ene črke in velikega števila vrstic v bazi podatkov, ki se začne s to črko.
● Če se za polje v glavni tabeli dinamičnega seznama uporabi filter s primerjalno vrsto Equal to, bo pri iskanju po celotnem besedilu iskalni poizvedbi za to tabelo dodana vrednost filtra.
● Iskalni niz je razdeljen na besede. Ta delitev se izvede v skladu z naslednjimi pravili:
● Vrstica je razdeljena z uporabo presledkov in zavihkov kot ločevalnikov.
● Nato se obdela vsak nastali fragment:
● Če je kos predstavitev datuma (s časom ali brez) na podlagi trenutnih regionalnih nastavitev seje, potem je kos beseda.
● V nasprotnem primeru se fragment še razdeli, pri čemer se kot ločila uporabijo znaki “, .- / \”. V tem primeru se vsak nastali fragment vrstice vzame kot beseda.

● Za vsako besedo se oblikuje svoj sklop pogojev, ki so združeni "z OR". Ta sklop pogojev se ustvari, če je iskanje po celotnem besedilu za dano besedo v tabeli, iz katere je bilo pridobljeno to polje, vrnilo vsaj en predmet ali če za to polje ni bilo uporabljeno iskanje po celotnem besedilu. Pogoji so oblikovani na naslednji način:
● Za polje tipa String je pogoj v obliki FieldName LIKE% Word%.
● Za polje tipa Number je pogoj v obliki FieldName = Value, kjer je Value beseda, oddana tipu Number. Če vlivanja ni mogoče izvesti, iskanje na terenu ne bo izvedeno.
● Beseda se išče kot podniz v privzeti predstavitvi logične vrste, določene za trenutno sejo. Če je v predstavitvi najdena iskalna beseda, se nato izvede iskanje vrednosti, ki ustreza predstavitvi, v kateri je bila najdena beseda. Vendar iskanje ne uporablja pogledov, ki so podani z lastnostjo elementa Format obrazca.
● Za polje vrste Datum ima pogoj obliko FieldName> = StartDay (Word) IN FieldName<=КонецДня(Слово). Если Слово подобно дате, в которой год
je določeno z eno ali dvema števkama, leto se pretvori v tekoče stoletje in ta vrednost bo nadomeščena s pogojem iskanja.
● Za referenčna polja se izvede iskanje po poljih, ki se uporabljajo za oblikovanje referenčne predstavitve. V vsakem od teh polj poiščite
izvedeno v skladu z zgoraj opisanimi pravili. Iskanje ne uporablja polj, ki se uporabljajo za oblikovanje poljubne predstavitve podatkov.
Nabor pogojev za vsako besedo je združen "z AND".
● Za vrednosti z začetnimi ničlami ​​lahko iščete tako niz z vodilnimi ničlami ​​kot niz, ki je naveden brez začetnih ničel.
● Če dinamični seznam prikaže seznam dokumentov ali dnevnik dokumentov, je določen interval skeniranja seznama prikazan tudi v območju obrazca, rezerviranem za prikaz stanja ogleda za zahtevani dinamični seznam.
● Ukaz za iskanje po trenutni vrednosti ni na voljo, če je glavna tabela dinamičnega seznama merilo filtra.
● Najdeni fragmenti vrstice so označeni, ko so prikazani v tabeli.
● Za en stolpec je podprt samo en iskalni niz. Ko dodate novo iskalno poizvedbo za stolpec, ki je že iskan, bo iskalni izraz nadomeščen, ne pa dodatek obeh iskalnih poizvedb.
● Če obrazec ne vsebuje dodatka za element obrazca Prikaz iskalnega niza, povezanega s tabelo (izvorna lastnost elementa obrazca), ki prikazuje dinamični seznam, pritisnete kombinacijo tipk Ctrl + F, da odprete iskanje pogovorno okno.


Riž. 7. Pogovorno okno za iskanje

Če obrazec vsebuje dodatek k elementu obrazca vrste Prikaz iskalnega niza, povezanega s tabelo (Izvorna lastnost dodatka elementa obrazca), ki prikazuje dinamični seznam, nato z ukazom Napredno iskanje odprite pogovorno okno za iskanje.
● Pri uporabi pogovornega okna za iskanje ne pozabite na naslednje točke:
● Odpiranje pogovornega okna za iskanje s bližnjico na tipkovnici povzroči, da je trenutna celica v vrstici Kaj iskati, vrednost izbirnega gumba Kako iskati pa je nastavljena na Po natančnem ujemanju.

● Odpiranje pogovornega okna za iskanje z neposrednim zagonom iskalnega niza na dinamičnem seznamu povzroči, da se vrednost potrditvenega polja Kako iskati nastavi na By string in besedilo vnese v polje What to search.

6. Pridobivanje podatkov, prikazanih na dinamičnem seznamu

Pri uporabi dinamičnih seznamov boste morda morali izvesti različna dejanja s podatki, ki jih trenutno prikaže dinamični seznam, ob upoštevanju naloženih filtrov in uporabljenih iskanj. Ta dejanja vključujejo: obdelavo prikazanih informacij, na primer ponovno pošiljanje izbranih dokumentov ali nastavitev katerega koli atributa za izbrane predmete, ustvarjanje seznama razpoložljivih predmetov (z zasnovo itd.), Na primer za tiskanje ali shranjevanje v dokument s preglednico.
Če želite dobiti podatke, ki so prikazani na dinamičnem seznamu, uporabite shemo GetExecutableDataCompositionSchema () in
Pridobite ExecutableDataCompositionSettings ().
Primer pridobivanja podatkov:

Schema = Elements.List.Get ExecutableDataCompositionSchema ();
Nastavitve = Elementi.List.Get ExecutableDataCompositionSettings ();
LayoutComposer = NewDataCompositionLayoutComposer ();
LayoutLayout = LayoutLayout.Run (oris, nastavitve);
Procesor za sestavljanje = Nov procesor za sestavljanje podatkov;
LayoutProcessor.Initialize (LayoutDetail);
OutputProcessor = NewDataCompositionOutputResultProcessorIn tabelarniDocument;
Vrni OutputProcessor.Output (LayoutProcessor);

Pridobitev podatkov v zbirko vrednosti (tabela ali seznam vrednosti) je podobna.
Pridobitev podatkov o dinamičnih seznamih na ta način ima številne značilnosti, ki jih je treba upoštevati pri razvoju uporabnih rešitev:
● Naslednja zasnova tabele ni podprta:
● izmenične barve vrstic;
● Slika v glavi;
● Slika kleti;
● Barva ozadja kleti;
● Barva besedila v nogi;
● Pisava podnožja;
● Vodoravni položaj v kleti;
● Način gesla.
● Pogojni videz, določen za upravljani obrazec, ni podprt;
● Ko naročite hierarhično tabelo v naraščajočem vrstnem redu, se po vrstah povezave vedno najprej postavijo zapisi, ki vsebujejo prazno povezavo.

Domače opombe iz ogledala

21.04.2014 Pridobivanje podatkov z dinamičnega seznama

Izvedeno v različici 8.3.6.1977.

Uvedli smo možnost enostavnega in priročnega pridobivanja podatkov, prikazanih z uporabo dinamičnega seznama.

Za tiskanje v nestandardni, "specifični" obliki boste morda potrebovali podatke dinamičnega seznama. Ali zato, da bi z njimi opravili določena dejanja. Na primer pošljite pismo vsem izvajalcem, ki ste jih iz nekega razloga izbrali na seznamu.

Poleg tega obstajajo številna opravila, pri katerih si uporabnik poleg seznama elementov želi ogledati tudi zbirne podatke, povezane s tem seznamom. Na primer, ko je izbral blago določene skupine izdelkov in določenega dobavitelja, takoj želi v zbirki podatkov videti skupno število takšnega blaga.

Dinamični seznam sam po sebi ne more zagotoviti teh informacij. Namen dinamičnega seznama je hiter pregled velikih količin podatkov. Zato bere podatke v delih, ki so potrebni za prikaz na enem ali dveh zaslonih. In "ničesar ne ve", na primer o skupni količini podatkov, ki jih mora prebrati.

Na splošno morate za pridobitev dodatnih informacij, ki jih želi uporabnik, povprašati po zbirki podatkov. Popolnoma enak tistemu, ki se uporablja na dinamičnem seznamu.

Prej bi to lahko storili. A ni bilo vedno lahko. Poleg besedila izvirne poizvedbe, na kateri deluje dinamični seznam, morate poznati vse izbire, razvrstitve in druge parametre, ki jih je uporabnik interaktivno nastavil v tabeli za prikaz podatkov.

Zdaj je to nalogo enostavno rešiti. Tabela dinamičnega seznama ima dva nova načina:

  • Pridobite ExecutableDataCompositionSchema ();
  • Pridobite ExecutableDataCompositionSettings ().

Tako dobite samo shemo sestave podatkov in, kar je najpomembneje, vse njene nastavitve, zahvaljujoč kateri uporabnik vidi seznam točno tako. Le postavitev morate programsko povezati in jo prikazati na zbirko vrednosti (za programsko obdelavo) ali dokument preglednice (za prikaz):

Kot rezultat boste prejeli strukturo (ali poročilo), ki vsebuje stolpce in vrstice, ki se izpišejo v tabelo dinamičnega seznama.

Pomembno je, da shema in nastavitve, ki jih dobite iz tabele dinamičnega seznama, med drugim upoštevajo vidnost stolpcev in uporabljeno iskanje. Ker so nastavitve pridobljene ločeno, lahko za lastne namene spremenite sestavo polj in dobite na primer vse stolpce na seznamu in ne le tiste, ki so vidni uporabniku.

Pri izhodu v preglednico je še en prijeten trenutek. Videz poročila se na splošno ujema z videzom tabele dinamičnega seznama, ko prejmete shemo in nastavitve. Vključno s pogojno zasnovo mize. Nekaj ​​dodatnih dejanj boste potrebovali le, če želite pogojno zasnovo obrazca prenesti v poročilo.