internet Okná Android
Rozbaľovať

Výber tabuľky hodnôt 1c 8.2. Aké metódy existujú a ako vyhľadávať súčasne v niekoľkých hodnotách

Aby sa zohľadnili peniaze a tovar, rôzne tabuľky používajú široko v podnikaní. Takmer každý dokument je tabuľka.

Tabuľka uvádza tovar na prepravu zo skladu. V ďalšom stole - povinnosti platiť za tento tovar.

Preto 1c prominentné zaberá prácu s tabuľkami.

Tabuľky v 1c sa tiež nazývajú "tabuľkové časti". Majú referenčné knihy, dokumenty a iné.

Žiadosť v dôsledku jeho vykonania vráti tabuľku, prístup, na ktorý je možné získať dva rôzne spôsoby.

Prvý je rýchlejší - odber vzoriek, získavanie riadkov len v poriadku. Druhá je vyložená výsledok dotazu v tabuľke hodnôt a ďalšieho ľubovoľného prístupu k nemu.

// Možnosť 1 - Postupný prístup k výsledkom dotazu

// Prijímajte tabuľku
Odber vzoriek \u003d dotaz. Vyplňte (). Vyberte ();
// V poriadku ideme okolo všetkých radov výsledku dotazu
Pričom vzorka. Nasledujúci () cyklus
Správa (vzorka. Názov);
Endcycle;

// Možnosť 2 - Vykladanie v tabuľke hodnôt
Žiadosť \u003d Nový dotaz ("Vyberte názov z adresára. Názov");
// Prijímajte tabuľku
Tabuľka \u003d dotaz. Vyplňte (). Unload ().
// potom môžeme tiež dostať všetky čiary
Pre každý riadok z tabuľkového cyklu
Správa (reťazec. Názov);
Endcycle;
// alebo ľubovoľne prístup k tratiam
Riadok \u003d tabuľka. Init ("lopata", "názov");

Dôležitou funkciou je v tabuľke, ktorá sa získava z výsledku dotazu, všetky stĺpce budú striktne napísané. To znamená, že požiadaním o poľa Názov z nomenklatúry Directory dostanete stĺpec typu reťazca s prípustnou dĺžkou nie viac ako n znakov.

Tabuľka na tvare (hrubý klient)

Užívateľ pracuje s tabuľkou, keď je umiestnený na formulári.

Základnými princípmi práce s formulármi sme diskutovali v lekcii v lekcii

Takže položte tabuľku do formulára. Ak to chcete urobiť, môžete presunúť tabuľku z ovládacieho panela. Podobne môžete v ponuke vybrať ovládací prvok formulára / vložiť.

Údaje môžu byť uložené v konfigurácii - potom musíte vybrať existujúcu (predtým pridanú) tabuľku tabuľky konfiguračného objektu, ktorého tvar upravíte.

Stlačte tlačidlo "..." v dátovej vlastnosti. Ak chcete zobraziť zoznam tabuľkových častí, musíte odhaliť objekt pobočky.

Pri výbere samotného tabuľkovej časti 1C pridáva stĺpce pri stole na formulári. Riadky zadané užívateľom v takomto tabuľke sa automaticky uložia spolu s odkazom / dokumentom.

V tej istej nehnuteľnosti môžete zadať ľubovoľné meno a vybrať typ tabuľky.

To znamená, že je vybraná ľubovoľná tabuľka hodnôt. Nesmie pridávať automatické stĺpce, nebude sa automaticky uložené, ale je možné s tým čokoľvek urobiť.

Kliknite pravým tlačidlom myši na tabuľku môžete pridať stĺpec. V stĺpcových vlastnostiach môžete zadať svoj názov (pre odkaz na 1C kód), záhlavie stĺpca na formulári, spojenie s podrobnosťami tabuľkovej časti (posledný - ak nie ľubovoľná tabuľka a vyberie sa časť tabuľky) .

Vo vlastnostiach tabuľky na formulári môžete určiť, či chcete pridať / odstrániť riadky pre používateľa. Rozšírenejší formulár - len zaškrtnite. Tieto vlastnosti sú vhodné na použitie na usporiadanie tabuliek určených na zobrazenie informácií, ale nie úpravy.

Ak chcete spravovať tabuľku, musíte zobraziť panel príkazu. Vyberte položku ponuky Form / Vložiť ovládací panel.

V vlastnostiach príkazu príkazu vyberte poloľku Tick AutoFill, že tlačidlá na paneli sa zobrazia automaticky.

Tabuľka na tvare (tenký / riadený klient)

Na spravovanom formulári, zadané akcie vyzerajú trochu inak. Ak potrebujete umiestniť na tvare tabuľkovej časti - otvorte vetvu objektu a presuňte jednu z častí tabuľky. A všetko!

Ak potrebujete umiestniť tabuľku hodnôt, pridajte nové formuláre a vo svojich vlastnostiach. Zadajte typ - tabuľku hodnôt.

Ak chcete pridať reproduktory, použite ponuku na pravom tlačidle myši na týchto podrobnostiach formulára, voľba pridajte stĺpec propému.

Potom, presuňte stôl vľavo.

Aby sa tabuľka zobrazovala príkazový panel, v tabuľkových vlastnostiach vyberte hodnoty v časti Použiť - polohu príkazového panela.

Nasaďte tabuľku v programe Excel

Akákoľvek tabuľka 1c, ktorá sa nachádza na formulári, môže byť vytlačená alebo vyložená do programu Excel.

Ak to chcete urobiť, kliknite pravým tlačidlom myši na tabuľku a vyberte Zoznam displeja.

V kontrolovanom (jemnom) klientovi môžu byť podobné akcie vykonávať pomocou všetkých položiek menu akcií / zoznamu.

Tabuľka hodnôt v platforme 1C 8.3 (8.2) je univerzálna zbierka hodnôt, ktoré môže vývojár použiť, keď sa softvér vyvíja na implementáciu jeho algoritmov. V skutočnosti je tabuľka hodnôt 1C dynamická sada hodnôt, ktoré majú stĺpce a stĺpce.

Články o iných univerzálnych zbierkach hodnôt 1C

Preskúmajte programovanie v 1c na mieste z programu My Book "v 1C pre 11 krokov"

  1. Kniha je napísaná zrozumiteľným a jednoduchým jazykom - pre začiatočníkov.
  2. Naučte sa pochopiť architektúru 1C;
  3. Budeme písať kód v jazyku 1C;
  4. Svetlo hlavných programovacích techník;
  5. Zabezpečiť poznatky získané pomocou úlohy;

Výborný rozvojový príspevok v riadenej aplikácii 1C, a to ako pre začiatočníkov vývojárov a skúsených programátorov.

  1. Veľmi cenovo dostupný a zrozumiteľný jazyk prezentácie
  2. Kniha je odoslaná na e-mail vo formáte PDF. Môže byť otvorený na ľubovoľnom zariadení!
  3. Rozumiete ideológii riadenej aplikácie 1c
  4. Naučte sa vyvinúť riadenú aplikáciu;
  5. Naučte sa rozvíjať spravované formuláre 1c;
  6. Môžete pracovať s hlavnými a potrebnými prvkami kontrolovaných formulárov.
  7. Programovanie pod riadenou aplikáciou sa stane zrozumiteľnou

Promo kód pre zľavu 15% - 48pvxheyu.


Ak ste túto lekciu pomohli vyriešiť nejaký problém, páčilo sa mi to alebo bolo užitočné, potom môžete podporiť môj projekt, počúval akejkoľvek sumy:

môžete platiť manuálne:

Yandex.money - 410012882996301
Webové peniaze - R955262494655

Pridajte sa k mojim skupinám.

Tabuľka hodnôt je špecifický univerzálny objekt určený na ukladanie dát v tabuľkovom pohľade. Kľúčovým rozdielom tabuľky z aplikovaných objektov je nedostatok väzby na tabuľky fyzických databáz. Tabuľka hodnôt existuje len v RAM, ktorá na jednej strane poskytuje jedinečné príležitosti a na druhej strane ukladá určité obmedzenia. Avšak, možnosť interakcie s tabuľkou je porovnateľná s interakciou s objektmi skutočne existujúcimi v databáze.

Historicky, tabuľka hodnôt v 1C má dvojaký účel, ktorý je virtuálnym analógom existujúcich tabuliek, ale zároveň - a kontroluje prvok. S prechodom na kontrolovanú aplikáciu je väčšina týchto funkčností zastaraná, ale aj v súčasnosti môže byť aj prvok užívateľského rozhrania, ale s množstvom významných obmedzení.

Štruktúra tabuľky hodnôt ako objekt

Vlastnosti tabuľky hodnôt sú určené kombináciami dvoch preddefinovaných zbierok: jeho stĺpca a riadky.

Tabuľka hodnôt reproduktorov

Tabuľka stĺpcov hodnôt - jeho definovanie majetku. Je to súbor stĺpcov tabuľky určuje jeho štruktúru. Stĺpce zodpovedajú poliam fyzikálnych tabuliek alebo známych na stĺpci používateľských rozhraní tabuľkovej časti alebo dokumentov. Stĺpec môže mať vnútorný názov, hodnota hodnoty a titul zobrazený počas interaktívnej práce s tabuľkou.

Keďže stĺpce sú zbierkou objektov, môžete pridať, odstrániť a upraviť stĺpce.

Rad tabuľky hodnôt

Z hľadiska softvérového rozhrania je reťazec samostatný odber zabudovaný do tabuľky hodnôt. Sú analogické s záznamami fyzických tabuliek, to znamená, že obvyklé riadky tabuľky časť alebo log log. Každá samostatne odobratá línia je objekt so súborom pomenovaných vlastností, ktorých mená zodpovedajú menám stĺpcových stĺpcov.

Interakcia s reťazcom je teda veľmi podobná interakcii s inými predmetmi. Môžete si prečítať a zapisovať svoje vlastnosti, vrátane použitia preddefinovanej funkcie "Vyplnenie nasledujúcich ()". Keďže riadky sú hlavnou zbierkou tabuľky hodnôt, potom na odstránenie všetkých radov tabuľky, aplikuje sa metóda "CLEAR ()".

Vytvorte tabuľku hodnôt

Existuje mnoho spôsobov, ako získať tabuľku hodnôt pripravených na použitie. Zvážiť niektoré z nich. Každý príklad bude uvedený ako zápisy kódu s pripomienkami.

Vytvorenie tabuľky Designer

Hlavným spôsobom vytvoriť len taká tabuľka, ktorá potrebuje vývojár, bohužiaľ, najviac časovo náročné, pretože to vyžaduje manuálne ručne všetky potrebné vlastnosti stola.

Demotovateľné \u003d nové tabuľky; // najprv inicializovať TK // Ďalej definujeme potrebné parametre pre nové stĺpce a pridajte ich do kolekcie // vytvárania názvu stĺpca "nomenklatúry" \u003d "nomenklatúra"; Typ typu \u003d nový popis ("Direcoads.Nanklatura"); Titul \u003d "nomenklatúra (produkt)"; Demotablik. Výrezy. Príslušný (k nim, titul, titul); // Vytvorenie stĺpca "Číslo" Názov \u003d "Číslo"; Typ titul \u003d nové popisy ("číslo"); Demotovateľné. Výrezy. Príslušné (meno, názov); // V dôsledku údajov manipulácií sme vytvorili prázdny stôl s napísanými stĺpcami // Ak potrebujete použiť presnejšie písanie primitívnych typov, mali by ste použiť pokročilú syntax dizajnérskeho dizajnéra "Deigrathorles"

Vytvorenie tabuľky kópie

Ak má vaša ruka štandard s vhodnou štruktúrou a / alebo kompozíciou, môžete kopírovať alebo vyložiť referenčnú tabuľku hodnôt. Ak je odkaz inou tabuľkou, musíte použiť metódu "Skrinka". Ak sa zaoberáte tabuľkou alebo súborom záznamov registra, musíte použiť metódu "Upload tabuľky". Ak potrebujete iba štruktúru, môžete použiť metódu "Kopírovanie".

// možnosť kopírovaním z TK štandardu všetkých riadkov, ale so zachovaním iba dvoch špecifikovaných stĺpcov Columnalone \u003d "nomenklatúra, číslo"; Demotovateľné \u003d tablethaton .copy (, clumnal); // Možnosť s kopírovaním z TK štandardu vopred vybraných riadkov, pri zachovaní dvoch špecifikovaných stĺpcov StringAlone \u003d vybrané strojom-to-Thestemstroyistkyetalone (); Columnalone \u003d "nomenklatúra, číslo"; Demotovateľné \u003d tablethetalon .copy (Rowetal, Clumnal); // Možnosť s kopírovaním z riadkov TK-Strelna zadaným filtrom, zatiaľ čo uloženie jedného stĺpca "nomenklatúra" // všetky riadky budú vybrané, kde je hodnota v stĺpci rovná 0, len stĺpec nomenklatúry opravných prostriedkov spadajú do výslednej tabuľky ("Množstvo" 0); Columnaltalon \u003d "nomenklatúra"; Demotovateľné \u003d tablethetalon .copy (Rowetal, Clumnal); // Možnosť s plným kopírovaním tabuľky a následné odstránenie jedného riadku s hodnotou poľa množstva nula je nula a odstránenie celého stĺpca "číslo" náprotivku \u003d nová štruktúra ("číslo", 0) ; \\ T Columnaltalon \u003d "nomenklatúra"; Demotovateľné \u003d tablethetalon .copy (Rowetal, Clumnal); Stripects \u003d demotovateľná. Noc (0, "množstvo"); Demotovateľné. Odstránenie (prúdy); Demotablik. Solonki.Deel ("Číslo"); // Podobné možnosti a ich úpravy možno aplikovať na tabuľkové časti a súbory registrov

Vytvorenie vyšetrovania tabuľky

Ak je v databáze referenčná tabuľka, môžete použiť dotaz na rýchle vytvorenie tabuľky s požadovanou štruktúrou.

// Príklad s vytvorením prázdnej tabuľky podľa vzorovej štruktúry akumulačného registra // je ťažké uhádnuť, že týmto spôsobom môžete získať požadovanú tabuľku \u003d nový dotaz ("Vyberte prvú 0 * z register. Súvislosť "); Výsledok Dodávka \u003d dotaz. Vyplňte (); Demotovateľné \u003d nábor výsledkov. Stiahnutie (); // Príklad s vytvorením prázdnej tabuľky explicitne zadanými typmi a menami dotazu poľa \u003d nová požiadavka; Žiadosť.Text \u003d "Vyberte prvú 0 | význam (referenčná kniha. Substitúcia. Výkon) ako nomenklatúra, | Express (0 ako číslo (15, 3)) ako množstvo"; Výsledok Dodávka \u003d dotaz. Vyplňte (); Demotovateľné \u003d nábor výsledkov. Stiahnutie (); // DÔLEŽITÉ! Nemali by ste zabúdať, že v typoch hodnôt reproduktorov získaných z dotazu je vždy prítomný typ null //, tk vytvorený dotazom vždy má kompozitné typy stĺpcov

Záver

V tomto malom článku sme preskúmali základné vlastnosti a praktické techniky na vytvorenie tabuľky hodnôt dostatočných na pochopenie a spustenie aplikácie. Predmetom samotnej tabuľky samotných hodnôt je tak mnohonásobený, že podrobný opis svojich schopností si vyžaduje písanie samostatného článku o recepcii a metódach práce.

Pozdravy všetkých čitateľov infostart'a. Tento článok bude venovaný vytvoreniu ľubovoľnej tabuľky hodnôt formou riadenej aplikačnej programovej metódy.

Funkcie úlohy.

Každý, kto naprogramoval v obvyklých dodatok často čelili úlohe získať ľubovoľnú tabuľku hodnôt na formulári. Pod svojvoľným tabuľkou hodnôt sa chápe ako tabuľka, počet a typ stĺpcov, ktorých nie je známe. To znamená, že stĺpce môžu byť 3, a možno 6, alebo možno 8. V obvyklej aplikácii je všetko jednoduché: Je možné umiestniť prvku "tabuľky" na tvorbu formulára a potom preniesť tabuľku hodnôt hodnoty tejto položky. Potom jednoduchý tím:

Elementforms. Ticketpasd. Calcons ();

získajte pripravený tabuľku hodnôt na formulári. Zdá sa, že by to mohlo byť jednoduchšie.

Bolo to všetko v obvyklej aplikácii. V spravovanej aplikácii sa všetko zmenilo. Takže jednoducho ľubovoľná tabuľka nevytvára. Teraz musíte buď pevne paramet tabuľky hodnôt na formulári, alebo ho vytvorí programmaticky (opíšte, dobre, v skutočnosti, podstata samotnej autorizovanej žiadosti). Budeme sa snažiť robiť: Vytvorte ľubovoľnú tabuľku hodnôt na spravovanom formulári.

Riešenia problému.

Prvá vec, ktorú musíme urobiť, je určiť, ako sa tabuľka objaví na formulári. Hlavnou vecou je, že žiadny prvok formulára v spracovaní nie je potrebný. Vytvoríme ho programovo, rovnako ako celý stôl. To znamená, že tabuľka bude opísaná a vytvoriť v čase otvárania formulára alebo pomocou tlačidla - to je, ako je to potrebné.

Vytvorenie tabuľky vo formulári sa vyskytuje popisom tabuľky hodnôt ako požiadavka:
Massiferboabor \u003d Nové pole; Masívny zákazník. Príslušný (typ ("tabuľková appozícia")); PopisCarebar \u003d Nové popisy (MassifAcivity); Masívy \u003d nové pole; Masívy. Príslušný (nový požadovaný ("Tablescript", popisy, "", "TZN")); Teraz musíme vytvoriť softvér tabuľky hodnôt, ktoré obsahujú údaje. Ak sa tabuľka hodnota získava z požiadavky, potom je všetko nižšie ako objednávka. Ak sa tabuľka vytvorí manuálne, hodnota reproduktorov, ktoré budú obsahovať čísla alebo dátumy, môžu byť vytvorené prostredníctvom "Popis". Spodná čiara je, že stĺpce v tabuľke hodnôt musia mať nejaký druh typu. Ak sa napríklad predpokladá, že užívateľ vyplní údaje v týchto stĺpcoch interaktívne, potom nemôžete pridať hodnoty stĺpcov hodnôt jednoducho s menom, mal by byť typ. Majte na pamäti - to je veľmi dôležité, pretože Tieto typy poskytneme tabuľke formulára.
Vytvorte tabuľku, ktorá obsahuje niekoľko stĺpcov:
KD \u003d nové kvalifikácie (častice. Veria); Massigs \u003d Nové pole; Zbrane. Príslušný (typ ("dátum")); Vyhľadávací grafika \u003d nové popisy (zbrane, CD); Tk \u003d nové tabuľky;
Tk.colonki. Príslušné ("C", popisy.
Tk.colonks. Príslušný ("to", popisy.
Tk.colonki. Príslušné ("celé meno");
Tk. Solonks. Príslušný ("Poznámka"); // Úplná poznámka - Riadky Ďalej vyplníme náš softvér TK TK s potrebnými údajmi. Získame tabuľku TK, ktorá obsahuje potrebné hodnoty a je pripravený na prenos na vytvorené rekvizity formulára. Pre každý stĺpec TK. Cyklus stĺpca

Masivereviziti. Príslušne (nový požadovaný (stĺpec myslím, stĺpec. Typ "Typ"));
Endcycle;
Meniberevizuje (masívnevizity);
Tabuľové zajatia \u003d prvky. Príslušné ("TZN", typ ("Tablefform"));
Tablepoles Capture. Powded \u003d "Tracks";
Tablepoleseboat. Príklad \u003d zobrazený. Vhodný;

Tu je taká jednoduchá kombinácia a náš stôl je pripravený.

Pre každý stĺpec TK. Cyklus stĺpca

Newelent \u003d prvky. Príslušný (stĺpec. Myslím, typ ("foreform"), stolové stroje);
Nový prvok. Vid \u003d Vidpolárna forma. Výkon;
Nový prvok. Powdly \u003d "wafcripts." + Stĺpec.
Nový Element.shirina \u003d 10;
Endcycle;

Podmienený dizajn, ak potrebujeme tiež manuálne písať, príkazové menu - manuálne. Obslužné manipulátory sú tiež zapísané rukami. Napríklad pridanie udalosti udalosti "Výber":

Tablepoles Capture. Nastavenie ("voľba", "tznvybor");

Na spracovanie tejto udalosti je vo forme postupu predpísaný samostatný postup:

& Svalette
Postup TZNVSB (TK, vybrané, pole, štandardné spracovanie)
// Procesor príkazy ukončiť ovládacie prvky

Upozorňujeme, že manipulátory tabuľky sa spúšťajú na klientovi, a preto musia mať príkaz Compiler Ukazovateľ

& Svalette

No, a posledná vec, ktorú som chcel dodať, že po všetkých týchto akciách, určite nezabudneme preniesť hotovú tabuľku do požiadavky formulára:

NedávnoRetorevisitforms (TK, "Traja");

Tu je to, čo máme v dôsledku toho:


Ale spracovanie udalosti "voľba":



Afterword.

Dúfam, že tento článok pomôže týmto programátorom 1C, ktorý začína vytvárať tabuľky vo forme programovej metódy.

Môžete si stiahnuť spracovanie, ktorý softvér vytvorí tabuľku hodnôt a zobrazí riadny formulár s komentármi, ktoré vám pomôžu vytvoriť vlastné tabuľky.

Hľadať v tabuľke hodnôt 1c

Aké metódy existujú a ako vyhľadávať súčasne v niekoľkých hodnotách.

Ak chcete vyhľadať v tabuľke hodnôt, existujú dve špeciálne metódy:

1. Nájdite

Tvgorizont \u003d referenčné knihy. Nomelaclatúra. Integronácia ("TV Horizon");
Výsledky \u003d tznenenclatúra. INITE (TV, TV);
// Môžeme tiež určiť, v ktorých reproduktorov hľadajú urýchliť vyhľadávanie
Nadácia \u003d tznomenclatúra. INITE (TV, "nomenklatúra");

Táto metóda vráti prvú nájdenú čiaru s požadovanou hodnotou alebo nedefinované, ak nenájde. Preto je vhodné použiť ho na vyhľadávanie jedinečných hodnôt, pretože V opačnom prípade ho budete musieť odstrániť zo stola pri hľadaní nasledujúceho.

Aby netrpel, existuje nasledujúci spôsob, ktorý vám umožní nájsť pole vhodných riadkov:

2. let


Štruktúrna. Držte ("nomenklatúra", TVGORIZONT); // Po prvé, zadajte stĺpec, kam hľadáte, a potom čo hľadať.

Táto metóda vždy vracia pole, ale môže byť prázdne, ak sa nenájde nič. A táto metóda tiež, ako aj predchádzajúce vráti riadky hodnôt hodnôt, a nie samotné hodnoty v samostatnom poli. Zmena hodnôt v riadku poľa alebo v predchádzajúcej metóde na zistenej linke zmeníte hodnotu v tabuľke spracovaných hodnôt.

Čím viac dobrým spôsobom je, že môže vyhľadávať naraz v niekoľkých stĺpcoch tabuľky hodnôt v rovnakom čase:


Štruktúry \u003d nová štruktúra;
Štruktúrna. Držte ("nomenklatúra", TVGORIZONT);
Konštrukčný čln. Držte ("Množstvo", 10);
NadácieMassvests \u003d tznenenclatúra. Záznamy (štruktúry);

Jediný mínus, ako je možné vidieť, nemožno použiť iné porovnania okrem "rovnakého"