Cze wszystkim
Czy pisząc warunek przejścia, możemy porównać ze sobą wartości dwóch zmiennych?
Dziękuję.
Cze wszystkim
Czy pisząc warunek przejścia, możemy porównać ze sobą wartości dwóch zmiennych?
Dziękuję.
Witam @jerome.lamar , witaj na forum.
Czy mógłby Pan podać przykład porównania, którego chciałby Pan dokonać?
Z pamięci (nie używam już pdm) nie ma możliwości bezpośredniego porównania 2 zmiennych. Trzeba być sprytnym w definiowaniu kilku warunków, a nawet tworzyć konkretne zmienne używane tylko dla warunków przejścia.
Bardzo interesuje mnie ten temat!
Staram się porównywać podczas przejścia imię osoby, która przechodzi przejście (zmienna Transmitter Name) z imieniem i nazwiskiem ostatniej osoby, która zmodyfikowała plan (u nas jest to konkretna zmienna _ModifiéPar), aby zablokować podstępnego małego faceta, który dobrze się bawi omijając procedury walidacji dokumentów. Jeśli ktoś ma napiwek, przyjmę go!
Witam @lmoreau
Istnieje specjalna opcja obsługi podstępnych maluchów w PDM:
Nie zezwalaj na sekwencyjne zmiany stanu Nie zezwala na wykonanie dwóch sekwencyjnych przejść stanu. Na przykład możesz użyć tej opcji, aby uniemożliwić użytkownikom zatwierdzanie własnych plików.
Już go używam
Zasadniczo, gdy użytkownik ukończy plan, składa wniosek o walidację poprzez przejście. Opcja " zabroń sekwencyjnego chgt" uniemożliwia zatem temu użytkownikowi walidację własnego planu.
Ale ten podstępny mały facet (który jest również podstępny i złośliwy) poprosił innego użytkownika o złożenie wniosku o walidację (bez nigdy pracy nad planem), aby móc później samodzielnie zweryfikować się bez ograniczeń.
W związku z tym staram się zmusić osobę, która składa wniosek o walidację, aby była autorem planu.
A jeśli jakiś plan zostanie rozpoczęty przez kogoś i zakończony przez inny (rzadki przypadek w naszym kraju), znajdę w tym czasie rozwiązanie.
Witam
Więc o ile się nie mylę, w warunkach przejść nie jest to możliwe (nie można odzyskać nazwy użytkownika, który dokonał zmiany stanu).
Z drugiej strony, jeśli nazwa użytkowników jest identyczna z nazwą zapisaną w zmiennej, która wyświetla autora planu, powinniśmy być w stanie uciec od skryptów wysyłających.
Witam
Niestety spotkałem się z kilkoma potwierdzeniami, że nie da się postawić warunku na porównanie dwóch zmiennych względem siebie.
Z drugiej strony, Cyril.f podsunął mi pomysł na skrypty Dispatch.
Skrypt musi być włączony " podczas przechodzenia stanu ".
Plik, w którym przechowywane są plany objęte tym zakazem samowalidacji, musi zostać wypełniony.
Musisz wybrać stan przybycia, tj. status VALID i zaznaczyć pole " Przed zmianą statusu "
Poniższy skrypt pozwala na porównanie twórcy planu (czyli tego, który stworzył plik, a nie tego, który umieścił go w walidacji) z zalogowanym użytkownikiem (czyli tym, który przejdzie przejście walidacji)
Przetestowałem to, wygląda na to, że działa.
Powodzenia
Dokładnie tak. Nie podałem szczegółów, ale to jest ten typ skryptu
Cóż, jest więcej do zrobienia niż testowanie! Dziękuję bardzo!!
Witam
Gratulujemy scenariusza.
Może to być jednak trochę zbyt ograniczające: Na przykład dużo pracujemy, kopiując (3D+MEP). Tak więc ktokolwiek tworzy 3D, zwykle kopiuje istniejący, a następnie modyfikuje 3D. Osobą, która będzie aktualizować rysunek, jest często ktoś inny. W takim przypadku skrypt uniemożliwia twórcy pliku sprawdzenie pracy swojego kolegi, który wykonał/zmodyfikował rysunek.
Witam
Oczywiście musisz dostosować scenariusz do sytuacji. W domu też dużo pracujemy z kopiami. Ale mamy zmienną na karcie danych, która pozwala nam odzyskać identyfikator osoby wykonującej kopię (a nie oryginalnego twórcy). W 90% przypadków to osoba, która wykonała kopię, będzie odpowiedzialna za modyfikację pliku. Wszystko, co musisz zrobić, to zmodyfikować parametry zmiennych w skrypcie, aby pobrać tę zmienną z mapy danych:
Następnie, jeśli mamy:
ID1: Oryginalny twórca
ID2: Kreator kopii
ID3: Modyfikator pliku
ID4: Walidacja plików
ID5: Walidator plików
To wielu użytkowników do śledzenia. I nawet nie wiem, jak odzyskać ID3, który tylko zmodyfikował plik, nie dokonując żadnych zmian stanu ani przejść...