Tworzenie zestawienia komponentów zestawu komponentów | API SolidWorks: Menedżer dokumentów

Witam

Jestem w trakcie tworzenia aplikacji VB.net do skonfigurowania wymiany danych między SolidWorks a naszym systemem ERP.

W tym celu korzystam z interfejsu API SolidWorks Document Manager, który umożliwia dostęp do informacji zawartych w plikach bez otwierania ich w aplikacji. Więcej informacji: http://help.solidworks.com/2015/english/api/swdocmgrapi/GettingStarted-swdocmgrapi.html?id=c64a324db326402a84186311e072bc1c#Pg0

Mogę odczytywać, edytować i tworzyć właściwości niestandardowe.

Chcę utworzyć BOM-y zestawów. W tym celu udaje mi się wyodrębnić zestawienie materiałów, jeśli już istnieje , a następnie zaimportować je do Excela. Korzystanie z metod GetTableNames i GetTableCellText.

Jednak mimo wielu badań nie udaje mi się stworzyć nomenklatury.

Z góry dziękuję

2 polubienia

Witam

Czy chcesz utworzyć zestawienie komponentów w zespole 3D bez otwierania pliku?

1 polubienie

Tak. Trochę jak SmartBom, ale na moim skromnym poziomie...

1 polubienie

Natknęłam się na post, który nie daje rozwiązania, ale właśnie zobaczyłam, że już tam byliście dziś rano ;-) Myślę, że osoba, która powiedziała, że jest to możliwe, nie wiedziała o Menedżerze dokumentów...

Szukając BOM na tej stronie (która wyświetla wszystkie polecenia Menedżera dokumentów a priori), są tylko instrukcje takie jak "access" lub "get", ale nic do utworzenia, przepraszam: 

http://help.solidworks.com/2015/english/api/swdocmgrapi/SolidWorks.Interop.swdocumentmgr~SolidWorks.Interop.swdocumentmgr_namespace.html?id=30a118bab16d4ebdb948d29c74dcfd9f#Pg0

Lub wyszukując TABLE i patrząc na członków na tej stronie (rozwijając się za pomocą +), nie znajdziemy nic albo:

http://help.solidworks.com/2015/english/api/swdocmgrapi/SolidWorks.Interop.swdocumentmgr~SolidWorks.Interop.swdocumentmgr.ISwDMTable_members.html?id=b4f08e90682443dd91ef867afd8a2192#Pg0

A priori poniższy link jest przydatny tylko wtedy, gdy plik jest otwarty, prawda? Myślę, że to jest to, co będziesz musiał zrobić.

http://help.solidworks.com/2015/English/api/sldworksapi/Insert_and_Show_BOM_Table_in_Assembly_Example_VBNET.htm

 

Innym rozwiązaniem capillotracted jest przejrzenie całego drzewa SolidWorks, aby utworzyć tabelę i odtworzyć ją jako plik tekstowy...

 

Swoją drogą, czy na pewno SmartBOM nie otwiera pliku?

 

Redagować:

Odpowiedź od kogoś, kto korzysta z Domcument Managera, aby potwierdzić moje słowa:

https://forum.solidworks.com/message/467937#467937

Dobrze przechodzi przez wszystkie pokoje...

 

Edycja 2: tworzenie zestawienia materiałów bez otwarcia pliku może być niebezpieczne, ponieważ jeśli jeden z komponentów został zmodyfikowany (zmiana kodu, materiału, w spawanej maszynie itp.) bez aktualizacji zestawów, które go zawierają, twoje zestawienie materiałów będzie błędne!

 

Edycja 3: rozwiązaniem może być dołączenie zestawienia materiałów do modeli swoich zespołów, przynajmniej wszystkie nowo utworzone zespoły nie będą problemem!

6 polubień

Dziękuję .PL Za tę odpowiedź.

Widzę, że mamy podobne metody badawcze. ;-)

Rzeczywiście, dawno nie testowałem SmartBom na dużych montażach, myślę, że musi go otworzyć...

Postaram się więc zrobić to samo.

Wracam tu, jak tylko mi się udaje. :-)

1 polubienie

Powodzenia, bo nie jest to łatwe zadanie.

Czy masz PDM do zarządzania plikami? Bo ja nie postępuję w ten sam sposób.

A czy widziałeś moją edycję 3 z poprzedniego pytania?

Oczywiście, jeśli nie otworzę pliku, tabela może nie być aktualna.

W kodzie będę:

  1. Sprawdź, czy tabela (ze skryptu) jest obecna, nie otwierając jej.
  2. Jeśli tak, podaję użytkownikowi datę ostatniej rejestracji, aby wiedzieć, czy jest ona nieaktualna.
  3. Jeśli nie, otwieram plik, aby zaktualizować lub utworzyć tabelę.

Miłego dnia.

A czy masz PDM do zarządzania plikami? A może to tylko slot na serwerze?

Nie, nie PDM.

Ale pracujemy nad tym...

Ok, a chcesz zrobić swoje makro na wszystkich plikach? Czy tylko te nowe?

FYI, myślę, że możesz użyć trybu tła, aby nie wyświetlać otwarcia:

http://help.solidworks.com/2011/English/api/sldworksapi/Enable_Background_Processing_When_Opening_Drawing_Document_Example_VB.htm

 

Witam

Jest to aplikacja, Vb.net zintegrowana z programem Excel w następujący sposób: http://jfdeterme.developpez.com/tutoriels/dotnet/developper-add-in-pour-excel-2007-avec-visual-studio-2010/

Do zobaczenia.

Dzięki .PL

Rzeczywiście, po zapytaniu wsparcia APi i na forum SW.

Konieczne jest otwarcie plików, a następnie użycie metody: IModelDocExtension::InsertBomTable3

Moja aplikacja działa! ;-)

Dziękuję.

 

 

1 polubienie