30.10.2019

Dacă registrul de decontare susține perioada de valabilitate atunci. Proprietatea dimensiunii de bază a registrului de calcul. Proprietatea de înregistrare a registrului de calcul Perioada de jurnal este


Rezultatele unor angajamente si deduceri depind de rezultatele obtinute din alte tipuri de calcul. De exemplu, marcaj procentual la salarii depinde de valoarea veniturilor de bază acumulate de angajat. Suma principală salariileîn acest caz, se numește baza de calcul a suprataxelor, iar tipurile de calcul care alcătuiesc baza se numesc tipuri de calcul de bază.

Baza se calculează pentru perioada de bază specificată în înregistrarea registrului de calcul. Perioada de bază este perioada pentru care angajamentele sunt selectate din registrul de calcul pentru a determina baza. Perioada de bază poate fi mai mică de o lună (de exemplu, la calcularea indemnizației pentru combinarea de profesii, dacă combinația a durat mai puțin de o lună) sau mai multe perioade de calcul (de exemplu, perioada de bază pentru bonusul trimestrial este de 3 luni ).

Baza de calcul a angajamentelor include toate angajamentele pentru perioada de bază, indiferent de perioada de facturare în care au fost acumulate. De exemplu, la calcularea bonusului pentru luna iulie, baza de date va include atât plata salariului pentru prima jumătate a lunii iulie, acumulată în iulie, cât și plata salariului pentru a doua jumătate a lunii iulie, înregistrată în luna august. Această dependență de taxele de bază se numește dependență de perioadă.

În caz de dependență de perioada de valabilitate, baza se încasează din rezultatele înregistrărilor din registrul de calcul, a căror perioadă de valabilitate se încadrează în perioada de bază. În cazul în care evidența registrului de calcul nu are o perioadă de valabilitate, atunci se analizează perioada de înregistrare a evidenței, iar dacă se încadrează în perioada de bază, rezultatul este inclus în bază. Cu o astfel de dependență, poate apărea o situație când doar o parte din perioada de valabilitate de angajamente se încadrează în perioada de bază. De exemplu, plata salariului este calculată pentru o lună întreagă, iar baza pentru alocația combinată trebuie determinată doar pentru o jumătate de lună. În acest caz, baza indemnizației va include doar o parte din plata salariului pentru numărul de zile sau ore conform programului salariatului care se încadrează în perioada de bază.

Baza pentru calcularea deducerilor, de exemplu, ordine de executare, se formează într-un mod diferit. Baza include toate taxele înregistrate în luna curentă, indiferent de perioada pentru care au fost percepute. Această dependență se numește dependență în perioada de înregistrare.

Orez. Dependența de bază

Orez. Suprapunerea parțială a perioadei de bază și a perioadei de valabilitate

În caz de dependență de perioada de înregistrare, baza de date cuprinde rezultatele doar acelor înregistrări ale registrelor de calcul, a căror perioadă de înregistrare se încadrează în perioada de bază.

Relația dintre rezultatele angajamentelor și deducerilor poate fi pe mai multe niveluri și destul de complexă. Cele mai multe indemnizații, cum ar fi vechimea, clasa și zonele de serviciu sunt stabilite la procent din salariul de bază acumulat salariatului pentru orele lucrate. Pe cuantumul plății de bază, ținând cont de indemnizații, se acumulează sporuri în cadrul sistemului de salarizare. Primele, la rândul lor, sunt incluse în baza de calcul a indemnizației de nord, iar baza acesteia din urmă include și plata de bază și alte indemnizații pentru angajat. Dacă, după finalizarea tuturor calculelor, dintr-un motiv oarecare, rezultatul uneia dintre taxe se modifică, atunci toate taxele dependente de aceasta trebuie recalculate.

De exemplu, dacă, în urma calculului, se constată că salariatului i s-a atribuit o rată salarială incorectă și rezultatul plății salariului trebuie recalculat, atunci toate indemnizațiile dependente de plata salariului, precum și sporurile și indemnizația de nord. , trebuie recalculat secvenţial. Aceasta nu este o sarcină ușoară, mai ales dacă ai în vedere că în cazul general, toate aceste taxe pot fi înregistrate în infobază cu mai multe documente. Programul vă permite să urmăriți automat astfel de situații și să determinați lista documentelor care trebuie recalculate. Pentru a utiliza mecanismul, pentru fiecare tip de calcul dependent, trebuie să specificați o listă de tipuri de calcul principale.

Principalele sunt astfel de tipuri de calcule, atunci când rezultatele cărora se modifică, este necesar să se recalculeze rezultatul acestui tip de calcul.

Conceptele de calcul de bază și de conducere sunt foarte apropiate ca înțeles și cel mai adesea listele de tipuri de calcul de bază și de conducere coincid, dar nu ar trebui să le sperii.

De bază sunt tipurile de calcule care afectează direct rezultatul acestui tip de calcul. Este posibil ca tipurile principale de calcul să nu fie incluse în bază, dar să aibă un efect indirect asupra rezultatului, de exemplu. lista de tipuri de calcul de bază poate fi mai largă decât lista de tipuri de calcul de bază.

Vom vedea discrepanța dintre listele de tipuri de calcul de bază și de conducere atunci când luăm în considerare configurarea calculului câștigului mediu. Baza pentru bonusuri luate în considerare la calcularea câștigului mediu este colectată separat de câștigul de bază al angajatului. Pentru a obține automat o bază de prime în ceea ce privește tipurile de calcul Câștigurile medii există tipuri speciale de calcul a Bonusurilor, luate în considerare în componența câștigului mediu, a căror bază sunt tipurile de calcul a bonusurilor. Valoarea sporului poate fi calculată ca procent din alte angajamente (plăți la tarife, prime salariale etc.), care, deși nu sunt incluse în baza pentru tipul de calcul, sunt incluse în lista principalele tipuri de pieptene.

Listele de tipuri de calcul de bază și de început sunt configurate sub forma unui tip de calcul dependent.

Când configurați tipurile de calcul principale, trebuie să urmați regula în același mod ca și atunci când configurați tipurile de calcul deplasate: dacă tipul de calcul A este lider pentru tipul de calcul B, care la rândul său este lider pentru tipul de calcul C, atunci în listă dintre tipurile de calcul principale pentru tipul de calcul C trebuie incluse atât tipul de calcul B, cât și tipul de calcul A. În caz contrar, programul va afișa un mesaj de eroare: „Lista incompletă a tipurilor de calcul principale!” De exemplu, dacă bonusul trimestrial este inclus în lista de angajamente principale, atunci ar trebui incluse toate angajamentele principale pentru bonusul trimestrial, cum ar fi Salariul pe zi Salariu pe oră etc.

Orez. Configurarea tipurilor de calcul de bază și de conducere

1. Obiecte metadate utilizate în calculele periodice În V 8 sunt destinate implementării calculelor periodice complexe următoarele obiecte: planuri de tipuri de calcul, registre de calcul. În plus: Cărțile de referință stochează obiecte care sunt utilizate ca secțiuni ale calculelor periodice, de exemplu, indivizi, unități organizaționale, posturi de angajați etc. Registrele de informații pot stoca orice informație extinsă pe mai multe dimensiuni. Cu ajutorul registrelor de informații sunt implementate programe de urmărire a timpului (analog calendarelor din versiunea 7.7). Documentele sunt destinate introducerii înregistrărilor în registrele de calcul. Rapoartele sunt folosite pentru a afișa informații detaliate și rezumate.

2. Planuri de tipuri de calcul Salariul salariatului include următoarele calcule intermediare: calculul taxelor de bază (salariu, tarif), calculul abaterilor (vacanță, concediu medical), calculul costurilor suplimentare (bonusuri, suprataxe, dividende), calculul impozitelor și alte deduceri (impozit pe venitul persoanelor fizice, pensie alimentară), alte calcule (PFR, UST), calculul sumei totale de eliberat. Pentru calculul acestor componente de salarizare se folosesc tipuri de calcul, grupate în planuri de tip

2. 1. Scop Fiecare plan de tipuri de calcul descrie schema de interacțiune a înregistrărilor registrului de calcul și vă permite să stabiliți regulile după care vor fi calculate înregistrările, poziția relativă a acestora în timp și regulile de recalculare a acestora. Pot exista mai multe planuri de tipuri de calcul. Distribuția tipurilor de calcul pentru planuri nu este arbitrară, deoarece planul are unele Caracteristici generale, care se va aplica tuturor tipurilor de calcule incluse în acesta. De exemplu, sprijinul pentru excluderea reciprocă în funcție de perioada de valabilitate este tipic pentru taxele și abaterile de bază (salariu, concediu de odihnă) și nu este tipic pentru impozite și deduceri (impozit pe venitul personal, pensia alimentară). Cometariu. Tipurile de calcul din V 8 nu sunt obiecte de configurare, așa cum au fost în 7. 7. Sunt stocate în planurile de tip de calcul, adică sunt obiecte de date, nu obiecte de metadate.

2. 2. Tipuri predefinite de calcul În ceea ce privește tipurile de calcule, deja în stadiul de elaborare a unei soluții aplicate pot fi începute tipuri predefinite de calcule. Restul BP-urilor sunt introduse în planuri în 1C: modul Enterprise.

2. 3. Interrelaţionarea tipurilor de calcul Pentru fiecare BP sunt indicate tipuri de calcule de bază, conducătoare şi deplasare.De bază - acestea sunt tipurile de calcul, ale căror rezultate sunt utilizate în calculul acestui tip de calcul. De exemplu, valoarea salariului este utilizată la calcularea plății suplimentare la salariu, iar taxele principale sunt baza de calcul al impozitului pe venitul personal. Conducere - acestea sunt tipurile de calcul, atunci când schimbați rezultatele cărora trebuie să le recalculați vedere dată calcul. De exemplu, atunci când plata salariului este modificată „retroactiv”, este necesară recalcularea indemnizației de concediu, deoarece la calcularea plății de concediu salariu mediu angajat pentru lunile precedente. Este posibil ca lista tipurilor de calcul principale să nu coincidă cu lista celor de bază.

Deplasarea continuă - acestea sunt tipuri de decontare a căror perioadă de valabilitate nu trebuie să se suprapună cu perioada acestui tip de decontare. Tipurile de calcul preventiv au o prioritate mai mare de preempțiune, prin urmare înlocuiesc acest tip de calcul în timp. De exemplu, plata concediului de odihnă înlocuiește salariul, iar plata concediului medical înlocuiește plata concediului și salariul. Atunci când o înregistrare cu o anumită perioadă de valabilitate este anticipată, perioada de valabilitate reală a acesteia se poate modifica, adică va scădea sau va fi împărțită în mai multe intervale. De exemplu, un record de vacanță din 10 până în 20 a lunii exclude un record de salariu care are o perioadă de valabilitate pentru întreaga lună. Atunci perioada efectivă de valabilitate a evidenței salariale va consta din două intervale: de la 1 până la a 9-a zi și de la 21 până la sfârșitul lunii.

Notă Numai BP-urile care aparțin aceluiași plan de tipuri de calcul pot fi eliminate (BP-urile de bază și principale pot fi localizate în mai multe planuri)

2. 5. Secțiuni tabelare predefinite ale unei diagrame de tipuri de calcul Pentru stocarea BP de bază, de deplasare și de conducere în Planurile de tipuri de calcul, sunt furnizate următoarele secțiuni tabelare predefinite: Bază. Vizualizări. Deplasare de calcul. Vizualizări. Calcul, conducere. Vizualizări. Calcul. Acces la datele PM din program - conform regulilor de accesare PM a obiectelor de configurare (consultați ajutorul Syntatkis)

3. Registre (vezi dt „Transfer de date” în TC) calcul (PP) Registrele de calcul sunt concepute pentru a stoca înregistrările de calcul (rezultate intermediare și finale) - vezi Jurnalul de calcul în V 7. 7. O caracteristică distinctivă a registrului de calcul este că nu este destinat să fie editat interactiv de către utilizator. Dezvoltatorul poate, dacă este necesar, să ofere utilizatorului posibilitatea de a edita registrul de calcul, dar scopul registrului de calcul este de a-l modifica pe baza algoritmilor obiectelor bazei de date și nu ca urmare a acțiunilor directe ale utilizatorului.

3. 1. Structura Registrului de decontare Structura registrului de decontare determină ce informații și în ce aspecte vor fi stocate în registru. Dezvoltatorul specifică dimensiunile, resursele și detaliile registrului: Dimensiunile sunt secțiuni ale informațiilor stocate. De exemplu, registrul este Basic. Acumulările pot avea dimensiuni Angajat, Organizație, Departament, iar registrul de taxe are dimensiuni: Angajat și Organizație. Resurse - rezultate de calcul, de exemplu, Resursă de rezultat pentru registrul general. Angajamente. Resursele pot fi doar de tip numeric. Detalii - o caracteristică suplimentară a înregistrării de calcul. Atributele pot fi de aproape orice tip stocate în baza de date. De exemplu, atributele Zile și Orele pentru registrul principal. Acumulări, variabila Sumă pentru stocarea datelor inițiale de calcul etc.

3. 2. Periodicitatea РР Trăsăturile distinctive ale registrului de calcul sunt: ​​1. Periodicitatea registrului determină perioada cu care se înregistrează mișcările și în care mișcările se pot influența reciproc (pentru registrele care suportă perioada de valabilitate). Periodicitatea registrului de calcul poate fi definită de una dintre următoarele valori: Zi, Lună, Trimestru, An.

continuare Periodicitatea registrului de calcul determină perioada de timp la care se va raporta fiecare înregistrare în registru. Pentru a indica faptul că o înregistrare aparține oricărei perioade, registrul are variabila de serviciu „Perioada. Înregistrare „tip Data. La scrierea datelor în registru, platforma aduce întotdeauna valoarea acestei variabile la începutul perioadei în care se încadrează. De exemplu, dacă scrieți date în registrul de calcul cu o periodicitate lunară, unde „Perioada. Înregistrarea „este setată ca 08.04.2009, atunci registrul va salva aceste date cu valoarea câmpului“ Perioada. Înregistrare „01.04.2009

3. 4. Dependența înregistrărilor după perioada de bază Acest mecanism vă permite să bazați calculul înregistrărilor de registru dependente (secundar) pe datele obținute ca urmare a calculului înregistrărilor primare. Registrul de decontare (prin planul BP corespunzător) poate suporta două tipuri de dependență de bază: Dependență după perioada de valabilitate Dependență după perioada de înregistrare.

continuare Dependența după perioada de valabilitate înseamnă că atunci când se analizează înregistrările de bază, vor fi selectate acele înregistrări pentru care se găsește intersecția dintre perioada de valabilitate reală și perioada de bază specificată. De exemplu, în aprilie, salariul pentru luna martie este recalculat (de exemplu, indexarea salariilor). Primul pentru luna martie ar trebui calculat pe baza plății salariului pentru luna martie. În acest caz, de regulă, se utilizează dependența de perioada de valabilitate. Dependența după perioada de înregistrare înseamnă că atunci când se analizează înregistrările de bază, vor fi selectate acele înregistrări care se încadrează în perioada de bază specificată după valoarea câmpului lor „Perioada de înregistrare”. Un exemplu este calculul amenzilor la calculul salariilor pe luna martie. Ca bază pentru calcularea cuantumului amenzilor, ar trebui luate evidențe privind absenteismul înregistrat în luna martie (acestea pot fi atât înregistrări de absenteism în martie, cât și evidențe de absenteism în februarie). În acest caz, de regulă, se utilizează dependența de perioada de înregistrare:

3. 5. Posibilitatea stabilirii conexiunii intre RR si orarul. Dacă PP-ul este folosit pentru stocarea înregistrărilor BP, al căror calcul depinde de orele lucrate, se stabilește o legătură cu un program care stochează datele privind orele de lucru planificate.

4. Diagrame de timp Dacă caseta de selectare „Perioada de valabilitate” este bifată pentru registru, puteți completa proprietățile „Grafic”, „Valoare diagramă” și „Data diagramă”. O astfel de cronologie ar trebui să fie un registru de informații (neperiodic, cu o dimensiune obligatorie de tip Date și o resursă de tip Number), care conține o schemă temporară a datelor inițiale implicate în calcule. Dimensiunile acestui program pot fi, de exemplu, programul de lucru (link către cartea de referință) și data, iar resursa este numărul de ore de lucru la această dată. În acest caz, va fi posibil să legați înregistrarea registrului de calcul cu orice program de lucru specific (prin specificarea unui link către cartea de referință a programului de lucru ca atribut de înregistrare) și în viitor, folosind limbajul încorporat, să primiți informații despre numărul de ore de lucru în perioada de valabilitate, perioada efectivă de valabilitate sau perioada de înregistrare a acestei evidențe. De exemplu, acesta poate fi programul de lucru al unei organizații defalcat pe zile și ore de lucru, un program pentru durata schimburilor de lucru, un program pentru orele de curs etc.

5. Lovitura parțială a înregistrărilor registrului de calcul în perioada de bază Să luăm în considerare cazul în care perioada de bază nu este un multiplu al perioadei registrului de calcul. De exemplu, există un fel de primă „specială” (validă în luna mai), care are o perioadă de bază de la 15.04.2009 la 15.04.2009 (de exemplu, puteți oferi și următoarele opțiuni pentru perioadele de bază: ultimele 2 săptămâni , prima și ultima săptămână a lunii precedente, ultimele două zile, luni etc.). La primirea bazei, sistemul trebuie să însumeze rezultatele tuturor înregistrărilor care se încadrează în această perioadă. Evident, poate apărea o situație când înregistrările din perioada de bază considerată nu sunt complet, ci „parțial”.Desigur, vorbim doar despre acele înregistrări care conțin tipuri de decontare specificate în planul de tipuri de decontare ca bază pentru această primă. Pentru certitudine, să presupunem că bonusul „special” conține „Salariu” ca tip de calcul de bază. Înregistrările pot intra în perioada de bază fie „după perioada de înregistrare”, fie „după perioada de valabilitate”.

Continuare Luați în considerare primul caz când înregistrările se încadrează în perioada de bază până la perioada de înregistrare. În acest caz, caracteristica „Depinde de perioada de înregistrare” trebuie stabilită în planul tipurilor de decontare asociat cu registrul de decontare. Reamintim că perioada de înregistrare este întotdeauna o dată specifică corespunzătoare începutului perioadei de registru de decontare. Dacă perioada de înregistrare (adică o anumită dată) nu se încadrează în perioada de bază, atunci această înregistrare nu va fi luată în considerare la calcularea bazei. Adică, dacă dependența de bază este stabilită în perioada de înregistrare, atunci nu vor exista rezultate „parțiale”: fie înregistrarea va fi luată în considerare pe deplin, fie complet nu va fi luată în considerare. În cazul nostru, nicio înregistrare nu va fi inclusă în perioada de bază a primei „speciale”, întrucât perioada 15.04.2009 – 15.04.2009 nu acoperă nicio dată de începere a perioadei de registru de calcul.

Continuare Luați în considerare al doilea caz, când înregistrările se încadrează în perioada de bază până la perioada de valabilitate. În acest caz, caracteristica „Depinde de perioada de valabilitate” trebuie setată în planul de tipuri de decontare asociat cu registrul de decontare. Aici trebuie să determinați ce parte a rezultatului trebuie luată atunci când calculați baza. Pentru a face astfel de rezultate „discrete”, se folosește obiectul „Graph”. Folosind informațiile din grafic, puteți calcula ce parte din rezultatul total al „liniei de bază” se încadrează în fiecare zi și luați numai acele zile care se încadrează în perioada de bază.

6. Recalculări Sistemul vă permite să urmăriți automat înregistrările care necesită recalculări. Această situație poate apărea atunci când rezultatele lor sunt într-un fel legate de alte tipuri de calcul, iar acestea au fost modificate (șterse sau adăugate înregistrări noi). De exemplu, atunci când modificați taxele angajaților, trebuie să recalculați impozitele. Apoi, pentru tipul de calcul „impozitul pe venitul personal” angajamentele vor fi principalele tipuri de calcul, care este configurat în planul de tipuri de calcul din fila „Conducere”. Să presupunem că avem registre de calcul principale. Acumulări, bonusuri și rețineri. Taxele sunt calculate după toate angajamentele și bonusurile, pe măsură ce sunt utilizate rezultatele acestora. Pentru a urmări automat relevanța înregistrărilor fiscale pentru fiecare angajat, trebuie să creați o alocare cu dimensiunea Angajat în registrul Retenție. Măsurarea este atribuită ca date ale registrelor conducătoare

continuare Obiectele subordonate Recalcularea sunt destinate înregistrării faptelor de apariţie a înregistrărilor în registru care afectează rezultatul calculării înregistrărilor deja existente. Obiectul de configurare Alocare poate avea mai multe dimensiuni, fiecare dintre acestea putând stabili o relație între dimensiunile registrului de calcul dat și registrele de calcul influențate. Într-un anumit caz, poate fi același registru. Într-o structură de informații creată în baza de date bazată pe obiectul de configurare Recalculate, platforma stochează informații despre ce înregistrări din registru trebuie recalculate. Tabelele de alocare sunt completate automat, atât pe baza înregistrărilor din registrul de decontare afectate de principalele tipuri de decontare, cât și pe baza înregistrărilor din registrul de decontare pentru care perioada de valabilitate reală s-a modificat. Pe baza acestor informații, dezvoltatorul poate decide dacă recalculează intrările din registru.

6. Tehnici de programare Pentru a lucra cu PP prin intermediul limbajului încorporat, sunt utilizate următoarele obiecte (vezi Syntax-Helper - independent)

Un exemplu de modul pentru afișarea unui document de acumulare a salariului Procesarea procedurii. Menținere (Eșec, Mod) pentru fiecare curent Linia. Listă din ciclul listă // înregistrare Jurnal. Calculation Movement = Mișcare. Revistă. Calcul. Adăuga(); Trafic. Storno = Fals; Trafic. Registrator = Link; Trafic. Vedere. Calcul = Curent. Linia. Listă. Vedere. Calcul; Trafic. Perioadă. Acțiuni. Start = Curent Linia. Listă. Data. Începuturi; Trafic. Perioadă. Acțiuni. Sfârșit = curent Linia. Listă. Data. terminații; Trafic. Baza. Perioadă. Start = Start. Ziua (Curentă. Șir. Listă. Data. Început); Trafic. Baza. Perioadă. Sfârșit = Sfârșit. Zi (Curentă. Linie. Listă. Data. Sfârșit); Trafic. Perioadă. Inregistrari = Perioada. Înregistrare; Trafic. Angajat = Tech. Linia. Listă. Angajat; Trafic. Rezultat = 0; Trafic. Sumă = curent Linia. Listă. magnitudinea;

a continuat Dacă Mișcarea. Vedere. Calcul = Planuri. Specie. Calcul. Vizualizări. Calcule. bine f Apoi Mișcare. Rezultat = curent Linia. Listă. magnitudinea; Sfârșit. Dacă; Dacă Mișcarea. Vedere. Calcul = Planuri. Specie. Calcul. Vizualizări. Calcule. Bolnav, apoi muta. Rezultat = curent Linia. Listă. magnitudinea; Sfârșit. Dacă; Sfârșit. Ciclu; // scrieți mișcările registrului (câmpul rezultat este indicat doar pentru acele VR, // care sunt introduse în document printr-o valoare gata făcută) Mișcări. Revistă. Calcul. Scrie ();

continuare // obține o listă cu toți angajații conținute în documentul Solicitare = Solicitare nouă; Anchetă. Text = "| ALEGEȚI DIFERIT | Acumulare. Salariile. Lista. Angajat | DIN | Document. Acumulare. Salariile. Listă | Acumularea AS. Salariile. Lista | | UNDE | Acumulare. Salariile. Lista. Link = & Actual. Document"; Anchetă. Instalare. Parametru („Current. Document”, link); // creează o listă de angajați Tab. Val = Solicitare. A executa (). Descărcați (); Matrice. Angajati = Tab. Rău. Descărca. Coloana („Angajat”); Listă. Angajații = Listă nouă. Valori;

a continuat Calculați. Acumulări (Mișcări. Jurnal. Calcul, Planuri. Tipuri. Calcul. Tipuri. Calcule. Salariu, Lista. Angajați); Circulaţie. Revistă. Calcul. Scrie Adevarul); Calculati. Acumulări (Mișcări. Jurnal. Calcul, Planuri. Tipuri. Calcul. Tipuri. Calcul. Bonus, Lista. Angajații); Circulaţie. Revistă. Calcul. Scrie Adevarul);

continuare Procedura Calculați. Acumulări (Set. Mișcări, Selectat. Tip. Calcul, Listă. Angajați) Export Dacă este selectat. Vedere. Calcul = Planuri. Specie. Calcul. Vizualizări. Calcule. Salariu Apoi Pentru Fiecare Mutare Din Set. Ciclul de mișcare Dacă mișcarea. Vedere. Calcul = Planuri. Specie. Calcul. Vizualizări. Calcule. Salariu, apoi de fapt. Terminat = Mișcare. a primi. Date. Grafice (Tip. Perioada. Registru. Calcul. Actual. Perioada. Acțiuni); Efectuat. Plan = Mișcare. A primi. Date. Grafică (Tip. Perioada. Registru. Calcul. Perioada. Acțiuni); Trafic. Rezultat = Mișcare. Suma * De fapt. Efectuat. Valoare / Elaborat. Plan. Sens; Sfârșit. Dacă; Sfârșit. Ciclu; Sfârșit. Dacă;

continuare Dacă selectați. Vedere. Calcul = Planuri. Specie. Calcul. Vizualizări. Calcule. Award Then Resources = New Array (1); Resurse = "Jurnal. Calcul. Rezultat"; Dimensiuni = Structură nouă („Angajat”, „Jurnal. Calcul. Angajat”); Pentru fiecare Mișcare din Set. Ciclul de mișcare Dacă mișcarea. Vedere. Calcul = Planuri. Specie. Calcul. Vizualizări. Calcule. Bonus Apoi Baza. Calcul = Mișcare. A primi. Baza (Resurse, Măsurători); Trafic. Rezultat = Mișcare. Suma * Baza. Calcul. Rezultat / 10 0; Sfârșit. Dacă; Sfârșit. Ciclu; Sfârșit. Dacă; Sfârșit. Proceduri

În acest articol, vom lua în considerare baza teoretica lucrează cu registre de calcul, precum și efectuează calculul salariului salariatului proporțional cu numărul de ore lucrate.

Teorie

Registrul de calcul (RR)- un obiect de metadate de configurare utilizat pentru implementarea calculelor periodice în sistemul 1C. Dintre domeniile evidente de aplicare a registrelor de calcul se pot distinge: calculul salariilor, calculul chiriei, calculul chiriei.

Registrele de calcul sunt similare ca structură cu registrele de acumulare sau registrele de informații. Ele, ca și registrele de acumulare, au dimensiuni, resurse, detalii, dar principiul de funcționare al registrelor de calcul este complet diferit.

În esență, măsurătorile din registrul de acumulare servesc drept „ filtru»In contextul caruia primim date din registrul de acumulare. Ca exemplu, când luăm „soldurile” conform registrului de acumulare „Soldurile de mărfuri” în contextul unei anumite nomenclaturi sau „o tăietură a acestuia din urmă” conform registrului de informații „Salariile angajaților” în context a unui anumit angajat. Spre deosebire de registrul de acumulare, măsurătorile din registrul de calcul periodic sunt folosite pentru a implementa „“ (acesta este atunci când tipurile de calcul extinse în timp concurează între ele pe intervalul perioadei de valabilitate a înregistrării, adică, de exemplu, afacerea tipul de calcul de călătorie înlocuiește tipul de calcul al salariului cu perioada de valabilitate) și „“ (Aceasta este atunci când tipul de calcul al bonusului depinde de tipul de calcul al salariului pentru perioadele trecute).

mecanism de deplasare după perioada de acţiune«:

Aici vedem că tipul de calcul „Călătorie de afaceri” are o lungime în timp și este valabil în perioada 10-20 aprilie, „Călătorie de afaceri” este indicat ca tip de calcul deplasant pentru tipul de calcul „Salariu”. „Salariul” are și o perioadă de timp și este valabil de la 1 până la 30 aprilie. Întrucât „Călătorie de afaceri” este specificată ca tip de calcul deplasant pentru tipul de calcul „Salariu” (are prioritate mai mare decât salariul) și este valabil pe perioada de valabilitate a salariului, salariul este înlocuit de o călătorie de afaceri și se formează „Perioada reală de valabilitate a salariului". „Perioada reală de valabilitate a salariului. »Aceasta este perioada de valabilitate a salariului după ce a fost scos de la o călătorie de afaceri, în cazul nostru este formată din 2 perioade - de la 1 aprilie la 9 aprilie și de la 21 la 30 aprilie și în total este de 19 zile. Mecanismul de deplasare bazat pe perioade funcționează numai pentru calculele care sunt prelungite în timp.

Figura de mai sus arată grafic principiul „ mecanismul dependenței de perioada de bază«:

Să presupunem că la sfârșitul lunii aprilie 2017 dorim să acumulăm unui angajat un bonus de 10% din salariu. Salariul este indicat ca tipuri de bază de calcul pentru bonus.

Însă ca „bază” de calcul a primei, vom lua nu întreaga lună aprilie, ci doar intervalul de la 10 la 20 aprilie (11 zile). Să calculăm baza pentru bonus, salariul angajatului este de 60.000 de ruble, avem 30 de zile într-o lună, salariul zilnic = 60.000/30 = 2.000 de ruble. Apoi 2000 * 11 = 22000 ruble. Baza de calcul a primei este de 22.000 de ruble.

Să calculăm prima: (22000/100) * 10 = 2200 ruble. Bonusul în valoare de 10% din salariu este de 2200 de ruble.

Strâns legat de registrul de decontare este obiectul aplicației de metadate „Planul tipurilor de decontare”.

Planul tipului de calcul (PVR)- un obiect de metadate de configurare care stochează informații despre tipurile de tipuri de calcule și determină impactul diferitelor calcule unul asupra celuilalt.

O diagramă de tip de calcul poate fi utilizată în mai multe registre de calcul, dar un registru de calcul nu poate utiliza mai multe planuri de tip de calcul în același timp.

Registrul de calcul este un tabel care stochează datele calculate, iar în planul tipurilor de calcul sunt stocați algoritmii pentru calcularea acestor date. Registrul de salarizare trebuie să aibă cel puțin un registrator de documente care efectuează mișcările în registrul de salarizare (de exemplu, Salarizare).

Mecanismele de decontare din sistemul 1C Enterprise sunt concepute astfel încât mai întâi trebuie să faceți înregistrări în registrul de decontare și abia apoi să efectuați un calcul pe baza acestor date. De exemplu, nu puteți calcula un bonus pe baza unui salariu până când același salariu nu este înregistrat în registrul de calcul.

Practică

Să aruncăm o privire mai atentă asupra registrelor de calcul în practică:

Pasul 1 Să începem cu o diagramă a tipurilor de calcul. Trebuie să creați o diagramă cu tipurile de decontare înainte de a crea un registru de decontare. Creăm un plan de tipuri de calcul în fața registrului de calcul, deoarece înainte de a crea un tabel pentru stocarea datelor calculate (adică, registrul de calcul), este necesar să specificați algoritmi pentru calcularea acestor date (adică un plan de tipuri de calcul).

Să creăm un plan de tipuri de calcul „Taxele de bază”. Să mergem imediat la fila „Calcul”. Aici vedem imediat steagul " Utilizează o perioadă de valabilitate", Când acest steag este setat, toate tipurile de calcule incluse în acest plan vor avea perioadă de timp(de exemplu, Salariu, Călătorie de afaceri), iar pentru acest plan de tipuri de calcul, " mecanism de deplasare după perioada de acţiune". Dacă caseta de selectare „Folosește perioada de valabilitate” nu este setată, atunci tipurile de calcul nu vor avea o durată în timp (de exemplu, Bonus, Penalizare) și „mecanismul de preempțiune după perioada de valabilitate” nu va funcționa. De asemenea, în această filă există secțiuni „Dependență de bază” și „Diagrame de bază ale tipurilor de calcul” - sunt folosite pentru a implementa „ mecanismul dependenței de perioada de bază„, Dar despre asta vom vorbi mai târziu. Deocamdată, să lăsăm „Dependența de bază” în modul „Nu depinde”.

Să creăm un tip de calcul predefinit „Salariu”. Totul este simplu în fila „General”. Setăm numele și codul tipului de calcul.

Datorită faptului că am pus steagul " Utilizează o perioadă de valabilitate„Acum avem o filă” Deplasare„Și aprins” mecanism de deplasare a perioadei«.

Pe această filă, indicăm tipurile de calcul care vor înlocui salariul cu perioada de valabilitate (de exemplu, Călătoria de afaceri).

Notă: în „Deplasare” se pot adăuga tipuri de calcul aparținând doar acestui plan de tipuri de calcul.

Există și o filă „ Conducere»- indică tipurile de calcul atunci când se schimbă care tipul actual de calcul ar trebui recalculat. Aici puteți specifica și tipuri de calcule din alte planuri de tipuri de calcul. De exemplu, tipul de calcul „Salariu” este cel mai important pentru tipul de calcul „Bonus”, adică. la modificarea salariului, bonusul trebuie recalculat. bonusul se calculeaza in functie de salariu. V acest caz tipul de calcul „Salariu” aparține PVR-ului „Taxele de bază” folosind perioada de valabilitate, iar tipul de calcul „Bonus” aparține PVR-urilor „Taxele suplimentare” care nu utilizează perioada de valabilitate.

Pasul 2.Creați referința „Diagrame” cu structura implicită. În cartea de referință „Grafe”, vom stoca modurile de lucru ale angajaților (cinci zile, șase zile etc.).

Pasul 3 Avem nevoie și de un obiect în care vom stoca calendarul de producție (zile lucrătoare și weekend-uri). În aceste scopuri, folosim un registru independent de informații neperiodic.

Să creăm un registru independent de informații neperiodic „Programe de lucru” cu 2 dimensiuni „Data” și „Program” și resursa „Număr de ore”.

Datorită registrului de informații „Programe de lucru”, vom putea calcula salariile din salariu proporțional cu numărul de zile lucrate.

Pasul 4.Să creăm un document „Stalari” cu structura detaliilor prezentate mai jos:

Rechizite:

Setăm conduita promptă în valoarea „Interzice” de cand nu are sens pentru mecanismul decontărilor periodice din 1C - nu percepem niciodată niciun bonus, salariu sau amendă în timp real.

Să creăm un formular de document cu setări implicite.

Pasul 5... În cele din urmă, am ajuns la crearea registrelor de calcul.

Obiectul de metadate registru de calcul este situat în ramura Registre de calcul a configuratorului.

Să creăm un registru de calcul „Taxele de bază”. Luați în considerare setările registrului de calcul de mai jos:

1. În câmpul „Plan de tipuri de calcul”, indicați IRR „Taxele de bază” create la pasul 1.

2.Setați indicatorul „Perioada de valabilitate” la valoarea „Adevărat” de atunci PVR specificat la pasul 1 posedă lungime în timp.

După setarea acestui flag, detaliile standard „Perioada de valabilitate”, „Început perioada de valabilitate”, „Sfârșitul perioadei de valabilitate” ne devin imediat disponibile, ceea ce înseamnă că și tipurile de calcul înregistrate în acest registru de calcul au perioadă de timpși devine disponibil la noi" mecanism de deplasare după perioada de acţiune«.


P.S. Dacă specificați un TAP cu perioadă de timp pentru un PP cu indicatorul „Perioada de valabilitate” setat la „False”, atunci acest TAP va funcționa ca TAP fără lungime în timp.

3. După setarea indicatorului „Perioada de valabilitate” la valoarea „Adevărat”, câmpurile „Chart”, „Chart value”, „Chart date” devin disponibile pentru noi.

În câmpul „Schedule”, indicați registrul de informații „Schedule” creat la pasul 3.

În câmpul „Valoare program”, indicați resursa „Număr de ore” din registrul de informații „Programe”.

În câmpul „Schedule date”, indicați dimensiunea „Date” a registrului de informații „Schedule”.

4. În câmpul „Frecvență” indicăm valoarea „Lună”, ceea ce înseamnă că datele vor fi introduse în registru lunar.

Mai jos este structura metadatelor registrului:

Indicatorul „De bază” pentru o dimensiune afectează doar performanța, poate fi lăsat nebifat, dar dacă este bifat, câmpul „Angajat” va fi indexat.

Dimensiunea „Angajat” - se aplică în „ mecanism de deplasare după perioada de acţiune" și " mecanismul dependenței de perioada de bază«.

Resursa „Suma” - salariul calculat va fi scris acolo.

Variabila „Schedule” este specificată ca un atribut, nu o dimensiune de registru, deoarece nici el, nici el nu înlocuiesc nimic – de fapt, un câmp de referință. Important!!! Nu uitați să completați câmpul „Link către program”. la variabila „Orar” trebuie indicată dimensiunea „Orar” din registrul de informații „Orar”, în caz contrar nu se va calcula salariul.

Atributul „Parametru” va stoca valoarea salariului.

Acum, când am indicat legătura cu RS „Programe de lucru”, salariul salariatului se va calcula proporțional cu numărul de zile lucrate.

În calitate de registrator, indicăm documentul „ Salarizare„Creat la pasul 4.

Pasul 6... Facem mișcări în registrul de calcul „Taxe de bază”.

Să revenim la documentul „Salarizare” creat la pasul 4.

Să descriem procesarea tranzacției în modulul obiect document:

Fragment din codul de procesare a documentelor

1C (Cod)

Înregistrare prin procedură (refuz, mod de înregistrare) // înregistrează MainAcountsMotion.MainCalculations.Write = True; Mișcări.MainCalculations.Clear (); Perioada de înregistrare = StartMonth (Data); Pentru fiecare TekStringBasicAccounts din ciclul BasicAcounts Movement = Movement.MainCalculations.Add (); Mișcarea Storny = Minciună; Movement.CalculationType = CurrentStringBasicAccounts.CalculationType; Movement.ActionPeriodStart = CurrentStringMainAccounts.StartDate; Movement.ActionPeriodEnd = EndDay (CurrentStringBasicAccounts.EndDate); Movement.Registration Period = Perioada de înregistrare; Movement.Employee = TechStringBasicAccounts.Employee; Movement.Graph = TekStringBasicAccounts.Graph; Movement.Parameter = TekStringMainCalculations.Size; Sfârșitul ciclului; Sfârșitul procedurii

Procedura de procesare a postării (refuz, mod de înregistrare)

// înregistrează Main

Circulaţie. Acumulări de bază. Scrie = Adevărat;

Circulaţie. Acumulări de bază. Clar ();

Perioada de înregistrare = StartMonth (Data);

Pentru fiecare linie de text

Mișcare = Mișcare. Acumulări de bază. Adăuga() ;

Trafic. Storno = Fals;

Trafic. Tip de calcul = CurrentStringMainCalculations. Tip de calcul;

Trafic. Perioada de ValidityStart = CurrentStringMainCalculations. Data de început;

Trafic. Validity PeriodEnd = EndDay (CurrentStringBasicAccounts .EndDate);

Trafic. Perioada de înregistrare = Perioada de înregistrare;

Trafic. Angajat = TekStringBasicAccounts. Angajat;

Trafic. Diagramă = CurrentStringMainCalculations. Programa;

Trafic. Parametru = CurrentStringMainCalculations. Marimea;

Sfârșitul ciclului;

Sfârșitul procedurii

Să creăm un document de testare și să-l rulăm:

Să mergem la „Mișcările documentului”:

Vedem că perioada de înscriere a fost stabilită la începutul lunii. frecvența RR este indicată ca „Lună”. De asemenea, vedem ca toate campurile au fost completate cu exceptia sumei (salariul nu a fost inca calculat).

Pasul 7.Să scriem codul de salarizare.

Să creăm un modul general „Calcul” cu următoarele steaguri:

În acest modul general, calculul în sine va avea loc.

Să scriem funcția de export „Calculați taxele” în modulul „Calcul”:

Deoarece am completat în setările PP „Taxe de bază” câmpurile „Grafic”, „Valoare diagramă”, „Data diagramă”, acum avem acces la un tabel virtual al registrului de calcul DataGraphics,în interogarea către tabelul virtual, ne interesează câmpurile:

„Număr de ore Perioada reală” - conține numărul de ore efectiv lucrate calculat pe baza datelor din grafic

„Număr de orePerioada de funcționare” - conține numărul de ore de lucru din perioada de calcul calculată pe baza datelor programului

Procedura de salarizare

1C (Cod)

Procedură Calcularea angajamentelor (registrar, set de înregistrări) Export // Solicitare salariu = Solicitare nouă; Zapros.Tekst = „SELECT | ESTNULL (OsnovnyeNachisleniyaDannyeGrafika.KolichestvoChasovFakticheskiyPeriodDeystviya, 0) AS ChasovFakt, | OsnovnyeNachisleniyaDannyeGrafika.Parametr, | ESTNULL (OsnovnyeNachisleniyaDannyeGrafika.KolichestvoChasovPeriodDeystviya, 0) AS ChasovPlan, | OsnovnyeNachisleniyaDannyeGrafika.NomerStroki | DIN | RegistrRascheta.OsnovnyeNachisleniya.DannyeGrafika (| Recorder = & Registrator | Și Tipul decontării = & Tipul de decontare Salariul) AS Basic AccrualsGraph Data "; Request.SetParameter ("Registrar", Registrator); // transferă documentul la registrator astfel încât căutarea să se efectueze numai pe documentul curent Request.SetParameter („Settlement Type”, Plans of Settlement Types.MainCalculations.Ware); // setează tipul de calcul al salariului din moment ce calculeaza salariul Sample = Request.Run ().Select (); Structură de căutare = Structură nouă; SearchStructure.Insert ("LineNumber", 0); // creează o structură pentru a căuta date pentru calcul după numărul de rând pentru fiecare înregistrare din ciclul setului de înregistrări // parcurge setul de înregistrări ale documentului curent SearchStructure.StringNumber = Record.LineNumber; // completați numărul rândului pentru căutare Dacă Selection.FindNext (SearchStructure) Apoi // căutați date în selecție pentru calcul după numărul de rând curent Record.Sum =? (Selection.HoursPlan = 0,0, Selection.HoursFact / Selection.HoursPlan * Selection .Parameter); // calculează salariul proporțional cu zilele lucrate, în Parametru - salariul curent EndIf; Fetch.Reset (); // resetați selecția, dorim ca următoarea înregistrare din setul de înregistrări să caute mai întâi selecția End of Loop; Recordset.Write (, True); // scrieți înregistrările calculate în baza de date, treceți parametrul Replace = True EndProcedure

//Salariu

Solicitare = Solicitare nouă;

Anchetă. Text = „SELECT

| IS NULL (BasicAccrualsGraphicsData.Number of HoursActualAction Period, 0) AS HoursFact.

| BasicAccountingDataGraphics.Parameter,

| EXISTĂ NULL (BasicAccrualsGraphicsData.Number of HoursAction Period, 0) AS HoursPlan,

| BasicAccountsDataGraphics.NumberStrings

| DE LA

| Registrul de calcul.BasicAccounting.DataGraphics (

| Registrar = & Registrator

Noul obiect „Planul tipurilor de calcul” este un analog de la distanță al tipurilor de calcul din 7.7. Tipurile de calcul sunt obiecte de date, nu obiecte de metadate. Pot exista tipuri de calcul predefinite.

În loc de grupurile de decontare excluse, puteți utiliza mecanismele încorporate ale diagramei tipurilor de decontare și ale registrelor de decontare. Pentru a grupa tipurile de calcul, puteți utiliza alte obiecte, de exemplu, detaliile tipurilor de calcul sau un director.

Obiect nou „Registrul de calcul” - un analog de la distanță al jurnalului de calcul în 7.7

În loc de calendare, registrele de informații sunt folosite pentru implementarea programelor de lucru.

Limbajul încorporat

Pentru a extinde semnificativ capacitățile platformei, a fost dezvoltat un nou model de obiect unificat al limbajului 1C: Enterprise 8.0. Acest lucru a făcut posibilă extinderea dramatică a capabilităților platformei, accelerarea dezvoltării acesteia și creșterea clarității modulelor software.

Au fost introduse noi literale și tipuri de date, cum ar fi literalele Undefined, Null, True și False (tip de date boolean). Tipul de dată include ora.

Depanatorul este inclus în configurator. El știe să arate o listă de proprietăți ale obiectelor cu valorile și tipurile lor. Este posibil să vizualizați colecții precum matrice și tabele de valori.

Au fost introduse module generale, care conțin doar o secțiune de proceduri și funcții. În configurație sunt disponibile proceduri și funcții ale modulelor comune, declarate cu cuvântul cheie „Export”.

La scrierea modulelor software, se folosește tehnologia indicii contextuale (analog cu IntelliSense). Editorul de text al modulelor de program acceptă gruparea (plierea) construcțiilor de sintaxă, precum și descrieri ale procedurilor și funcțiilor (sub formă de comentarii).

Funcționalitatea componentei externe v7plus.dll este inclusă în platformă sub formă de obiecte „Mail”, „Informații de sistem”, „Conexiune la internet”, „Conexiune FTP etc. Există instrumente pentru lucrul cu documente XML, precum și cât pentru citirea şi scrierea secvenţială.fişiere text mari.

Sarcina

Salariile angajaților companiei se efectuează lunar. Toți angajații lucrează pe un program de cinci zile, dar soluția trebuie să includă capacitatea de a lucra pe mai multe programe diferite.

Pentru desfășurarea cursurilor la locul principal de muncă, angajații întreprinderii de învățământ primesc plată la o rată orară. Suma percepută pentru tarif se calculează ca tarif tarifar înmulțit cu numărul de ore efectiv lucrate. Valoarea inițială a tarifului se poate modifica nu mai mult de o dată pe zi, dar este luată la începutul perioadei de facturare

Angajații pot desfășura formare la fața locului. În acest caz, tariful nu se percepe pentru perioada de pregătire în teren, dar

angajatul este format din două părți:

niste cantitate fixă compensând-o tarif;

Acumulări direct pentru formare sub formă de remunerație, calculate ca suma totală a plăților efectuate de studenți în perioada curentă de facturare, înmulțită cu un anumit procent. Valoarea procentuală poate fi setată în documentul „Stalari.

În decembrie, la sfârșitul anului, angajaților întreprinderii li se poate acorda un bonus ca procent din suma tuturor angajărilor efectuate în ultimul an. Procentul bonusului este același pentru toți angajații întreprinderii. Valoarea procentuală este determinată în momentul introducerii informațiilor despre acumulare în baza de informații.

Mecanismul de recalculare în cadrul acestei sarcini nu trebuie utilizat.

Toate taxele sunt introduse folosind documentul „Stalari”. Luați în considerare că toate datele sunt introduse doar în decurs de o lună, de exemplu, puteți specifica acumularea la rata de la 10.01 la 31.01, iar intrarea: rata de la 10.01 la 03.02 nu poate fi introdusă.

Pentru a analiza taxele efectuate către angajații întreprinderii în configurație, este necesar să se furnizeze un raport de următorul tip:

Raportul poate fi construit pentru orice perioada de decontare... Pentru a analiza angajamentele efectuate pentru formarea elevilor pe drum, trebuie prevăzut în configurație un raport de următorul tip:

Raportul poate fi creat pentru orice perioadă de facturare.


Soluţie

1. Vom începe rezolvarea problemei de calcul determinând ce tipuri de taxe și deduceri trebuie create în configurație și prin ce formule trebuie să se obțină rezultatul fiecărui tip de calcul. Conform misiunii, va trebui să creăm patru tipuri de calcule:

· Acumulare pentru formarea studenților la locul principal de muncă Rezultat = Tarif tarifar * Număr de ore lucrate;

Vă rugăm să rețineți pentru premiu anual se indică imediat metoda de calcul valoare totală toate taxele efectuate în ultimul an - „Obținerea bazei”.

2. În etapa următoare, pentru tipurile de calcul de mai sus, vom indica dependențele dintre ele.

Tabelul 5.1. Configurarea dependențelor de deplasare și de referință între tipurile de calcule necesare pentru rezolvarea problemei

Tipul de calcul Deplasare Baza
TRF KMD -
TRN - -
KMD - -
PfP - TRF, TRN, KMD

3. Să creăm tipurile de calcule de mai sus în configurație. Configurați secțiunea „Calcul” pentru fiecare plan de calcul utilizat;

4. Să creăm registre de calcul;

5. Să facem modificările necesare în structura documentului „Stalari”;

6. Să trecem la documentul „Salarizare”:

A. Adăugați numărul necesar de înregistrări în registru:

i. Determinați limitele intervalelor tuturor perioadelor existente pentru fiecare înregistrare;

ii. Indicăm valorile măsurătorilor și detaliile înregistrării;

b. Să calculăm înregistrările seturilor generate pentru tipurile primare de calcul:

i. Dacă se introduc costurile de transport - rezultatul angajării

vom determina imediat, conform datelor documentului;

ii. Calculul conform tarifului la locul principal de munca

1. Utilizând mecanismul de interogare, pentru fiecare înregistrare cu tipul de calcul specificat, vom primi date privind orele lucrate și tariful actual;

2. Organizați ciclul prin înregistrările setului. Pentru fiecare înregistrare, implementăm poziționarea directă pe rândul dorit în selecția interogării. Să calculăm rezultatul acumularii;

3. Să notăm setul, fără a recalcula perioada efectivă de valabilitate;

iii. Calculul taxei de plecare

1. Să creăm un registru revolving de acumulare „Plăți

ascultători”;

2. Să facem modificări la algoritmul de afișare a documentului „Venituri din bani”, atunci când este executat, acest registru trebuie completat;

3. Folosind mecanismul de anchete, pentru fiecare angajat care a lucrat pe drum si indicat in document, vom primi date privind platile studentilor;

4. Organizați ciclul prin înregistrările setului. Pentru fiecare înregistrare, implementăm poziționarea directă pe rândul dorit în selecția interogării. Să calculăm rezultatul acumularii;

5. Să notăm setul, fără a recalcula perioada efectivă de valabilitate;

d. Repetăm ​​pașii descriși în clauza 4 pentru înregistrările tipurilor de calcul secundare ale fiecărui nivel:

i. Calculul primei anuale

1. Să creăm o constantă pentru stocarea procentului de primă. Activați implicit modul de utilizare a formei principale de constante;

2. Folosind mecanismul de interogare, pentru fiecare înregistrare cu tipul de calcul specificat, vom primi date pe bază;

3. Organizați ciclul prin înregistrările setului. Pentru fiecare înregistrare, implementăm poziționarea directă pe rândul dorit în selecția interogării. Să calculăm rezultatul acumularii;

4. Să scriem setul;

e. Să transferăm codul programului asociat calculului în modulul general;

7. Să construim rapoartele necesare în sarcină pe datele registrelor de calcul folosind mecanismul de compunere a datelor.


Formulare gestionate

Sarcina

În formularele tuturor documentelor utilizate în sarcină, este necesar să se adauge capacitatea de a vizualiza mișcările în registrele asociate documentului al cărui formular este deschis pe acest moment timp.

În formularul de selecție a salariaților, denumit din formularul document „Stalari”, lista angajaților care urmează a fi selectați trebuie completată cu informații despre tarifele acestora. Atunci când alegeți un angajat, informațiile despre tariful adecvat ar trebui incluse în coloana „Mărime”. Pentru documentul „Salarizare”, trebuie să creați un formular de listă de bază, în care pentru documentul curent să fie reflectate înregistrările făcute de acesta în registrele de calcul.

Soluţie

1. Să creăm formele de bază ale documentelor. Să deschidem fiecare formular în fereastra editorului de formulare. În fila „Interfață de comandă”, deschideți ramura „Panou de navigare - Go”. Să setăm casetele de selectare „Vizibilitate” pentru registre.

2. Să creăm un formular non-principal pentru alegerea directorului " Persoanele fizice»;

A. Vom face modificările necesare structurii registrului „Informații despre angajați”;

b. Să creăm formă nouă;

c. Să deschidem paleta de proprietăți ale atributului principal al formularului;

d. În secțiunea „Obiect”, setați indicatorul „Solicitare personalizată”;

e. Să deschidem setările listei;

f. Să facem modificările necesare textului solicitării;

g. La crearea unui formular pe server, vom defini valorile parametrilor externi de solicitare;

h. Să ne definim propria procesare pentru alegerea unei valori dintr-un formular de director;

3. Organizam apelarea formularului director din formularul document

A. Să creăm forma principală a documentului „Salarizare”;

b. Să indicăm forma creată a cărții de referință ca valoare a proprietății „Formular de selecție” a elementului din formularul documentului „Angajat Plăți de bază”;


2021
mamipizza.ru - Bănci. Depozite și depozite. Transferuri de bani. Împrumuturi și impozite. Banii și statul