Interaktívne možnosti tabuľkového dokumentu. Spravované formuláre: čítanie rozložení so zlúčenými bunkami (najmä z Excelu) Výstup údajov do tabuľkového dokumentu 1C 8.3

Tabuľkový dokument sa používa na vytváranie primárnych dokumentov a zostáv, ktoré pozostávajú z buniek usporiadaných do riadkov a stĺpcov. Každý riadok a stĺpec má svoje jedinečné číslo. V tomto prípade je možné jednotlivým bunkám, rozsahom a grafickým objektom priradiť názov výberom požadovanej oblasti v časti „Tabuľka - Názvy“. Potom zadajte názov do vstupného poľa a kliknite na „Priradiť“.

Ak chcete odstrániť meno, vyberte ho zo zoznamu a kliknite na tlačidlo „Vymazať“. Tie oblasti, ktorým používateľ nepridelil názov, program pomenuje automaticky. Tieto názvy môžete vidieť na palete Vlastnosti. Tabuľkový editor možno použiť na vytvorenie nového dokumentu, zobrazenie výsledkov predchádzajúcich správ a úpravu tabuľkových dokumentov.

Ako vytvoriť tabuľkový dokument v 1C

Pre vytvorenie nového dokladu kliknite na sekciu „Súbor“ - „Nový“, vyberte riadok „Doklad tabuľky“ a potvrďte tlačidlom „OK“. Ak potrebujete otvoriť už vytvorený dokument, potom v časti „Súbor“ - „Otvoriť“ vyberte zo zoznamu názov súboru požadovaného dokumentu. V tomto prípade môžete kliknutím na pole „Typ súboru“ vybrať ľubovoľný formát dokumentu, ktorý sa má otvoriť.

Pri vytváraní tabuľky vyberte bunku a zadajte údaje (text, vzorec, číselné údaje). Ak potrebujete zmeniť veľkosť buniek, potom v Menu vyberte "Formát - Riadok - Automaticky prispôsobiť výšku - Stĺpec - Automaticky prispôsobiť šírku". Ak to chcete urobiť, presuňte myš nad okraj hlavičky riadka alebo stĺpca, podržte ľavé tlačidlo myši a ťahaním zmeňte veľkosť. V 1C sa zmení výška riadku dokumentu tabuľky a šírka stĺpca. Príkaz automatického výberu sa otvorí dvojitým kliknutím na okraj nadpisu.


Môžete bezpečne zopakovať všetky kroky vo svojej databáze alebo jednoducho vytvoriť tabuľkový dokument v 1C: Hotové riešenia - cloudová verzia licencovaného programu 1C. Vyskúšajte službu zadarmo na 14 dní v 1C Online.

Ako zmeniť výšku riadku a šírku stĺpca v 1C

Veľkosť riadkov a stĺpcov dokumentu tabuľky môžete zmeniť manuálne alebo automaticky.

V programe 1C sa výška riadka tabuľkového dokumentu zmení manuálne, ak prejdete myšou nad spodný okraj hlavičky riadku a počkáte, kým sa kurzor myši premení na rozvetvenú vertikálnu šípku. Potom nastavíme výšku riadku, ktorú potrebujeme, posunutím okrajov hlavičky.

Šírku stĺpca môžete zmeniť umiestnením ukazovateľa myši na pravý okraj hlavičky a počkaním, kým sa kurzor myši premení na rozvetvenú horizontálnu šípku. Posuňte okraj hlavičky pomocou myši a nastavte požadovanú šírku.

Minimálnu požadovanú šírku stĺpca je možné nastaviť dvoma kliknutiami na okraj hlavičky. Editor nezávisle nastaví šírku, do ktorej sa zmestí celý text.

Existuje ďalší spôsob, ako to zmeniť manuálne. Stlačte kláves „Ctrl“ a presuňte myš nad požadovaný okraj bunky. Po zmene tvaru kurzora nastavte požadovanú veľkosť.

V 1C sa zmení šírka stĺpca tabuľkového dokumentu automaticky, ak vyberiete požadovaný stĺpec a vyberiete sekciu „Tabuľka“ - „Bunky“ - „Šírka stĺpca“. V zobrazenom okne zadajte šírku a kliknite na „OK“.

Pri vytváraní nového tabuľkového dokumentu je štandardne nastavená šírka všetkých stĺpcov. Ale dá sa to aj zmeniť. Ak to chcete urobiť, v časti „Tabuľka“ vyberte „Bunka“ - „Šírka stĺpca“. V zobrazenom okne nastavte veľkosť stĺpca a kliknite na „OK“. Ak vyberiete možnosť „Auto“, veľkosť sa nastaví na celý dokument.

Výška riadku sa automaticky zmení, ak začiarknete políčko „Automatická výška riadku“. Ak začiarkavacie políčko nie je začiarknuté, v poli „Výška riadku“ sa nastaví pevná veľkosť riadku.

Ak chcete nastaviť rôzne šírky stĺpcov pre rôzne riadky, musíte vybrať jeden alebo viac riadkov dokumentu.

Presuňte myš na oddeľovač stĺpcov a stlačte ľavé tlačidlo myši. Bez uvoľnenia tlačidla potiahnite stĺpik v požadovanom smere (napríklad doľava) a uvoľnite tlačidlo. V zobrazenom okne kliknite na „OK“.

Môžete tiež ovládať farbu textu, pozadia a rámov.


Tabuľkový dokument sa spravidla vytvára na základe rozloženia, čo je šablóna na vytvorenie tlačeného formulára. Samotné rozloženie môže obsahovať obrázky, grafy a kontingenčné tabuľky. Príklad ukazuje rozloženie pre tlač faktúry za spotrebný materiál:


Niektoré bunky obsahujú iba text, iné obsahujú názvy parametrov, ktoré musia byť špecifikované v programovom module cez „Parametre“ objektov „Tabuľkový dokument“.

Zoskupovanie riadkov v dokumente tabuľky

V tabuľkovom dokumente môžete zoskupiť riadky a stĺpce, aby ste mohli kategorizovať údaje v zostavách. Existujú horizontálne zoskupenia, ktoré môžu byť umiestnené vpravo alebo vľavo, a vertikálne zoskupenia umiestnené nad alebo pod.

Môžete tiež zobraziť úrovne zoskupenia. Keď kliknete na čísla v hlavičke, všetky skupiny sa rozbalia naraz. Pri použití zoskupovania sa odsadenie úrovne vytvorí automaticky:


Dekódovanie dokumentu tabuľky 1C

Na získanie podrobnej alebo dodatočnej správy použijeme mechanizmus dešifrovania. Ak to chcete urobiť, kliknite na riadok alebo bunku v dokumente.

Pri dešifrovaní dokumentu existujú dve akcie:

  • Štandardné - kliknite na prvok dokumentu alebo adresára, po ktorom systém otvorí tento objekt na prezeranie.
  • Neštandardné - nastavíme algoritmus na získanie podrobnej správy. Ak to chcete urobiť, musíte preformátovať existujúci pomocou dodatočných podmienok výberu („zobraziť predaj iba pre túto protistranu“). alebo

Pri použití dešifrovania môžete získať úplne nový prehľad (napríklad „zobraziť faktúry, ktoré prispeli k objemu predaja pre túto protistranu“).

Keďže zostavy obsiahnuté v konkrétnom aplikačnom riešení sa volajú automaticky, komplikuje to používateľovi prácu. Na uľahčenie práce je potrebný dešifrovací mechanizmus.

Ako uložiť tabuľkový dokument v 1C

Aby ste mohli tabuľkový dokument v budúcnosti použiť (otvoriť, zobraziť, vytlačiť), musíte ho uložiť. Vyberte sekciu „Súbor“ a kliknite na „Uložiť“. Potom sa na obrazovke objaví okno, v ktorom uvedieme adresár a názov súboru. Ak potrebujete premenovať dokument alebo ho uložiť v inom formáte, vyberte sekciu „Súbor“ a „Uložiť ako“.

Dokument sa spravidla ukladá vo formáte používanom systémom 1C:Enterprise (*.mxl). Tabuľkový dokument však možno exportovať do iných formátov na ukladanie údajov, vrátane formátu tabuľky ODF (*.ods), dokumentu programu Word (*.docx), dokumentu HTML (*.htm) alebo textového súboru UNICODE (*. TXT). Okrem toho je možné uložiť tabuľkový dokument v 1C v exceli alebo pdf.

Tlač tabuľkového dokumentu v 1C

Ak chcete zobraziť dokument pred tlačou, vyberte časť „Súbor – ukážka“. Ak chcete ukončiť náhľad, kliknite na tlačidlo „Zavrieť“.

V nastaveniach stránky nastavíme parametre tlače tabuľkového dokumentu v 1C - mierka, veľkosť, okraje atď. V editore tabuliek nastavte parametre umiestňovania riadkov a stĺpcov. „Pozícia stránky“ vynúti stránkovanie, opakovanie riadkov a stĺpcov atď.

Dokument vytlačíme do tlačiarne kliknutím na sekciu „Súbor“ - „Tlačiť“. Na stránke sa zobrazí okno s nastaveniami, kde je potrebné nastaviť parametre tlače - vybrať tlačiareň, rozsah strán a počet kópií - a kliknúť na „OK“.

Máte nejaké otázky? Opýtajte sa ich v komentároch a my to urobíme
Určite im odpovieme.

Na účtovanie peňazí a tovaru sa v podnikaní široko používajú rôzne tabuľky. Takmer každý dokument je tabuľka.

V jednej tabuľke je uvedený tovar na odoslanie zo skladu. V ďalšej tabuľke sú uvedené povinnosti platiť za tento tovar.

Preto v 1C práca s tabuľkami zaujíma popredné miesto.

Tabuľky v 1C sa tiež nazývajú „tabuľkové časti“. Adresáre, dokumenty a iné ich majú.

Dotaz po vykonaní vráti tabuľku, ku ktorej je možné pristupovať dvoma rôznymi spôsobmi.

Prvý - rýchlejší - výber, získavanie riadkov z neho je možné len v poradí. Druhým je nahranie výsledku dotazu do tabuľky hodnôt a následný náhodný prístup k nemu.

//Možnosť 1 – sekvenčný prístup k výsledkom dotazu

//získajte stôl
Select = Query.Run().Select();
// prejdeme postupne všetky riadky výsledku dotazu
Zatiaľ čo Select.Next() Loop
Report(Selection.Name);
EndCycle;

//Možnosť 2 – nahrávanie do tabuľky hodnôt
Request = New Request("SELECT Name FROM Directory.Nomenclature");
//získajte stôl
Tabuľka = Query.Run().Unload().
//ďalej môžeme tiež iterovať cez všetky riadky
Pre každý riadok z cyklu tabuľky
Report(String.Name);
EndCycle;
//alebo ľubovoľný prístup k reťazcom
Riadok = Table.Find("Lopata", "Nazov");

Dôležitou vlastnosťou je, že v tabuľke získanej z výsledku dotazu budú všetky stĺpce presne napísané. To znamená, že vyžiadaním poľa Názov z adresára Nomenklatúra získate stĺpec typu String s povolenou dĺžkou najviac N znakov.

Tabuľka vo formulári (hrubý klient)

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

Základné princípy práce s formulármi sme rozoberali na hodine a na hodine

Položme teda tabuľku na formulár. Ak to chcete urobiť, potiahnite tabuľku z panela Ovládacie prvky. Podobne môžete z ponuky vybrať položku Form/Insert Control.

Dáta je možné uložiť do konfigurácie – vtedy je potrebné vybrať existujúcu (predtým pridanú) tabuľkovú časť konfiguračného objektu, ktorého formulár upravujete.

Kliknite na tlačidlo "..." vo vlastnosti Data. Aby ste videli zoznam tabuľkových častí, musíte rozbaliť vetvu Object.

Keď vyberiete tabuľkovú časť, 1C sám pridá stĺpce do tabuľky vo formulári. Riadky zadané používateľom do takejto tabuľky sa automaticky uložia spolu s referenčnou knihou/dokumentom.

V rovnakej vlastnosti Data môžete zadať ľubovoľný názov a vybrať typ Tabuľka hodnôt.

To znamená, že bola vybratá ľubovoľná tabuľka hodnôt. Nebude automaticky pridávať stĺpce, ani sa nebude automaticky ukladať, ale môžete si s ním robiť, čo chcete.

Kliknutím pravým tlačidlom myši na tabuľku môžete pridať stĺpec. Vo vlastnostiach stĺpca môžete zadať jeho názov (pre referenciu v kóde 1C), záhlavie stĺpca vo formulári, spojenie s atribútom tabuľkovej časti (druhá - ak nie je vybratá ľubovoľná tabuľka, ale tabuľková časť).

Vo vlastnostiach tabuľky vo formulári môžete určiť, či môže používateľ pridávať/odstraňovať riadky. Pokročilejším formulárom je začiarkavacie políčko View Only. Tieto vlastnosti je vhodné použiť na organizovanie tabuliek určených na zobrazovanie informácií, ale nie na úpravu.

Ak chcete spravovať tabuľku, musíte vo formulári zobraziť panel príkazov. Vyberte položku ponuky Formulár/Vložiť ovládací/Príkazový riadok.

Vo vlastnostiach panela príkazov začiarknite políčko Automatické dopĺňanie, aby sa tlačidlá na paneli zobrazovali automaticky.

Tabuľka vo formulári (tenký/spravovaný klient)

Na spravovanom formulári tieto akcie vyzerajú trochu inak. Ak potrebujete umiestniť tabuľkovú časť do formulára, rozbaľte vetvu Objekt a potiahnite jednu z tabuľkových častí doľava. To je všetko!

Ak potrebujete umiestniť tabuľku hodnôt, pridajte nový atribút formulára a v jeho vlastnostiach uveďte typ – tabuľka hodnôt.

Ak chcete pridať stĺpce, kliknite pravým tlačidlom myši na tento atribút formulára a vyberte Pridať stĺpec atribútu.

Potom tiež potiahnite tabuľku doľava.

Ak chcete, aby tabuľka mala panel príkazov, vo vlastnostiach tabuľky vyberte hodnoty v časti Použitie – Umiestnenie panela príkazov.

Nahrávanie tabuľky do Excelu

Akúkoľvek tabuľku 1C umiestnenú vo formulári je možné vytlačiť alebo nahrať do Excelu.

Ak to chcete urobiť, kliknite pravým tlačidlom myši na prázdne miesto v tabuľke a vyberte položku Zoznam.

V spravovanom (tenkom) klientovi je možné podobné akcie vykonávať pomocou položky ponuky Všetky akcie/Zobraziť zoznam.

Väčšina školiacich materiálov o programovaní v systéme 1C popisuje vytváranie tlačených formulárov na základe objektu "tabuľkový dokument" sú obmedzené na zobrazenie hotového formulára na obrazovke. Pre používateľov je oveľa dôležitejšie, ako bude dokument vyzerať pri tlači. Tu okrem dobre navrhnutého layoutu zohrávajú úlohu aj parametre tlače.

Takmer všetky parametre dostupné v dialógových oknách nastavení tlače (nastavenia tlačiarne, vlastnosti stránky) je možné zadať priamo pri generovaní tabuľkového dokumentu.

Pozrime sa na vlastnosti a metódy tabuľkového dokumentu súvisiace s nastaveniami tlače (v uvedených príkladoch je „TabDoc“ objekt typu „Spreadsheet Document“).

Nehnuteľnosť "Názov tlačiarne" Umožňuje určiť na tlač inú ako predvolenú tlačiareň. Názov sa musí zhodovať s názvom tlačiarne nakonfigurovaným v systéme:

TabDoc. Názov tlačiarne = "HP LaserJet 3050 Series PCL 6";

Pri tlači dávky dokumentov môžete ušetriť čas nastavením možnosti zoradenia:

TabDoc. ParseByCopies = true;

Počet kópií je možné určiť nasledovne:

TabDoc. Počet inštancií= 5 ;

Samozrejme, môžete nastaviť polia:

TabDoc. FieldLeft = 20 ; //Ľavý okraj je 20 mm, ostatné okraje sú 10 mm (predvolené)

Niekoľko ďalších vlastností stránky:

TabDoc. Orientačná stránka= Orientačná stránka. Krajina;
TabDoc. InstanceOnPage= 2 ; //na hárku budú 2 strany
TabDoc. Autoscale = true; //podobné nastaveniam mierky „šírky stránky“.

V prípade potreby môžete zadať konkrétnu hodnotu mierky v percentách (vlastnosť "Mierka tlače").

Nehnuteľnosť "Veľkosť stránky" umožňuje nastaviť štandardné formáty stránky - “ A 3“, „A4“, „A 5” (úplný zoznam možností je k dispozícii v pomocníkovi 1C).

TabDoc. Veľkosť strany = "A3" ; // písmeno A musí byť anglické

Pre neštandardnú veľkosť papiera (vlastné) môžete určiť výšku a šírku strany (v mm):

TabDoc. Veľkosť stránky = "Vlastné" ; //neštandardná veľkosť
TabDoc. Výška stránky = 350 ;
TabDoc. Šírka stránky = 350 ;

Aj v tabuľkovom dokumente môžete ovládať výstup hlavičiek a pätiek a ich obsah. To sa vykonáva pomocou vlastností "hlavička stránky" A "Päta". Napríklad:

TabDoc. Hlavička stránky. Výstup = pravda; //vytlačí sa hlavička
TabDoc. HeaderSizeTop= 7 ; //veľkosť päty 7 mm (predvolené 10 mm)
TabDoc. Hlavička stránky. Vertikálna poloha= Vertikálna poloha. Hore ;
TabDoc. Hlavička stránky. Domovská stránka= 2 ; //päta sa zobrazí z druhej strany
FontFooter=Nové písmo("Kurier New", 8,True);
TabDoc. Hlavička stránky. Písmo = FontFooter; //šikmé písmo
TabDoc. Hlavička stránky. TextInCenter = "hlavička stránky";
TabDoc. Hlavička stránky. TextVpravo = "Stránka[&PageNumber] z [&PagesTotal]"; //stránkovanie
TabDoc. Hlavička stránky. TextLeft = "[&Dátum]" ; //Aktuálny dátum

Vygenerovaný dokument sa odošle na tlač pomocou metódy "Typ ()". Existujú dve možnosti hovoru.

1) Priamo do tlačiarne:

TabDoc. Print(.NotUse);
TabDoc. Print(true);

2) Pred tlačou sa zobrazí dialógové okno tlače:

TabDoc. Tlačiť ( DialogUsageModePrint. Použiť);
TabDoc. Print(false);

Okrem toho môžete ovládať, ako je dokument rozdelený na strany. Počet strán v dokumente môžete odhadnúť na základe aktuálnych nastavení tlačiarne:

TabDoc. Počet strán();

Pomocou metód "CheckOutput()" A "CheckAttach()" Pri aktuálnych nastaveniach tlačiarne môžete určiť, či sa tabuľkový dokument alebo pole oblastí dokumentu tabuľky zmestí na stranu na výšku a šírku.

Treba mať na pamäti, že fungovanie posledných troch metód závisí od nainštalovanej tlačiarne. Ak ho metóda nemôže nájsť, vyvolá sa výnimka.

Metódy vám umožňujú vynútiť vkladanie zlomov strán"OutputVerticalPageSeparator()" A "OutputHorizontalPageSeparator()".

Takto môžete ovládať tlač po jednotlivých stranách a kontrolovať vypĺňanie strán:

Ak nie TabDoc. CheckOutput ( Pole výstupných oblastí) Potom
TabDoc. OutputHorizontalPage Separator();
koniec Ak;

Dôležitou charakteristikou platformy 1C:Enterprise 8.2 je prísne oddelenie vlastností a metód podľa kontextu vykonávania. Zatiaľ čo všetky vyššie uvedené vlastnosti sú dostupné v akomkoľvek kontexte, uvedené metódy nie sú dostupné na tenkom klientovi. Výnimkou je metóda “Print()”, ktorej dostupnosť je z pochopiteľných dôvodov obmedzená na klientsku časť. To znamená, že k vytvoreniu tabuľkového dokumentu by malo dôjsť na serveri a ten by sa mal odoslať na tlač v klientskej procedúre.

Majte sa všetci dobre!

Podstatou úlohy, ktorú budeme analyzovať, je čítať údaje zo zlúčených buniek tabuľkového dokumentu pomocou objektu „TabularDocument“. Dotkneme sa tiež spôsobu prechodu vybratých údajov. Tak poďme na to.

ČÍTANIE TABUĽKY DOKUMENT

Na čítanie tabuľkového dokumentu v 1C môžete, napodiv, použiť objekt „TabularDocument“. Od verzie 8.3.7 (ak ma pamäť neklame) dokáže tento objekt čítať nielen súbory MXL, ale aj XLS/XLSX/ODT a niektoré ďalšie možnosti tabuliek (a mimochodom aj zapisovať).

Ale ako vždy, je tu jeden malý problém - objekt je vytvorený iba na serveri. Ale 1C sa pokúsil vyriešiť tento problém vytvorením streamov v pamäti a tým, že programátorovi dal možnosť ich použiť namiesto cesty k súboru v objektovom konštruktore, je však potrebné špecifikovať typ čítaného súboru. Je pravda, že na platforme Windows 7 pro x64 s 1C 8.3.10.2466 som nemohol čítať Excel týmto spôsobom, ale MXL ho číta perfektne, takže stále musím vytvoriť dočasný súbor pre súbory programu Excel.

Takže kód na čítanie súboru:

&OnServer Procedúra LoadFileOnServer(DD, Extension) Ak Extension = "xml" Potom BH = New DataRead(DD); Tab.Read(BH, TabularDocumentValueReadingMethod.Value, TabularDocumentFileType.MXL); Inak FileName = GetTemporaryFileName(Extension); DD.Write(Názov súboru); Tab.Read(NázovSúboru); DeleteFiles(FileName); koniec Ak; Koniec procedúry &Na klientskej procedúre LoadFile(Command) Dlg = New FileSelectionDialog(FileSelectionDialogMode.Open); Long.Filter = "súbory MXL (*.mxl)|*.mxl|súbory XLS (*.xls)|*.xls|súbory XLSX (*.xlsx)|*.xlsx|súbory ODS (*. ods)|*.ods"; Duration.Show(New AlertDescription("WhenSelectingFile", ThisForm)); EndProcedure &OnClient Procedure WhenSelectingFile(Res, Add) Export If Res = Undefined Then Return EndIf; fl = Nový súbor (Res); LoadFileOnServer(New BinaryData(Res), HPreg(fl.Extension)); Koniec procedúry

Vytvorme formulár s tabuľkovým dokumentom a tlačidlom „Nahrať súbor“ a získajme formulár s fotografiou, ktorý dokáže načítať súbory MXL, XLS, XLSX a ODS do tabuľkového dokumentu.

VYBRANÉ BUNKY

Poďme zistiť, kde sa nachádzajú bunky vybraté používateľom. A tu je zaujímavá zvláštnosť platformy: tieto vybrané bunky sú dostupné iba na klientovi v príslušnom prvku formulára. Poďme cez vybrané bunky a vytlačíme výsledok do riadku správy:

&Na klientskej procedúre ReportSelected(Command) pre každú oblasť FROM Elements.Tab.GetSelectedAreas() Slučka pre X = Oblasť.Doľava podľa oblasti.Pravá slučka pre Y = Oblasť.Navrch podľa oblasti.Spodná správa cyklu(Tab.Area(Y, X) .Text); EndCycle; EndCycle; EndCycle; Koniec procedúry

Ak teraz vyberieme prvý riadok bez zlúčených buniek, dostaneme nasledujúci výsledok:

Tie. tu máme vytlačené A, B a C. Ak vyberieme druhý riadok, dostaneme iný obrázok:

Ako vidíte, prítomnosť spojenia nám v žiadnom prípade nebráni získať údaje z riadku, ktorý sme zlúčili s riadkom, navyše oba tieto riadky budú obsahovať hodnotu „A“. Ak vyberieme tretí riadok, dostaneme výstup „A A A“ (dobre, už chápete prečo, však?)

KOMBINOVANÉ BUNKY

Ak chcete vyriešiť problém so zlúčenými bunkami, musíte poznať jeden detail: každá bunka má podrobnosti „vľavo“, „vpravo“, „hore“ a „dole“. A pre zlúčené bunky nebudú rovnaké. Pre jednoduché spojenie pozdĺž osi X bude čítanie s prihliadnutím na spojenie celkom jednoduché:

Pre každú oblasť FROM Elements.Tab.GetSelectedAreas() Slučka pre X = Area.Left By Area.Right Slučka pre Y = Area.Horná oblasť.Dolná slučka Report(Tab.Area(Y,X).Text); X = X + Tab.Oblasť(Y,X).Vpravo - Tab.Oblasť(Y,X).Vľavo; EndCycle; EndCycle; EndCycle;

Jednoducho pripočítame „vpravo“ k „X“ a odpočítame „vľavo“.

A pre os „Y“ navrhujem, aby ste na to prišli sami (ako domácu úlohu).

Väčšina školiacich materiálov o programovaní v systéme 1C popisuje vytváranie tlačených formulárov na základe objektu "tabuľkový dokument" sú obmedzené na zobrazenie hotového formulára na obrazovke. Pre používateľov je oveľa dôležitejšie, ako bude dokument vyzerať pri tlači. Tu okrem dobre navrhnutého layoutu zohrávajú úlohu aj parametre tlače.

Takmer všetky parametre dostupné v dialógových oknách nastavení tlače (nastavenia tlačiarne, vlastnosti stránky) je možné zadať priamo pri generovaní tabuľkového dokumentu.

Pozrime sa na vlastnosti a metódy tabuľkového dokumentu súvisiace s nastaveniami tlače (v uvedených príkladoch je „TabDoc“ objekt typu „Spreadsheet Document“).

Nehnuteľnosť "Názov tlačiarne" Umožňuje určiť na tlač inú ako predvolenú tlačiareň. Názov sa musí zhodovať s názvom tlačiarne nakonfigurovaným v systéme:

TabDoc. Názov tlačiarne = "HP LaserJet 3050 Series PCL 6";

Pri tlači dávky dokumentov môžete ušetriť čas nastavením možnosti zoradenia:

TabDoc. ParseByCopies = true;

Počet kópií je možné určiť nasledovne:

TabDoc. Počet inštancií= 5 ;

Samozrejme, môžete nastaviť polia:

TabDoc. FieldLeft = 20 ; //Ľavý okraj je 20 mm, ostatné okraje sú 10 mm (predvolené)

Niekoľko ďalších vlastností stránky:

TabDoc. Orientačná stránka= Orientačná stránka. Krajina;
TabDoc. InstanceOnPage= 2 ; //na hárku budú 2 strany
TabDoc. Autoscale = true; //podobné nastaveniam mierky „šírky stránky“.

V prípade potreby môžete zadať konkrétnu hodnotu mierky v percentách (vlastnosť "Mierka tlače").

Nehnuteľnosť "Veľkosť stránky" umožňuje nastaviť štandardné formáty stránky - “ A 3“, „A4“, „A 5” (úplný zoznam možností je k dispozícii v pomocníkovi 1C).

TabDoc. Veľkosť strany = "A3" ; // písmeno A musí byť anglické

Pre neštandardnú veľkosť papiera (vlastné) môžete určiť výšku a šírku strany (v mm):

TabDoc. Veľkosť stránky = "Vlastné" ; //neštandardná veľkosť
TabDoc. Výška stránky = 350 ;
TabDoc. Šírka stránky = 350 ;

Aj v tabuľkovom dokumente môžete ovládať výstup hlavičiek a pätiek a ich obsah. To sa vykonáva pomocou vlastností "hlavička stránky" A "Päta". Napríklad:

TabDoc. Hlavička stránky. Výstup = pravda; //vytlačí sa hlavička
TabDoc. HeaderSizeTop= 7 ; //veľkosť päty 7 mm (predvolené 10 mm)
TabDoc. Hlavička stránky. Vertikálna poloha= Vertikálna poloha. Hore ;
TabDoc. Hlavička stránky. Domovská stránka= 2 ; //päta sa zobrazí z druhej strany
FontFooter=Nové písmo("Kurier New", 8,True);
TabDoc. Hlavička stránky. Písmo = FontFooter; //šikmé písmo
TabDoc. Hlavička stránky. TextInCenter = "hlavička stránky";
TabDoc. Hlavička stránky. TextVpravo = "Stránka[&PageNumber] z [&PagesTotal]"; //stránkovanie
TabDoc. Hlavička stránky. TextLeft = "[&Dátum]" ; //Aktuálny dátum

Vygenerovaný dokument sa odošle na tlač pomocou metódy "Typ ()". Existujú dve možnosti hovoru.

1) Priamo do tlačiarne:

TabDoc. Print(.NotUse);
TabDoc. Print(true);

2) Pred tlačou sa zobrazí dialógové okno tlače:

TabDoc. Tlačiť ( DialogUsageModePrint. Použiť);
TabDoc. Print(false);

Okrem toho môžete ovládať, ako je dokument rozdelený na strany. Počet strán v dokumente môžete odhadnúť na základe aktuálnych nastavení tlačiarne:

TabDoc. Počet strán();

Pomocou metód "CheckOutput()" A "CheckAttach()" Pri aktuálnych nastaveniach tlačiarne môžete určiť, či sa tabuľkový dokument alebo pole oblastí dokumentu tabuľky zmestí na stranu na výšku a šírku.

Treba mať na pamäti, že fungovanie posledných troch metód závisí od nainštalovanej tlačiarne. Ak ho metóda nemôže nájsť, vyvolá sa výnimka.

Metódy vám umožňujú vynútiť vkladanie zlomov strán"OutputVerticalPageSeparator()" A "OutputHorizontalPageSeparator()".

Takto môžete ovládať tlač po jednotlivých stranách a kontrolovať vypĺňanie strán:

Ak nie TabDoc. CheckOutput ( Pole výstupných oblastí) Potom
TabDoc. OutputHorizontalPage Separator();
koniec Ak;

Dôležitou charakteristikou platformy 1C:Enterprise 8.2 je prísne oddelenie vlastností a metód podľa kontextu vykonávania. Zatiaľ čo všetky vyššie uvedené vlastnosti sú dostupné v akomkoľvek kontexte, uvedené metódy nie sú dostupné na tenkom klientovi. Výnimkou je metóda “Print()”, ktorej dostupnosť je z pochopiteľných dôvodov obmedzená na klientsku časť. To znamená, že k vytvoreniu tabuľkového dokumentu by malo dôjsť na serveri a ten by sa mal odoslať na tlač v klientskej procedúre.