PRO-BIM Logo

Dynamo / Dictionary i mapowanie danych

Dictionary jako remedium na zmieniające się listy

Kiedy kolejność listy się zmienia, indeks przestaje być wiarygodnym identyfikatorem. Dictionary pozwala przestać ufać pozycji i zacząć ufać znaczeniu danych.

Dictionary jako wzorzec mapowania danych w Dynamo
Słownik nie jest tylko strukturą techniczną. To sposób powiedzenia grafowi: dopasuj dane po znaczeniu, nie po miejscu na liście.

Dlaczego indeks bywa niebezpieczny?

W pokazowym przykładzie lista elementów i lista wartości mają tę samą kolejność. Wszystko wygląda logicznie: element pod indeksem 0 dostaje wartość z indeksu 0. Problem zaczyna się wtedy, gdy dane wracają z Excela, CSV, API albo innego modelu w innej kolejności.

Najgorsze jest to, że graf oparty na indeksach często nie pokazuje błędu. Liczby elementów nadal się zgadzają. Nody są zielone. Tylko wartości trafiają do niewłaściwych obiektów. To jeden z tych błędów, które nie krzyczą, ale potrafią zepsuć zaufanie do całej automatyzacji.

Dobry klucz jest decyzją BIM

Kluczem może być UniqueId, numer pomieszczenia, kod systemu, oznaczenie elementu, nazwa typu albo zestaw wartości: poziom + numer + kategoria. Nie ma jednego idealnego wyboru. Dobry klucz zależy od procesu.

Warto jednak uważać na klucze, które tylko wyglądają stabilnie. Nazwa typu może się zmienić. Numer pomieszczenia może zostać zdublowany. Oznaczenie może być puste. Dlatego przed użyciem słownika trzeba sprawdzić unikalność i kompletność kluczy.

Dictionary jako warstwa bezpieczeństwa

Najbardziej lubię używać słownika przy danych, które są obrabiane poza modelem. Przykład: eksportujesz listę pomieszczeń, ktoś uzupełnia klasyfikację, potem dane wracają. Jeżeli oprzesz import na kolejności wierszy, prosisz się o błąd. Jeżeli oprzesz go na kluczu, kolejność przestaje mieć znaczenie.

Słownik pozwala też jasno raportować problemy: brak klucza, duplikat, wartość bez odpowiadającego elementu, element bez wartości zwrotnej. To są informacje, których nie warto ukrywać. One mówią, gdzie proces wymiany danych wymaga poprawy.

Checklist przed zapisem do modelu

Podsumowanie

Dictionary nie jest magiczną sztuczką. Jest prostą zmianą myślenia: element ma tożsamość niezależną od pozycji w liście. W realnych workflow BIM ta zmiana często decyduje o tym, czy graf jest tylko demonstracją, czy narzędziem, któremu można zaufać.