======================= Modificare Structura BD ======================= In aceasta sectiune sunt plasate instrumentele pentru modificarea structurii bazei de date, precum si pentru popularea acesteia cu informatii generale (template-uri). Scripturile ce trebuie rulate la schimbarea versiunii sunt impachetate in format .zip sau .jar si furnizate de Prodinf, odata cu versiunea de aplicatie. Pentru a rula scripturile de versiune parcurgeti procedura :doc:`Incarcare Scripturi de Versiune si Template-uri <../../../FS/Scripturi>`. Zona de ecran **Modificare Structura BD** este impartita in mai multe sectiuni: Scripturi --------- Contine lista tuturor scripturilor executate pe baza de date, respectiv, calea din arhiva de scripturi catre fisier, data si ora rularii acestuia. Executie Scripturi ------------------ Contine lista tuturor executiilor de scripturi de pe baza de date, precum si detaliile pentru fiecare executie. In partea stanga a ferestei se pot identifica executiile dupa numarul si data acestora. La nivel de executie, in partea dreapta a ferestrei, sunt disponibile urmatoarele informatii, structurate pe coloane: - *Nr. Fisier* - numarul fisierului executat, din arhiva de scripturi; - *Nr. Script Fisier* - numarul scriptului, din fisierul executat; - *Cale Fisier* - calea din arhiva de scripturi catre fisierul executat; - *Script Fisier* - sintaza scriptului executat (in formatul .sql sau .groovy); - *Eroare* - eventualele erori survenite la rulare. .. warning:: Selectia implicita a scripturilor executate este cu afisarea doar a celor care au rezultat in eroare. Pentru afisarea doar a executiilor cu erori, bifati optiunea **Sesiuni cu erori**, disponibila in partea de sus a ferestrei. Pentru afisarea tuturor scripturilor la nivel de executie debifati optiunea **Doar Erori**, disponibila in partea de sus a ferestrei. De asemenea, in partea de sus a ferestrei sunt disponibile si informatiile: - *Nr. fisiere executate*; - *Nr. script-uri executate cu succes*; - *Nr. script-uri executate cu erori*. .. note:: Butonul **Raport Executie** permite listarea scripturilor executate in format .pdf, in functie de selectie. Cu bifa *Doar erori*, raportul va prezenta doar scripturile rezultate in eroare. Fara bifa *Doar erori*, raportul va prezenta toate scripturile, aferente executiei selectate in partea stanga a ferestrei. Import Sabloane Date -------------------- Sectiune utilizata pentru popularea bazei de date cu informatii generale sau pentru implementarea rapida a unor module noi, prin incarcarea fisierelor preconfigurate (furnizate de Prodinf). Mentenanta ---------- Sectiune folosita pentru efectuarea si programarea operatiilor de mentenanta la nivelul bazei de date. **Tipuri de operatii mentenanta**: - Micsorare dimensiune tabele; - Reindexare tabele; - Analiza indecsi si analiza tabela. Adaugare task mentenanta tabele EMSYS ERP ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Recomandam realizarea saptamanala a mentenantei bazei de date. Adaugarea unui task de mentenanta tabele se efectueaza astfel: **1.** Accesati consola aplicatiei EMSYS, tab-ul **Modificare Structura DB** -> **Mentenanta** si adaugati tabelele supuse procesului de mentenanta: a. Completati in campul *Tabela* numele tabelei; b. Apasati butonul **Adaugare**; c. Bifati check-box-urile: **Analyze Index**, **Analyze Table**. Optional se poate bifa si **Reindex**, dar este o operatiune de lunga durata. .. note:: Tabelele care contin cuvinte comune in denumire (de exemplu: CLIENTI, CLIENTI_ADRESE etc.) se pot introduce o singura data completand "*CLIENTI%*". Astfel, se vor introduce toate tabelele a caror denumire incepe cu *CLIENTI*. Tabelele recomandate pentru mentenanta saptamanala sunt: - pentru domeniul **Financial**: PURTATORI, ZONE, CONTURI, BU, FOND, TRCONT, CONTDIN, VENITURI, COSTURI, INCASARI, PLATI, JURNCMP, JURNVNZ, CLIENTI, FURN. - pentru domeniul **Human Resources**: COLECTIE, DEFCOLECTIE, DEFCOLECTIECS, COLCONTRIB, PONTAJ, PLATISAL, AVANSCO, SPORURI, DATORII, CM, REPSAL_RESULT, NCSAL_RESULT. - pentru domeniul **Logistics**: CMDFU, DEFCMPCERERI, DEFSOLICITARI, DEFCMDFU, PRCMPCERERI, DEFCMDLUCRU, COMCMDLUCRU (cereri, solicitari si comenzi, asocierile intre ele); CMDCL, DEFCMDCL, PRCMDCL, TRSTOC, TRSTDOM, TRSTPROD, DEFTRSTOC, DEFTRSTDOM, DEFTRORD, DEFTRSTPROD, STGENERAL, STLOTSERIE, STDETALIU, STLOTCARACT (tabele de stocuri); DEFLSTPR, POS_PLUDET (listele de preturi); RCCP_PL, CRP_MAS, REZERVARI_CAMERE, REZERVARI_OASPETI, HRC_INCASARI, TRANZ_HK (horeca). **2.** Apasati butonul **Salvare Tabel**; **3.** Programati rularea automata, apasand **Generator Cron** si completand informatiile din generator: a. Alegeti frecventa operatiunii programate. De exemplu, pentru optiunea *Weekly* - *Sunday* - *Starts at 05:00*, mentenanta se va realiza in fiecare saptamana, duminica la ora 05:00. b. Apasati butonul *Generate*; c. Din zona de ecran **Result**, copiati valoarea aferenta campului *Cron format*. Pentru exemplul de mai sus, va avea forma «0 0 5 ? * SUN *». d. Reveniti in consola de administrare a aplicatiei EMSYS, pe tab-ul **Modificare Structura DB** si ulterior pe **Mentenanta**; e. Completati in campul **Expresie cron** valoarea de la punctul **c.**; f. Apasati butonul *Salvare expresie*. **4.** Verificati actiunea programata apasand butonul **Evaluare expresie**. .. note:: Este recomandat ca aceste operatii sa se efectueze pe structuri de date cu trafic intens. Programarea operatiilor de mentenanta se poate face in afara programului standard de lucru. Audit ---------- In cadrul acestei sectiuni poate fi activat mecanismul de audit pentru tabelele aplicatiei si in acelasi timp pot fi vizualizate evenimentele de audit pentru care mecanismul este deja activat. Pentru a activa mecanismul de audit pentru o tabela din aplicatie procedati astfel: - completati in campul **Table name** numele tabelei din baza de date; - actionati butonul **Create**; - tabela va fi adaugata in partea stanga a ferestrei, unde vor fi disponibile statusul de audit, actiunea de *Stergere* si *Change*. Pentru a vizualiza evenimentele de audit inregistrate, procedati astfel: - selectati, din partea stanga a ferestrei, tabela pe care cautati evenimente; - completati, in partea dreapta a ferestrei, campurile *Start Date* si *End Date* cu perioada dorita; - in functie de bifele *Add*, *Edit*, *Delete* se vor realiza filtrari cu privire la tipul evenimentului; - adaugati, daca este cazul, in campul *Query* o filtrare suplimentara, utilizand un alias pentru tabela pe care filtrati; - apasati butonul *Execute*. Tabelul din partea dreapta-jos a ferestrei va fi populat cu inregistrari in functie de filtrarile realizate mai sus. In coloana din stanga tabelului sunt afisate inregistrarile, iar la nivel de fiecare inregistrare, in partea dreapta a tabelului sunt disponibile operatiile acesteia. Pentru vizualizarea valorilor modificate la nivel de operatie (vechi vs. noi), apasati butonul *Report*.