Detalii proiect: Căutarea combinațiilor de dimensiuni

Când închideți o pagină după ce editați un set de dimensiuni, Business Central evaluează dacă există setul de dimensiuni editat. Dacă setul nu există, se creează un set nou și se returnează ID-ul combinației de dimensiuni.

Arbore căutare clădire

Tabelul 481 Nod arbore set dimensiune este utilizat atunci când Business Central evaluează dacă există deja un set de dimensiuni în tabelul Intrare set dimensiune tabel 480. Evaluarea se efectuează prin traversarea recursivă a arborelui de căutare începând de la nivelul superior numerotat 0. Nivelul superior 0 reprezintă un set de dimensiuni fără intrări set de dimensiuni. Copiii acestui set de dimensiuni reprezintă seturi de dimensiuni cu o singură intrare set de dimensiuni. Copiii acestor seturi de dimensiuni reprezintă seturi de dimensiuni cu doi copii și așa mai departe.

Exemplul 1

Diagrama următoare reprezintă un arbore de căutare cu șase seturi de dimensiuni. Numai intrarea setului de dimensiuni distinctive este afișată în diagramă.

Example of dimension tree structure

Următorul tabel descrie o listă completă de intrări set de dimensiuni care alcătuiesc fiecare set de dimensiuni.

Seturi de dimensiuni Seturi de dimensiuni Seturi de intrări
Setare 0 Nici unul
Set 1 ZONA 30
Set 2 ZONA 30, DEPT ADM
Set 3 ZONA 30, DEPT PROD
Set 4 ZONA 30, DEPT ADM, PROJ VW
Set 5 ZONA 40
Set 6 ZONA 40, PROJ VW

Exemplul 2

Acest exemplu arată modul în care Business Central evaluează dacă există un set de dimensiuni care constă din intrările setului de dimensiuni AREA 40, DEPT PROD.

În primul rând, Business Central actualizează, de asemenea, tabelul Nod arbore arbore dimensiune pentru a vă asigura că arborele de căutare arată ca diagrama următoare. Astfel, setul de dimensiuni 7 devine un copil al setului de dimensiuni 5.

Example of dimension tree structure in NAV 2013

Găsire ID set dimensiuni

La nivel conceptual, ID părinte, Dimensiuneși Valoare dimensiune, în arborele de căutare, sunt combinate și utilizate ca cheie primară, deoarece Business Central traversează arborele în aceeași ordine cu intrările de dimensiuni. Funcția GET (înregistrare) este utilizată pentru a căuta ID set dimensiune. Următorul exemplu de cod arată se găsește ID-ul setului de dimensiuni atunci când există trei valori de dimensiune.

DimSet."Parent ID" := 0;  // 'root'  
IF UserDim.FINDSET THEN  
  REPEAT  
      DimSet.GET(DimSet."Parent ID",UserDim.DimCode,UserDim.DimValueCode);  
  UNTIL UserDim.NEXT = 0;  
EXIT(DimSet.ID);  

Cu toate acestea, pentru a păstra capacitatea Business Central de a redenumi atât o dimensiune, cât și o valoare de dimensiune, tabelul 349, Valoare dimensiune, se extinde cu un câmp întreg, ID valoare dimensiune. Acest tabel face conversia perechii de câmpuri, Dimensiune și Valoare dimensiune , într-ovaloare întreagă. Când redenumiți dimensiunea și valoarea de dimensiune, valoarea întreagă nu se modifică.

DimSet."Parent ID" := 0;  // 'root'  
IF UserDim.FINDSET THEN  
  REPEAT  
      DimSet.GET(DimSet.ParentID,UserDim."Dimension Value ID");  
  UNTIL UserDim.NEXT = 0;  
EXIT(DimSet.ID);  

A se vedea, de asemenea,

Funcția GET (Înregistrare)
Detalii proiect: Intrări set dimensiuni
Prezentare generală intrări set dimensiuni
Detalii proiectare: Structura tabelului

Notă

Ne puteți spune despre preferințele dumneavoastră lingvistice de documentare? Fă un scurt sondaj.

Sondajul va dura aproximativ șapte minute. Nu sunt colectate date cu caracter personal(declarație de confidențialitate).

În acest articol
Înapoi în partea de sus Generat de DocFX