Ako pridať prehľady 1c 8.3. Pridanie externej správy do databázy

Aplikované objekty určené na získanie všetkých druhov kontingenčných tabuliek na usporiadanie údajov vo forme vhodnej na analýzu a prezeranie v konfiguráciách 1C sa nazývajú zostavy. Ako pridať správu do 1C, rôzne možnosti pridania, pokúsime sa zverejniť tieto a niektoré ďalšie otázky v tomto článku.

Prehľady a spracovanie: rozdiely

Zároveň sa odlišujú od iných podobných predmetov - ošetrení:

  1. Možnosť použitia ACS (data linking system);
  2. Pomocou spracovania môžete zadávať informácie, zostava slúži na zobrazenie a usporiadanie údajov;
  3. Rozdiel vo formáte súboru: prípona epf naznačuje, že ide o spracovanie, erf je typické pre externé správy.

Z pohľadu programátora je použitie týchto objektov veľmi pohodlné, pretože si nevyžaduje zmeny v metadátach konfigurácie, a teda nie je potrebné vyhadzovať používateľov z databázy na jej aktualizáciu.

Spôsoby pridania správy do databázy

S pomocou špeciálneho sprievodcu

Vo väčšine konfigurácií poskytovaných spoločnosťou 1C existuje referenčná kniha „Externé spracovanie“, ktorá vám umožňuje uložiť spracovanie v databáze bez zmeny metadát. Do tohto adresára sa dostanete dvoma spôsobmi:

  1. Pre úplné a administratívne rozhranie prejdite na: Operácie-> Adresáre-> Externé spracovanie;
  2. Všetky ostatné cez: Služba-> Dodatočné správy a spracovanie.
  3. Ďalej si musíte vybrať typ formulára, ktorý chcete získať.

Ako teda pridať rozloženie do adresára cez formulár, ktorý je znázornený na obr

Obr. 1 Forma evidencie hlásenia alebo spracovania

V prvom rade je potrebné vymyslieť originálny názov prvku referenčnej knihy, ktorý by čo najviac odrážal podstatu vygenerovanej tabuľky. Druhým krokom je výber typu pridaného formulára. Toto môže byť:

  1. Tlačiteľná položka vyvolaná tlačidlom Tlačiť alebo iným tlačidlom v tých objektoch, ktoré sú uvedené v tabuľkovej časti „Vlastníctvo na tlač“;
  2. Vypĺňanie tabuľkových sekcií, pre tabuľkové sekcie dokumentov a príručky uvedené v tabuľkovej sekcii "Prídavné spracovanie pre vypĺňanie tabuľkových sekcií";
  3. Liečba;
  4. Správa.

Ryža. 2 Pole pre výber typu správy

V záverečnej fáze je potrebné vybrať súbor obsahujúci spracovaný kód z tých, ktoré sú uložené na disku.

Obr. 3 Nápis označujúci potrebu výberu súboru správy

Po zaznamenaní prvku ho uložíte do databázy. Pri obnove a prenose základne sa prenesú aj takto uložené prvky.

Pridanie do konfigurácie

Nasledujúce kroky vyžadujú výhradný prístup k databáze.

Vstupom do konfigurátora a otvorením konfigurácie môžete začať pridávať spracovanie.

Ak je konfigurácia zatvorená pre úpravy, musíte prejsť na položku ponuky Konfigurácia-> Podpora-> Nastavenia podpory. Otvorí sa okno ako na obr

Ryža. 4 Okno podpory úprav

  1. Stlačte tlačidlo „Povoliť možnosť zmeny“;
  2. Na systémovú otázku odpovedzte kladne.

Do databázových metadát tak budete môcť pridávať svoje vlastné prvky.

Teraz kliknutím pravým tlačidlom myši na riadok „Správy“ v konfiguračnom strome môžete do konfigurácie pridať externý dátový linker Obr.5.

Ryža. 5 Podponuka na pridanie zostavy do konfigurácie

Úvahy o umiestnení spracovania na spravovaných formulároch

Rozhranie postavené na spravovaných formulároch ukladá svoje vlastné obmedzenia na zobrazovanie ďalších obslužných programov pridaných do základne.

Pred pridaním zostavy do spravovaného formulára v 1C sa musíte uistiť, že bola vytvorená pomocou ACS, inak sa formulár zobrazí nesprávne.

Po otvorení programu v režime Administrácia musíte v navigačnom paneli nájsť položku „Tlač formulárov, správ a spracovanie“

Ryža. 6 Navigačný panel 1C 8.3

Zaškrtnutím políčka "Dodatočné výkazy a spracovanie" v okne, ktoré sa otvorí, budete môcť pridať svoje návrhy pre riadený formulár do základu.

Vo formulári kliknite na tlačidlo „Vytvoriť“. Ignorovaním varovného okna môžete začať s výberom súboru.

Veľmi často sa v najnovších verziách programu doplnok zrúti s chybou, ktorá uvádza: "Metóda objektu sa nenašla." Faktom je, že po vytvorení handlera pomocou systému skladania údajov je potrebné zaregistrovať funkciu InformationOnExternalProcessing () v jej module so značkou Export, táto funkcia by mala vrátiť parametre registrácie:

  1. Objekt, ku ktorému bude psovod pripojený;
  2. Meno, pod ktorým bude zaregistrovaný v databáze;
  3. Tímové meno.

Potom môžete začať umiestňovať prehľad do rozhrania. Ak to chcete urobiť, kliknite na príkaz "Umiestnenie".

Ryža. 7 Ubytovanie

V tomto prípade je činnosť prvku regulovaná výberom zodpovedajúcej hodnoty v poli "Publikácia".

Pridávanie bez umiestnenia

Prepísať referenčný prvok vždy, keď sa v kóde vykonajú akékoľvek zmeny, najmä registrácia tohto obslužného programu v konfigurácii je dosť nudná záležitosť. Môžete to urobiť bez toho. Stačí len otvoriť súbor so spracovaním cez menu Súbor-> Otvoriť súbor. Naposledy otvorené objekty sú uložené ako zoznam v spodnej časti podponuky Súbor.

Regulované správy

Okrem externých súborov a obslužných programov poskytovaných konfiguráciou existuje v 1C aj ďalší typ správ - regulovaný. Toto sú zostavy údajov, ktoré regulujú daňové úrady.

Charakterom práce sú tieto formuláre skôr dokumentom. Doba platnosti takýchto manipulátorov zriedka presahuje jednu štvrtinu; 1C im pravidelne vydáva aktualizácie.

Môžete ich otvoriť z ponuky Prehľady-> Regulované prehľady. Po výbere možnosti zostavy ju program naplní údajmi z databázy. Ak nie je dostatok údajov, program ponúkne doplnenie chýbajúcich údajov manuálne.

Neúplne vyplnené formuláre sa ukladajú s možnosťou doplnenia. Kompletne vyplnený a overený doklad je možné vytlačiť na papieri alebo odovzdať daňovému úradu v elektronickej podobe.

Hovorí sa, že názov 1C pôvodne znamenal slovné spojenie „jedna sekunda“, t.j. programy by mali vydávať správy rýchlo, „za jednu sekundu“. Rýchlosť správ je veľmi dôležitá, ale ešte dôležitejšie je, aby správy poskytovali správne informácie - poďme na to na príklade vytvorenia jednoduchej správy v 1C 8.3 na základe konfigurácie Trade Management 10.3. Pre tvorbu správnych reportov je žiadúce (dokonca aj dôrazne odporúčané) vedieť konfigurovať 1C a vedieť trochu programovať v internom jazyku a 1C dotazovacom jazyku, aj keď na druhej strane je vytváranie reportov skvelou príležitosťou začať ovládať tieto zručnosti.

Tento popis je vzdelávací pre pochopenie základných princípov vytvárania správ 1C

Ako vytvoriť správu v 1C 8.3

Ak chcete vytvoriť správu, musíte otvoriť 1C v režime konfigurátora, na tento účel v okne spustenia 1C vyberte požadovanú základňu v zozname a kliknite na tlačidlo Konfigurátor:

V samotnom konfigurátore prejdite do ponuky Súbor a vyberte položku Nový:


V zobrazenej ponuke vyberte položku Externá správa a stlačte tlačidlo OK:


Tým sa otvorí nové okno prehľadu. Do poľa Názov zadajte názov zostavy, musí byť bez medzier a špeciálnych znakov:


Ako vytvoriť správu pomocou rozloženia

Táto metóda si predovšetkým vyžaduje programovacie zručnosti v 1C, ale tu nebudeme analyzovať mechanizmy prijímania a spracovania údajov, urobíme jednoduchú správu, aby sme pochopili mechanizmus spustenia správy a zobrazenia formulára správy na obrazovke:

V okne reportu (ktoré sa otvorí pri vytváraní reportu) v dolnom zozname umiestnite kurzor na položku Layouts a kliknutím pravým tlačidlom myši kliknite v zobrazenej ponuke na Pridať:


V otvorenom návrhárovi rozloženia môžete zadať názov rozloženia, ako typ rozloženia by sa mal vybrať tabuľkový dokument a potom kliknite na tlačidlo Dokončiť v návrhárovi:


Tým sa otvorí okno rozloženia, ktoré sa podobá hárku programu Excel:


V tomto rozložení je potrebné vytvoriť oblasti - skupiny riadkov alebo stĺpcov, ktoré program použije ako šablóny, nahradiť v nich dáta prijaté z databázy a tieto šablóny zobraziť na obrazovke, čím zostavu z týchto častí zhromaždí.

Urobme správu so zoznamom nomenklatúry. Na tento účel vytvoríme dve oblasti rozloženia: hlavičku zostavy a riadok položky.

Ak chcete vytvoriť oblasť hlavičky, kliknite ľavým tlačidlom myši na hlavičku riadku (kde je uvedené číslo riadku) a vyberte riadok takto (celý riadok je potrebné vybrať jedným kliknutím na hlavičku):


Potom prejdite do ponuky Tabuľka v hlavnej ponuke, prejdite do podponuky Názvy a kliknite na položku Priradiť názov:


Program vás vyzve na zadanie názvu oblasti, názov by tiež nemal obsahovať medzery a špeciálne znaky, potom kliknite na tlačidlo OK, malo by to vyzerať takto:


Teraz je potrebné vo vytvorenej oblasti zadať text, ktorý sa zobrazí v prehľade, a naformátovať ho. Ak to chcete urobiť, do prvej bunky zadajte text, napríklad "Zoznam nomenklatúry". Práca s bunkami je podobná ako v Exceli.

Ak chcete formátovať text v bunke, kliknite pravým tlačidlom myši na bunku a kliknite na Vlastnosti. Vpravo sa otvorí okno vlastností bunky. Posúvaním obsahu okna nadol nájdite pole Písmo a kliknite na tlačidlo „...“:


V okne, ktoré sa otvorí, v časti Štýl začiarknite políčko Tučné a kliknite na tlačidlo OK:


Rozloženie by malo vyzerať takto:


Rovnakým spôsobom vytvoríme oblasť riadku položky, len ju nezvýraznite tučným písmom:


V oblasti riadku musíte uviesť, že Názov je parameter, t.j. že sa tam pri výstupe zostavy vloží skutočný názov položky. Ak to chcete urobiť, otvorte vlastnosti bunky s názvom a vo vlastnostiach v poli Výplň vyberte hodnotu Parameter, tým je nastavenie rozloženia dokončené:


Vrátime sa do hlavného okna zostavy a v dolnom zozname klikneme pravým tlačidlom myši na položku Formuláre a klikneme na Pridať:


V otvorenom návrhárovi formulára výkazu stlačte tlačidlo Dokončiť, otvorí sa formulár výkazu, dvakrát kliknite na tlačidlo Generovať:


V dôsledku toho sa na pravej strane obrazovky otvorí okno vlastností tlačidla, v poli Akcia kliknite na lupu:


Potom sa otvorí modul formulára, v ktorom je potrebné naprogramovať generovanie zostavy:


Najprv vložte nasledujúci kód namiesto vybratého textu:

// vytvorte tabuľkový dokument, ktorý bude vyplnený časťami zostavy a zobrazený na obrazovke
TabDocument = Nový tabuľkový dokument;
// ďalej dostaneme rozloženie, ktoré bolo vytvorené pri vytváraní zostavy
Rozloženie = Získať rozloženie ("Rozloženie");
// teraz musíte zobraziť hlavičku zostavy, na to získame oblasť hlavičky z rozloženia a zobrazíme ju v tabuľkovom dokumente
AreaHeat = Layout.GetArea ("Hlavička");
TabDocument.Display (AreaHap);
// pomocou dotazu dostaneme výber názvov položiek, ktoré by sa mali zobraziť v prehľade
Žiadosť = Nová požiadavka;
Request.Text = "
| VYBERTE SI
| názov
| OD
| Adresár.Nomenklatúra
|";
// získajte oblasť riadkov nomenklatúry z rozloženia - budeme na ňu odkazovať v slučke, aby sme zobrazili každú položku
AreaString = Layout.GetArea ("Line");
// spracovať každú položku z výsledného výberu v slučke
Selection = Query.Run (). Select ();
Kým Fetch.Next () Slučka
// pre zobrazenie ďalšieho riadku je potrebné zadať ďalší názov v parametri area (samotný parameter nastavujeme pri vytváraní rozloženia)
RegionString.Parameters.Name = Selection.Name;
// parameter bol vyplnený, teraz môžete zobraziť reťazec
TabDocument.Output (AreaString);
Koniec cyklu;
// sa vytvorí tabuľkový dokument, teraz ho zobrazíme na obrazovke
TabDocument.Show ("Zoznam položiek");

Keď sa text skopíruje do modulu formulára, riadky začínajúce dvojitou lomkou "//" sa zvýraznia zelenou farbou - toto sú komentáre, ktoré popisujú, čo robí každý riadok kódu:


Zhrňme si, aké riadky programového kódu sú potrebné na vytvorenie zostavy:

  1. Je potrebné vytvoriť tabuľkový dokument, ktorý bude vyplnený časťami zostavy a zobrazený na obrazovke, to sa vykonáva riadkom "TabDocument = Nový tabuľkový dokument;"
  2. Musíte získať rozloženie reportu, z neho dostaneme štruktúru reportu po častiach (oblastiach), to sa robí riadkom "Layout = Get Layout (" Layout ")"
  3. Ak chcete zobraziť každú z oblastí, musíte ju získať z rozloženia a zobraziť ju v tabuľkovom dokumente, a to pomocou riadkov "AreaHap = Layout.GetArea (" Header ")" a "TabDocument.Out (AreaHap)"
  4. Ak potrebujete vyplniť parametre, ktoré sa stanú známymi až pri spustení programu, tak pred zobrazením oblasti je potrebné tieto parametre vyplniť, a to riadkom "AreaString.Parameters.Name = Selection.Name"
  5. A až keď je tabuľkový dokument naplnený všetkými potrebnými časťami zostavy, zobrazí sa na obrazovke, to sa vykonáva riadkom "TabDocument.Show (" Zoznam položiek ")"

A teraz môžete skontrolovať fungovanie správy - otvorte 1C v podnikovom režime (tlačidlo 1C: Enterprise v okne spustenia 1C). V hlavnej ponuke prejdite do ponuky súborov a kliknite na položku Otvoriť:


Nájdite a otvorte uložený súbor správy. Vo formulári, ktorý sa otvorí, kliknite na tlačidlo Generovať:


a dostaneme zoznam nomenklatúry:


Toto je len jeden zo spôsobov, ako vytvoriť zostavy v 1C. V nasledujúcich článkoch rozoberieme ďalšie.

Zvážte vytvorenie externého prehľadu v 1c 8 bez použitia systému na zostavovanie údajov. Na vytvorenie externej zostavy použijeme konfiguráciu Účtovníctvo 2.0, počiatočné údaje: „Napíšte zostavu o 62 účtovných účtoch, v ktorej sa budú zobrazovať obraty za zadané obdobie v kontexte protistrany a Dodávateľské zmluvy.

1. Vytvorte prehľad

Najprv si vytvoríme externý súbor reportu, na to prejdeme na 1c 8 v režime Konfigurátor, prejdite do ponuky Súbor -> Nový alebo kliknite na ikonu nový dokument.

V zozname vyberte položku Externá správa... Po vytvorení externej správy jej zadajte Názov (napr Najjednoduchšia správa) a uložte ho na disk. Pridáme aj dve rekvizity: Začiatok obdobia a Koniec obdobia typu dátum, budeme ich potrebovať na obmedzenie časového intervalu vzorkovania údajov pri generovaní prehľadu.

2. Vytvorenie rozloženia pre externú správu

Na vygenerovanie zostavy v 1c 8 potrebujete layout, ide o šablónu na výstup dát, v ktorej sú nastavené všetky potrebné parametre, nakreslené tabuľky atď. Pridajme nové rozloženie, na tento účel v strome metadát zostavy vyberte položku Rozloženie a stlačte tlačidlo Pridať, pri vytváraní vyberáme typ pre rozloženie Tabuľkový dokument.

Náš layout bude mať 4 oblasti:

  • Hlavička - v tejto oblasti zobrazíme názov zostavy, obdobie, za ktoré bola vygenerovaná a hlavičku tabuľky;
  • DataContractor - v tejto oblasti zobrazíme údaje o protistrane v tabuľke;
  • Údaje o zmluve kontraktora - v tejto oblasti zobrazíme v tabuľke údaje o protistrane;
  • Suterén - v tejto oblasti zobrazíme súčty za celý prehľad pre polia Príjem a Výdaj.

Začnime vytvárať oblasti rozloženia. Ak chcete vytvoriť oblasť v rozložení, vyberte požadovaný počet riadkov a stlačte Ponuka Tabuľka -> Názvy -> Priradiť názov(alebo Ctrl + Shift + N). Do oblasti Čiapka napíšte názov správy: Obrat 62 účtov, poďme kresliť pomocou nástroja Hranice hlavičku zostavy, ako aj nastavenie parametrov Začiatok obdobia a Koniec obdobia... Pomocou parametrov môžete zobraziť potrebné údaje v zostave, tomu sa budeme venovať v ďalšej fáze vývoja, a to pri písaní programového kódu zostavy. Ak chcete vytvoriť parameter v rozložení, vyberte požadovanú bunku, napíšte do nej názov parametra (bez medzier), kliknite naň pravým tlačidlom myši, v ponuke, ktorá sa otvorí, vyberte položku Vlastnosti... Vo vlastnostiach bunky na záložke Rozloženie vyberte náplň Parameter.

Potom bude názov parametra v bunke uzavretý v lomených zátvorkách (“<>“). V dôsledku toho oblasť Čiapka by mal vyzerať takto:

V oblasti DataContractor vytvoríme parametre pre zobrazenie názvu protistrany, ako aj pre príjem a výdaj pre 62 účtov pomocou nástroja Hranice Usporiadajme oblasť vo forme riadku tabuľky.

V oblasti Zmluva DataContractor vytvoríme parametre pre zobrazenie názvu zákazky, ako aj pre príjmy a výdajky na účte 62, pomocou nástroja Hranice usporiadame oblasť vo forme riadku tabuľky. Urobme malú odrážku pred parametrom Dohoda dodávateľa(Dá sa to urobiť rozdelením a zlúčením buniek. Kliknutím pravým tlačidlom myši na bunku -> Kombinovať alebo Rozbiť bunku), je potrebné, aby bolo v správe vidieť, že riadok pod zmluvou je v hierarchii nižšie ako riadok pre protistranu.

V oblasti Suterén Vytvorme parametre pre súčty príjmov a výdavkov.

V dôsledku toho by sme mali získať takéto rozloženie:

3. Vytvorenie formulára správy

Pre výstup dát, nastavenie periódy tvorby a tlačidiel Tvarovať naša správa bude potrebovať formulár. Ak chcete vytvoriť formulár, nájdite položku v strome metadát externej zostavy Formuláre a stlačte tlačidlo Pridať... Na prvej stránke návrhára formulárov nemusíte robiť žiadne zmeny, stačí kliknúť na tlačidlo Ďalej.

Na ďalšej stránke konštruktora vyberieme obe dostupné rekvizity ( Začiatok obdobia, Koniec obdobia) na umiestnenie vo formulári.

V dôsledku toho dostaneme nasledujúci formulár:

Ale v tejto podobe nám to nevyhovuje, urobíme v ňom nejaké zmeny:

  • Potiahnite tlačidlo Tvarovať zo spodného panela prehľadu do horného (pre používateľa to bude pohodlnejšie);
  • Natiahnite tvar vertikálne a horizontálne;
  • Usporiadajte polia Začiatok obdobia a Koniec obdobia horizontálne;
  • Pridajte do formulára ovládací prvok Pole tabuľkového dokumentu (zobrazí sa v ňom naša zostava), pomenujte ho TabDoc;
  • Vytvorme si tlačidlo na výber obdobia (po jeho stlačení sa zobrazí dialóg s pohodlným výberom požadovaného obdobia). Programový kód k nemu zatiaľ písať nebudeme, takže tlačidlo jednoducho umiestnime k poliam obdobia.

V dôsledku toho bude náš formulár vyzerať takto:

4. Programovanie

Po vytvorení formulára prehľadu sa pustíme do programovania. Na začiatok si vytvoríme postup pre zobrazenie dialógu výberu obdobia (tlačidlo sme na to už vytvorili v predchádzajúcom kroku). Kliknite pravým tlačidlom myši na tlačidlo a vyberte položku ponuky Vlastnosti, vo vlastnostiach tlačidla prejdite na kartu Diania, kde pomocou tlačidla s ikonou lupy vytvoríme postup Tlačidlo 1 Stlačte v module formulára.

Medzi formulárom a jeho modulom môžete prepínať pomocou záložiek v spodnej časti formulára

Na vyvolanie formulára výberu obdobia použijeme štandardný postup Účtovníctvo 2.0 zo všeobecného modulu WorkingWith Dialogs - HandlerSettingPeriodPressing, musíte do nej vložiť podrobnosti o prehľade ako parametre Začiatok obdobia a Koniec obdobia.

Postup Tlačidlo 1 Stlačte (prvok) WorkingWith Dialogues.HandlerPeriodSettingPressing (PeriodBeginning, PeriodEnd); Koniec procedúry

Teraz prejdime k písaniu kódu, ktorý vygeneruje a zobrazí náš prehľad. Vo formulárovom module už postup existuje ButtonShapePress ktorý sa vykoná po stlačení tlačidla Tvarovať, tam napíšeme náš kód. Začnime inicializáciou požadovaných premenných. Najprv si vytvorme premennú pre polia dokumentov tabuľky do ktorého budeme dáta vypisovať, to nie je potrebné, len sa skráti nahrávanie hovorov do neho, čiže programový kód bude pre čítanie zrozumiteľnejší.

TabDoc = Form Elements.TabDoc;

Získajte rozloženie externej správy pomocou funkcie Získať rozloženie (<ИмяМакета>) , parametru odovzdáme názov rozloženia a ak takéto rozloženie existuje, tak ho funkcia nájde.

Rozloženie = Získať rozloženie ("Rozloženie");

Po prijatí rozloženia vytvoríme premenné pre každú z jeho oblastí, použijeme na to metódu rozloženia GetArea (<ИмяОбласти>) .

AreaHeat = Layout.GetArea ("Hlavička"); ScopeDataContractor = Layout.GetScope ( "DataContractor"); ScopeDataContract = Layout.GetScope ("ContractData"); AreaFooter = Layout.GetArea ("Päta");

Vyčistime pole dokumentu tabuľky. Je to potrebné, aby sa pri každej novej generácii prehľadu vymazali staré údaje.

TabDoc.Clear ();

Teraz, keď je inicializácia premenných dokončená, prejdime k striedavému vypĺňaniu a zobrazovaniu oblastí rozloženia. Začnime čiapočkou. Ak si pamätáte, v tejto oblasti sme vytvorili dva parametre. Začiatok obdobia a Koniec obdobia, tam prenesieme hodnoty obdobia generovania prehľadu, na čo použijeme vlastnosť Parametre plocha rozloženia.

AreaHead.Parameters.PeriodStart = PeriodStart; AreaHead.Parameters.EndPeriod = EndPeriod;

Žiadne ďalšie akcie v oblasti Čiapka výrobca nie je potrebný, preto jeho pole zobrazíme v tabuľkovom dokumente.

TabDok.Display (AreaHap);

Ďalej napíšeme dotaz do databázy, pomocou ktorého budeme brať obraty na účte 62 z účtovného registra Samonosné... Definujme si premennú, v ktorej sa bude nachádzať naša požiadavka.

Žiadosť = nová Žiadosť;

Skôr ako začneme písať text požiadavky, odovzdajme mu požadované parametre. Keďže píšeme žiadosť o faktúru 62 účtovníctvo, potom mu najskôr vytvoríme parameter

Request.SetParameter ("Účet62", Plány účtov. Samopodporné.FindByCode ("62"));

Do požiadavky je potrebné preniesť aj obdobie generovania prehľadu. Nezabudnite, že pre obdobie vytvárania máme špeciálne podrobnosti správy a odovzdávame ich ako parametre.

Request.SetParameter ("PeriodBeginning", PeriodBeginning); Request.SetParameter ("EndPeriod", EndPeriod);

Začnime písať text požiadavky, urobíme to pomocou konštruktora dotazu. Mnohé návody píšu, že treba vedieť napísať dotaz ručne aj pomocou konštruktora, no v praxi to tak nie je. Pri úlohách, ktorým neustále čelí programátor 1C, je prioritou rýchlo a efektívne písať kód a pri ručnom písaní požiadavky do databázy je to takmer nemožné dosiahnuť, strávite veľa drahocenného času snahou o správne reprodukovať všetky konštrukty dotazov, nájsť preklepy, ktoré ste urobili pri písaní atď. Preto nestrácajte čas písaním dotazov ručne, ale použite konštruktor dotazov. Ušetrí vám to čas a umožní vám písať zložité otázky bez námahy. Ak chcete začať písať text požiadavky, napíšte kód:

Request.Text = "";

Potom umiestnite kurzor medzi úvodzovky, stlačte pravé tlačidlo myši a vyberte položku Konštruktéržiadosť. Otvorí sa okno návrhára dotazov.

Teraz musíme vybrať tabuľku databázy 1C 8, ktorú potrebujeme. Potrebujeme virtuálnu tabuľku Obratyúčtovný register Samonosné... Nájdeme ho na ľavej strane okna konštruktora

Presuňme to do oblasti Tabuľky a vyplníme parametre. Pre všetky tabuľky virtuálnych dotazov existuje špeciálna sada parametrov, ktorá umožňuje vybrať požadované údaje z hlavnej tabuľky (v našom prípade hlavnej tabuľky Účtovný register Samonosné). Otvorme okno parametrov virtuálnej tabuľky.

Vyplníme parametre obdobia, ktoré sme prešli do požiadavky. Ak chcete použiť parameter v texte požiadavky, napíšte symbol pred jeho názov ampersand (&)

Zostáva vyplniť podmienku pre účet bukh. účtovníctvo. Aby sme to dosiahli, nájdeme v parametroch virtuálnej tabuľky riadok Stav účtu a napíš tam

Účet v HIERARCHII (& Účet62)

Konštruktor môžete použiť aj na zostavenie podmienok kliknutím na tlačidlo s tromi bodkami.

Virtuálnemu stolu nie je potrebné klásť ďalšie podmienky, tak stlačte tlačidlo OK v okne parametrov virtuálnej tabuľky. Ďalej musíte z tabuľky vybrať polia, ktoré potrebujeme Samonosné.Obraty(konkrétne: Protistrana, Dohoda protistrany, Výnosy a Výdavky). Ak chcete zobraziť zoznam polí dostupných v tabuľke, ktorú sme vybrali, stlačte symbol „+“ vedľa jej názvu. Potom presuňte požadované polia do oblasti návrhára dotazu úplne vpravo, ktorá sa nazýva Polia. Ak otvoríme účtovú osnovu, uvidíme, že pre účet 62 analytika pre Protistranou je Subconto1 a podľa Zmluva dodávateľa - Subconto2.

Preto z polí virtuálnej tabuľky vyberáme Subconto1 a Subconto2... Keďže príjem a výdaj potrebujeme podľa sumy, vyberieme aj polia SumaTurnoverDt a Suma obratuKt

Vyplňte aliasy polí, ktoré sme si vybrali, prejdeme na kartu Odbory / Aliasy a nastavte požadované názvy polí.

Keďže v našej zostave budú údaje zobrazené hierarchicky (Na prvej úrovni je Protistrana a na druhej všetky jeho zmluvy), nastavíme výstup údajov v hierarchii pomocou Súčtov. Poďme na záložku v konštruktore výsledky... V poliach zoskupenia ťahajte postupne Protistrana a Dohoda dodávateľa a vo finále Prichádza a Spotreba.

Tým je práca v konštruktore dotazov dokončená, stlačte tlačidlo OK a vidíme, že text našej požiadavky sa objavil v kóde programu.

Request.Text = "VYBRAŤ | Samonosné obraty.Subkonto1 AKO protistrana, | SamonosnýObrat.Subkonto2 AKO Zmluva dodávateľa, | SamonosnýTurnover.AmountTurnoverDt AS Potvrdenie, | SamonosnýObrat.MnožstvoObratKt AS Spotreba| OD | Účtovná kniha.Samostatná.Obraty (& Začiatok obdobia, & Koniec obdobia, Účet V HIERARCHII (& Účet62),) AS Samonosný obrat VÝSLEDKY | SUM (Príchod), | AMOUNT (spotreba) | Softvér | protistrana, | Zmluva s dodávateľom";

Keď dokončíme písanie žiadosti, začnime s vypĺňaním oblastí DataContractor, DataAgreementContractor a Suterén... Všetky tieto oblasti vyplníme údajmi získanými pri realizácii požiadavky. Keďže náš dopyt obsahuje zoskupenia ( Protistrana a Dohoda dodávateľa) vyberte z neho údaje takto:

SelectContractor = Query.Run (). Select (QueryResultIndo.OnGroups);

Takto dostaneme záznamy so súčtom za všetky protistrany.

Pred prechodom vzorových údajov pomocou slučky inicializujeme premenné určené na výpočet celkových súčtov pre zostavu:

Celkový príjem = 0; Celková spotreba = 0;

Aby sa údaje zostavy zobrazovali hierarchicky (a rozprestierali sa pozdĺž „+“), nastavíme začiatok automatického zoskupovania riadkov tabuľkového dokumentu:

TabDoc.StartAutoGroupLines ();

Všetky prípravy sú u konca, teraz začnime prechádzať výsledky dotazu. Prechádzanie vykonáme pomocou slučky Až do

WhileSelectionContractor.Next () Cyklus EndCycle;

Na začiatku cyklu nastavte parametre na nulu Prichádza a Spotreba oblasti DataContractor... Načo to je? Predstavte si situáciu, že pre protistranu Strýko Vasya, príjem 10 a výdavok 5 a za to ďalšia protistrana Strýko Peťa nie je tam ani príjem ani náklad, v tomto prípade, ak neresetujeme parametre Prichádza a Spotreba, potom v rade podľa protistrany Strýko Peťa dostane príjem 5 a výdavok 10.

ScopeDataContractor.Parameters.Prihod = 0; ScopeDataContractor.Parameters.Expense = 0;

Potom oblasť vyplníme DataContractor vzorové údaje o položke

FillPropertyValues ​​​​(ScopeDataContractor.Parameters, SelectionContractor);

Po vyplnení údajov môžete zobraziť oblasť v Tabuľkový dokument Keďže používame automatické zoskupovanie liniek, musíme v zoskupení uviesť úroveň linky (v našom prehľade budú dve úrovne, pre dodávateľov je prvá pre zmluvy druhá).

TabDok.Withdraw (ScopeDataContractor, 1);

Teraz pre túto protistranu urobíme výber podľa jeho zmlúv.

SelectionContractorAgreement = SelectionContractor.Choose (BypassResultResult.On Groupings);

Prechádzanie vykonáme pomocou slučky Až do.

Kým SelectionContractor Agreement.Next () Cyklus Koniec cyklu;

V cykle podľa zmlúv protistrán vynulujeme parametre Prichádza a Spotreba, vyplňte oblasť Dohoda o údajoch z výberu a zobraziť ho v tabuľkovom dokumente na druhej úrovni evidencie.

ScopeDataContract.Parameters.Prihod = 0; ScopeDataAgreement.Parameters.Expense = 0; Vyplňte hodnoty vlastností ​​(ScopeDataContract.Parameters, SelectionContractorAgreement); TabDok.Withdraw (ScopeDataContract, 2);

V tomto cykle tiež pridávame aktuálne hodnoty k premenným na výpočet celkových hodnôt príjmov a výdavkov.

Celkový príjem = celkový príjem + výberová zmluva s dodávateľom. Príjem; Celkové náklady = Celkové náklady + Vzorová zmluva s dodávateľom. Náklady;

Tým je výstup údajov v oblasti hotový DataContractor, DataAgreementContractor dokončené, zostáva dokončiť automatické zoskupenie riadkov dokumentu tabuľky.

TabDoc.FinishAutoGroupLines ();

Plne slučky zodpovedné za výstup údajov v oblasti DataContractor a DataAgreementContractor vyzerať takto:

TabDoc.StartAutoGroupLines (); Kým SampleContractor.Next () Cyklus RegionDataContractor.Parameters.Prihod = 0; ScopeDataContractor.Parameters.Expense = 0; FillPropertyValues ​​​​(ScopeDataContractor.Parameters, SelectionContractor); TabDok.Withdraw (ScopeDataContractor, 1); SelectionContractorAgreement = SelectionContractor.Choose (BypassResultResult.On Groupings); Kým SelectionDogovKontragenta.Sleduyuschiy () Cycle ScopeDataDogov.Parametry.Prihod = 0; ScopeDataAgreement.Parameters.Expense = 0; Vyplňte hodnoty vlastností ​​(ScopeDataContract.Parameters, SelectionContractorAgreement); TabDok.Withdraw (ScopeDataContract, 2); Celkový príjem = celkový príjem + výberová zmluva s dodávateľom. Príjem; Celkové náklady = Celkové náklady + Vzorová zmluva s dodávateľom. Náklady; Koniec cyklu; Koniec cyklu; TabDoc.FinishAutoGroupLines ();

Zostáva vypísať súčty do oblasti Suterén a zobrazí samotnú oblasť Tabuľkový dokument.

AreaBoard.Parameters.TotalIncoming = TotalIncoming; AreaBoard.Parameters.TotalExpense = TotalExpense; TabDok.Display (Area Basement);

Tým sa dokončí proces písania externej správy pre 1C 8 bez použitia ACS. Teraz ho možno vygenerovať v režime 1C: Enterprise 8 a pridať do adresára Externé spracovanie Môžete si stiahnuť súbor správy, o ktorom sa hovorí v článku.

Pozrite si video o vytváraní externej tlače pre spravovanú aplikáciu:

Správy 1C 8.3 sú špeciálnym objektom metadát, ktorý je navrhnutý tak, aby vytvoril užívateľsky príjemnú prezentáciu údajov z databázových tabuliek 1C.

Poďme na to ako nastaviť zostavy, na čo slúžia, ako sa externé zostavy líšia od vstavaných a ako sa líšia zostavy od spracovania.

Na vytvorenie alebo prispôsobenie zostavy potrebujete poznať vstavané a. Čokoľvek sa dá povedať, jadrom takmer každej správy je počiatočná požiadavka, ktorá dostane údaje. Tieto údaje spracovávame a zobrazujeme v užívateľsky príjemnej forme.

Reporty sú hlavnou vecou každého informačného systému, preto spoločnosť 1C venovala vývoju reportov veľkú pozornosť a vytvorila veľké množstvo dizajnérov a mechanizmov na ich tvorbu.

Zvážte základné techniky vytvárania prehľadov

Ako vytvoriť správu v 1C pomocou rozloženia

Vytváranie pomocou rozloženia je najbežnejší spôsob. Často sa však k nemu uchýli zo zúfalstva, tk. týmto spôsobom vývojár úplne predpisuje každú akciu v kóde, čo znamená, že môžeme robiť čokoľvek. Iné mechanizmy sa tým nemôžu pochváliť.

Ale v tomto prípade budú musieť byť všetky faddle, menu a iné "mašle" písané ručne, čo je veľmi časovo náročné.

Získajte bezplatné videonávody 267 1C:

Generovanie zostavy pomocou Návrhára výstupných formulárov

Konštruktor výstupného formulára je mechanizmus zabudovaný do platformy, ktorý uľahčuje vývoj zostavy. Konštruktor je dostupný len pre bežné formuláre.

Projektant dostane požiadavku a všetky potrebné parametre budúcej správy a on následne vygeneruje moduly a formuláre správ. Mechanizmus je založený na objekte vstavaného jazyka 1C 8.2 - Zostavovač prehľadov.

Generovanie správy pomocou všeobecnej správy

Univerzálny prehľad má skvelú funkčnosť, pohodlné rozhranie nastavení, ktoré je používateľovi známe:

Zostavy založené na systéme skladania údajov

Toto je najprogresívnejšia metóda vytvárania správ v 1C, ktorú odporúča samotná 1C. sa objavil na platforme 1C vo verzii 8.1.

ACS vám umožňuje vytvárať jednoduché zostavy bez programovania, pretože má veľmi flexibilného a funkčného návrhára na vytváranie schémy zloženia údajov:

Vo všetkých najnovších konfiguráciách sa všetky zostavy píšu pomocou systému na zostavovanie údajov.

Ako sa externé prehľady líšia od vstavaných

Ako sa píše v dokumentácii - nič. Externý nástroj na vytváranie správ bol vytvorený na ladenie správ počas vývoja.

Jediný rozdiel pri vývoji riešenia spočíva v tom, že na externý prehľad nemôžete odkazovať „podľa názvu“, na rozdiel od vloženého prehľadu.

Ako sa správa líši od spracovania

Vlastne prakticky nič. Hlavným rozdielom je účel použitia objektu: zostavy sú potrebné na zobrazenie informácií, ale na zmenu informácií.

Hlavné rozdiely sú vo vlastnostiach: v zostavách môžete zadať schému zloženia základných údajov (ACS) a zadať nastavenia pre ukladanie parametrov zostavy.

Prihláste sa ako študent

Systém skladania údajov 1C 8.3 pre začiatočníkov: prvá správa o ACS

Ak ste nečítali úvod k tomuto modulu, prečítajte si ho:.

Na dokončenie lekcií budete potrebovať 1C 8,3 (nie nižšie 8.3.13.1644 ) .

Ak už máte nainštalovanú verziu 1C 8.3, použite ju. Ak nie, stiahnite si a nainštalujte vzdelávaciu verziu, ktorú 1C vydáva špeciálne na vzdelávacie účely:.

Na pracovnej ploche by sa mala zobraziť nasledujúca skratka:

Pre všetky lekcie z tohto cyklu budeme využívať mnou pripravenú databázu Gastronómov. Úplne sa zhoduje so základom, ktorý sme použili v školských moduloch pri štúdiu dopytov. Preto očakávam, že poznáte jej referenčné knihy a dokumenty.

Ak ste ho vymazali, stiahnite si ho znova na ďalšom, rozbaľte a do zoznamu databáz.

Konečne je pracovisko nastavené a teraz spolu vytvoríme náš prvý report pomocou systému na skladbu dát. Bude veľmi jednoduché demonštrovať všeobecné možnosti systému na zostavovanie údajov (skrátene SKD).

Stanovili sme si cieľ

Účel tohto návodu- vytvorte zostavu, ktorá v užívateľskom režime zobrazí zoznam klientov s nasledujúcimi poľami:

  • názov
  • Poschodie
  • Obľúbená farba klienta.

Správa musí byť externá. To znamená, že bude vytvorený a nakonfigurovaný v konfigurátore a potom uložený ako samostatný (externý) súbor na vašom počítači.

Na vygenerovanie takejto správy v 1C bude musieť používateľ spustiť databázu v používateľskom režime, otvoriť tento súbor a kliknúť na tlačidlo „Generovať“.

Choď!

Vytvorte prehľad

Spustite konfigurátor databázy Gastronom:

Z hlavnej ponuky vyberte položku „Súbor“ -> „Nový ...“:

Vyberieme "Externá správa":

Vytvorte schému zloženia údajov vo vnútri zostavy

Otvorilo sa okno na vytvorenie externej správy. Zadajte ako meno: " Lekcia 1"a potom stlačte tlačidlo" Schéma zloženia otvorených údajov":

Spustil sa tvorca schém. Súhlasím s predvoleným názvom " Rozloženie základných údajov"a stlačte tlačidlo" Pripravený":

Otvorilo sa hlavné pracovné okno s mnohými kartami a poliami, v ktorých prispôsobíme schému zloženia údajov.

Netreba sa toho báť – príležitostí je tu naozaj veľa, no nepotrebujeme ich všetky. Najmä na prvej hodine.

Teraz sme na záložke " Množiny údajov"Zostaneme pri tom."

Cez konštruktor napíšeme požiadavku

Vyžaduje to od nás systém skladania údajov (skrátene ACS). údaje, ktoré zobrazí používateľovi.

Najjednoduchší spôsob - napísať žiadosť do základne. V školách sme sa naučili písať a porozumieť dopytom – takže očakávam, že budete mať príslušné zručnosti.

Kliknite na zelená znamienko plus a v rozbaľovacom zozname vyberte položku " Pridať množinu údajov – dotaz":

Našou úlohou je napísať text požiadavky do tohto poľa. Už ste zabudli, ako sa to robí?

Dám vám tip:

V tomto dopyte sme vybrali tri polia („ názov", "Poschodie" a " Oblúbená farba") zo stola" Adresár.Klienti".

Neponáhľajte sa však písať tento text do poľa „Žiadosť“ ručne.

Teraz vytvoríme rovnaký dotaz vizuálne, len s pomocou myši. Táto metóda sa nazýva " Konštruktor dotazov".

Ak chcete zavolať tento konštruktor, stlačte kláves " Konštruktor dotazov..."v pravej hornej časti poľa" Žiadosť ":

V okne, ktoré sa otvorí, presuňte tabuľku " klientov"z prvého stĺpca do druhého, aby sme uviedli, aké údaje presne z tejto tabuľky budeme požadovať:

Dopadlo to takto:

Ďalej otvorme tabuľku" klientov"v druhom stĺpci podľa znamienka" Plus"zobraziť všetky jeho polia a potiahnuť pole" názov"z druhého stĺpca do tretieho, čo znamená, že z tejto tabuľky musíme zadať dopyt do poľa Názov ":

Dopadlo to takto:

Urobme to isté s poliami " Poschodie" a " Oblúbená farba". Výsledok bude takýto:

Stlačením tlačidla "OK" ukončíte konštruktor dotazu a uvidíte, že text dotazu bol automaticky pridaný do poľa "Dopyt".

Okrem toho, na základe textu požiadavky, 1C sám vytiahol názvy polí (oblasť nad žiadosťou), ktoré budú použité v schéme zloženia údajov:

Teraz, keď sme zostavili požiadavku, ACS vie, ako získať údaje pre správu.

Nastavenie prezentácie údajov

Nejako zostalo vizualizovať tieto údaje pre užívateľa vo forme tlačeného formulára. A práve tu dokáže ACS robiť zázraky!

Ak chcete vytvoriť taký zázrak, prejdite na stránku " nastavenie"a kliknite na tlačidlo návrhára nastavení ( Kúzelná palička):

V okne, ktoré sa otvorí, zadajte typ správy " zoznam" a stlačte " Ďalej":

V ďalšom okne vyberte (potiahnutím) polia, ktoré bude potrebné zobraziť v zozname (presunutím všetkého, čo máme k dispozícii: " Oblúbená farba", "názov" a " Poschodie"):

Získajte nasledujúci výsledok a stlačte tlačidlo " OK":

Konštruktor nastavení sa zatvoril a položka " Podrobné záznamy":

Správa je pripravená, skontrolujeme ju. Ak to chcete urobiť, najprv uložte správu ako externý súbor.

Uložte správu ako súbor

Otvorme položku hlavného menu " Súbor"->"Uložiť":

Uložím si ho na plochu pod názvom " Lekcia 1":

Kontrola zostavy v užívateľskom režime

Nakoniec zatvorme konfigurátor a prejdime do našej databázy v užívateľskom režime:

Používateľské meno „Administrátor“, žiadne heslo:

Vyberte položku " Súbor"->"Otvorené...":

A označíme súbor s prehľadom (uložil som ho na plochu pod názvom „Lesson1.erf“:

Otvorí sa formulár hlásenia, stlačte tlačidlo " Tvarovať":

Pripravený! Tu je naša tlač so zoznamom klientov, ich obľúbenou farbou a pohlavím:

Vytlačený formulár sa dá jednoducho vytlačiť. Ak to chcete urobiť, stačí vybrať položku " Súbor"->"Tuleň...":

Je to tak jednoduché, bez programovania sa nám podarilo vytvoriť plnohodnotný report, ktorý si používatelia môžu otvárať vo svojich databázach, generovať a tlačiť.

študenti - odpovedám poštou, ale najprv sa pozri.

Prihláste sa ako študent

Ak chcete získať prístup k školským materiálom, prihláste sa ako študent