Aparatul și divizia modul de utilizare Înregistrare totaluri, materiale didactice școală
Modul de date este menținută pentru o acumulare de registru și registrele contabile.
În primul rând, trebuie remarcat faptul că rezultatul modului de divizare afectează numai funcționarea sistemului paralel și nu afectează cele mai multe sarcini de logica de afaceri. Adică, este un mecanism de platformă, care asigură un nivel mai ridicat de paralelism și operat în configurația și în baza de date de informații numai în scopul stabilirii utilizării acestei caracteristici pentru un anumit obiecte de configurare, și într-o anumită punere în aplicare. În ceea ce privește zona de subiect, el a rezolvat configurația nu are nevoie de obiective.
Explicați esența mecanismului de exemplu registru de acumulare.
Pentru totaluri de registru rapid momentul actual și pe de altă parte ori, sistemul suportă până la data în tabele separate (nu sunt disponibile în mod direct la dezvoltator de configurare), cu condiția evaluării luând în considerare toate mișcările de masă existente. Intrările în aceste tabele sunt actualizate automat atunci când înregistrarea de mișcare. Aceste înregistrări sunt utilizate de către sistemul automat atunci când accesează registrele tabele virtuale pentru rezultatele relevante.
De exemplu, există o mișcare:
Factura 1
Factura 2
Apoi, sistemul are un curent soldurile în soldurile de mai jos:
Adică, tabelul conține rezultatele suma algebrică a mișcărilor (cu tipurile de mișcare), pentru fiecare combinație de dimensiuni.
Fiecare sistem de înregistrare de circulație adaugă sau scade în funcție de tipul de trafic valori de resurse mișcări ale respectivului tabel rânduri rezultatul. Pentru a face acest lucru, sistemul are nevoie pentru a citi valoarea actuală, creșterea sau scăderea acesteia, și scrie valoarea modificată. Desigur, că această operațiune a avut loc în mod corect, pe care doriți să blocați pentru un record pe care nimeni nu ar putea schimba intrarea după citirea. Astfel, în exemplul 1 Numărul facturii și numărul facturii 2 nu poate fi realizată în paralel, deoarece acestea nu pot fi înregistrate pe combinația paralelă înregistrarea măsurătorilor „Table -. Main“
Mecanismul de separare intră în rezultatul mesei stocate în câmpul special de a permite înregistrările rezultatelor paralelizată de actualizare.
De exemplu, dacă înregistrate simultan factură 1 și 2 factură, apoi intrările sunt după cum urmează.
Astfel, devine posibil să se aibă în paralel exploatație factura de intrare 1 și 2 o factură de intrare.
În cazul în care factura de vânzări 5 va fi scris după aceea, intrările sunt după cum urmează:
La primirea rezultatelor (adresa virtuala la masa), sistemul se combinații de măsurători de înregistrare și, prin urmare, atunci când se referă la masa virtuală obținem:
Noile intrări la combinațiile de sisteme de măsurare existente sunt create numai dacă executate în paralel două sau mai multe tranzacții. De fapt, valoarea separatorului - este un număr emis de sistem odată ce tranzacția și unică între toate tranzacțiile concurente într-un timp dat. Sistemul scoate primul număr liber, adică numărul de eliberat mai devreme pentru a finaliza tranzacția, pereispolzuyutsya. Astfel, creșterea numărului de înregistrări rezultate depinde de numărul de tranzacții simultane.
Acest mecanism funcționează numai atunci când scrieți mișcările. Referindu-se la rezultatele blocajului registru de interogare aplicate toate înregistrările cu combinațiile măsurători utilizate. Și aceasta corespunde esența problemei fiind rezolvată. De exemplu, în mijloacele de facturare a cheltuielilor de limba încorporat citește balanțele de verificare a posibilității de a vinde bunuri. În acest caz, dispozitivul de blocare nu permite factură împreună cu alte cheltuieli pe factură sau o factură de credit, în cazul în care există combinații care se suprapun măsurători. Și pe bună dreptate, pentru că numărul facturii 5 nu poate avea loc în paralel cu factura de intrare 1 și 5 factura de venituri, deoarece este necesar să se prevadă controalele logice pentru bunurile din depozit, astfel încât nimeni nu poate schimba citi restul tranzacției înainte de încheierea facturii de cheltuieli. Astfel, rezultatele separării mecanismului elimină de blocare, instalat pentru a sprijini rezultatele reale (soluții sarcină de sistem), dar nu exclude blocarea impusă pentru a face față provocărilor de logica de afaceri.
logică similară este susținută și gestionat utilizând modul de blocare. Din limbajul de blocare încorporat accesibilă numai pe măsurători (fără a lua în considerare rezultatele separării intrărilor individuale).
Rețineți că acest mecanism nu funcționează în modul de fișier, deoarece nu sunt acceptate numai de blocare la nivel de masă. De asemenea, nu este acceptată când se utilizează PostgreSQL SGBD modul de blocare automată.
Desigur, activitatea acestui mecanism presupune o regie suplimentară (prezența câmpurilor din tabelul de sinteză, creșterea numărului de intrări în rezultatele tabelelor).
Când registru de scriere pe baza rezultatelor de combinații surpate de măsurători. Asta este, după conversie, intrările redundante sunt eliminate din registru.
Pentru a controla funcționarea mecanismului, există două posibilități.
Registrele de configurare introduse de proprietate „Permite rezultate divizare“. Această proprietate vă permite să activați sau să dezactivați capacitatea de a separa rezultatul unui anumit caz. Proprietăți Dezactivarea elimină complet influența mecanismului de registru de lucru deoarece câmpul în sine este folosit pentru a separa rezultatul nu este inclus în structura registru. De exemplu, dezactivând această caracteristică este utilă pentru registre care nu sunt utilizate în activitatea paralelă a utilizatorilor. De exemplu, pentru a înregistra este întotdeauna umplut cu un tratament de rutină speciale.
Baza informațională pentru registre (cele pentru care rezultatul separării este permisă în configurație) este acceptată caracteristica de stocare a utilizării rezultatelor de separare. Acesta poate fi preparat și metode stabilite PoluchitRezhimRazdeleniyaItogov () și SetTotalsSplittingMode (). precum și dialogul standard ( „operațiuni de control-rezultat-rezultat instalare în mod divizat“). Această funcție vă permite să activați sau să dezactivați rezultatele modului de separare în funcție de experiența utilizatorului într-o anumită organizație. De exemplu, sub informații viguros intrare paralel, acest mod poate fi util. Dar, în cazul în care sistemul utilizează un număr mic de utilizatori, beneficiile legate de utilizarea acestuia va fi mic, și o încetinire în pregătirea rapoartelor și intrările inutile în rezultatul tabelelor va fi de fapt inutile (nejustificate).