Vítejte !   Přihlášení | Registrace
Hlavní menu
CATIA fórum.cz
Novinky
Seriál CATIA
Obecně o CAD
Novinky ze světa DS
Makra pro CATIA V5
Diskuse
Vytvořit téma
Koncepty
Seznam oblíbených
Soukromé zprávy
Pravidla
Live CHAT
VIP žádost
Základy Catia
Ke stažení
Doporučujeme
Pracovní příležitosti
Reklama a kampaně
O fóru
Nápověda

Hodnota atributu řídí uzamčení jiného atributu

Kompletní přehled příspěvků v tématu Hodnota atributu řídí uzamčení jiného atributu řazený podle data jejich publikace na fóru.

UživatelPříspěvek
Roman Richter

Poslat zprávu | Profil
Datum: 15.8. 2014 | Zobrazeno: 9142x
Konfigurace CATIA: CATIA V5 R20

Text dotazu:
Dobrý den,

chtěl bych se zeptata zda je možno hodnotou atributu řídít stav uzamčení/odemčení jiného atributu. viz obr.
Popřípadě jak vypadá zápis této podmínky.

Když mam hoddnotu atributu t/d >= 0.1 atribut Tepelne_Zpracovani je odemčeno
Když mam hoddnotu atributu t/d < 0.1 atribut Tepelne_Zpracovani je zamčeno

díky

Přiložené obrázky:

Ing Jan Cinert

Poslat zprávu | Profil
[#4656] | Publikováno: 16.08. 2014 - 23:23
Zdravím,

tohle možná bude oříšek. Vypadá to, že v EKL vlastnost locked není podporovaná, takže přes rule to asi nepůjde. Měla by ale jít napsat reakce (při změně hodnoty prvního parametru), která bude spouštět kód, který označí druhý parametr, a podle hodnoty prvního zavolá příkaz lock / unlock.Podle mě je to ale dost krkolomné, i když to nejspíš bude fungovat.Problém je, že parametr stejně půjde snadno odemknout.

Ing Jan Cinert

Poslat zprávu | Profil
[#4658] | Publikováno: 18.08. 2014 - 10:11
Tak to funguje, kód níže. Při změně hodnoty parametru Real.1 se spustí reakce o podle jeho hodnoty spustí příkaz pro uzamčení / odemčení parametru Real.2. Nebude to fungovat při otevřené sestavě, protože v tu chvíli bude aktivní dokument typu Product - v tomto případě by se muselo do kódu dopsat detekce aktivního partu v sestavě. A samozřejmě ošetřit možné výjimky.

Sub CatMain()

Dim oPar As Parameter
Dim oSel As Selection

Set oPar = CATIA.ActiveDocument.Part.Parameters.Item("Real.1")
Set oPar2 = CATIA.ActiveDocument.Part.Parameters.Item("Real.2")
Set oSel = CATIA.ActiveDocument.Selection
oSel.Clear()
oSel.Add oPar2
If (oPar.Value <> 0) Then
CATIA.StartCommand("unlock")
Else
CATIA.StartCommand("lock")
End If
End Sub
Roman Richter

Poslat zprávu | Profil
[#4664] | Publikováno: 21.08. 2014 - 10:28
Díky za pomoc! Dle dodaného kódu podmínka funguje jak má :-)Problém s možností nezávisle odemknout atribut trvá, ale to není stěžejní. Hold to nebude 100% "blbuvzdorné" :-)

Možná ještě jeden dotaz. Při volbě rozměru, který zapříčiní změnu stavu lock/unlock vyběhne hláška viz. obr. lze toto hlášení něják odstranit, aby změna proběhla bez nutnosti potvrzení hlášky?

Přiložené obrázky:

Ing Jan Cinert

Poslat zprávu | Profil
[#4666] | Publikováno: 22.08. 2014 - 22:01
Mě se okno pokud byl parametr správně vybrán neobjevovalo. Vyskočilo jen když jsem to testoval a parametr nebyl před příkazem lock vybrán.

Každopádně by to mělo jít potvrdit posláním stisku Enter - Sendkey{"ENTER"}.


Uživatel nepřihlášen

Pro zobrazení obsahu stránky / provedení akce (vytvoření nového téma, napsání odpovědi do diskuse apod.) musíte být přihlášeni.