Implementare evidență pe centre de cheltuieli/profit în hMARFA

Opțiunea G - Centre de cheltuieli

Începând cu versiunile V 6.F sau V 6.G hMARFA permite înregistrarea centrelor de cheltuieli pe documentele de intrări, ieșiri, încasări/plăți. Pentru ca acest lucru să fie funcțional, trebuie implementată opțiunea G - Centre de cost/profit. Ulterior, centrele înregistrate în documente pot fi înscrise în fișierul de export la contare, putându-se implementa evidența centrelor de cost/profit. Câmpurile Centre de cheltuieli se activează doar pe documentele la care se solicită acest lucru: - dacă se înscrie "1" în Parametri din Tipuri de documente, se activează Centrul de cheltuieli la nivel de document, - dacă se înscrie "2" în Parametri din Tipuri de documente, se activează Centrul de cheltuieli la nivel de loturi (de intrare sau ieșire) Codurile acceptate în câmpurile de centre de cheltuieli sunt cele înscrise în Dictionar, rubricile corespunzătoare acestora sunt: - cele definite (opțional) în Parametri, la secțiunea [CENTRE], - rubrica implicită "Centru", dacă nu există o definiție explicită în acest sens. La completarea câmpurilor de centre este activă fereastra de ajutor care se lansează prin tasta <F1> și conține codurile deja înscrise în Dicționar în rubrica corespunzătoare centrului de cheltuieli sau profit. Înscrierea rubricilor corespunzătoare centrelor de cheltuieli în Parametri: [CENTRE] - exemplu la modul de asociere a câmpurilor de centre din fișiere la rubricile din Dicționar: // Recepții/Intrări CENTRU_R := "Centru_R" // Loturi de intrare CENTRU_LR := "Centru_LR" // Facturi/Ieșiri CENTRU_V := "Centru_V" // Loturi de ieșire CENTRU_LV := "Centru_LV" // Încasări/Plăți CENTRU_I := "Centru_I" // Contare - pentru ferestrele de ajutor ce se lansează pentru // înregistrările contabile generate după operația de Contare automată // După contarea automată, centrele existente în înregistrările generate // practic pot proveni din toate sursele enumerate mai sus CENTRU_C := "Centru_C"

Modul în care se completează centrele de cheltuieli la contare

- structura fișierului "cexp"-"Export pt. contab." este completată cu câmpurile: CENTDB C 12 - după câmpul TITDB, CENTCR C 12 - după câmpul TITCR, Câmpurile se completează la contare. - formula de contare poate să conțină expresii pentru centru debitor și centru creditor, în formulele de contare structura completă pentru o linie este: // Jurnal Tip doc Nr.doc Data Explicatii ContDB ContCR Valoare Titlu DB Titlu CR Centru DB Centru CR // C,5 C,5 C,6 D,8 C,40 C,11 C,11 N15.2 C50 C50 C12 C12 - la contare se încarcă variabilele de sistem: - loturi de intrare: xR_CentDoc, xR_CentLot, - loturi de ieșire: xF_CentDoc, xF_CentLot, xF_CentStoc - încasări/plăți: xI_CentDoc Pentru valorile conținute, vezi mai jos. - dacă se definește o expresie explicită pentru centrul debitor sau creditor, la generarea articolului se înscrie valoarea expresiei, - la contare, în cazul centrelor pentru care nu s-a definit o expresie explicită, acestea pot primi o valoare implicită sau se lasă necompletate. În acest sens, în Parametri la secțiunea [CENTRE] se pot defini: // CENTRU_DB[1], CENTRU_CR[1], // -lista conturilor pt.care se preia centrul din document, // daca nu i s-a stabilit o valoare printr-o // formula explicita la contare // CENTRU_DB[2], CENTRU_CR[2] // -lista conturilor care fac excecptia fata de cele // enumerate in CENTRU_DB[1] respectiv CENTRU_CR[1] CENTRU_DB := {{"cont1","cont2"},{"cont1_exceptie"}} CENTRU_CR := {{"cont1","cont2"},{"cont2_exceptie"}} // CENTRU_UM // pentru inregistrari cu unitati de masura, centrul se calculeaza // conform regulii anterioare pentru .T., se lasa necompletat pentru .F. CENTRU_UM := .T. Algoritmul prin care se generează centrul de cheltuieli: - dacă contul este prezent: - la debit: in CENTRU_DB [1] - la credit: in CENTRU_CR [1] - și NU este inhibat prin: - la debit: in CENTRU_DB [2] - la credit: in CENTRU_CR [2] Centrul se preia astfel: - la documente: de pe document, - la loturi: - din lot, dacă este completat, - din document, dacă nu este completat pentru lot. La înregistrările cantitativ-valorice: centrul se completează doar dacă CENTRU_UM := .T., altfel se lasă necompletat. Exemplu: CENTRU_DB := {{"6","7"},{"607.1"}} CENTRU_CR := {{"6","7"},{}} CENTRU_UM := .F. - presupunem că avem contul debitor 601, deci se generează centrul deoarece: - apare în lista din CENTRU_DB[1] (prin 6, interpretat ca 6...) - nu este inhibat de lista din CENTRU_DB[2] - presupunem că avem contul debitor 607.11, deci nu se generează centru deoarece: - deși apare în lista din CENTRU_DB[1] (prin 6, interpretat ca 6...) - este inhibat de lista din CENTRU_DB[2] (prin 607.1, interpretat ca 607.1...) Recapitulare regulă: 1. înregistrările care au o expresie explicită în formula de contare de centre, primesc valoarea returnată de expresie, 2. înregistrările care nu au o expresie explicită de centru în formula de contare, dacă condiția de CENTRU_DB, CR este satisfăcută; - se preia din centru lot, dacă există, - dacă nu este nici în centru lot, se preia din centru document, - dacă nici documentul nu are centru, rămâne necompletat. Un centru rămâne necompletat dacă: - nu are o expresie explicită în formula de contare corespunzătoare și - nu are centru doc, lot sau - contul generat nu satisface regula impusă de CENTRU_DB, CR prezentată mai sus

Supervizarea articolului generat

După generarea articolului din fișierul de export (cexp), acesta poate fi "supervizat" prin scriptul "CENTCH". În momentul rulării scriptului: - articolul din fișierul de export este deja creat, câmpurile sunt completate, - valorile variabilelor sistem sunt încărcate (adică variabilele sistem, după caz: xR_..., xF_..., xI_...), - în plus este accesibilă variabila de sistem x_subop încărcată cu valorile: - recepții: -MR-I -secțiunea început, -MR-R -secțiunea rând, -MR-S -secțiunea sfârșit, - loturi de ieșire: -MV-I -secțiunea început, -MV-R -secțiunea rând, -MV-S -secțiunea sfărșit, - încasări/plăți: -MI-I -secțiunea început, -MI-S -secțiunea sfârșit.

Variabile de sistem noi

- variabile sistem noi, la validare, contare, listare: xR_CentDoc - centru document recepții, - valoarea implicită, valoarea câmpului CENTDOC din recapții-intrări (tran) xR_CentLot - centru lot intrări, - valoarea implicită, valoarea câmpului CENTLOT din loturi de intrare, xF_CentDoc - centru document ieșiri, - valoarea implicită, valoarea câmpului CENTDOC din facturi/ieșiri, xF_CentLot - centru lot ieșiri, - valoarea implicită, valoarea câmpului CENTLOT din loturi de ieșiri, xF_CentStoc - centru lot intrare corespunzător lotului de ieșire, - valoarea implicită, valoarea câmpului CENTLOT a lotului de intrare din care a fost scos lotul de ieșire, xI_CentDoc - centru document încasări/plăți, - valoarea implicită, valoarea câmpului CENTDOC din încasări/plăți.

Operațiile care se parcurg pentru implementarea centrelor de profit si cheltuieli

-în Parametri se verifică și se setează variabilele: CENTRU_DB, CENTRU_CR, CENTRU_UM din secțiunea [CENTRE], -se parcurg tipurile de documente și în Parametri se introduce 1 și/sau 2 pentru documentele în care se dorește înscrierea centrelor, -în tipuri de documente, în formulele de contare se definesc expresii corespunzătoare centrelor de venituri și cheltuieli, pentru cazurile care reprezintă excepții de la regula generală definită de CENTRU_DB, CENTRU_CR, CENTRU_UM -în Dicționar se înscriu termenii folosiți pentru specificarea centrelor de venituri și cheltuieli, -în documente se înregistrează centrele, -se lansează operația de contare automată, se verifică centrele din înregistrările generate.