Ako pridať dodatočnú správu v 1c 8.3. Pridanie externej správy do databázy

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, a to riadkom "TabDocument = Nový tabuľkový dokument;"
  2. Potrebujete 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 vykonávaní 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.

Samozrejme, 1C Accounting 8 má veľmi široké možnosti. Pomocou tohto programu je možné vykonávať mnoho rôznych úloh. Niekedy však štandardné vstavané nástroje stále chýbajú. Čo robiť v tomto prípade?

Nezabudnite si prečítať aj súvisiaci článok, ktorý vysvetľuje, čo je spracovanie. Ihneď budeme hovoriť o rozšírení štandardnej funkčnosti programu.

Povedzme, že potrebujete vykonať nejakú operáciu a začnete hľadať, ako to urobiť štandardná konfigurácie 1C Účtovníctvo. Podľa toho či čo presne to, čo chcete urobiť, existuje niekoľko spôsobov, ako problém vyriešiť.

Metóda jedna. Neštandardné použitie štandardných programových nástrojov... Zvyčajne sa to týka dokumentov. Napríklad sa vyžaduje, aby doklad vo výsledku tvoril také a také zaúčtovanie. Potom musíte nájsť dokument, ktorý má podobný význam, a podľa toho ho vyplniť, aj keď na prvý pohľad tento dokument 1C na to vôbec nie je určený.

Ak dokument tvorí transakcie Zavrieť na to, čo potrebujete, ale stále nie celkom tak, môžete zaúčtovať doklad a potom manuálne opraviť transakcie. Nebudem sa tu zaoberať zvláštnosťami neštandardného používania bežných dokumentov - to je zahrnuté v mojom kurze o 1C účtovníctve 8. Najdôležitejšie je ukázať trochu kreativity a znalosti konfigurácie a potom sa ukáže, že rozsah úloh, ktoré možno vykonať pomocou štandardnej (nezmenenej) konfigurácie 1C Enterprise Accounting, sa rozšíri.

Inač spočíva v úpravy konfigurácie... Napríklad jeden z mojich študentov mi raz povedal –“ Chcem mať tlačidlo na poprednom mieste v mojom programe "Koľko máme peňazí?" ". Avšak celkom oprávnená túžba! ( aj keď v skutočnosti už takáto správa v programe je)

Napriek možnosti upraviť účtovníctvo 1C podľa vlastného uváženia nebudeme túto možnosť zvažovať, pretože ide o činnosť programátorov 1C. Čo teda v tomto prípade ostáva bežnému používateľovi?

Bola tam dôležitá časť článku, ale bez JavaScriptu to nie je vidieť!

Odpoveď je veľmi jednoduchá - rozšíriť funkčnosť programu pomocou. Predovšetkým sa zameriame na externé správy a spracovanie.

To sa robí úplne jednoducho. Nájdeme na internete požadovanú zostavu (alebo spracovanie, podľa toho, čo je potrebné) a pripojíme ju k štandardnej konfigurácii 1C Accounting 8. Pre 1C Accounting 8.2 prejdite do menu "Súbor / Otvoriť ..." alebo stlačte tlačidlo Otvorené na paneli s nástrojmi a potom v okne Prieskumník, ktoré sa otvorí, zadajte externý súbor správy/spracovania. Príklad je na obrázku nižšie.


"A ako pripojiť externý prehľad / spracovanie vo verzii 1C Accounting 8.3?"- spýtajú sa majitelia novej verzie 1C Enterprise. Skoro to isté. Opäť pripomínam, že rozdiel je len v rozhraní. Pozrite si príklad pre účtovníctvo 1C 8.3 nižšie.

site_

Ako môžete vidieť z vyššie uvedených príkladov, externé zostavy a spracovanie sú prepojené rovnakým spôsobom, ako sa otvárajú bežné súbory v akomkoľvek inom programe.

Po výbere súboru sa otvorí externá správa / spracovanie a môžete ich použiť, ako keby boli zabudované do konfigurácie účtovníctva 1C. Za zmienku tiež stojí, že musíte mať potrebné prístupové práva k databáze.

Tip: Uložte externé správy a spracovanie, ktoré používate, do špeciálne vytvorenej zložky- je to pohodlné. Priečinok je možné vytvoriť v priečinku s databázou účtovníctva 1C (ak máte databázu súborov); pre pohodlie môžete zmeniť ikonu priečinka.

Prečo sa nazývajú „externé“?

Pretože keď sa pripojíte, otvorí sa externý súbor, ktorý nemá nič spoločné s konfiguráciou účtovníctva 1C. Samotný súbor nezabudované do konfigurácie, ale získa iba prístup k údajom databázy.

Bezpečnosť zásuvných modulov

Ak sú správy iba čítať vašu základňu, ale nič s nimi nerobia, potom spracovanie smieť... Všetko samozrejme závisí od toho, o aký druh spracovania ide a na aké účely je určené. V každom prípade môžeme odporučiť nasledovné.

Stiahnite si externé liečby iba z dôveryhodných zdrojov! Pamätajte - poškodenie databázy v dôsledku chyby alebo úmyselného konania autora spracovania môže viesť k vážnym problémom. Pochybnosť – pred začatím spracovania si vytvorte záložnú kópiu databázy, ktorú ste osobne netestovali!

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

V hornom menu prejdite na servis->->.

Potom sa zobrazí formulár zoznamu adresárov. V hornom menu kliknite na Pridať.

Objavilo sa okno na pridanie nového prehľadu. Stlačte gombík Otvorené.

Vyberte súbor s požadovaným prehľadom a kliknite Otvorené... Po pridaní súboru v prípade potreby zmeňte názov zostavy (ako sa bude zobrazovať v zozname). Tlačiť OK.

V dôsledku toho sa v zozname zobrazí nový prehľad.

Potom je možné zostavu použiť, pridávanie je dokončené. Ak chcete tento prehľad otvoriť neskôr, prejdeme aj na servis->Dodatočné správy a spracovanie->Ďalšie externé správy.

Pre BP 3.0, ZUP 3.0, UT 11, ERP 2.0.

Ak chcete pridať externú zostavu v konfiguráciách 1C: Enterprise 8.3 v spravovanom rozhraní (napríklad Accounting 3.0), zadáme zodpovedajúcu časť programu:


Je potrebné, aby bol zapnutý znak používania ďalších prehľadov, postupujte podľa hypertextového odkazu:

V zozname, ktorý sa otvorí, stlačte tlačidlo Vytvorte:


Potom sa ihneď otvorí dialógové okno pre výber súboru s výkazom, v ktorom je potrebné vybrať požadovaný súbor (v mojom prípade ide o súbor s rozborom plánovaných a skutočných nákladov).

Teraz musíte nakonfigurovať ubytovanie(miesto programu, kde bude správa dostupná):


Ľubovoľne vyberieme požadovanú časť programu zo zoznamu:


Teraz je potrebné zaznamenať zmeny do externého vysvedčenia:

Teraz otvoríme správu z rozhrania programu:


Zoznam je zatiaľ prázdny, kliknite Prispôsobiť zoznam:


Vo výberovom formulári označte náš prehľad zaškrtnutím:


Teraz sa objavil na zozname:


Pomocou tlačidla Vykonať otvorí sa formulár správy:


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(To sa dá 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é... Zadefinujme 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. Samonosné.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ď. Nestrácajte preto č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 dopytov 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: