1c raport extern suplimentar. Adăugarea unui raport extern la baza de date. Care este diferența dintre rapoartele externe și cele încorporate?

În exemplul nostru, raportul arată producția de produse și servicii pe divizii, grupuri de produse și pe lună.

Aici pagina de start raport:

Această pagină este apelată din configurator în meniul Fișier – Nou – Raport extern.

Mai întâi adăugăm un set de date (DataSet1). În fereastra „Interogare”, îl puteți introduce singur, îl puteți crea folosind Generatorul de interogări sau îl puteți încărca dintr-un fișier. Cea mai convenabilă modalitate este să utilizați constructorul de interogări. Citiți cum funcționează constructorul.

Tot ceea ce aveți nevoie este completat automat, dar unele lucruri trebuie ajustate.

De exemplu, titlurile de coloană (caseta de selectare „Cantitate” din figura de mai sus vă permite să introduceți orice text de titlu pentru acest câmp), puteți seta formatul de ieșire a datelor (consultați Format în linia Cantitate). Formatul poate fi editat pentru orice tip de date – șiruri, date, numere.

În fila Resurse, selectați resursele în sine și configurați afișarea rezultatelor pentru acestea:

Fila Parametri conține tot ceea ce modifică conținutul raportului (de exemplu, perioada pentru care vor fi selectate datele). Completat automat pe baza parametrilor de solicitare (vezi prima pagina). Cu ajutorul casetelor de selectare puteți ajusta vizibilitatea și disponibilitatea acestor parametri, puteți seta valoarea inițială etc.:

Obțineți 267 de lecții video pe 1C gratuit:

Și în sfârșit, Setări. Aici este desenat aspectul raportului - coloane, rânduri, poziția acestora unul față de celălalt, grupări etc. Butonul „Open Settings Designer” vă va ajuta să aranjați liniile și coloanele în ordinea dorită. Butonul „Setări elemente personalizate” vă va permite să afișați parametrii în antetul raportului:

Fiți atenți la coloana Period.PartsDate.NameMonth. Cum se afișează numele lunii în antetul coloanei? Aici iese.

Apropo, această setare specială vă permite să afișați date pentru mai multe perioade simultan în coloanele adiacente ale raportului:

O altă filă importantă este Câmpurile selectate. Dacă este gol, raportul nu va fi generat. De obicei, completat automat făcând clic pe butonul „Deschide Setări Designer”:

De fapt, asta este tot ce ai nevoie de la minimul necesar. Ca urmare, vom avea un raport care arată astfel:

Să luăm în considerare crearea unui raport extern în 1C 8 fără a folosi un sistem de compunere a datelor. Pentru a crea un raport extern, vom folosi configurația Contabilitate 2.0, date inițiale: „Scrieți un raport pe contul 62 contabilitate in care cifra de afaceri pentru perioada specificata va fi afisata in context ContrapartideŞi Contractele contrapartidelor.

1. Creați un raport

În primul rând, să creăm un fișier de raport extern pentru a face acest lucru, să trecem la 1s 8 în modul Configurator, să mergem la meniu Fișier -> Nou, sau faceți clic pe pictogramă Document nou.

Selectați elementul din listă Raport extern. După crearea raportului extern, dați-i un Nume (de exemplu Cel mai simplu raport) și salvați-l pe disc. Vom adauga si doua detalii: Începutul PerioadeiŞi Sfârșitul perioadei tip Data, vom avea nevoie de ele pentru a limita intervalul de timp pentru eșantionarea datelor atunci când generăm un raport.

2. Creați un aspect de raport extern

Pentru a genera un raport în 1C 8 aveți nevoie de un aspect, acesta este un șablon pentru ieșirea datelor în care este specificat totul parametrii necesari, se desenează tabele etc. Să adăugăm un nou aspect pentru a face acest lucru, selectați elementul din arborele de metadate ale raportului Aspecteși apăsați butonul Adăuga, la creare, selectați tipul pentru aspect document foaie de calcul.

Aspectul nostru va avea 4 zone:

  • Antet - in aceasta zona vom afisa numele raportului, perioada pentru care a fost generat si antetul tabelului;
  • Date contrapartidei - in aceasta zona vom afisa datele contrapartidei intr-un tabel;
  • DateContract de contrapartidă - în această zonă vom afișa datele despre contractul de contraparte într-un tabel;
  • Subsol - în această zonă vom afișa valorile totale pentru întregul raport pentru câmpurile Venituri și Cheltuieli.

Să începem să creăm zone de aspect. Pentru a crea o zonă în aspect, selectați numărul necesar de linii și faceți clic Tabel de meniu -> Nume -> Atribuire nume(Sau Ctrl + Shift + N). Spre regiune Capac Să scriem numele raportului: Cifra de afaceri 62 contează, desenați folosind instrumentul Frontiere antetul raportului și, de asemenea, setați parametrii Începutul PerioadeiŞi Sfârșitul perioadei. Folosind parametrii, puteți afișa datele necesare în raport, ne vom ocupa de asta în următoarea etapă de dezvoltare, și anume la redactare; codul programului raport. Pentru a crea un parametru în aspect, selectați celula dorită, scrieți numele parametrului în ea (fără spații), faceți clic dreapta pe el, selectați elementul din meniul care se deschide Proprietăți. În proprietățile celulei din filă Aspect selectați umplutura Parametru.

După aceasta, numele parametrului din celulă va fi cuprins între paranteze unghiulare ("<>„). Drept urmare, zona Capac ar trebui sa arate asa:

În zonă DataCounterparty vom crea parametri pentru afișarea numelui contrapărții, precum și pentru venituri și cheltuieli pentru contul 62, folosind instrumentul Frontiere Să proiectăm zona ca un rând de masă.

În zonă Acord de contrapartidă de date Să creăm parametri pentru afișarea numelui contractului, precum și pentru venituri și cheltuieli pentru contul 62, folosind instrumentul Borders vom proiecta zona ca un rând de tabel. Să facem o mică liniuță înaintea parametrului Acord de contrapartidă(acest lucru se poate face prin divizarea și îmbinarea celulelor. Faceți clic dreapta pe celulă -> Îmbinați sau Celulă împărțită), este necesar pentru ca raportul să poată vedea că linia pentru contract este mai jos în ierarhie decât linia pentru contraparte.

În zonă Subsol Să creăm parametri pentru totalurile veniturilor și cheltuielilor.

Ca rezultat, ar trebui să obținem un aspect ca acesta:

3. Creați un formular de raport

Pentru a afișa datele, setați perioada de formare și butonul Formă raportul nostru va necesita un formular. Pentru a crea un formular, găsiți elementul în arborele de metadate ale raportului extern Formeși apăsați butonul Adăuga. Pe prima pagină a designerului de formulare, nu trebuie să faceți nicio modificare, trebuie doar să faceți clic pe butonul Următorul.

Pe pagina următoare a designerului, selectați ambele detalii disponibile( Începutul Perioadei, Sfârșitul perioadei) pentru plasarea pe formular.

Ca rezultat, vom obține acest formular:

Dar nu suntem mulțumiți de el în această formă, să facem câteva modificări:

  • Să tragem butonul Formă din panoul de jos al raportului în sus (acest lucru va fi mai convenabil pentru utilizator);
  • Să întindem forma pe verticală și pe orizontală;
  • Să aranjam câmpurile Începutul PerioadeiŞi Sfârșitul perioadei orizontal;
  • Să adăugăm un element de control al câmpului de document pentru foaie de calcul în formular (raportul nostru va fi afișat în el), dăm-i un nume TabDoc;
  • Să creăm un buton de selecție a perioadei (când se dă clic, un dialog cu alegere convenabilă perioada cerută). Nu vom scrie încă codul programului pentru acesta, așa că vom plasa butonul de lângă câmpurile perioadei.

Ca rezultat, formularul nostru va arăta astfel:

4. Programare

După crearea formularului de raport, să începem programarea. Mai întâi, să creăm o procedură pentru afișarea unui dialog de selecție a perioadei (am creat deja un buton pentru aceasta în etapa anterioară). Faceți clic dreapta pe buton și selectați elementul de meniu Proprietăți, în proprietățile butonului accesați fila Evenimente, unde folosind butonul cu o pictogramă lupă vom crea o procedură Buton1 Apăsațiîn modulul formular.

Puteți comuta între formular și modulul său folosind filele din partea de jos a formularului

Pentru a apela formularul de selecție a perioadei, vom folosi procedura standard Contabilitate 2.0 dintr-un modul comun Lucrul cu dialoguri - HandlerPeriodSettingPress, trebuie să îi transmiteți detaliile raportului ca parametri Începutul PerioadeiŞi Sfârșitul perioadei.

Procedură Buton1Apăsați(Element) Lucrul cu Dialogs.PeriodSettingHandlerPressing(PeriodStart,PeriodEnd); Sfârșitul procedurii

Acum să trecem la scrierea codului care va genera și afișa raportul nostru. Modulul formular are deja o procedură ButtonGeneratePress, care se va executa la apăsarea butonului Formă, acolo vom scrie codul nostru. Să începem prin a inițializa variabilele necesare. În primul rând, să creăm o variabilă pentru câmpurile documentului din foaia de calculîn care vom scoate date, acest lucru nu este necesar, doar că înregistrarea apelurilor către acesta va deveni mai scurtă, ceea ce înseamnă că codul programului va fi mai ușor de înțeles pentru citire.

TabDoc = FormElements.TabDoc;

Să obținem aspectul raportului extern folosind funcția GetLayout(<ИмяМакета>) , vom trece numele layout-ului ca parametru, iar dacă un astfel de layout există, funcția îl va găsi.

Layout = GetLayout("Layout");

După ce este primit aspectul, să creăm variabile pentru fiecare dintre zonele sale, folosiți metoda de aspect pentru aceasta GetArea(<ИмяОбласти>) .

AreaHeader = Layout.GetArea("Header" ); AreaDataAccount = Layout.GetArea( „Datele contractantului”); AreaDataContract = Layout.GetArea("DataContract" ); AreaFooter = Layout.GetArea("Footer" );

Să ștergem câmpul din foaia de calcul. Acest lucru este necesar pentru ca de fiecare dată când este generat un nou raport, datele vechi să fie șterse.

TabDoc.Clear();

Acum că inițializarea variabilelor este completă, să trecem la completarea și afișarea zonelor de aspect una câte una. Să începem cu antetul. Dacă vă amintiți, am creat doi parametri în acest domeniu Începutul PerioadeiŞi Sfârșitul perioadei, vom trece acolo valorile perioadei de generare a raportului, pentru aceasta vom folosi proprietatea Opțiuni zonele de amenajare.

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

Gata cu acțiunile cu zona Capac Nu este necesar producătorul, așa că vom afișa câmpul său într-un document de foaie de calcul.

TabDoc.Output(AreaHead);

În continuare, vom scrie o interogare la baza de date, cu care vom prelua cifra de afaceri în cont 62 din registrul contabil Autoportant. Să definim o variabilă în care va fi localizată cererea noastră.

Solicitare = cerere nouă;

Înainte de a începe să scriem textul de solicitare, să îi transmitem parametrii necesari. Deoarece scriem o cerere de factură 62 contabilitate, apoi în primul rând vom crea un parametru pentru acesta

Request.SetParameter("Account62", Planuri de conturi. Auto-susținând. Găsește după cod("62" ));

De asemenea, este necesară trecerea perioadei de generare a raportului în cerere. Nu uitați că avem detalii speciale de raport pentru perioada de generare și le transmitem ca parametri.

Request.SetParameter("Începutul perioadei", Începutul perioadei); Request.SetParameter("Sfârșitul perioadei", Sfârșitul perioadei);

Să începem să scriem textul interogării, vom face acest lucru folosind designerul de interogări. În multe manuale ei scriu că trebuie să poți scrie o solicitare atât manual, cât și folosind un constructor, dar în practică nu este cazul. În sarcinile cu care se confruntă constant un programator 1C, prioritatea este să scrie cod rapid și eficient, iar atunci când scrieți manual o interogare în baza de date, acest lucru este aproape imposibil de realizat, veți petrece mult timp prețios reproducând corect toate structurile de interogare; și găsirea greșelilor de scriere pe care le-ați făcut când ați scris etc. Prin urmare, nu vă pierdeți timpul încercând să scrieți interogări manual, ci folosiți constructorul de interogări. Vă va economisi timp și vă va permite să scrieți interogări complexe fără prea mult efort. Pentru a începe să scrieți textul solicitării, să scriem în cod:

Solicitare.Text = "" ;

După aceea, plasați cursorul între ghilimele, faceți clic dreapta și selectați Constructor cerere. Se va deschide fereastra de proiectare de interogări.

Acum trebuie să selectăm tabelul de bază de date 1C 8 de care avem nevoie Revoluții registrul contabil Autoportant. Să-l găsim în partea stângă a ferestrei de designer

Să-l mutăm în zonă Meseleși să începem să completăm parametrii. Pentru toate tabelele de interogări virtuale există un set special de parametri care vă permit să selectați datele necesare din tabelul principal (în cazul nostru, tabelul principal Registrul contabil Autoportant). Să deschidem fereastra parametrilor tabelului virtual.

Să completăm parametrii pentru perioada pe care am trecut la cerere. Pentru a utiliza un parametru în textul cererii, trebuie să scrieți simbolul înaintea numelui său ampersand(&)

Rămâne de completat condiția pentru contul contabil. contabilitate. Pentru a face acest lucru, găsiți linia în parametrii tabelului virtual Condiția contului si o sa scriem acolo

Cont ÎN IERARHIE (&Contul62)

De asemenea, puteți utiliza constructorul de condiții făcând clic pe butonul cu trei puncte.

Nu este nevoie să impunem alte condiții pe masa virtuală, așa că haideți să facem clic pe butonul Bineîn fereastra parametrilor tabelului virtual. Apoi, trebuie să selectăm câmpurile de care avem nevoie din tabel Autoportant.Cifra de afaceri(anume: Contraparte, Contract de contraparte, Venituri și Cheltuieli). Pentru a vizualiza lista de câmpuri disponibile în tabelul pe care l-am selectat, faceți clic pe simbolul „+” de lângă numele acestuia. După aceea, trageți câmpurile necesare în zona din dreapta a designerului de interogări, care se numește: Câmpuri. Dacă deschidem planul de conturi, vom vedea asta pentru cont 62 analitice pe Pentru contraparte, acesta este Subconto1, și de către Acord de contraparte - Subconto2.

Prin urmare, din câmpurile tabelului virtual selectăm Subconto1Şi Subconto2. Deoarece avem nevoie de venituri și cheltuieli după sumă, selectăm și câmpurile SumaTurnoverDtŞi SumăCurnoverKt

Să completăm aliasurile câmpurilor pe care le-am selectat pentru a face acest lucru, mergeți la fila Sindicate/Alias-uriși setați nume necesare câmpuri.

Deoarece în raportul nostru datele vor fi afișate ierarhic (Contrapartea este la primul nivel, iar toate contractele sale sunt la al doilea), vom configura afișarea datelor în ierarhie folosind Totaluri. Să mergem la fila din designer Rezultate. Trageți secvențial în câmpurile de grupare ContrapartidăŞi Acord de contrapartidă, iar în finală VenireŞi Consum.

Acest lucru finalizează munca în constructorul de interogări, faceți clic pe butonul Bineși vedem că textul solicitării noastre apare în codul programului.

Query.Text = „SELECT | Cifra de afaceri auto-suportabilă.Subconto1 AS contraparte, | Auto-susținere Cifra de afaceri.Subconto2 AS Acord de contraparte, | Cifra de afaceri autoportabilă. | Cifra de afaceri autoportabilă.Suma Cifra de afaceriKt AS Cheltuială|DIN | Registrul de contabilitate Auto-finanțare Cifra de afaceri|REZULTATE | AMOUNT(Venit), | SUMA(Cheltuieli) |PO | contrapartidă, | Acord de contrapartidă”;

După ce am terminat de scris cererea, să începem să completăm zonele DataCounterparty, DataAgreementContraparteŞi Subsol. Vom completa toate aceste zone cu datele primite la executarea cererii. Deoarece interogarea noastră conține grupări( ContrapartidăŞi Acord de contrapartidă) selectați datele din acesta după cum urmează:

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

În acest fel vom primi înregistrări cu totaluri pentru toate contrapărțile.

Înainte de a parcurge datele eșantionului folosind o buclă, inițializam variabilele destinate calculării rezultatelor generale pentru raport:

TotalIncoming = 0; TotalConsumption = 0;

Pentru ca datele raportului să fie afișate cu o ierarhie (și rotații de-a lungul „+“), să setăm începutul grupării automate a rândurilor documentului foaie de calcul:

TabDoc.StartAutoGroupingRows();

Toate pregătirile sunt finalizate, acum să începem să accesăm cu crawlere rezultatele interogării. Vom efectua traversarea folosind o buclă la revedere

În timp ce Selectați cont. Următorul() Ciclu EndCycle ;

La începutul ciclului, resetați parametrii VenireŞi Consum regiune DataCounterparty. Pentru ce este asta? Să ne imaginăm o situație în care contrapartea unchiul Vasia, veniturile sunt 10, iar cheltuielile sunt 5, iar pentru următoarea contraparte unchiul Petya nu există venituri sau cheltuieli, în acest caz, dacă nu resetăm parametrii VenireŞi Consum, apoi în linie de contraparte unchiul Petya va fi un venit de 5 și o cheltuială de 10.

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

După aceea umplem zona DataCounterparty date despre elementele eșantionului

FillPropertyValues(AreaAccountData.Parameters,SelectionAccount);

După completarea datelor, puteți afișa zona document foaie de calcul, Deoarece folosim gruparea automată a rândurilor, trebuie să indicăm nivelul rândului din grupare (raportul nostru va avea două niveluri, pentru contrapartide primul pentru contracte).

TabDoc.Output(AreaDataAccount,1);

Acum pentru această contraparte vom face o selecție conform contractelor sale.

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

Vom efectua traversarea folosind o buclă la revedere.

While SelectionCounterparty Agreement.Next() Loop EndCycle ;

În ciclul acordurilor de contrapartidă, să resetam parametrii VenireŞi Consum, umpleți zona DataContract din eșantion și scoateți-l în document foaie de calcul la al doilea nivel de înregistrări.

AreaDataContract.Parameters.Receipt = 0; AreaDataContract.Parameters.Expense = 0; CompletațiPropertyValues(AreaContractData.Parameters,SelectionCounterpartyAgreement); TabDoc.Output(AreaDataContract,2);

Tot în acest ciclu, vom adăuga valorile curente la variabilele pentru calcularea valorilor totale pentru venituri și cheltuieli.

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

Acest lucru încheie producția de date în zonă DataCounterparty, DataAgreementContraparte finalizat, nu mai rămâne decât să finalizați gruparea automată a rândurilor documentului foaie de calcul.

TabDoc.FinishAutoGroupingRows();

Cicluri complete responsabile pentru transmiterea datelor în zonă DataCounterpartyŞi DataAgreementContraparte arata asa:

TabDoc.StartAutoGroupingRows(); While SelectionAccount.Next() Loop AreaDataAccount.Parameters.Receipt = 0 ;

AreaDataAccount.Parameters.Expense = 0 ; Subsol FillPropertyValues(AreaAccountData.Parameters,SelectionAccount); document foaie de calcul.

TabDoc.Output(AreaDataAccount,1);

SelectionCounterparty Agreement = SelectionCounterparty.Select(BypassQueryResult.ByGroups); While SelectionCounterparty Agreement.Next() Loop AreaDataAgreement.Parameters.Receipt = 0 ; AreaDataContract.Parameters.Expense = 0 ;

CompletațiPropertyValues(AreaContractData.Parameters,SelectionCounterpartyAgreement);

TabDoc.Output(AreaDataContract,2); TotalReceipt = TotalReceipt + SelectionCounterpartyAgreement.Receipt;->->.

TotalExpense = TotalExpense + SampleCounterparty Agreement.Expense; EndCycle ; EndCycle ; TabDoc.FinishAutoGroupingRows();.

Rămâne de afișat datele finale din zonă și scoateți zona în sine.

AreaBasement.Parameters.TotalIncoming = TotalIncoming; AreaBasement.Parameters.TotalConsumption = TotalConsumption; TabDoc.Output(AreaFooter); și scoateți zona în sine Acest lucru completează procesul de scriere a unui raport extern pentru 1C 8 fără a utiliza un sistem de control al accesului. Acum poate fi generat în modul 1C:Enterprise 8 și adăugat în director Bine.

Procesare externă

Puteți descărca fișierul raportului discutat în articol din . TotalReceipt = TotalReceipt + SelectionCounterpartyAgreement.Receipt;->Urmăriți un videoclip despre crearea unui imprimabil extern pentru o aplicație gestionată:->În meniul de sus accesați.

Serviciu

După aceasta, va apărea formularul de listă de directoare. În meniul de sus faceți clic


Adăuga

Apare fereastra pentru adăugarea unui nou raport. Apăsați butonul Deschide:


Selectați fișierul cu raportul dorit și faceți clic . După adăugarea fișierului, dacă este necesar, schimbați numele raportului (cum va fi afișat în listă). Clic Ca urmare, noul raport apare în listă.

După aceasta, raportul poate fi folosit, adăugarea este finalizată. Pentru a deschide acest raport mai târziu, mergem și la Rapoarte suplimentare și procesare(locul din program unde va fi disponibil raportul):


Selectați aleatoriu din listă secțiunea necesară programe:


Acum trebuie să înregistrați modificările în raportul extern:

Acum deschideți raportul din interfața programului:


Lista este încă goală, faceți clic Personalizați lista:


În formularul de selecție, bifați raportul nostru:


Acum apare în listă:


Prin buton Executa Se deschide formularul de raportare:


Lucrul cu produse software furnizate de 1C presupune nu numai introducerea și sistematizarea informațiilor primare (completarea directoarelor și introducerea în timp util a documentelor), ci și crearea diferitelor formulare tipărite pe baza acestor date. În aceste scopuri, a fost creat un obiect special - rapoarte. Rapoartele în 1C ajută la efectuarea analizei situația actualăîn companie în contextul diverșilor indicatori și oferă posibilitatea de a lua decizii de conducere competente pe baza acestor informații.

Rapoarte și procesare

În general, nu există diferențe semnificative între aceste două tipuri de obiecte:

  • Acestea pot conține machete de formulare tipărite;
  • Ei pot avea proceduri în modulele lor pentru a face modificări la informații;
  • Ele pot fi interne sau încorporate;
  • Rapoartele externe și procesarea externă în configurații standard sunt stocate în același director.

Puteți împărți condiționat raportul și procesarea conform principiului de utilizare. Aspectul este necesar pentru a afișa informații într-o formă ușor de utilizat, procesarea este creată pentru a face modificări în baza de date. În plus, în tabelele afișate puteți specifica schema principală de aspect care va servi la formare aspect documentele returnate, precum și setările pentru stocarea parametrilor.

Obiectele considerate fizic în articol diferă de procesarea externă prin extensia fișierului:

  1. Prelucrare externă – epf;
  2. Raport extern – erf.

Rapoarte externe și încorporate

Dacă te uiți cu atenție la arborele oricărei configurații din 1C, vei observa că există și o ramură de raportare (Fig. 1)

Practic nu există diferențe între procesoarele externe și cele interne. Mai mult, orice fișier ert poate fi încorporat în configurație și invers, mecanismul încorporat poate fi încărcat într-o resursă externă. De exemplu, dacă dorim să facem modificări la handlerul standard „Analiza contribuțiilor la fonduri”, trebuie să apelăm meniul contextual obiectul corespunzător și selectați submeniul „Salvare ca extern...” (Fig. 2)

Orez. 2

Acțiune inversă Este apelat submeniul „Înlocuire cu extern”, dar pentru aceasta configurația trebuie să fie deschisă pentru modificare.

Singura diferență între un obiect încorporat este că acesta poate fi accesat din codul de program al modulelor, pentru un raport extern, acest lucru este destul de dificil dacă nu îl adăugați la cartea de referință corespunzătoare;

Crearea unui raport extern

Puteți crea un raport extern doar în modul Configurator pentru aceasta veți avea nevoie cu siguranță de cunoștințe despre limbajul de programare încorporat și, cel mai probabil, de capacitatea de a lucra cu limbajul și designerul de interogări.

Practic, programatorul are două opțiuni pentru a asambla datele extrase din tabelele bazei de date:

  1. Utilizați mecanismul sistemului de compoziție a datelor (DCS);
  2. Completați programatic un document de foaie de calcul folosind un aspect pregătit în prealabil.

În al doilea caz, dezvoltatorul va trebui să se gândească independent la interfață, selecții, grupări și alte lucruri care pot fi create în sistemul de control al accesului pe măsură ce utilizatorul lucrează.

Dar, indiferent de mecanismul selectat, trebuie să începeți din meniul „Fișier”, submeniul „Nou”. Dezvoltatorului i se prezintă un meniu pentru selectarea obiectului de creat (Fig. 3).

Orez. 3

Orez. 4

Aici vedem:

  • Un nume care rezumă cât mai exact scopul obiectului;
  • Sinonim și comentariu - destinat descriere completă;
  • Schema de layout de bază – aici puteți specifica schema care va fi utilizată pentru tipărirea raportului;
  • Butonul „Deschide diagrama...” deschide proiectantul rezultatului procesării;
  • Fereastra pentru descrierea formelor, detaliilor și machetelor.

Făcând clic pe butonul „Acțiuni”, puteți deschide modulul obiectului creat.

Diagrama de dispunere

Utilizarea ACS pentru a crea un raport simplifică foarte mult munca dezvoltatorului:

  1. Nu este nevoie să gândiți și să creați forma obiectului;
  2. Selecția, grupările, coloanele din formularul afișat pot fi modificate dinamic în modul utilizator;
  3. Este posibil să creați și să stocați mai multe opțiuni pentru generarea tabelului final.

Acesta este motivul pentru care schemele de layout de date devin din ce în ce mai populare în soluțiile moderne. Dacă faceți clic pe butonul corespunzător, designerul ACS se deschide în fața dezvoltatorului. (Fig. 5)

Orez.
5

Schema este stocată în machete de obiecte.

Pe lângă rapoartele interne și încorporate, există o altă posibilitate de stocare și accesare a acestor obiecte - directorul „Procesare suplimentară”.

Înregistrarea obiectelor externe în baza de date

Pentru formularele gestionate, pe care se bazează cele moderne produse software 1C, formularul de înregistrare s-a schimbat semnificativ tratamente externeîn baza de date.

Dacă mai devreme (la forme uzuale) a fost suficient să se creeze în directorul corespunzător element nou, specificați tipul de handler stocat și determinați apoi calea către fișierul în format ert forme controlateînregistrarea are loc din modulul obiectului înregistrat.

Pentru a face acest lucru, funcția de export a informațiilor de procesare externă trebuie să fie definită în modulul de gestionare. (Fig. 6)

Orez. 6

Figura 6 prezintă un set aproximativ de comenzi care vă vor permite să înregistrați un fișier în director.

Pe lângă funcția cu informații, aici sunt prezentate: o altă procedură (Add Command) și o funcție (Get Command Table). Conținutul lor este prezentat în Fig. 7

Orez. 7

Prin prezenta (denumită în continuare Persoana) îmi dau acordul antreprenorului individual Alexey Vladimirovich Zabolotnov INN212702621854, OGRNIP 313213018300022 (denumită în continuare Compania) pentru prelucrarea datelor mele personale specificate la completarea unei cereri de pe site-ul Companiei (https ://site) pentru procesarea comenzii mele, a cererii sau a oricărei alte metode de a contacta Compania (denumită în continuare Comanda) și comunicarea cu mine ca parte a procesării Comenzii mele, precum și în alte scopuri conexe în cadrul a legislației actuale a Federației Ruse și capabilități tehnice Companii.

Prelucrarea datelor cu caracter personal ale unei Persoane poate fi efectuată folosind instrumente de automatizare și/sau fără utilizarea instrumentelor de automatizare în conformitate cu legislația actuală a Federației Ruse și cu prevederile Societății. Acest consimțământ al Persoanei cu privire la prelucrarea datelor sale cu caracter personal specificat în momentul plasării unei Comenzi pe site-ul Companiei, trimis (completat) folosind acest site, este valabil din momentul plasării Comenzii pe site-ul Companiei și până la retragerea acesteia. Consimțământul pentru prelucrarea datelor cu caracter personal specificat la plasarea unei Comenzi pe site-ul Companiei, trimis (completat) folosind acest site, poate fi retras de către Persoană la depunerea unei cereri scrise (revizuire) către Companie. Prelucrarea datelor cu caracter personal ale Persoanei încetează în termen de 2 luni de la data la care Compania primește o cerere scrisă (revocare) a Persoanei și/sau dacă scopul prelucrării este atins și este distrus în termenul și în condițiile stabilite de lege, dacă nu se prevede altfel. Datele personale anonimizate ale Persoanelor pot fi folosite de Companie în scopuri statistice (și alte scopuri de cercetare) după primirea unei declarații (retragerea) de consimțământ, precum și după atingerea scopurilor pentru care a fost obținut acest consimțământ.

Acest site permite antreprenorului individual Alexey Vladimirovich Zabolotnov să primească informații care conțin date personale ale Persoanei, și anume numele, prenumele, patronimul, numărul de telefon de contact, adresa de e-mail, precum și alte date personale care pot fi utilizate pentru identificarea Persoanei (“ datele dumneavoastră cu caracter personal”), în cazul în care Persoana le furnizează în mod voluntar companiei.

Persoana își dă consimțământul antreprenorului individual Alexey Vladimirovich Zabolotnov (TIN INN212702621854, OGRNIP 313213018300022) să-și prelucreze datele personale, și anume: prenume, prenume, patronimic, număr de telefon de contact, adresa de e-mail, precum și toate datele personale necesare contactării. Persoana și întocmește un acord de prestare a serviciilor de informare.

Pentru a îndeplini obligațiile din contract, Persoana îi acordă antreprenorului individual Alexey Vladimirovich Zabolotnov (TIN INN212702621854, OGRNIP 313213018300022) dreptul de a efectua orice acțiuni (operațiuni) cu datele sale personale, fără limitare: colectare, înregistrare, contabilizare, sistematizare , clarificare (actualizare, modificare), extragere, acumulare, depersonalizare, blocare, ștergere, distrugere; utilizarea în scopuri statistice, în scop de analiză, pentru informarea Persoanei (cu transmitere prin SMS sau prin email) despre produsele și serviciile Societății, precum și să efectueze orice alte acțiuni ținând cont de legislația în vigoare.

Politica de confidențialitate

Orice alte informații transmise de Persoană în legătură cu vizitarea site-ului („Alte informații”, care nu sunt date personale ale Persoanei și nu pot fi utilizate pentru identificarea Persoanei) pot fi incluse în bazele de date deținute de antreprenorul individual Alexey Vladimirovich Zabolotnov (TIN INN212702621854, OGRNIP 313213018300022) sau reprezentanții săi. IP Zabolotnov Alexey Vladimirovich deține toate drepturile asupra acestor baze de date și a informațiilor stocate în ele. Alte informații pe care le colectăm pot include adresa dumneavoastră IP și alte informații colectate prin cookie-uri (vezi mai jos).

Acest site poate utiliza o tehnologie cunoscută sub numele de cookie-uri. Un cookie este un mesaj pe care serverul web îl trimite computerului unei Persoane atunci când Persoana accesează site-ul. Când vizitează din nou, site-ul nostru va verifica dacă Persoana are unul dintre cookie-urile noastre pe computer. Cookie-urile noastre îmbunătățesc funcționalitatea site-ului și ne ajută să analizăm mai precis modul în care este utilizat site-ul.

Acest site folosește adrese IP (Internet Protocol). O adresă IP este un număr atribuit unui computer de către un furnizor de servicii de internet pentru a accesa Internetul. De obicei, adresa IP se schimbă de fiecare dată când accesați Internetul (aceasta este o adresă „dinamică”). Totuși, dacă se folosește o conexiune de mare viteză, în funcție de circumstanțe, este posibil ca adresa IP sau chiar cookie-ul pe care îl folosim să conțină informații identificabile. Acest lucru se datorează faptului că, în cazul anumitor tipuri de conexiuni de mare viteză, adresa dumneavoastră IP nu se schimbă („static”) și poate fi asociată cu computerul Persoanei. Folosim adresa IP a Persoanei pentru a furniza informații generale despre utilizarea site-ului, precum și pentru a-l îmbunătăți.

Acest site folosește tehnologia pentru a determina locația unei persoane.

O persoană este obligată să părăsească acest site dacă nu dorește ca datele de mai sus (cookie-uri, adresa IP și datele de locație) să fie prelucrate.

Acest site nu este destinat persoanelor sub 18 ani. Nu colectăm date personale de la persoane despre care știm că au sub 18 ani. Acest site folosește criptarea Secure Sockets Layer (SSL) standard din industrie pentru a colecta informații. Cu toate acestea, pentru a profita de această opțiune, browserul trebuie să accepte închiderea criptografică (începând cu versiunea Internet Explorer 3.0 în continuare). Antreprenorul individual Alexey Vladimirovich Zabolotnov își rezervă dreptul de a furniza informații agențiilor guvernamentale la solicitări corespunzătoare sau în cazurile prevăzute de lege.

Pentru a elimina informații despre o Persoană din listele noastre de contact, trebuie să contactați următoarea adresă: IP Zabolotnov Alexey Vladimirovich, tel.: +7 8352 441133. Sau prin e-mail: manager@site

O persoană poate continua să primească materiale în timp ce înregistrările noastre sunt actualizate. Politica de confidențialitate a site-ului web poate fi actualizată din când în când. După actualizare, aceste reguli vor fi disponibile pe această pagină.