Generowanie makr w formacie pdf i krok

Cze wszystkim!

Przede wszystkim dziękuję forum za istnienie, jest to prawdziwe źródło rozwiązań i dziękuję wszystkim za udział, który sprawia, że żyje!

Przyszedłem, aby dołączyć do Ciebie w nowej firmie i chciałbym wprowadzić nowe metody pracy.

W tym celu szukam makra, które wygeneruje dla mnie, z części sldprt 3D, plik STEP z nazwą pliku nazwa części + rewizja, czyli format NomPièce_Révision.stp, z jeśli to możliwe, ikoną, gdy jesteś w oknie części na pasku zadań.

A dla rysunków makro, które eksportuje rysunek z rewizją i opisem części, czyli formatem NomPièce_révision - description.pdf, przy jednoczesnym uwzględnieniu spersonalizowanych właściwości części (to na poziomie części edytowane są pola rewizji i opisu).

Mając nadzieję, że moja prośba była precyzyjna, z góry dziękuję za pomoc!

Miłego dnia @ wszyscy

Witam
Gromadząc już dostępne makra, możesz utworzyć makro, które wykona zadanie zgodnie z typem otwartego pliku (pojedyncza ikona uruchamiania w interfejsie).
Dobrze jest również zacząć, jeśli masz niewielką wiedzę na temat VBA :slight_smile:

Jest miejsce, w którym boli dno... To dlatego, że nigdy w życiu nie dotknąłem makro.
Próbowałem otworzyć niektóre, aby zobaczyć zawartość, ale się gubię...

Mam trochę czasu w przerwie na lunch, więc jak nazywają się właściwości niestandardowe (przegląd i opis), aby móc bezpośrednio podać ostateczny kod?
Czy zgadzamy się, że nazwa pliku = nazwa części?

tak absolutnie
nazwa pliku = nazwa części
Szablon Utilisés.zip (136.5 KB)

Pozwalam sobie na załączanie plików z dokładnymi nazwami i właściwościami, tak jak są nazwane

Bardzo dziękuję za pomoc

Czy w kodzie mogą znajdować się wiersze komentarzy? Żebym mógł być prowadzony i może sprawić, że z czasem będzie ewoluował, nie zawracając wszystkim głowy :wink:

Ponadto, w przypadku żądania ikony na pasku zadań Solidworks, jak to działa?

Ponownie
W załączeniu znajduje się kod skomentowany w miarę możliwości.
Plik .dot nie ma żadnych właściwości, umieściłem xxx, aby zmienić na odpowiednie wartości
Plik Macro-PDF_STEP.swp (87,5 KB)

2 polubienia

Witaj Cyril.f,

Dziękuję za tę pracę!!

Nie znam się jednak na plikach .swp i nie wiem, za pomocą której aplikacji je otworzyć :confused:

ups, myślę, że widziałem, jak to otworzyć...

Testuję ten krok :slight_smile:
Jeszcze raz dzięki!!

Jest to natywny format makr.
Zobacz ten link, aby uruchomić i dodać szybki przycisk:

Cze wszystkim

Jeszcze raz dziękuję Cyril.f, makro działa świetnie!!

To dla mnie tylko minus, bo czytając inne posty (tutaj i na innych forach), makra nie potrafią odczytać niestandardowych właściwości?

Tłumaczę się za pomocą właściwości niestandardowych:
Aby mieć przyjemny interfejs, z listą rozwijaną, kalendarzem do kliknięcia itp. Użyłem edytora formularzy

To pozwala mi mieć ładną strukturę drzewa, aby wypełnić pola pożądanych właściwości

Z tą różnicą, że powoduje to tylko edycję pól w zakładce specyficznej dla konfiguracji


I a priori nieczytelne dla makr

Czy jest jakaś sztuczka, aby wypełnić pola na karcie dostosowywania (i można je odczytać za pomocą makr), albo że makra mogą odczytywać pola w zakładce specyficzne dla konfiguracji?

Ponadto, po wypełnieniu pól mojej części, nie są one automatycznie zapisywane w polach właściwości rysunku (danej części)

W jaki sposób mogę wypełnić tylko te pola, które znajdują się w pokoju i zapisać je bezpośrednio w pośle?

Wiem, że mam wiele pytań, ale staram się zrozumieć to najlepiej, jak potrafię, aby być bardziej autonomicznym

Dziękuję Wam wszystkim!!

Witam
Jeśli można go odczytać za pomocą makr, gdy plik jest otwierany w oprogramowaniu. Tylko wtedy, gdy chcesz je odtworzyć bez otwierania pliku, to właśnie tam sprawa się komplikuje.
W dostarczonym przeze mnie makrze możesz dodać przetwarzanie, aby dowiedzieć się, czy w zakładce specyficznej konfiguracji są jakieś informacje (tylko na części i asm).

Cyril.f czy mógłbyś mi powiedzieć, co muszę napisać w makrze, aby odczytać pola w makrze?

A czy możliwe jest zapisanie pól specyficznych dla konfiguracji edytowanych w pokoju, bezpośrednio w polach na karcie dostosowywania MEP?

Makra mogą odczytywać właściwości niestandardowe lub specyficzne dla konfiguracji, ale nie tę samą funkcję (makra) dla każdej z nich.
Dla ostatniego punktu dostępne są makra, które pobierają właściwości części i ponownie zapisują je w MEP, ale właściwości są również dostępne z MEP, przechodząc do właściwości części połączonej z widokiem.
Przykład dla materiału: $PRPSHEET:"Materiał" pobiera materiał z części do widoku, do którego odwołuje się MEP, podczas gdy $PRP:"DATE" odnosi się do właściwości MEP:
https://help.solidworks.com/2020/french/EnterprisePDM/Admin/t_creating_SOLIDWORKS_PRP_PRPSHEET_links.htm

Chcę, aby pola na mapie nieruchomości były wypełnione polami wypełnionymi w pokoju, a nie tylko w bloku.
Na razie wypełniam właściwości części, ale na rysunku pola karty właściwości są puste, podczas gdy moja tabelka rysunkowa podąża za tymi części

W związku z tym, że pola są puste, makro nie działa tak, jak powinno

Istnieją dwie możliwości: albo dołączysz 3D do płaszczyzny, a następnie wstrzykniesz wartości do właściwości rysunku.
Inne rozwiązanie: zeskanuj kasetę i pobierz interesujące nas właściwości i skopiuj je do właściwości rysunku.
Aby pobrać wartości, które znajdują się w specyficznej dla konfiguracji części lub asm, należy zmienić w następujących wierszach:
sRevision = swModel.CustomInfo2("", "xxx")
Przez:

sRevision = swModel.CustomInfo2("Défaut", "xxx") 

Wartość domyślna to nazwa konfiguracji. Jeśli wymaganych jest kilka konfiguracji, należy zeskanować różne informacje w przypadku wystąpienia różnic i zastosowania odpowiedniego leczenia.

1 polubienie

Co jest najłatwiejsze?
Wolałbyś przeczytać informacje, które są wkładem?

A jeśli nie, to jak wstrzyknąć wartości 3D do mapy właściwości MEP?

Oba są proste.
Po innym rozwiązaniu we właściwościach wystarczy umieścić w kolumnie wyrażenia $PRPSHEET:"xxx" i pozwala to na połączenie właściwości i wartości.
Aby sprawdzić, czy rozprzestrzenia się w postaci

Nie odczytuje wartości

Co więcej, generuje błąd podczas uruchamiania makra

Capture Erreur Macro

A kiedy naciskam debug

Czyli musimy zmienić w makrze pola, które są kartridżem do odczytu?

Podoba mi się, co
zmieniać
sDescription = swModel.CustomInfo2("  ", " Opis ")

przez

sDescription = swModel.CustomInfo2("  ", " $PRPSHEET"Opis ")

A może kompletnie nawaliłem?

Ups, tak, to nie jest oceniane. Poza makro nie widzę żadnych innych rozwiązań