Witam
Nie mam doświadczenia w korzystaniu z interfejsów API Menedżera dokumentów.
Jest coś, czego nie do końca rozumiem w metodzie GetExternalFeatureReferences3 (ISwDMDocument27).
Środowisko: zestaw z wieloma konfiguracjami, w niektórych konfiguracjach znajdują się komponenty w stanie "usunięte".
Cel: za pomocą Menedżera dokumentów, dla każdej konfiguracji, pobierz listę komponentów (pierwszy poziom), bez tych, które są w stanie "usuniętym".
Osiągnięcie: Używam funkcji GetExternalFeatureReferences3 na obiekcie ISwDMDocument27 , po utworzeniu opcji wyszukiwania.
' Get external references
dmExtRefOption = dmDocMgr.GetExternalReferenceOptionObject2
dmExtRefOption.Configuration = vCfgName
dmExtRefOption.NeedSuppress = False
dmSearchOpt = dmDocMgr.GetSearchOptionObject()
dmSearchOpt.SearchFilters = (SwDmSearchFilters.SwDmSearchExternalReference + SwDmSearchFilters.SwDmSearchForPart)
dmExtRefOption.SearchOption = dmSearchOpt
' Gets the paths and filenames of the external references,
' whether the external references are broken, and the names of their
' referenced configurations
numExtRefs = dmDoc.GetExternalFeatureReferences3(dmExtRefOption)
extRefs = dmExtRefOption.ExternalReferences
Problem: w opcjach wyszukiwania, niezależnie od tego, czy ustawię NeedSuppress na True czy False, znajduję na mojej liście odniesień zewnętrznych wszystkie komponenty, niezależnie od tego, czy są w "usunięte", czy nie.
Czy jest coś, czego nie zrozumiałem podczas korzystania z tej funkcji?
Czy powinienem raczej przejść przez ekstrakcję xml z pliku głównego? ( ISwDMDocument::GetXMLStream)
Potrzebuję twojego oświecenia...
Edit: Chciałem umieścić cały kod, ale najwyraźniej strona go blokuje...