Hoi allemaal
Kunnen we bij het schrijven van een overgangsvoorwaarde de waarden van twee variabelen met elkaar vergelijken?
Bedankt.
Hoi allemaal
Kunnen we bij het schrijven van een overgangsvoorwaarde de waarden van twee variabelen met elkaar vergelijken?
Bedankt.
Hallo @jerome.lamar , welkom op het forum.
Kun je een voorbeeld geven van een vergelijking die je zou willen maken?
Uit mijn hoofd (ik gebruik geen pdm meer) is het niet mogelijk om 2 variabelen direct met elkaar te vergelijken. Het is noodzakelijk om slim te zijn in het definiëren van verschillende voorwaarden, of zelfs om specifieke variabelen te creëren die alleen voor overgangsvoorwaarden worden gebruikt.
Ik ben erg geïnteresseerd in dit onderwerp!
Ik probeer tijdens een overgang de naam van de persoon die de overgang passeert (Transmitter Name variabele) te vergelijken met de naam van de laatste persoon die het plan heeft gewijzigd (bij ons is het een specifieke variabele _ModifiéPar) om een stiekem ventje te blokkeren dat plezier heeft in het omzeilen van de documentvalidatieprocedures. Als iemand een tip heeft, neem ik die aan!
Hallo @lmoreau
Er is een specifieke optie om stiekeme kleintjes in PDM aan te pakken:
Sequentiële statuswijzigingen niet toestaan Staat niet toe dat twee opeenvolgende statusovergangen worden uitgevoerd. U kunt deze optie bijvoorbeeld gebruiken om te voorkomen dat gebruikers hun eigen bestanden goedkeuren.
Ik gebruik het al
Kortom, wanneer een gebruiker een plan voltooit, dient hij een verzoek in voor validatie via een overgang. De optie " sequentiële chgt verbieden" verbiedt deze gebruiker dus om zijn eigen plan te valideren.
Maar deze stiekeme kleine man (die ook bedrieglijk en gemeen is), vroeg een andere gebruiker om het validatieverzoek in te dienen (zonder ooit aan het plan te hebben gewerkt), om zichzelf daarna zonder beperking te kunnen valideren.
Ik probeer daarom de persoon die het verzoek om validatie indient, te dwingen de auteur van het plan te zijn.
En als een plan door iemand wordt gestart en door een ander wordt beëindigd (zeldzaam geval in ons land) zal ik op dat moment een oplossing vinden.
Hallo
Dus als ik me niet vergis, is het onder de voorwaarden van de overgangen niet mogelijk (je kunt de naam van de gebruiker die de statuswijziging heeft aangebracht niet herstellen).
Aan de andere kant, als de naam van de gebruikers identiek is aan de naam die is geschreven in de variabele die de auteur van het plan weergeeft, dan zouden we moeten kunnen wegkomen met de dispatch-scripts.
Hallo
Helaas heb ik verschillende bevestigingen gehad dat het onmogelijk is om een voorwaarde te stellen aan de vergelijking van twee variabelen met elkaar.
Aan de andere kant bracht Cyril.f me op een idee met de Dispatch-scripts.
Het script moet zijn ingeschakeld ' tijdens statusovergang '.
Het bestand waarin de plannen die onder dit verbod op zelfvalidatie vallen, worden bewaard, moet worden ingevuld.
U moet uw aankomststatus selecteren, d.w.z. de status GELDIG, en het vakje "Voordat u de status wijzigt" aanvinken
Met het volgende script kunt u de maker van het plan (d.w.z. degene die het bestand heeft gemaakt, niet degene die het heeft gevalideerd) vergelijken met de ingelogde gebruiker (d.w.z. degene die de validatieovergang doorstaat)
Ik heb het getest, het lijkt te werken.
Succes
Dat is het precies. Ik heb het niet gedetailleerd, maar het is dit soort script
Nou, er is meer te doen dan testen! Hartelijk dank!!
Hallo
Gefeliciteerd met je script.
Het kan echter iets te beperkend zijn: we werken bijvoorbeeld veel door te kopiëren (3D+MEP). Dus degene die de 3D maakt, kopieert meestal een bestaande 3D en past vervolgens de 3D aan. De persoon die de tekening bijwerkt, is vaak iemand anders. In dit geval voorkomt uw script dat de maker van het bestand het werk van zijn collega die de tekening heeft gemaakt/bewerkt, kan controleren.
Hallo
Natuurlijk moet je het script aanpassen aan de situatie. Thuis werken we ook veel met kopieën. Maar we hebben een variabele op de gegevenskaart waarmee we de ID kunnen ophalen van de persoon die de kopie maakt (en niet de oorspronkelijke maker). In 90% van de gevallen is het de persoon die de kopie heeft gemaakt die verantwoordelijk is voor het wijzigen van het bestand. Het enige wat u hoeft te doen is de parameters van de variabelen in het script aan te passen om deze variabele uit de gegevenskaart op te halen:
Daarna, als we hebben:
ID1: Oorspronkelijke maker
ID2: Kopieer maker
ID3: Bestand Modifier
ID4: Validatie van bestanden
ID5: Validatie van bestanden
Dat zijn veel gebruikers om te traceren. En ik weet niet eens hoe ik de ID3 kan herstellen, die alleen het bestand heeft gewijzigd, zonder statuswijzigingen of overgangen aan te brengen...