1c megkerüli a dinamikus listatáblát.

A primitív adattípusokon kívül, amelyek bármely programozási nyelvben megtalálhatók, vannak egyedi típusok az 1C-ben. Mindegyiknek megvannak a saját tulajdonságai, módszerei, funkciói, célja és a rendszerben való felhasználás árnyalatai. Az egyik ilyen típus a dinamikus lista, amely nagyban megkönnyíti számos alkalmazott feladatot. Éppen ezért a fejlesztőknek ismerniük kell és tudniuk kell kezelni ezt az univerzális eszközt.

A dinamikus listák jellemzői az 1C-ben

Célja ebből a típusból az adatbázis bármely táblájából származó információk megjelenítéséből áll, azok típusától függetlenül. A mechanizmust az SKD alapján hozták létre, és hasonló képességekkel rendelkezik. De ez nem jelenti azt, hogy szükségszerűen az 1C nyelven kell kérést írnia, bár ez a lehetőség létezik, és ki kell használni. Egyszerűen megadhatja azt a táblázatot, amelynek információi érdeklik Önt, és az 1C önállóan generál egy egyszerű lekérdezést.

Ha látni szeretné, hogyan jön létre a dinamikus lista, és milyen adatokat jelenít meg, meg kell nyitnia a kezelt űrlapokat ott, ahol a konfigurátorban található: a részletek listájában keresztül helyi menü nyissa meg a tulajdonságait, és figyeljen az „Egyéni lekérdezés” elemre. Ha nincs jelölőnégyzet, akkor a „Fő tábla” paraméter azt az adatbázistáblát tükrözi, amelyből az adatok származnak. Ellenkező esetben a dinamikus lista egy egyéni lekérdezés adatait tükrözi, ami a listabeállítások megnyitásával tekinthető meg.

Az egyéni lekérdezési sémát sokkal gyakrabban használják, mivel ez kiváló lehetőséget biztosít a legkülönfélébb adatok kombinálására és megjelenítésére. Ezt a mechanizmust leggyakrabban a raktári egyenlegek, cikkárak, bevételek, kiadások vagy vásárlások tükrözésére használják. Óvatosan kell használnia, mivel a teljesítmény csökkenhet összetett lekérdezések esetén.

A dinamikus lista másik hasznos tulajdonsága megnyílik, ha rákattint a „Listabeállítások” feliratra. Ez a menü lehetővé teszi az információk hozzáférhetőbbé és érthetőbbé tételét a végfelhasználók számára, még szabványos mezőkészlet használata esetén is. Függetlenül attól, hogy a kérés önkényes-e vagy sem, megjelenik a „Beállítások” fül, ahol megadhatja:

  • Dinamikus listaválasztás;
  • Csoportok;
  • Válogatás;
  • Dekoráció.

A paraméterek használata a dinamikus listákat univerzálissá és meglehetősen rugalmassá teszi. Ezeket egy kezelt űrlapon is összekapcsolhatja a részletekkel, és az adatok a felhasználó által kiválasztott paraméterek függvényében változnak. Ezeknek a mechanizmusoknak a használata megérthető és értékelhető a valós életből származó problémák példáinak figyelembevételével.

Példaként tekintsük azt a feladatot, hogy a nómenklatúra maradványait egy ellenőrzött formában tükrözzük. A gyakorlatban az ilyen rendelések gyakran előfordulnak különféle konfigurációkban, és a dinamikus lista ideális eszköz. Ehhez a feladathoz egyedi lekérdezést, dinamikus lista paramétereket és annak beállításait kell használnunk.

A nagyobb áttekinthetőség érdekében hozzunk létre egy külön külső feldolgozásés tegyen rá egy dinamikus listát. Terveink megvalósításához nem lesz elég a nómenklatúrával ellátott táblázat, ezért tetszőleges lekérdezést kell engedélyeznünk. Ebben leírjuk a címtár bal oldali kapcsolatát a tétellistával és az egyenlegnyilvántartással, és beállítjuk a címtárat főtáblaként. Ez a séma lehetővé teszi a dinamikus listával dolgozó felhasználók számára, hogy elemeket adjanak hozzá vagy módosítsanak.



SELECT NomenclatureList.Name AS Name, GoodsInWarehouses Remainings.Warehouse AS Warehouse, GoodsInWarehouses Remainings.QuantityRemaining AS Quantity Remaining FROM Directory.Nomenclature AS NomenclatureList LEFT CONNECTION RegisterAccumulations,ASWarehouses.Goods sRemaining software NomenclatureList.Link = ProductsInWarehousesRemainings.Nomenclature WHERE

Mivel kérésünk a „CurrentDate” paramétert használta, a feldolgozás előtt be kell állítanunk az értékét. Ehhez a „When CreatedOnServer” eljárás űrlapmoduljában szabványos paranccsal rendelje hozzá a „CurrentSessionDate” funkciót. A dinamikus listát is meg kell jelenítenünk a vezérlőlapon, és az áttekinthetőség kedvéért módosítanunk kell a mezők sorrendjét. Húzza a „Fennmaradó nómenklatúra” attribútumot az űrlapelemek közé (bal felső rész), és a kék nyilakkal módosítsa a mezők sorrendjét az űrlapon lévő táblázatban.

A kiszolgálói eljáráson a kiszolgálón létrehozva (hiba, szabványos feldolgozás) a ParameterValue("CurrentDate", CurrentSessionDate()) nómenklatúra marad.


Már ebben a szakaszban megnyithatjuk a külső feldolgozásunkat az 1C-ben, és láthatjuk, hogy a dinamikus lista működik. Megnézhetjük az egyenlegeket, létrehozhatunk tételeket és csoportokat, és kereshetünk. Az ügyfelek gyakran azt kérik, hogy adják meg annak a dátumnak a kiválasztását, amikor az egyenlegeket látják. Dinamikus listás űrlap esetén ezt az biztosítja kiegészítő mezőés paraméterek beállítása segítségével.

Adja hozzá a „Date” típusú „DateRemaining” attribútumot, és vigye át az űrlapelemekhez. A mezei eseményekben létrehozzuk az „OnChange” eseményt, és megírjuk a dinamikus kérésben használt „CurrentDate” paraméter beállításának kódját. Annak érdekében, hogy az űrlap megnyitásakor a felhasználó azonnal megértse, hogy mikor látja az egyenlegeket, apró változtatásokat hajtunk végre a „When CreatedOnServer” eljáráson.



&OnServerProcedureWhenCreatingOnServer(Failure, Standard Processing)RemainingDate = CurrentSessionDate(); Elem Remains.Parameters.SetParameterValue("CurrentDate", RemainingDate); Az eljárás vége &Az ügyféleljárásban Remaining DateWhenChanged(Element)Nómenklatúra Remaining.Parameters.SetParameterValue("CurrentDate",RemainingDate); Vége eljárás

Ennek eredményeként a Dinamikus lista űrlapunk bármely időpontban megjelenítheti az egyenlegeket.

Az eszközkészlet képességeinek csak egy kis részét vettük figyelembe, de ez már elég ahhoz, hogy megértsük az ilyen típusú dinamikus listák kényelmét. Sok feladathoz hasonló mechanizmust használnak, de leggyakrabban az tipikus konfigurációk V ellenőrzött formák:

  1. Kiválasztás;
  2. Listák.

Ahhoz, hogy egy dinamikus listát és kérését szabványos kezelt űrlapokon kapja meg, a fejlesztőnek meg kell nyitnia a kívánt űrlapot a konfigurátorban. A részletek részben a „DynamicList” adattípussal keresse meg a részleteket (leggyakrabban félkövérrel van kiemelve). Tulajdonságai tartalmazzák a kérés szövegét, a kijelöléseket és egyéb beállításokat.

Az 1C:Enterprise 8.2 platform dinamikusan tud dolgozni sok rekorddal egy adatbázistáblában, azaz részletekben olvassa be az adatokat. Korábban cikkeinkben megvizsgáltuk a dinamikus listák mechanizmusát és a velük végzett munka optimalizálásának módszereit.

Ma a dinamikus listák egy nem szabványos problémáját fogjuk megoldani. Ki kell számítanunk a végösszeget az „Amount” dokumentumattribútum segítségével, és meg kell jelenítenünk a lista láblécében. Hasonló módon számítsa ki az "Értékelés" mező átlagos értékét, és jelenítse meg a dinamikus lista láblécében. Az összes mező kiszámításakor figyelembe kell venni a felhasználó által a dokumentumlista beállításaiban beállított kiválasztást.

Az egész nehézség abban rejlik, hogy egy dinamikus lista nem egyszerre, hanem részletekben kapja meg az összes bejegyzést. Ennek megfelelően nem áll módunkban azonnal összefoglalni az aktuális kiválasztásnak megfelelő összes dokumentumot. Hogyan kell kiszámítani a végösszeget?

Végrehajtás

És így, menjünk tovább a probléma megoldására. Kezdjük az űrlap megváltoztatásával, majd leírjuk a végső értékek megszerzésének algoritmusát.

Forma és felület

Először készítsünk elő egy dokumentum űrlapot a kapott mezők megjelenítéséhez. Ehhez adjon hozzá két karakterlánc-részletet a „Rating” és az „Amount” formában.

A dokumentumok teljes értéke ezekben az adatokban lesz rögzítve.

A dinamikus lista láblécében lévő részletek értékeinek megjelenítéséhez engedélyeznie kell a megfelelő opciót a listaűrlap társított eleméhez (lásd a következő képernyőképet).

Most el kell döntenie, hogy a lista láblécében szereplő eredmények melyik eseménynél frissüljenek. A fejlesztés megkönnyítése érdekében adjuk hozzá az "Update" parancsot és a megfelelő űrlapelemet a parancspanelhez. Amikor ez a parancs végrehajtódik, az összegek frissülnek.

A cikk végén található linkről letölthető tesztkonfigurációban egy összefoglaló frissítési eseményt is hozzáadtam egy dokumentum rögzítésekor. Ebben az esetben az űrlap értesítési mechanizmust kell használni. Ezzel nem foglalkozunk részletesebben.

Algoritmus

Marad a legproblémásabb rész – meg kell kapnia a teljes értékeket. Folytassa a következőképpen: kérést küldünk az adatbázisnak, hogy megkapjuk a végleges mezők értékét a dinamikus listában beállított kijelölésnek megfelelően. Érdemes megfontolni, hogy a kiválasztásnak összetett feltétele lehet a csoportokból.

Megjegyzés: a dinamikus listák beállításai (lásd a fenti képernyőképet) az adatösszetételi rendszer (DCS) mechanizmusain alapulnak. Ennek megfelelően hasonló módon lehet velük dolgozni (programozottan hozzáadni, módosítani, olvasni stb.).

Az eredmények megszerzésére irányuló kérelem elkészítésének szakaszai a következők:

1. Megkapjuk a kezdeti kérést a dinamikus listára.

Amint látjuk, a kérelem az összes dokumentumrészletet kiválasztja. A bonyolultabbá tétel érdekében hozzáadtam a saját „Értékelési szint” mezőmet, amelyet a „SELECT” konstrukció generált.

2. Megalkotjuk a kérelem feltételeinek szövegét ("HOL" rész), és behelyettesítjük az eredeti kérésbe.

A kapott forráskérés szövegéhez feltételeket kell hozzáadnunk a konfigurált dinamikus listaválasztásnak megfelelően.

Az eljárás az átadott kiválasztási elem típusától (csoport vagy kiválasztási elem) függően generálja a megfelelő feltétel szövegét. Egy csoportban minden feltétel zárójelben van, és a csoportba tartozókat is zárójelek veszik körül. A kifejezések közötti feltételek a szülőcsoporttól függenek (egy „ÉS” feltétel a hierarchia legfelső elemei közé kerül).

Ha egy elemhez használati jelző van beállítva ("Usage" tulajdonság), akkor az elem feldolgozásra kerül. A generált szöveg az összehasonlítási feltételtől is függ (Egyenlő, nem egyenlő, listában stb.). A generált feltétel szövegének az összehasonlítás típusától való függése a következő függvényben látható.

Egy másik érdekes funkció véleményem szerint a „GetFieldTextByView”. Arra van szükség, hogy a lekérdezési nyelvi kifejezések által alkotott mezőket behelyettesítsük a lekérdezési feltételekbe. Fent hozzáadtam az „Értékelési szint” mezőt az eredeti kéréshez. Ha a felhasználó ezt használja a kijelölésben, akkor a teljes kifejezést be kell cserélni a lekérdezési feltételbe. Ez a funkció lekéri egy mező szövegét egy kérésből a reprezentációja alapján. Az ilyen összetett mezőknél a kifejezés teljes szövegét adja vissza.

Az algoritmussal kapcsolatos további részletekért tekintse meg a cikkhez csatolt tesztkonfigurációt. Az alábbiakban egy képernyőkép látható a kiválasztási beállításokról és a hozzájuk generált kérési feltételekről.

A generált feltétel szövege hozzá lesz fűzve az eredeti dinamikus listakéréshez. A lekérdezés eredménye egy ideiglenes táblába kerül.

3. Az első lekérdezést egy ideiglenes táblába helyezzük, és az összesítő mezők szerinti csoportosítást végezzük a szükséges összesítő függvényekkel.

Hadd emlékeztesselek arra, hogy meg kell kapnunk az „Értékelés” mező átlagos értékét és az „Összeg” mező teljes összegét. Már generáltunk egy kérést a kijelölések figyelembevételével, csak az összértékek kiszámítása van hátra. Ez a következő kéréssel történik:

A kérés teljesítése után a kapott eredményt feldolgozzuk, visszaküldjük az ügyfélnek, és beírjuk a korábban elkészített űrlap adataiba. Végül a dinamikus lista láblécében megjelenő eredményeket kaptuk (lásd a cikk első képernyőképét).

A megoldás optimálissága

Általában ez a megközelítés negatív hatással lehet a teljesítményre. Például, ha a program egy dinamikus listában beállított kijelölés nélkül számolja ki a végösszeget, akkor a kiválasztott rekordok száma óriási lehet (például több éven keresztül). Ennek eredményeként az eredmények minden frissítése több tíz (!!!) másodpercig tarthat. Ezért az eredmények kiszámításának csak akkor van értelme, ha a szelekció létrejött. Ezek a feltételek tesztkonfigurációban telepítve.

Ráadásul csak a szerver oldalon tudjuk kiszámolni az összegeket és a kérelmeket. Ezért komolyan kell megközelítenie a szervert, mivel az összegek frissítésének eljárása nagyon gyakran elvégezhető. Képzeljünk el egy pénztárgép nyugtanaplót egy kereskedelmi szervezetben, ahol percenként legfeljebb 5, óránként pedig 300 bizonylatot lehet bevinni. Minden alkalommal, amikor egy dokumentumot írnak, az összegek frissülnek. Ezért indokolt lenne az átvitt forgalmat kontextuson kívüli eljárások alkalmazásával csökkenteni.

A következő képernyőkép mutatja programkód egy kontextuson kívüli kiszolgáló függvény meghívása, amely összegeket ad vissza.

Az első paraméter a dinamikus listakijelölés átadása, a második egy „SelectionFieldNameSelectionFieldValueType” típusú struktúra. Kérjük, vegye figyelembe, hogy a függvény első paramétere saját értékeként kerül megállapításra. Nem tudom pontosan megmondani, hogy miért, de ha átadja a kijelölést linkként, akkor a platform hibát jelez, hogy a kijelölés nem módosítható. A hibát csak így sikerült kijátszani.->

Megjegyzés: a kontextuson kívüli eljárások használatával többszörösére csökkentheti az átvitt forgalom méretét, mivel az űrlapadatok nem kerülnek továbbításra a szerverre, ellentétben a környezetérzékeny szervereljárásokkal ("&OnServer" direktíva).

Következtetés

Végezetül leszögezem, hogy a dinamikus listában történő végösszegek kiszámításának ez a megközelítése a fejlesztési módszertan szempontjából helytelen. Helyes lenne a teljes összeget regiszterek alapján lekérni. Például a csekknaplóban ismét az aktuális pénztárgépben lévő pénzösszeget kaphatjuk meg akár bizonylatokból, akár a megfelelő felhalmozási nyilvántartásból.

Ráadásul a felhalmozási regiszterek használata lehetővé teszi az összegek kiszámítását a kiválasztás figyelembevétele nélkül, mivel a rendszer optimálisan működik az előző hónapokra már kiszámított összegekkel.

Ennek ellenére a cikkben leírt módszer a problémák megoldása során történik.

Letölthető fájlok:

Otthoni jegyzetek a szemüvegen keresztül

2014.04.21. Dinamikus lista adatok fogadása

Megvalósítva a 8.3.6.1977 verzióban.

Bevezettük a dinamikus lista segítségével megjelenített adatok egyszerű és kényelmes megszerzésének lehetőségét.

Dinamikus listaadatokra lehet szüksége, hogy azokat nem szabványos, „specifikus” formában nyomtathassa ki. Vagy azért, hogy bizonyos műveleteket hajtsanak végre velük. Például küldjön levelet minden olyan vállalkozónak, akit bizonyos szempontok alapján kiválasztott a listából.

Ezen kívül számos olyan feladat van, amelyben a felhasználó az elemlistán kívül az ehhez a listához tartozó összesítő adatokat is szeretné látni. Például egy bizonyos termékcsoport és egy beszállító termékeinek kiválasztása után azonnal látni szeretné az ilyen termékek teljes számát az adatbázisban.

A dinamikus lista önmagában nem tudja megadni ezt az információt. A dinamikus lista célja, hogy biztosítsa Gyors nézet nagy mennyiségű adat. Ezért az adatokat darabokban olvassa be, amelyek egy vagy két képernyőn történő megjelenítéséhez szükségesek. És „semmit sem tud”, például arról, hogy mennyi adatot kell számolnia.

Általában annak érdekében, hogy További információ a felhasználó akarja, le kell kérdeznie az adatbázist. Pontosan ugyanaz, mint a dinamikus listában.

Régen képes voltál erre. De nem volt mindig könnyű. Hiszen az eredeti kérés szövegén kívül, amelyen a dinamikus lista működik, ismernie kellett az összes kijelölést, rendezést és egyéb paramétereket, amelyeket a felhasználó interaktívan beállított az adatokat megjelenítő táblázatban.

Most ez a probléma egyszerűen megoldható. A dinamikus listatábla két új módszerrel rendelkezik:

  • GetExecutableDataCompositionSchema();
  • GetExecutableDataCompositionSettings().

Így megkapja magát az adatelrendezési sémát, és ami a legfontosabb, annak összes beállítását, aminek köszönhetően a felhasználó pontosan így látja a listát. Mindössze annyit kell tennie, hogy programozottan összeállítja az elrendezést, és megjeleníti az értékgyűjteményben (for szoftver feldolgozás) vagy benne táblázatos dokumentum(megjeleníteni):

Ennek eredményeként egy dinamikus listatáblázatban megjelenített oszlopokat és sorokat tartalmazó struktúrát (vagy jelentést) kap.

A lényeg az, hogy a dinamikus listatáblázatból kapott elrendezés és beállítások figyelembe veszik többek között az oszlopok láthatóságát és az alkalmazott keresést. Mivel a beállításokat külön szerezzük be, saját céljaira módosíthatja a mezők összetételét, és például megkaphatja a lista összes oszlopát, nem csak azokat, amelyeket a felhasználó láthat.

Amikor egy táblázatkezelő dokumentumba nyomtat, van még egy kellemes pillanat. Általában a jelentés megjelenése megfelel a kinézet dinamikus listatáblázatokat a séma és a beállítások fogadásakor. Beleértve a táblázat feltételes kialakítását. Csak akkor lesz szükség további műveletekre, ha az űrlap feltételes kialakítását át szeretné vinni a jelentésbe.

A konfigurációk véglegesítése során minden 1C programozó dinamikus listákkal találkozik.
A dinamikus lista egy interfészobjektum, amelyet adatbázis-objektumok vagy nem objektum adatok - regiszterbejegyzések - különféle listáinak megjelenítésére használnak.
Például egy dinamikus lista az elemek listájának megjelenítésére szolgál:

A dinamikus lista képességeinek bemutatásához hozzunk létre külső feldolgozást, és adjuk hozzá a fő űrlapot. Adjunk hozzá egy új attribútumot az űrlaphoz „Dinamikus lista” típussal. Nézzük meg a tulajdonságait, és nézzük meg, mi van ott.
Érdekel minket az ingatlan" Egyedi kérés" Az engedélyezése megmutatja nekünk a dinamikus lista összes képességét. Az 1C: Enterprise rendszerlekérdezési nyelv szinte összes lehetőségét felhasználva tudunk majd kérést írni. Jelölje be a négyzetet, és kattintson a „Megnyitás” linkre:

A listánk alapértelmezés szerint megjeleníti a cikkek listáját az összes raktár teljes egyenlegével. Egy ilyen lista megvalósításához adja hozzá a következő lekérdezést:


Fő táblázatként a „Könyvtár.Nómenklatúra” elemet választjuk, ez lehetővé teszi, hogy dinamikus listával dolgozzunk, akárcsak a nómenklatúrák listájával - könyvtárelemek hozzáadása, módosítása, törlésre való megjelölése. Ezenkívül a főtábla telepítése lehetővé teszi az adatok dinamikus olvasását - ez azt jelenti, hogy a kiválasztás szükség szerint részenként történik.
Ezután űrlapelemeket kell létrehoznunk a listánkhoz:

Ha ebben a formában próbáljuk lefuttatni a feldolgozást, hibaüzenetet kapunk:


Ennek megszüntetéséhez be kell állítani egy értéket az „Időszak” paraméterhez. Ehhez használhatja a dinamikus lista „Parameters” gyűjteményének „SetParameterValue” metódusát. A módszer két paramétert igényel:
. "Paraméter" - Típus: Karakterlánc; DataCompositionParameter. Annak a paraméternek vagy adatösszetételi paraméternek a neve, amelynek értékét be kívánja állítani;
. „Érték” – Típus: Önkényes. A beállítandó érték.
Meghívható az űrlap „OnCreateOnServer” kezelőjében:

Kérdése van, vagy tanácsadó segítségére van szüksége?


Lehetőséget biztosítunk a felhasználónak az egyenlegek beérkezésének időszakának megváltoztatására. Ehhez adja hozzá az attribútumot és a hozzá tartozó „Dátum” űrlapelemet:


A „Date” űrlapelem „OnChange” kezelőjében a „SetParameterValue” metódust fogjuk meghívni, és a hozzá tartozó attribútum értékét adjuk át értékként. Hasonló módon változtassuk meg az űrlap „Kiadáskor a szerveren” eljárását. Mivel a módszer elérhető a kliensen, nem kell hívni a szervert:


Most, amikor a dátum megváltozik, az egyenlegek automatikusan frissülnek:




Tegyük fel, hogy a felhasználók az aktuális egyenlegeket vagy a tervezett bevételeket szeretnék látni. Tekintsük az egyik megvalósítási lehetőséget. Adjunk hozzá egy logikai típusú form attribútumot és egy kapcsolódó kapcsolót:


A kapcsoló értékének megváltoztatásakor a kérés szövegét módosítjuk. Ehhez a „Módosításkor” eseménykezelőt fogjuk használni a „Mennyiség megjelenítése az átvételkor” űrlapelemhez. A dinamikus lista „QueryText” tulajdonságát az attribútum értékétől függően módosítanunk kell. Mivel ez a tulajdonság nem érhető el a kliensen, egy szervereljárást kell meghívni:


Az elvégzett változtatások eredménye:



Végre minden hétéves álma valóra vált. Milyen gyakran kérték a 7.7-es program felhasználói a tételek normál kiválasztását? Így láthatja az egyenlegeket, árakat és beállíthatja a szűrőket. Különféle trükköket kellett kitalálnunk, beleértve a külső komponensek írását is. Az 1C 8.2-ben dinamikus listák jelentek meg. Azt javaslom, hogy fontoljuk meg, mi ez, és mit adhatnak nekünk az 1C 8.3-ban.

Vegyünk néhányat alapul tesztkonfiguráció 1C: „Vállalati számvitel 3.0”. Most nem fogunk kiválasztani, csak hozzáadunk egy másik kiválasztási űrlapot a „Nómenklatúra” könyvtárba, és ideiglenesen azt tesszük főként:

Létrehozásakor a rendszer alapértelmezés szerint hozzáad egy „Dinamikus lista” típusú táblázatmezőt az űrlaphoz.

Nézzük meg a tulajdonságait, és nézzük meg, mi van ott.

Először is érdekel minket az „Egyéni kérés” jelölőnégyzet. Ez felfedi számunkra a dinamikus lista minden előnyét. Lehetőségünk lesz saját kérésünk megírására, paraméterekkel. Jelölje be a négyzetet, és kattintson a „Megnyitás” linkre:

Megnyílik egy ablak a kész kóddal. Egyelőre a „Nómenklatúra” könyvtár összes mezője egyszerűen felsorolva van.

Szerezzen ingyen 267 videóleckét 1C-n:

Amint látja, van egy „ ” hívógomb és egy jelölőnégyzet, amely lehetővé teszi a lista tartalmának dinamikus megváltoztatását. Vagyis ha egy másik felhasználó módosít valamit a könyvtárban, az a mi listánkban is megváltozik. Ezen kívül van egy „Beállítások” fül, de ezt később érintjük.

Egyéni lekérdezés dinamikus listában

Először hozzuk létre a szükséges kérelmet egyenlegekkel és árakkal. Mint az:

„Beállítások” fülre

És most a legjobb rész! Lépjen a „Beállítások” fülre. És azonnal látjuk, hogy az első lapon tetszőleges kiválasztást végezhetünk a kérés bármely mezőjéhez:

Lekérdezési paraméterek programozott beállítása dinamikus listában 1C 8.3

Ne felejtse el, hogy két paraméterünk van a kérésben: „Időszak” és „Ártípus”. Ezeket át kell adnunk a kérésnek, különben hiba történik.

Írjuk be ezeket a paramétereket az űrlapparaméterekbe, és adjuk hozzá a következő sorokat az űrlapmodulban:

&OnServerProcedureWhenCreatingOnServer(hiba, StandardProcessing) lista. Lehetőségek. SetParameterValue("Időszak" , Paraméterek. Dátum) ; Lista. Lehetőségek. SetParameterValue("PriceType", Parameters.PriceType) ; Vége eljárás

Betöltés...
Top