Table of Contents

Szczegóły projektu: Wyszukiwanie kombinacji wymiarów

W momencie zamknięcia strony, na której był edytowany zestaw wymiarów, Business Central sprawdza czy wybrany zestaw już istnieje. Jeśli zestaw nie istnieje, tworzony jest nowy zestaw i zwracany jest identyfikator kombinacji wymiarów.

Tworzenie drzewa poszukiwań

Tabela 481 Węzeł drzewa dla zestawu wymiarów jest używana, gdy Business Central sprawdza, czy dany zestaw wymiarów już istnieje w tabeli 480 Zapis zestawu wymiarów. Oceny dokonuje się poprzez rekurencyjne przemierzanie drzewa poszukiwań, zaczynając od najwyższego poziomu oznaczonego numerem 0. Najwyższy poziom 0 reprezentuje zestaw wymiarów pozbawiony zapisów zestawu wymiarów. Zestawy dziedziczące po tym zestawie wymiarów posiadają tylko jeden zapis zestawu wymiarów. Zestawy dziedziczące po tym zestawie wymiarów posiadają dwa zapisy zestawu wymiarów itd.

Przykład 1

Poniższy diagram przedstawia drzewo poszukiwań z sześcioma zestawami wymiarów. Na diagramie ukazany został tylko zapis zestawu wymiarów, który pozwala na ich rozróżnienie.

Przykład struktury drzewa dla zestawu wymiarów.

Poniższa tabela przedstawia kompletną listę zapisów zestawu wymiarów, które składają się na zestawy wymiarów.

Zestawy wymiarów Zapisy zestawu wymiarów
Zestaw 0 Brak
Zestaw 1 Obszar 30
Zestaw 2 Obszar 30, DEPT ADM
Zestaw 3 Obszar 30, DEPT PROD
Zestaw 4 Obszar 30, DEPT ADM, PROJ VW
Zestaw 5 Obszar 40
Zestaw 6 Obszar 40, PROJ VW

Przykład 2

Ten przykład pokazuje, w jaki sposób Business Central ocenia, czy istnieje zestaw wymiarów, składający się z zapisów zestawu wymiarów AREA 40, DEPT PROD.

Najpierw, Business Central również aktualizuje tabelę Węzeł drzewa dla zestawu wymiarów, aby upewnić się, że drzewo wyszukiwania wygląda jak poniższy diagram. W ten sposób zestaw wymiarów z numerem 7 dziedziczy po zestawie wymiarów z numerem 5.

Przykład struktury drzewa dla zestawu wymiarów w NAV 2013.

Znajdowanie identyfikatora zestawu wymiarów

Na poziomie koncepcji, Identyfikator nadrzędny, Wymiar oraz Wartość wymiaru są połączone w drzewie wyszukiwań i używane jako klucz podstawowy, ponieważ Business Central porusza się po drzewie w tej samej kolejności, co zapisy wymiarów. Funkcja GET (Rekord) służy do wyszukiwania identyfikatora zestawu wymiarów. Poniższy przykład kodu pokazuje, jak znaleźć identyfikator zestawu wymiarów, gdy istnieją trzy wartości wymiaru.

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);  

Jednak aby Business Central nadal miało możliwość zmiany nazwy i wartości wymiaru, tabela 349, Wartość wymiaru, została rozszerzona o pole liczb całkowitych Identyfikator wartości wymiaru. Tabela konwertuje dwa pola, Wymiar i Wartość wymiaru, na wartość całkowitą. W przypadku zmiany nazwy i wartości wymiaru, wartość całkowita nie zostanie zmieniona.

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);  

Zobacz też

Szczegóły projektu: Zapisy zestawu wymiarów
Przegląd zapisów zestawu wymiarów
Szczegóły projektu: Struktura tabeli