itthon / Windows Leckék / Külső jelentés hozzáadása az adatbázishoz. Külső jelentés hozzáadása az adatbázishoz Külső jelentések 1s-hez 8.3 hogyan kell csinálni

Külső jelentés hozzáadása az adatbázishoz. Külső jelentés hozzáadása az adatbázishoz Külső jelentések 1s-hez 8.3 hogyan kell csinálni

A jelentések készítése minden számviteli rendszer egyik fő funkciója. Milyen típusú jelentések léteznek az 1C Accounting 3.0-ban, hogyan konfigurálják a jelentéseket az 1C Accounting 8.3-ban, és milyen eszközök léteznek új jelentések létrehozásához - ma megnézzük.

A szabványos jelentések típusai

A vállalat 1C számviteli programja kezdetben előre telepítve van a jelentések széles skálájával, amelyek lehetővé teszik az összes szükséges információ megszerzését. Teljes listájuk a „Jelentések/Szabványos jelentések” részben található:

Ezenkívül a program minden része más típusú szabványos jelentéseket is tartalmaz, például az 1C 8.3 fizetési jelentéseit a „Bérek és személyzet/bérezési jelentések” részben tárolják.

Minden jelentésben lehetőség van a jelentés „további testreszabására”, nevezetesen néhány további mezőt hozzáadhat vagy eltávolíthat, csoportosítást, kijelölést stb.

Tekintsük a beállítási lehetőséget a „Számlamérleg” szabványos jelentéshez egy további mező hozzáadásával (válassza ki a 10-es számlát). Ehhez a „Beállítások megjelenítése” gombbal lépjen a „További mezők” elemre, adjon hozzá egy új mezőt, majd a kiválasztási űrlapon lépjen arra a mezőre, amelyre szükségünk van, például a cikkszám megjelenítéséhez a jelentésben, válassza ki a „Cikkszám” mező, amely a „Nómenklatúra” mezőben található (a mező kibontásához kattintson a „+” gombra):


A „Létrehozás” gombra kattintás után megjelenik az általunk kiválasztott további mező.

Példaként vegyünk egy olyan helyzetet, amikor a jelentés megköveteli a „boot” szót tartalmazó tételek teljes listáját a névben. Mit kell tennem? A „Beállítások megjelenítése” gombra kattintva lépjen a „Kiválasztás” fülre, adjon hozzá egy új mezőt, és a megjelenő ablakban a „+” mező „Nómenklatúra” elemét megnyitva válassza a „Név” lehetőséget.


A jelentés elkészítése után egy nómenklatúrát kapunk, amely csak az általunk a névben megadott értéket tartalmazza.

Jelentések készítése dokumentumonként

A „Szabványos jelentések” részben található egy univerzális jelentés, amely lehetővé teszi az alábbi konfigurációs objektumokból származó információk megjelenítését:

  • Dokumentum;
  • Könyvtár;
  • Felhalmozási nyilvántartás;
  • Információk nyilvántartása;
  • Számítási regiszter.

Nézzünk példákat azokra a helyzetekre, amikor egy jelentés segít a felhasználónak abban, hogy ne külső jelentéseket készítsen, hanem szabványos beállítási mechanizmust használjon.

Például létre kell hoznunk egy jelentést, amely tükrözi egy adott partnertől egy bizonyos időszakban kapott összes árut. Ehhez a jelentés fejlécében válassza ki a legördülő listából az objektum típusát – „Dokumentum”, az objektum típusát – „Nyugta (okiratok, számlák)”, és adja meg a típust – „Áru”.




*A Partner mező kezdetben nincs ott.

Az „Összehasonlítás típusa” mezőben állítsa be az „Egyenlő” értéket, az „Érték” mezőben válassza ki a kívánt partnert a címtárból.


A jelentés tetején jelölje meg a szükséges időszakot, és hozza létre a jelentést.


Az általunk elvégzett beállításokat elmentheti: ehhez kattintson a „Tovább/Mentés” gombra.

Tekintsünk egy olyan helyzetet, amikor a szabályozott jelentés megfelelő elkészítése érdekében bizonylatonként ellenőrizni kell az „Elkülönült áfa-elszámolás” nyilvántartásában szereplő összes mozgást.

Ehhez a jelentés fejlécében válassza ki az objektum típusát a legördülő listából - „Felhalmozási nyilvántartás”, a következő mezőben válassza ki az objektum típusát - „Egyenlegi áfa elszámolás”, az utolsó mezőben válassza ki a típust - „Egyenlegek és a forgalom”.

Ahhoz, hogy a jelentés információkat jelenítsen meg a dokumentumok kontextusában, kattintson a „Beállítások megjelenítése” gombra a jelentésbeállítások megnyitásához, majd lépjen az „Indikátorok” fülre, adjon hozzá egy új mezőt, és a megjelenő ablakban válassza ki a „Regisztrátor” mező (az „nyilvántartó” az a bizonylat, amely a felhalmozási nyilvántartás mentén mozgást tartalmaz). Az újonnan hozzáadott mező alapértelmezés szerint a mezőlista alján jelenik meg: a „kék nyilak” segítségével a „Regisztrátor” mezőt a lista elejére helyezzük.


Ebben a cikkben megvizsgáltuk, hogy milyen lehetőségek állnak rendelkezésre az 1C Accounting 8 jelentéskészítéssel való munkavégzéshez, hogyan kell használni a jelentésbeállításokat, és milyen információk érhetők el egy univerzális jelentés használatával.

Fontolja meg egy külső jelentés létrehozását az 1C 8-ban adatösszetételi rendszer használata nélkül. Külső jelentés készítéséhez a Számvitel 2.0 konfigurációt használjuk, a kezdeti adatokat: „Jelentés írása a 62-es számviteli számlán, amelyben a kontextusban megjelenik a megadott időszak forgalma. ÜgyfelekÉs A szerződő felek szerződései.

1. Hozzon létre egy jelentést

Először is hozzunk létre egy külső jelentésfájlt, ehhez menjünk az 1s 8-ra módban Konfigurátor, menjünk a menühöz Fájl -> Új, vagy kattintson az ikonra új dokumentumot.

Válassza ki az elemet a listából Külső jelentés. A külső jelentés létrehozása után adjon neki nevet (pl SimplestReport), és mentse a lemezre. Két részletet is hozzáadunk: Az időszak kezdeteÉs Időszak vége típus dátum, szükségünk lesz rájuk, hogy korlátozzuk az adatmintavételezési időintervallumot a jelentés generálásakor.

2. Hozzon létre egy külső jelentés elrendezést

Jelentés generálásához az 1C 8-ban elrendezésre van szüksége, ez egy sablon az adatok megjelenítéséhez, amelyben az összes szükséges paraméter be van állítva, táblázatok vannak rajzolva stb. Adjunk hozzá egy új elrendezést; ehhez válassza ki az elemet a jelentés metaadatfájában Elrendezésekés nyomja meg a gombot Hozzáadás, létrehozásakor válassza ki az elrendezés típusát táblázatos dokumentum.

Elrendezésünk 4 területből áll majd:

  • Fejléc - ezen a területen jelenítjük meg a jelentés nevét, azt az időszakot, amelyre vonatkozóan készült, és a táblázat fejlécét;
  • Partneradatok - ezen a területen táblázatban jelenítjük meg a partner adatait;
  • DataCounterparty Agreement - ezen a területen táblázatban jelenítjük meg a partnerszerződés adatait;
  • Lábléc - ezen a területen a teljes jelentés összértékét jelenítjük meg a Bevétel és a Kiadás mezőkhöz.

Kezdjük el az elrendezési területek létrehozását. Ha egy területet szeretne létrehozni az elrendezésben, válassza ki a kívánt számú sort, majd kattintson a gombra Menü táblázat -> Nevek -> Név hozzárendelése(Vagy Ctrl + Shift + N). A régióba Egy sapkaÍrjuk a jelentés nevét: A forgalom 62 számít, rajzoljon az eszköz segítségével Határok jelentés fejlécét, és állítsa be a paramétereket is Az időszak kezdeteÉs Időszak vége. Paraméterek segítségével megjelenítheti a jelentésben a szükséges adatokat, ezzel a fejlesztés következő szakaszában, mégpedig a riportkód írásánál fogunk foglalkozni. Paraméter létrehozásához az elrendezésben válassza ki a kívánt cellát, írja be a paraméter nevét (szóközök nélkül), kattintson rá jobb gombbal, válassza ki a megnyíló menü elemét Tulajdonságok. A fül cellatulajdonságaiban Elrendezés válasszon kitöltést Paraméter.

Ezt követően a paraméter neve a cellában szögletes zárójelek ("<>“). Ennek eredményeként a terület Egy sapkaígy kell kinéznie:

A területen DataCounterparty az eszköz segítségével paramétereket hozunk létre a partner nevének megjelenítéséhez, valamint a 62-es számla bevételéhez és kiadásához Határok Tervezzük meg a területet táblázatsorként.

A területen DataCounterparty megállapodás Készítsünk paramétereket a szerződés nevének megjelenítéséhez, valamint a 62-es számla bevételéhez és kiadásához, a Határok eszközzel táblázatsorként alakítjuk ki a területet. Tegyünk egy kis behúzást a paraméter elé Ügyfélszerződés(ez megtehető cellák felosztásával és összevonásával. Kattintson jobb gombbal a cellára -> Összeolvad vagy Felosztott cella), azért van rá szükség, hogy a jelentés lássa, hogy a szerződés sora alacsonyabban van a hierarchiában, mint a szerződő fél sora.

A területen Pince Hozzon létre paramétereket a bevételek és kiadások végösszegéhez.

Ennek eredményeként egy ilyen elrendezést kell kapnunk:

3. Hozzon létre egy jelentési űrlapot

Az adatok megjelenítéséhez állítsa be a képzési időszakot és a gombot Forma jelentésünkhöz formanyomtatványra lesz szükség. Űrlap létrehozásához keresse meg az elemet a külső jelentés metaadatfájában Űrlapokés nyomja meg a gombot Hozzáadás. Az űrlaptervező első oldalán nem kell semmilyen változtatást végrehajtani, csak a gombra kell kattintani További.

A tervező következő oldalán válassza ki mindkét elérhető adatot ( Az időszak kezdete, Időszak vége) az űrlapon való elhelyezéshez.

Ennek eredményeként ezt az űrlapot kapjuk:

De ebben a formában nem vagyunk megelégedve, változtassunk rajta:

  • Húzzuk a gombot Forma a jelentés alsó paneljétől a tetejéig (ez kényelmesebb lesz a felhasználó számára);
  • Nyújtsa ki az alakzatot függőlegesen és vízszintesen;
  • Rendezzük el a mezőket Az időszak kezdeteÉs Időszak vége vízszintesen;
  • Adjunk hozzá egy Spreadsheet Document Field vezérlőelemet az űrlaphoz (a jelentésünk ebben fog megjelenni), adjunk neki nevet TabDoc;
  • Hozzon létre egy időszakválasztó gombot (ha rákattint, megjelenik egy párbeszédablak, ahol kényelmesen kiválaszthatja a kívánt időszakot). A programkódot még nem írjuk meg, ezért csak a gombot helyezzük a periódusmezők mellé.

Ennek eredményeként az űrlapunk így fog kinézni:

4. Programozás

A jelentés űrlap elkészítése után kezdjük el a programozást. Először hozzunk létre egy eljárást egy periódusválasztó párbeszédpanel megjelenítésére (erre az előző szakaszban már készítettünk egy gombot). Kattintson a jobb gombbal a gombra, és válassza ki a menüpontot Tulajdonságok, a gomb tulajdonságainál lépjen a fülre Események, ahol a nagyító ikonnal ellátott gomb segítségével eljárást készítünk Gomb 1 Nyomja meg az űrlap modulban.

Az űrlap alján található fülek segítségével válthat az űrlap és a modulja között

Az időszakválasztó űrlap meghívásához a szokásos eljárást alkalmazzuk Számvitel 2.0 közös modulból A párbeszédpanelek használata – HandlerPeriodSettingPress, át kell adnia neki a jelentés részleteit paraméterként Az időszak kezdeteÉs Időszak vége.

Eljárás 1. gombnyomás (elem) Dialogs.PeriodSettingHandlerPressing(PeriodStart,PeriodEnd); Az eljárás vége

Most pedig folytassuk a jelentésünket generáló és megjelenítő kód megírásával. Az űrlapmodulnak már van eljárása ButtonGeneratePress, amely a gomb megnyomásakor kerül végrehajtásra Forma, ide írjuk a kódunkat. Kezdjük a szükséges változók inicializálásával. Először is hozzunk létre egy változót a számára táblázatok dokumentummezői amelybe adatokat fogunk kiadni, erre nincs szükség, csak a rá irányuló hívások rögzítése lerövidül, ami azt jelenti, hogy a programkód jobban olvasható lesz.

TabDoc = FormElements.TabDoc;

Nézzük meg a külső jelentés elrendezését a függvény segítségével GetLayout(<ИмяМакета>) , az elrendezés nevét paraméterként adjuk át, és ha létezik ilyen elrendezés, akkor a függvény megkeresi.

Layout = GetLayout("Layout" );

Az elrendezés beérkezése után hozzunk létre változókat az egyes területeihez, ehhez használjuk a layout módszert GetArea(<ИмяОбласти>) .

AreaHeader = Layout.GetArea("Fejléc" ); AreaDataAccount = Layout.GetArea( "Vállalkozó adatai"); AreaDataContract = Layout.GetArea("DataContract" ); AreaFooter = Layout.GetArea("Lábléc" );

Töröljük a táblázatos dokumentum mezőjét. Erre azért van szükség, hogy minden alkalommal, amikor új jelentés készül, a régi adatok törlődjenek.

TabDoc.Clear();

Most, hogy a változók inicializálása befejeződött, térjünk át az elrendezési területek egyenkénti kitöltésére és megjelenítésére. Kezdjük a fejléccel. Ha emlékszel, két paramétert hoztunk létre ezen a területen Az időszak kezdeteÉs Időszak vége, átadjuk oda a jelentéskészítési időszak értékeit, erre használjuk az ingatlant Lehetőségek elrendezési területek.

AreaHeader.Parameters.PeriodStart = PeriodStart; AreaHeader.Parameters.EndPeriod = EndPeriod;

Nincs több művelet a területtel Egy sapka A gyártóra nincs szükség, ezért a mezőjét táblázatos dokumentumban jelenítjük meg.

TabDoc.Output(AreaHead);

Ezután írunk egy lekérdezést az adatbázisba, amivel a számlaforgalmat vesszük 62 a számviteli nyilvántartásból Önfenntartó. Adjunk meg egy változót, amelyben a kérésünk elhelyezkedik.

Request = új kérés;

Mielőtt elkezdenénk írni a kérés szövegét, adjuk át neki a szükséges paramétereket. Mivel számlakérést írunk 62 könyvelést, akkor először ehhez készítünk egy paramétert

Request.SetParameter("Account62", Számlatáblázatok. Önfenntartó. Keresés kód szerint("62" ));

A jelentéskészítési időszakot is át kell vinni a kérésbe. Ne feledje, hogy a generálási időszakra külön jelentésadatokkal rendelkezünk, és ezeket paraméterként adjuk át.

Request.SetParameter("Időszak kezdete", Időszak kezdete); Request.SetParameter("Időszak vége", Időszak vége);

Kezdjük el írni a lekérdezés szövegét, ezt a lekérdezéstervező segítségével fogjuk megtenni. Sok oktatóanyagban azt írják, hogy manuálisan és konstruktor segítségével is tudni kell lekérdezést írni, de a gyakorlatban ez nem így van. Azokban a feladatokban, amelyekkel az 1C programozó folyamatosan szembesül, a prioritás a gyors és hatékony kódírás, és amikor manuálisan ír le egy lekérdezést az adatbázisba, ezt szinte lehetetlen elérni; sok értékes időt fog tölteni az összes lekérdezési struktúra helyes reprodukálásával és az írás közben elkövetett elírások megtalálása stb. Ezért ne pazarolja az idejét a lekérdezések kézi megírásával, hanem használja a lekérdezéskonstruktort. Időt takarít meg, és lehetővé teszi bonyolult lekérdezések írását különösebb erőfeszítés nélkül. A kérés szövegének írásához írjuk be a kódot:

Request.Text = "" ;

Ezután vigye a kurzort az idézőjelek közé, kattintson a jobb gombbal és válassza ki Konstruktőr kérés. Megnyílik a lekérdezéstervező ablak.

Most ki kell választanunk a szükséges 1C 8 adatbázis táblát, szükségünk van egy virtuális táblára Forradalmak számviteli nyilvántartás Önfenntartó. Keressük a tervezőablak bal oldalán

Vigyük át a területre Táblázatokés kezdjük el kitölteni a paramétereket. Minden virtuális lekérdezési táblához van egy speciális paraméterkészlet, amely lehetővé teszi a szükséges adatok kiválasztását a fő táblából (esetünkben a fő tábla Számviteli nyilvántartás Önfenntartó). Nyissuk meg a virtuális tábla paraméterei ablakot.

Töltsük ki a kérésnek átadott időszak paramétereit. Ha paramétert szeretne használni a kérés szövegében, a szimbólumot a neve elé kell írnia "és" (&)

Marad a számviteli számla feltételének kitöltése. könyvelés. Ehhez keresse meg a sort a virtuális tábla paraméterei között Számla állapotaés oda írunk

Fiók A HIERARCHIABAN (&Account62)

A feltételek konstruktort a három ponttal ellátott gombra kattintva is használhatjuk.

Nem kell több feltételt szabni a virtuális asztalnak, ezért kattintsunk a gombra rendben a virtuális tábla paraméterablakban. Ezután ki kell választanunk a táblázatból a szükséges mezőket Önfenntartó.Forgalom(ugyanis: Partner, szerződő fél megállapodás, bevétel és kiadás). Az általunk kiválasztott táblázatban elérhető mezők listájának megtekintéséhez kattintson a neve melletti „+” jelre. Ezután húzza a szükséges mezőket a lekérdezéstervező jobb szélső területére, melynek neve: Mezők. Ha kinyitjuk a számlatükört, akkor ezt látni fogjuk a számlánál 62 az elemzés bekapcsolva A szerződő fél számára ez a Subconto1, és által Partnerszerződés - Subconto2.

Ezért a virtuális tábla mezőiből választunk Subconto1És Subconto2. Mivel a bevételekre és kiadásokra összeg szerint van szükségünk, a mezőket is kiválasztjuk ÖsszegForgalomDtÉs ÖsszegForgalomKt

Töltse ki az általunk kiválasztott mezők álneveit, ehhez lépjen a fülre Szakszervezetek/Álnevekés állítsa be a szükséges mezőneveket.

Mivel jelentésünkben az adatok hierarchikusan jelennek meg (az Ügyfél az első szinten, az összes szerződése a másodikon van), így az adatok megjelenítését a hierarchiában a Totals segítségével konfiguráljuk. Lépjünk a tervező lapjára Eredmények. Sorban húzza a csoportosító mezőkbe ÜgyfélÉs Ügyfélszerződés, és a döntőben EljövetelÉs Fogyasztás.

Ezzel befejeződik a munka a lekérdezéskonstruktorban, kattintson a gombra rendbenés azt látjuk, hogy a kérésünk szövege megjelenik a programkódban.

Query.Text = "VÁLASZTÁS | Self-supportingTurnover.Subconto1 AS szerződő fél, | Self-supportingTurnover.Subconto2 AS szerződő fél megállapodás, | Self-supportingTurnover.AmountTurnoverDt AS nyugta, | ÖnfenntartóForgalom.ÖsszegForgalomKt AS Költség|FROM | Számviteli nyilvántartás. Önelszámolás. Forgalom (&időszak eleje, &időszak vége, számla HIERARCHIABAN (&62. számla),) AS Önelszámolási forgalom|EREDMÉNYEK | ÖSSZEG(Bevétel), | ÖSSZEG(Kiadás) |PO | szerződő fél, | Ügyfélszerződés";

Miután befejeztük a kérés megírását, kezdjük el a területek kitöltését DataCounterparty, DataAgreementCounterpartyÉs Pince. Mindezeket a területeket kitöltjük a kérés teljesítésekor kapott adatokkal. Mivel a lekérdezésünk csoportosításokat tartalmaz( ÜgyfélÉs Ügyfélszerződés) válasszon belőle adatokat az alábbiak szerint:

SelectionCounterpart = Request.Execute().Select(BypassQueryResult.ByGrouping);

Így minden szerződő félre vonatkozóan megkapjuk az összesített nyilvántartást.

Mielőtt a mintaadatokat hurok segítségével bejárnánk, inicializáljuk a jelentés összesített eredményének kiszámításához használt változókat:

Összes bejövő = 0; Teljes fogyasztás = 0;

Annak érdekében, hogy a jelentés adatai hierarchiában jelenjenek meg (és a „+“ mentén elforgatva), állítsuk be a táblázatos dokumentum sorai automatikus csoportosításának kezdetét:

TabDoc.StartAutoGroupingRows();

Minden előkészület befejeződött, most kezdjük el a lekérdezés eredményeinek feltérképezését. A bejárást hurok segítségével hajtjuk végre Viszlát

Míg Select Account.Next() Cycle EndCycle ;

A ciklus elején állítsa vissza a paramétereket EljövetelÉs Fogyasztás vidék DataCounterparty. Mire való? Képzeljünk el egy olyan helyzetet, amikor a szerződő fél Vasya bácsi, a bevétel 10, a kiadás pedig 5, és a következő partner esetében Petya bácsi ebben az esetben nincs bevétel vagy kiadás, ha nem állítjuk vissza a paramétereket EljövetelÉs Fogyasztás, majd sorban partnerenként Petya bácsi lesz 5 bevétel és 10 kiadás.

AreaDataAccount.Parameters.Receipt = 0; AreaDataAccount.Parameters.Expense = 0;

Ezt követően feltöltjük a területet DataCounterparty mintaelem adatok

FillPropertyValues(AreaAccountData.Parameters,SelectionAccount);

Az adatok kitöltése után megjelenítheti a területet táblázatos dokumentum, Mivel a sorok automatikus csoportosítását használjuk, a csoportosításban meg kell jelölnünk a sor szintjét (jelentésünk kétszintű lesz, a szerződő felek esetében az első a szerződéseknél).

TabDoc.Output(AreaDataAccount,1);

Most ennél a partnernél a szerződései alapján választunk ki.

SelectionCounterparty Agreement = SelectionCounterparty.Select(BypassQueryResult.ByGroups);

A bejárást hurok segítségével hajtjuk végre Viszlát.

Míg SelectionCounterparty Agreement.Next() Loop EndCycle ;

A partnerszerződések ciklusában állítsuk vissza a paramétereket EljövetelÉs Fogyasztás, töltse ki a területet Adatszerződés a mintából, és megjelenítse azt egy táblázatos dokumentumban a rekordok második szintjén.

AreaDataContract.Parameters.Receipt = 0; AreaDataContract.Parameters.Expense = 0; Töltse ki az inPropertyValues-t (AreaDataAgreement.Parameters,SelectionCounterpartyAgreement); TabDoc.Output(AreaDataContract,2);

Ebben a ciklusban is hozzáadjuk az aktuális értékeket a változókhoz a bevételek és kiadások összértékének kiszámításához.

TotalReceipt = TotalReceipt + SelectionCounterpartyAgreement.Receipt; TotalExpense = TotalExpense + SampleCounterparty Agreement.Expense;

Ezzel lezárul az adatok kimenete a területen DataCounterparty, DataAgreementCounterparty befejezve, már csak a táblázatos dokumentum sorainak automatikus csoportosítását kell elvégezni.

TabDoc.FinishAutoGroupingRows();

Teljes ciklusok, amelyek felelősek az adatoknak a területre történő kiadásáért DataCounterpartyÉs DataAgreementCounterpartyígy néz ki:

TabDoc.StartAutoGroupingRows(); Míg SelectionAccount.Next() Loop AreaDataAccount.Parameters.Receipt = 0 ; AreaDataAccount.Parameters.Expense = 0 ; FillPropertyValues(AreaAccountData.Parameters,SelectionAccount); TabDoc.Output(AreaDataAccount,1); SelectionCounterparty Agreement = SelectionCounterparty.Select(BypassQueryResult.ByGroups); Míg SelectionCounterparty Agreement.Next() Loop AreaDataAgreement.Parameters.Receipt = 0 ; AreaDataContract.Parameters.Expense = 0 ; Töltse ki az inPropertyValues-t (AreaDataAgreement.Parameters,SelectionCounterpartyAgreement); TabDoc.Output(AreaDataContract,2); TotalReceipt = TotalReceipt + SelectionCounterpartyAgreement.Receipt; TotalExpense = TotalExpense + SampleCounterparty Agreement.Expense; EndCycle ; EndCycle ; TabDoc.FinishAutoGroupingRows();

Marad a végleges adatok megjelenítése a területen Pinceés adja ki magát a területet táblázatos dokumentum.

AreaBasement.Parameters.TotalIncoming = TotalIncoming; AreaBasement.Parameters.TotalConsumption = TotalConsumption; TabDoc.Output(AreaFooter);

Ezzel befejeződik az 1C 8-hoz tartozó külső jelentés írási folyamata beléptető rendszer használata nélkül. Most 1C:Enterprise 8 módban generálható és hozzáadható a könyvtárhoz Külső feldolgozás A cikkben tárgyalt jelentésfájl letölthető a címről.

Nézzen meg egy videót egy külső nyomtatható anyag létrehozásáról egy felügyelt alkalmazáshoz:

Jelentkezzen be diákként az oldalra

1C 8.3 adatösszetétel rendszer kezdőknek: első jelentés az SKD-ről

Ha nem olvasta el a modul bevezetőjét, kérjük, olvassa el: .

A leckék elvégzéséhez, amire szüksége lesz 1C 8.3 (nem alacsonyabb 8.3.13.1644 ) .

Ha már telepítve van az 1C 8.3-as verziója, használja azt. Ha nem, töltse le és telepítse az oktatási verziót, amelyet az 1C kifejezetten oktatási célokra gyárt: .

A következő parancsikonnak kell megjelennie az asztalon:

A sorozat összes leckéhez az általam készített Gastronom adatbázist fogjuk használni. Teljesen egybeesik azzal az alappal, amelyet az iskolai modulokban használtunk a lekérdezések tanulmányozása során. Ezért elvárom, hogy ismerje referenciakönyveit és dokumentumait.

Ha törölte, töltse le újra a következővel, csomagolja ki és adja hozzá az adatbázisok listájához.

Végül elkészült a munkapad, és most elkészítjük közösen az első jelentésünket az adatösszeállítási rendszer segítségével. Nagyon egyszerű lesz bemutatni egy adatösszetételi rendszer általános képességeit (rövidítve SKD).

Cél kitűzése

A lecke célja- hozzon létre egy jelentést, amely felhasználói módban megjeleníti az ügyfelek listáját a következő mezőkkel:

  • Név
  • Padló
  • Az ügyfél kedvenc színe.

A jelentésnek külsőnek kell lennie. Ez azt jelenti, hogy létrejön és konfigurálja a konfigurátorban, majd külön (külső) fájlként menti a számítógépen.

Egy ilyen jelentés létrehozásához az 1C-ben a felhasználónak el kell indítania az adatbázist felhasználói módban, meg kell nyitnia ezt a fájlt, és kattintson a „Létrehozás” gombra.

Megy!

Jelentés készítése

Elindítjuk a Gastronom adatbázis konfigurátorát:

A főmenüben válassza a "Fájl" -> "Új..." lehetőséget:

Válassza a "Külső jelentés" lehetőséget:

Adatelrendezési diagram készítése a jelentésben

Megnyílik a külső jelentés létrehozására szolgáló ablak. A névhez írja be: " 1. lecke", majd nyomja meg a " Nyissa meg az adatösszetételi diagramot":

A sémakészítés tervezője elindult. Egyetértünk az alapértelmezett névvel MainData elrendezési séma"és nyomja meg a gombot" Kész":

Megnyílt a fő munkaablak, sok füllel és mezővel, amelyben az adatelrendezési sémánkat konfiguráljuk.

Nem kell megijedni – valóban sok lehetőség van itt, de nincs szükségünk mindegyikre. Főleg az első leckében.

Most a könyvjelzőnél vagyunk" Adatkészletek– Ott maradunk.

Kérést írunk a kivitelezőn keresztül

Az adatösszetétel rendszer (rövidítve DCS) megköveteli tőlünk adat, amelyet megjelenít a felhasználónak.

A legegyszerűbb módja - kérést írni a bázisra. Az iskolában megtanultuk írni és megérteni a kéréseket – ezért elvárom, hogy rendelkezzen a megfelelő készségekkel.

Kattintson zöld plusz jel, és a legördülő listából válassza ki a " Adatkészlet hozzáadása – Lekérdezés":

A mi feladatunk, hogy ebbe a mezőbe írjuk a kérés szövegét. Elfelejtetted, hogyan kell ezt csinálni?

Adok egy tippet:

Ebben a lekérdezésben három mezőt választottunk ki (" Név", "Padló"És" Kedvenc szín") a táblázatból" Directory.Clients".

De ne rohanjon kézzel beírni ezt a szöveget a „Kérés” mezőbe.

Most ugyanazt a kérést hozzuk létre vizuálisan, csak az egér használatával. Ezt a módszert " Lekérdezés konstruktor".

A konstruktor meghívásához kattintson a " gombra Lekérdezés konstruktor..." a "Kérés" mező jobb felső részén:

A megnyíló ablakban húzza a táblázatot " Ügyfelek" az első oszlopból a másodikba, jelezve, hogy ebből a táblázatból fogjuk lekérdezni az adatokat:

Így alakult:

Ezután kinyitjuk az asztalt" Ügyfelek"a második oszlopban jellel" Plusz"látni az összes mezőjét és húzni a mezőt" Név" a második oszlopból a harmadikba, jelezve, hogy ebből a táblázatból le kell kérdeznünk a "Név" mezőt:

Így alakult:

Tegyük ugyanezt a mezőkkel" Padló"És" Kedvenc szín". Az eredmény a következő lesz:

Kattintson az "OK" gombra a lekérdezéskészítőből való kilépéshez, és ellenőrizze, hogy a lekérdezés szövege automatikusan hozzáadódik-e a "Lekérdezés" mezőhöz.

Ezenkívül a kérelem szövege alapján az 1C maga húzta ki azoknak a mezőknek a neveit (a kérés feletti terület), amelyeket az adatösszetételi séma használni fog:

Most, hogy összeállítottunk egy kérést, az ACS tudja, hogyan szerezhet be adatokat a jelentéshez.

Adatmegjelenítés beállítása

Valahogy megmarad vizualizálja ezeket az adatokat a felhasználó számára nyomtatott űrlap formájában. És ez az, ahol az ACS csodákra képes!

Egy ilyen csoda létrehozásához menjünk a lapra " Beállítások", és kattintson a beállítások tervezője gombra ( varázspálca):

A megnyíló ablakban adja meg a jelentés típusát " Lista"és nyomja meg a " További":

A következő ablakban jelölje ki (húzással) azokat a mezőket, amelyeket meg kell jeleníteni a listában (húzza az összes elérhetőt: " Kedvenc szín", "Név"És" Padló"):

Kapjuk meg ezt az eredményt, és nyomjuk meg a gombot " rendben":

A beállítások tervezője bezárult, és az elem " Részletes bejegyzések":

Kész a jelentés, nézzük meg. Ehhez először mentse a jelentést külső fájlként.

Mentse el a jelentést fájlként

Nyissa meg a főmenüpontot " Fájl"->"Megment":

Elmentem az asztalomra a következő néven 1. lecke":

A jelentés ellenőrzése felhasználói módban

Végül zárjuk be a konfigurátort, és menjünk az adatbázisunkba felhasználói módban:

"Rendszergazda" felhasználónév, jelszó nélkül:

A menüben válassza ki a " Fájl"->"Nyisd ki...":

És adja meg a jelentésfájlt (én "Lesson1.erf" néven mentettem az asztalra):

A jelentés űrlap megnyílt, kattintson a " gombra Forma":

Kész! Íme a kinyomtatható ügyfeleink listája, kedvenc színük és nemük:

A nyomtatható űrlap könnyen kinyomtatható. Ehhez válassza ki az elemet " Fájl"->"Fóka...":

Így programozás nélkül sikerült egy teljes értékű riportot készítenünk, amelyet a felhasználók adatbázisaikban megnyithatnak, generálhatnak és kinyomtathatnak.

diákok - levélben válaszolok, de először nézd meg.

Jelentkezzen be diákként az oldalra

Jelentkezzen be tanulóként az iskolai anyagok eléréséhez

Az 1C 8.3 jelentések egy speciális metaadat objektum, amelyet az 1C adatbázistáblák adatainak felhasználóbarát megjelenítésére terveztek.

Találjuk ki hogyan kell beállítani a riportokat, mire van szükségük, miben különböznek a külső jelentések a beépítettektől, és miben térnek el a jelentések a feldolgozástól.

Jelentés létrehozásához vagy testreszabásához ismernie kell a beépített és a . Bármit is mondjunk, szinte minden jelentés elkészítésének alapja az adatokat fogadó kezdeti lekérdezés. Ezeket az adatokat feldolgozzuk és felhasználóbarát formában megjelenítjük.

A jelentések minden információs rendszerben a legfontosabbak, ezért az 1C nagy figyelmet fordított a jelentések fejlesztésére, és számos tervezőt és mechanizmust hozott létre azok létrehozására.

Nézzük meg a jelentések készítésének alapvető módszereit

Hogyan készítsünk jelentést 1C-ben egy elrendezés használatával

Az elrendezés használatával történő létrehozás a legrutinosabb módszer. Gyakran azonban kétségbeesésből folyamodnak hozzá, mert... ennél a módszernél a fejlesztő minden műveletet teljesen kódba ír, ami azt jelenti, hogy bármit megtehetünk. Más mechanizmusok nem dicsekedhetnek ezzel.

De ebben az esetben az összes elemet, menüt és egyéb „íjat” manuálisan kell megadni, ami nagyon munkaigényes.

Szerezzen ingyen 267 videóleckét 1C-n:

Jelentés készítése a kimeneti űrlaptervezővel

A kimeneti űrlaptervező a platformba épített mechanizmus, amely megkönnyíti a jelentéskészítést. A tervező csak normál űrlapokhoz érhető el.

A tervező megkapja a kérést és az összes szükséges paramétert a jövőbeli jelentéshez, ő pedig modulokat és jelentési űrlapokat generál. A mechanizmus az 1C 8.2 beépített nyelv objektumán alapul. Jelentéskészítő.

Jelentés készítése az Általános jelentés használatával

Az univerzális jelentés nagyszerű funkcionalitással, kényelmes beállítási felülettel rendelkezik, amely ismerős a felhasználó számára:

Adatösszeállítási rendszeren alapuló jelentések

Ez a jelentéskészítés legfejlettebb módja az 1C-ben, amelyet maga az 1C ajánl. megjelent az 1C platformon a 8.1-es verzióban.

Az SKD lehetővé teszi egyszerű jelentések készítését programozási sor nélkül, mert nagyon rugalmas és funkcionális konstruktorral rendelkezik az adatösszetételi séma létrehozásához:

Az összes legutóbbi konfigurációban az összes jelentés adatösszetételi rendszerrel készül.

Mi a különbség a külső és a beépített jelentések között?

Ahogy a dokumentációban is meg van írva - semmi. A külső jelentéskészítő mechanizmust azért hozták létre, hogy a fejlesztés során hibakeresést végezzenek a jelentésekben.

A megoldás kidolgozása során az egyetlen különbség az, hogy a külső jelentésekhez nem lehet „név szerint” hozzáférni, ellentétben a beépített jelentésekkel.

Miben különbözik a jelentés a feldolgozástól?

Valójában gyakorlatilag semmit. A fő különbség az objektum használatának célja: jelentések szükségesek az információk megjelenítéséhez, jelentések pedig az információk megváltoztatásához.

A főbb különbségek a tulajdonságokban: a jelentésekben megadhatja az alapvető adatösszetételi sémát (DCS), és megadhatja a jelentésparaméterek mentési beállításait.

A külső jelentések testreszabásának szükségessége felmerülhet a megfelelő jelentési űrlapok azonnali módosítása esetén. Hiszen a vonatkozó formanyomtatványokat jóváhagyó kormányzati szervek nem mindig veszik figyelembe azt a tényt, hogy a gazdálkodó szervezeteknek időre van szükségük a jelentési űrlap elkészítéséhez. Szerző - S.A. Kharitonov.

Az 1C által készített 1C:Enterprise 8 szabványos konfigurációiban a szabályozott jelentési űrlapok szerepelnek a konfigurációkban, és a konfigurációs kiadásokkal együtt kerülnek kiadásra. Amikor azonban szükség van rá - például a jelentési űrlap új kiadása életbe lép -, az 1C vállalat az ilyen jelentési űrlapokat "1C: Enterprise 8" külső jelentések formájában (*.erf kiterjesztésű fájlok) adja ki.

A külső jelentések használata egy ideiglenes megoldás, amelyet csak addig szabad használni, amíg ki nem adnak egy konfigurációs kiadást, amelybe a szükséges változtatásokat beépítik. Ezért bizonyos korlátozások vonatkoznak a külső jelentések használatára:

  • külső jelentés kiadásakor meg van adva, hogy melyik konfigurációs kiadással használható;
  • a külső jelentés nem garantáltan támogatja a korábbi konfigurációs kiadásokat;
  • amikor a felhasználó egy konfigurációval dolgozik, egy külső jelentés egynél több verziója nem használható;
  • egy jelentésűrlap megnyitása hosszabb időt vesz igénybe, mint egy konfigurációs objektumként megvalósított jelentés;
  • sokkal lassabb a jelentésadatok elektronikus formában történő feltöltése stb.

Az adott konfigurációs kiadáshoz kiadott külső jelentések listája megtekinthető az 1C:Enterprise 8 felhasználói támogatási webhelyének konfigurációs oldalán, a www.users.v8.1c.ru címen (a részben Ingyenes információ a verziószámokkal ellátott oszlopban) vagy az űrlapon az érdeklődési számra kell kattintani Frissítse az információkat(gombbal hívják Frissítse az információkat legjobb csapat egyenruha ), ha a szabályozott riasztási szolgáltatás engedélyezve van az információs bázisban.

Ugyanebben az űrlapon a külső jelentés nevére kattintva letöltheti a számítógépére.

A jelentések rendszerint RAR archívum formájában kerülnek terjesztésre. Külső jelentéssel történő munkavégzéshez az archívumot ki kell csomagolni.

Az archívum a külső jelentésfájllal együtt tartalmaz egy szöveges fájlt, amely leírja a jelentés célját és a csatlakoztatás módját.

Ha egy külső jelentés a konfigurációban már létező szabályozott jelentés helyettesítésére szolgál, az információs bázishoz csatlakoztatható a jelentés egyszerű megnyitásával 1C:Enterprise módban (menü Fájl – Megnyitás).

Megnyitáskor egy kérdést fog feltenni Regisztráljon egy külső szabályozott jelentést az információs bázisban? Válasz után Igen a külső jelentés regisztrálásra kerül az infobázisban, és azonnal megnyílik egy új jelentés létrehozásához.

Ha válaszol Nem, a jelentés nem kerül bejegyzésre, hanem megnyílik egy új jelentés létrehozásához. Egy ilyen jelentéssel minden műveletet - létrehozás, kitöltés, kinyomtatás - el lehet majd végezni, de a létrehozott jelentést nem lehet elmenteni az infobázisba.

Ha a külső jelentés egy új típusú szabályozott jelentés, akkor a jelentés nem tud automatikusan regisztrálni az infobázisban: ezt a módot manuálisan kell engedélyezni. A csatlakozási utasítások az 1C webhelyről származó archívumban található szövegfájlban is elérhetők.

Külső jelentés használatához a felhasználónak jeleznie kell, hogy ehhez a szabályozott jelentéshez nem belső konfigurációs objektum, hanem külső jelentés kerül felhasználásra.

Külső jelentés új típusú szabályozott jelentéseként regisztrálása a címtárban Szabályozott jelentések szükséges (lásd 1. ábra):

1) lépjen arra a címtárcsoportra, amelyben az új típusú jelentés található;
2) hozzon létre egy új könyvtárelemet a gombra kattintva Hozzáadás a címtárűrlap felső parancspaneljén;
3) címtár elem formájában írja be a címtárban kiadandó nevet Szabályozott jelentésekés az űrlap jelentéstípusainak listájában Szabályozási és pénzügyi beszámolás. A jelentés típusának leírását is célszerű kitölteni;
4) kapcsoló Használatállítsa fájlra, és adja meg, hogy melyik fájlt használja külső jelentésként. A gomb megnyomása után rendben a fájl megnyitása párbeszédablakban ennek a külső jelentésnek a teljes neve megjelenik a szótárelem űrlap fájl mezőjében.

Rizs. 1. Külső jelentés nyilvántartása

A gomb megnyomása után Írd le a külső jelentés mentésre kerül az infobázisba, majd a külső fájl teljes neve szövegre kerül A jelentés feltöltésre került az IB-be.

Ugyanez történik, ha megnyom egy gombot rendben, míg a könyvtárelem formája Szabályozott jelentések bezár.

Azoknál a címtárelemeknél, amelyekhez külső jelentéseket használnak, a (külső) sor a címtárlista formájában kerül hozzáadásra a jelentés neve után.

Miután a külső jelentés betöltődött az információs bázisba, magára a külső jelentésfájlra már nincs szükség, és törölhető.

A külső jelentést használó szabályozott jelentéssel végzett munka nem különbözik a konfigurációs objektumokkal végzett munkavégzéstől, kivéve a „lassú választ” a megnyitáskor és a jelentési adatok elektronikus formában történő letöltésekor.

A külső jelentés jeleként egy piros információs felirat jelenik meg a felső parancspanel jobb oldalán Külső jelentés.

Bármikor visszatérhet a "belső" konfigurációs objektum használatához. Ehhez a szükséges szabályozott jelentéshez tartozó címtárelem formájában ki kell választani a kapcsolót Használat pozicionálni egy tárgyés mentse el a könyvtárelemet.

Maga a külső jelentés nem törlődik az infobázisból, így ennek ellenkezője is lehetséges. Ha törölni szeretne egy jelentést az információs bázisból, a következőket kell tennie:

1) a könyvtárban Szabályozott jelentések keressen egy szabályozott jelentést, amelyhez külső jelentés kapcsolódik - egy ilyen jelentéshez a jelentés neve után egy sor (külső) kerül hozzáadásra;
2) nyissa meg a könyvtárelemet szerkesztésre a gombbal Az aktuális elem módosítása;
3) a külső jelentésválasztó mezőben kattintson a gombra X (Tiszta). Nyomja meg a szöveget A jelentés feltöltésre került az IB-be törlődik, ez annak a jele, hogy a jelentés törlésre kerül az információs bázisból;
4) zárja be a címtárelem űrlapot a gombra kattintva rendben.

A jelentés törlődik a címtárelem mentése közben.

Ha szükséges, az információs bázisba betöltött jelentés elmenthető egy fájlba a lemezen. Ehhez egy könyvtárelem formájában Szabályozott jelentések rá kell kattintani a szöveget tartalmazó linkre Külső jelentés feltöltése fájlba. Megnyílik egy szabványos fájlmentési párbeszédpanel. Alapértelmezés szerint a fájl neve a megfelelő konfigurációs objektum neve.

Fontos megjegyezni, hogy egy felhasználói munkamenetben egy infobázissal nem használhat egy külső jelentés egynél több verzióját: például ha a felhasználó már dolgozik egy szabályozott jelentéssel, amely egy külső jelentés, és betöltötte azt a a könyvtárat Szabályozott jelentések ennek a külső jelentésnek egy másik verziója (például hozzáadott automatikus kiegészítéssel), a jelentés ezen verziójának használatához be kell fejeznie a munkamenetet 1C:Enterprise módban, majd azonnal új munkamenetet kell indítania.