Névjegyzék

Hogyan kaphat egy értékeket táblázati karakterláncot. Milyen módszerek léteznek, és hogyan keresése egyidejűleg több értékben

Keresés 1C értékek táblázatában

Milyen módszerekkel léteznek és hogyan keresése egyidejűleg több értékben.

Az értékek listájának kereséséhez két speciális módszer létezik:

1. Keresse meg

TVGorizont \u003d referencia könyvek. Nomelacluature. Intepponáció ("TV horizont");
Eredmények \u003d TznenenNature. Init (TV, TV);
// is megadhatjuk, hogy melyik hangszórók kereshetik a keresést
Alapítvány \u003d TznomenCluale. Init (TV, "Nómenklatúra");

Ez a módszer visszaadja az első talált vonalat a kívánt értékkel, vagy nem definiált, ha nem találja meg. Ezért kényelmes az egyedi értékek kereséséhez, mert Ellenkező esetben törölnie kell az asztalról, amikor megtalálja a következőket.

Annak érdekében, hogy ne szenvedjen, a következő módszer, amely lehetővé teszi, hogy megtalálja a megfelelő vonalak tömbjét:

2. repülés


Structuralboration. Hold ("Nómenklatúra", TVGorizont); // Először is, adja meg az oszlopot, ahol keresse meg, majd mit keres.

Ez a módszer mindig egy tömböt ad vissza, de üres lehet, ha semmi sem található. És ez a módszer is, valamint az előző az értékek értékeinek sorai, és nem az értékek önmagukban külön tömbben. Ezért az értékek változása a tömb sorban vagy az előző módszerben a talált sorban, megváltoztatja a feldolgozott értékek értékét.

Minél jóbb ez a módszer, hogy egyszerre több oszlopban kereshet az értéktáblázat több oszlopában:


Struktúrák \u003d új struktúra;
Structuralboration. Hold ("Nómenklatúra", TVGorizont);
StructuralBoat. Hold ("Mennyiség", 10);
Alapítványmassivests \u003d TznenenNature. Bejegyzések (struktúrák);

Az egyetlen mínusz, amint látható, nem használható más összehasonlításokat, kivéve az "egyenlő"

Valószínűleg nem egy objektum univerzális gyűjtemények Az értékek nem olyan népszerűek az 1C-fejlesztőkkel, amelyek az értéktáblát (TK) használják. Az értékek listája nem bővíthető részletek, az értékfája vizuálisan kényelmesen érzékelhető, de a sorok sorrendjének megtervezése nehéz megvalósítani.

És csak az értékek táblázata:

  • Képesek közvetlenül kitölteni a dokumentumok, referencia könyvek és kezelések tábláit;
  • A lekérdezés végrehajtásának eredménye;
  • Könnyen olvasható és világosan kialakított;
  • és sokan mások.

Ebben a cikkben megpróbáltuk adni Általános nézet Egy ilyen összetett és univerzális objektumról, mint egy értékek.

Mi az értékek táblázata

Minden újonc fejlesztő egyértelműen tudja, hogy az értékek táblázata:

  1. Az asztal szerkezetét leíró oszlopok;
  2. A táblázat információinak kitöltése.

Azonban nagyon gyakran elfelejtjük az asztal egyik fontos tulajdonát - az indexekről, nevezetesen a felhasználásuk lehetővé teszi a keresési folyamat felgyorsítását az asztalon ismételten, a választások kialakulása, és komolyan javítja a sebességet.

De először az első dolog.

Az 1. ábra azt mutatja, hogy a legegyszerűbb eljárás nyomtatására szolgáló értékek, amely a szerkezetüket és a tölteléket mutatja.

Amint a példából látható, az 5. táblázatban lévő oszlopok, amelyek nem számolják a sorszámot.

A legtöbb esetben nincs szükség az oszlopadatok típusának és szélességének meghatározására, elegendő az oszlop nevének meghatározásához, de egyes esetekben egyszerűen csak anélkül, hogy (például kirakod a táblázat a DBF formátum fájlba).

Ha a jövőben azt tervezik, hogy egy értéktáblát használnak adatforrásként egy lekérdezéshez, az adattípus-jelzés szükséges (2. ábra).

A sor hozzáadása a hozzáadással () módszerrel történik, a név hozzárendelésével Új karakterlánc.

Az értékek táblázati indexei

Az értékek listáján található keresés két módszerrel történik:

  • Keresse meg (visszaadja az első elemet specifikus paraméterekEllenkező esetben az érték bizonytalan);
  • Farcasts (visszaadja a bizonyos feltételeknek megfelelő táblázatszöveget).

A nagy asztalok keresése erősen "lóg" a rendszer, és folytatható időben. Ezekben az esetekben, hogy az indexeket kell használni.

Az első esetben a keresés egy értéken és egy oszlopon történik, meg kell adni azt az indexekhez (3.

A vesszőn áthaladó indexek azt mutatják, hogy a táblázatot a farcast módszerrel lehet kiválasztani, amelybe egy bizonyos struktúrát paraméterként továbbítják.

A példában bemutatott esetben a második sor jelzi a sorok egyidejű keresését, amely tartalmazza a specifikus érték A nómenklatúra és annak jellemzői, valamint a harmadik sor azt jelzik, hogy a "gyártási megrendelés" a keresési paraméterekhez adható.

A konfigurációs metaadatok különböző objektumaival, valamint a jelentésekkel és feldolgozásokkal dolgozik, a helyzet gyakran akkor fordul elő, ha szükség van néhány cselekvésre a táblázatos részekkel. Közvetlenül az űrlapelemekkel vagy a dokumentumok táblázatokkal való munka nem mindig kényelmes.

Itt jön a mentési táblázat. A TK-ban a módszer használatával táblázatrészek Lehet kirakodni ():

  1. Teljesen ismételje meg a dokumentumasztal szerkezetét, miközben fenntartja az egészet lehetséges információ;
  2. Csak olyan oszlopokat és vonalakat határozzon meg, amelyek a további munkához szükségesek, és visszavonják őket.

A fordított művelet (töltőasztal rész) a feltöltési módszerrel történik (), amelynek egyetlen paramétere a megjelenített táblázat neve.

Meg kell jegyezni, hogy a táblázatos rész oszlopainak és a TK oszlopainak egyeztetése név szerint történik.

Teljesen másoljon egy TK-t a másikhoz, és meghatározza, hogy mely sorok és oszlopok kerülnek átmásolásra a másoláshoz ().

4. ábra.

Ugyanakkor a táblázat oszlopai mentésre kerülnek, és a duplikátumok információi és sorai törlődnek.

Értékek és kérés táblázata

Mint már említettük, a kérelem végrehajtásának eredményének kirakodása a TK-ban történik, de a fejlesztőknek meglehetősen kérdése van: és lekérdezésként az értékek táblázatának feldolgozásához szükséges, lehetséges, és milyen kód segít ez.

Az 1C-ben lévő lekérdezési technológia nem jelenti a TK felhasználását adatforrásokként, de ez a korlátozás könnyen megkerülhető. Az 5. ábrán látható kód megmutatja, hogyan történik meg.

5. ábra

A "*" helyettesítése az oszlopok nevéhez (a TZ. Nonlencluale) helyettesítheti a lemerült információk mennyiségét.

Hiba történt a lekérdezés végrehajtásakor (5. ábra) "A típust nem lehet feldolgozni a lekérdezésben" - mondja, hogy a fejlesztő elfelejtette elvégezni a 2. kód részét, és nem írja be az oszlopokat.

Értékek és ciklusok

Ha a számlálót tartalmazó módszerrel keresztezhető sorok (6. Ábra), akkor fontos megjegyezni, hogy a sorindex kezdeti értéke 0, és az iterátor végértékének 1 kisebbnek kell lennie az asztal sorai száma. Ellenkező esetben 100% -os esély van arra, hogy hiba van-e "az indexérték túlmutat a tartomány határain"

6. ábra.

Általánosságban elmondható, hogy a TK sorok brutális ereje jobb, ha a tervezés "minden ... mindenről ... -tól", az iterátor nevének meghatározásával.

Üdvözlet Minden olvasó infostart'a. Ez a cikk a kezelt alkalmazás formájában tetszőleges értékű értékek létrehozásának kérdésére kerül sor szoftver.

A feladat jellemzői.

Mindenki, aki a szokásos függelékben programozott, gyakran szembesült az űrlap tetszőleges értékének megszerzésével. Az önkényes értéktáblázat alatt a táblázat, az oszlopok száma és típusa nem ismert. Vagyis az oszlopok lehetnek 3, és talán 6, vagy talán 8. A szokásos alkalmazásban minden egyszerű: Lehetséges a "táblázat Apposition" elemet a képződési formában, majd átviheti az értéktáblát a az elemre e tételhez. Ezután egy egyszerű csapat:

Elementforms. Ticketepapted. Calcons ();

kap befejezett asztal Értékek az űrlapon. Úgy tűnik, hogy könnyebb lehet.

Mindez a szokásos alkalmazásban volt. A kezelt alkalmazásban minden megváltozott. Tehát egyszerűen egy tetszőleges asztal, amely nem hoz létre. Most már mereven paraméterezned kell a formanyomtatványon lévő értékek táblázatát, vagy létrehozni kell, vagy programozott (írja le, hogy valójában az engedélyezett alkalmazás lényege). Ezt megpróbáljuk megtenni: szoftver Hozzon létre tetszőleges értéktáblázatot kezelt forma.

A probléma megoldása.

Az első dolog, amit meg kell tennünk, meghatározza, hogy az asztal megjelenjen az űrlapon. A fő dolog az, hogy a feldolgozás formájának egyik eleme nem szükséges. Programmatikusan fogjuk létrehozni, mint az egész asztalt. Vagyis az asztal leírása, és az űrlap megnyitásakor, vagy a gomb használatával - ez az, hogy szükséges.

A formában lévő táblázat létrehozása az értékek táblázatának leírásán keresztül történik:
Massiferboabor \u003d új tömb; Masszírozható ügyfél. Adtly (típusa ("táblázatválasztás")); LeírásKar \u003d Új leírások (MasiFacivity); Masszívák \u003d új tömb; Masszívák. Adalék (új szükséges ("tberdscript", leírások, "", "tzn"); Most meg kell hoznunk egy szoftver-táblázatot, amelyek adatokat tartalmaznak. Ha az értéktáblázat a kérelemből származik, akkor minden kevesebb, mint a megrendelés. Ha a táblázat manuálisan jön létre, akkor a hangszórók értéke, amelyek számokat vagy dátumokat tartalmaznak, a "Leírás" segítségével hozhatók létre. Az alsó sor az, hogy az értékek táblázatában szereplő oszlopoknak valamilyen típusúnak kell lenniük. Ha például azt feltételezzük, hogy a felhasználó interaktív módon tölti ki az adatokat ezen oszlopokban, akkor egyszerűen az értékek oszlopának értékeit egyszerűen a névvel kell megadni. Ne feledje - ez nagyon fontos, mert Ezeket a típusokat az űrlapon megadjuk.
Hozzon létre egy táblázatot, amely több oszlopot tartalmaz:
KD \u003d új minősítő dátumok (részecskék. Veria); Masszigs \u003d új tömb; Fegyverek. Adalék (típusa ("dátum")); Lookup Graphics \u003d Új leírások (karok, CD); TK \u003d új táblázatok;
Tk.colonki. Adtly ("C", leírások.
Tk.colonks. Adalék ("to", leírások.
Tk.colonki. Adalék ("teljes név");
Tk. Solonks. Adalék ("MEGJEGYZÉS"); // Teljes megjegyzés - Sorok Ezután kitöltjük a Software Table TK-t a szükséges adatokkal. A szükséges értékeket tartalmazó TK táblát kapjuk, és készen áll a létrehozott formanyomtatványokra. A TK minden egyes oszlopához. Oszlopciklus

Massiverevizites. Adtly (új szükséges (oszlop. Úgy értem, oszlop. Típus, "tasavak"));
Endcycle;
Changerevizes (MassiveVizites);
Tapasztalatok fogság \u003d elemek. Adalék ("Tzn", típus ("táblázatforma"));
Tapasztalatok rögzítése. Powded \u003d "tasavamok";
Tapasztalatboat. Példa \u003d Megjelenítendő. Lehetőségek;

Itt van egy ilyen egyszerű kombináció, és az asztalunk készen áll.

A TK minden egyes oszlopához. Oszlopciklus

Newelent \u003d Elements. Adtly (oszlop. Úgy értem, írja be ("foreform"), tablePoles);
Új elem. Vid \u003d Vidpolar forma. Teljesítmény;
Új elem. Powdly \u003d "taxigns." + Oszlop.
Új elem.shirina \u003d 10;
Endcycle;

Feltételes design, ha szükségünk van arra is, hogy kézzel is írjunk, parancsmenü - manuálisan. Az asztali kezelőgépek kézzel is vannak írva. Például egy eseménykezelő "kiválasztás" esemény hozzáadásához:

Tapasztalatok rögzítése. Beállítás ("Choice", "Tznvybor");

Az esemény feldolgozásához külön eljárást kell előírni az eljárás formájában:

& Svalette
Eljárás Tznvsb (TK, Kiválasztott mező, szabványos munkavállalás)
// Processor parancsok végső vezérlések

Kérjük, vegye figyelembe, hogy az asztalkezelők az ügyfélre indulnak, ezért rendelkezniük kell egy fordítómutató parancsot

& Svalette

Nos, és az utolsó dolog, amit hozzá akartam hozzáadni, hogy mindezen fellépések után biztosan nem felejtjük el a kész táblát az űrlap igénybevételére:

RECRIDEREVISITFORMS (TK, "TÁMOGATÁSOK");

Itt van az, amit ennek eredményeként:


De a "választás" esemény feldolgozása:



Utána.

Remélem, hogy a cikk segíti az 1C programozókat, amelyek a programozási módszer formájában elkezdenek táblázatokat létrehozni.

Letöltheti a feldolgozást, hogy a szoftver létrehoz egy értékes táblát, és megjeleníti a kezelt űrlapot olyan megjegyzésekkel, amelyek segítenek létrehozni saját táblázatait.

A pénz és az áruk figyelembe vételéhez különböző táblázatok széles körben használják az üzleti életben. Majdnem minden dokumentum egy asztal.

A táblázat felsorolja az árut a raktárból történő szállításhoz. Egy másik táblázatban - az árukért fizetendő kötelezettségek.

Ezért az 1c kiemelkedő táblákkal foglalkozik.

Az 1C-ben lévő asztalokat "táblázatos alkatrészeknek" nevezik. Vannak referenciakönyvek, dokumentumok és mások.

A végrehajtás következtében a kérés egy táblázatot ad vissza, amelyhez két különböző módon lehet elérni.

Az első gyorsabb - mintavétel, a sorok beszerzése csak rendben van. A második a lekérdezés eredményét az érték táblázatban és további önkényes hozzáféréssel.

// 1. opció - A lekérdezés eredményeinek szekvenciális hozzáférése

// Fogadási táblázat
Mintavétel \u003d lekérdezés. Töltse ki (). Válassza ki a ();
// Annak érdekében, hogy a lekérdezési eredmény összes sorjába kerüljön
Míg a minta. Következő () ciklus
Jelentés (minta. Név);
Endcycle;

// 2. opció - kirakodás az értékek táblázatában
Kérés \u003d Új lekérdezés ("Válassza ki a nevet a könyvtárból. NamenClure");
// Fogadási táblázat
Táblázat \u003d lekérdezés. Töltse ki (). Unload ().
// akkor is eljuthatunk az összes vonalat is
Az asztali ciklus minden sorához
Jelentés (karakterlánc);
Endcycle;
// vagy önkényesen hozzáférés a vonalakhoz
Line \u003d asztal. Init ("lapát", "név");

Fontos jellemző a lekérdezési eredményből származó táblázatban, minden oszlop szigorúan beírható. Ez azt jelenti, hogy a névmezőt a könyvtári nómenklatúrából kéri, akkor egy karakterlánc típusú oszlopot kap, amelynek megengedett hossza legfeljebb N karakterek.

Táblázat az alakon (vastag ügyfél)

A felhasználó asztallal működik, amikor az űrlapra kerül.

A formákkal való munkavégzés alapelvei, a leckében a leckében tárgyaljuk

Tehát helyezzen egy táblát az űrlapra. Ehhez húzhatja az asztalt a kezelőpanelen. Hasonlóképpen kiválaszthatja az űrlap / beszúrás vezérlését a menüben.

Az adatok a konfigurációban tárolhatók - ezután ki kell választania egy meglévő (korábban hozzáadott) táblázatot a konfigurációs objektumnak, amelynek alakja van szerkeszteni.

Nyomja meg a "..." gombot az adatinformációban. A táblázatos részek listájának megtekintéséhez fel kell tüntetni az ág objektumot.

Ha az 1c táblázatos rész kiválasztása önmagában hozzáadja az oszlopokat az űrlapon. A felhasználó által az ilyen táblázatban megadott sorok automatikusan mentésre kerülnek a referencia / dokumentummal együtt.

Ugyanazon a tulajdonságban Önnek tetszőleges nevet adhat meg, és válassza ki a táblázat típusát.

Ez azt jelenti, hogy tetszőleges értéktáblázatot választanak ki. Nem ad hozzá automatikusan oszlopokat, nem lesz automatikusan mentve, de lehetséges, hogy bármit is megtehet.

A jobb egérgombbal az asztalra hozzáadhat egy oszlopot. Az oszlop tulajdonságaiban megadhatja annak nevét (az 1C-kódra való hivatkozáshoz), az űrlap oszlopfejlécjét, a táblázatos rész részleteit (utolsó - ha nem tetszőleges asztal, és a táblázatrész kiválasztása) .

A formanyomtatványon található táblázat tulajdonságaiban megadhatja, hogy hozzáadja-e / törölje a sorokat a felhasználóhoz. Egy fejlettebb forma - csak egy kullancs. Ezek a tulajdonságok kényelmesek az információk megjelenítéséhez tervezett táblázatok szervezéséhez, de nem szerkesztéshez.

Az asztal kezeléséhez meg kell jeleníteni a parancspanelt. Válassza ki a Menü elemet / beillesztési vezérlési / parancs panelt.

A parancspanel tulajdonságaiban válassza ki a Tick AutoFill kijelölését, hogy a panel gombjai automatikusan megjelennek.

Táblázat az alakon (vékony / kezelt ügyfél)

A kezelt formában a megadott műveletek kicsit másképp néznek ki. Ha a táblázatos rész alakját kell elhelyezni - nyissa ki az objektum ágát, és húzza az egyik táblázatot. És minden!

Ha meg kell tüntetnie az értékeket, adjon hozzá egy új formanyomtatványokat és a tulajdonságait. Adja meg a típusát - az értékek táblázatát.

Hangszórók hozzáadásához használja a jobb egérgombbal az űrlap ezen adatait, az opció hozzáadása Programok oszlopát.

Ezt követően húzza a táblát.

Annak érdekében, hogy a táblázat megjelenjen a Parancspanel megjelenjen, az asztal tulajdonságaiban válassza ki a használati szakasz értékeit - a parancspanel pozícióját.

Távolítsa el az asztalt az Excel-ben

Az űrlapon található bármely 1c. Táblázat kinyomtatható vagy kirakodható Excelbe.

Ehhez kattintson jobb gombbal az asztalra, és válassza a Megjelenítési lista lehetőséget.

Az ellenőrzött (finom) kliensben hasonló intézkedések Az összes művelet / lista menüpont segítségével hajthatja végre.



Tetszett a cikket? Oszd meg