SolidWorks >> Rysunki >> Równania w BOM
Autor Wypowiedź
.
2018-08-01, 09:08
Pomógł 52 raz(y).
Witam serdecznie,
Gdzie mogę znaleźć jakieś informacje na temat składni i wszelkich zasad tworzenia równań dla kolumn w BOM. Narazie błądzę po omacku wpisując coś co wydaje mi się logiczne ale najczęściej zamiast spodziewanego wyniku pojawia się we wszystkich wierszach kolumny tabeli treść równania.
Oczywiście przeglądanie pomocy nie wnosi żadnych informacji na ten temat.
 
2018-08-01, 09:58
Pomógł 5 raz(y).
Tutaj masz artykuł o tym jak tworzyć równania:
https://www.javelin-tech.com/blog/2016/04/solidworks-bom-equations/

i tutaj jeszcze z pomocy Solida:
http://help.solidworks.com/2017/english/solidworks/sldworks/c_equations_in_tables_and_boms.htm

Są to proste równania, nie wiem czy jest możliwość zrobienia bardziej skomplikowanych równań w BOM-ie. Jeśli ta pomoc jest za mała możesz opisać mniej więcej, co chcesz uzyskać równaniem to pomyślimy co z tym zrobić.
 
.
2018-08-01, 11:04
Pomógł 52 raz(y).
Dziękuję za informacje, ale to są rzeczy, które już przeglądałem. Mi chodziło o bardziej szczegółowy opis składni i ograniczeń np zagniżdżenia funkcji IF.
Natomiast zauważyłem coś dziwnego. Po wprowadzeniu nowego równania pojawia się jego treść zamiast wartości lecz po wykonaniu Ctrl+Z (Cofnij) równanie się nie zmieniło ale pojawiły sie wyniki w kolumnie ???
W innym wypadku równanie nie spowodowało zmiany zawartości komórek i nie pomagała przebudowa ani Ctrl+Q ale po zamknięciu i ponownym otwarciu rysunku wartości się zaktualizowały.
Jakiś bug w programie? Pracuję w SW 2015 SP5.0 Ciekaw jestem jak to jest w innych wersjach SW.
PS.
A teraz natrafiłem na takie coś, że nic nie pomagało, nawet ponowne uruchomienie SW, dopiero wprowadzenie nowej tabeli BOM zawierało prawidłowe wartości.
 
.
2018-08-01, 13:55
Pomógł 52 raz(y).
Mam takie równanie w kolumnie 'Nr rys- normy':
IF(`nrrys`_"";`nrrys`;IF(`SWPNorma`_"";`SWPNorma`" / "`SWPNormaDIN`;`Description`))
i działa prawidłowo. Natomiast po takiej zmianie:
IF(`Description`_"";IF(`SWPNorma`_"";`SWPNorma`" / `SWPNormaDIN`;`Description`);`nrrys`)
wypisuje powyższe równanie zamiast wartości.

PS.
Forum nie przyjmuje znaków wiekszości i mniejszości dlatego użyłem _ zamiast mniejsze i większe (różne).
 
.
2018-08-01, 14:07
Pomógł 52 raz(y).
No i chyba wiem co jest grane. W funkcji IF jako pierwszy argument musi być wartość lub jakaś właściwość a nie zagnieżdżona funkcja IF.
Taki zapis równania:
IF(`Description`="";`nrrys`;IF(`SWPNorma`_"";`SWPNorma`" / "`SWPNormaDIN`;`Description`))
działa prawidłowo i logicznie odpowiada poprzedniemu zapisowi (to samo robi) ale nie odpowiada SolidWorksowi :)

PS. Tylko kurcze czemu tego nie ma gdzieś w helpie i musiałem sam do tego dochodzić żmudną pracą :)
 

PSWUG

Strefa Resellera

Publikuj

Społeczność

Ankieta

Linki

RSS

BOT