2017-02-10 4 views
1

In Workorder-Tracking gibt es ein Feld "LEAD", die ID von Blei angezeigt wird. In unserer Anforderung müssen wir den Leitungsnamen zusammen mit der Leitungs-ID anzeigen. SO erstellte ich ein neues Feld für Leadname in Arbeitsauftrag und verwendete Crossover-Domäne mit einer neuen Beziehung zwischen Wordorder und Person. Relation where-Klausel personid =: LeitungMaximo Crossover-Domäne

Die Crossover-Domäne kopiert den Wert von Leadname aus dem Displayname-Attribut des PERSON-Objekts und funktioniert ordnungsgemäß, wenn wir eine ID im Lead-Attribut von Workorder angeben.

Allerdings, wenn ich eine Lead-ID geben und dann die Lead-ID in WO entfernen, dann bleibt leadname immer noch Es wird nicht auf Null geändert. Ich glaube es ist, weil die Übergangsbedingung (personid =: Blei) nicht erfüllt ist und daher keine Aktion ausgeführt wird. Ich habe versucht, die Bedingung auf Source und Destination zu setzen, aber das funktioniert auch nicht.

Gibt es eine Möglichkeit, ein Feld auf Null zu setzen, falls die Bedingung für die Übernahme der Where-Klausel nicht erfüllt ist.

Ich konnte dies mithilfe von Automatisierungsskript implementieren, würde aber gerne wissen, ob das auch mit anderen Mitteln erreicht werden kann.

+0

Andere Gedanken. Wie wäre es, wenn Sie nur eine schreibgeschützte Verbindung von WORKORDER zu PERSON haben? Wenn das Feld LEAD leer ist, wird das entsprechende schreibgeschützte Feld leer. Wenn Sie keinen geschäftlichen Grund haben, Displayname in der Workerordertabelle aufzuzeichnen, warum sollten Sie ein neues Feld in der Datenbank erstellen? – Sun

+0

Business wollte den Namen Informationen sowie ID. Wenn ich es readonly mache, können Benutzer den Lead-Wert auf WO – stackuser11

+0

nicht ändern, ich meine, den Anzeigename schreibgeschützt zu machen. Derselbe Vorschlag wie Jeroen vor 5 Tagen. – Sun

Antwort

0

Wenn nur die Informationen angezeigt werden, sollten Sie ein mehrteiliges Textfeld verwenden, um Lead und Displayname der Person anzuzeigen. Sie müssen eine Beziehung von Arbeitsauftrag zu Person hinzufügen, indem Sie das Attribut lead verwenden. Dann löscht normale Maximo-Logik die 'Beschreibung', wenn Sie das tatsächliche Führungsfeld löschen.

Es gibt eine Möglichkeit, feste Werte, einschließlich Null, zu überqueren, um ein anderes Feld bei einer Überschneidungsaktion zu löschen. Erstellen Sie einfach einen ALNDOMAIN mit einem leeren Wert (lassen Sie die Beschreibung leer). Verwenden Sie in der Crossover-Domäne eine Beziehung, die auf diese bestimmte Domäne/Wert verweist, und verwenden Sie Punktnotation, um die Beschreibung zu überkreuzen. Verwenden Sie relationsname.description als das Quellfeld in Ihrer Frequenzweiche

+0

Haben Sie das versucht? Problem 1: Wenn Sie den Wert eines Attributs auf null ändern, wird keine Validierung über eine angefügte Domäne (und ggf. CO-Domänenfeuern) ausgelöst. Problem 2: PERSON.PERSONID ist erforderlich (darf nicht null sein). Selbst wenn die Validierung stattgefunden hat (d. H. Wenn Problem 1 kein Problem war), würde die Validierungs-Wo-Klausel für die CO-Domäne keine Übereinstimmung finden. Also, ich denke nicht, dass das funktionieren wird. – Preacher

+0

Ja, die cross overdomain where-Klausel wird nicht erfüllt, wenn wir den Lead als null definieren und daher keine Aktion ausgeführt wird. Alos Ich verstehe nicht, wie ALNDOMAIN hinzugefügt werden kann, um mit vorhandener Person ID und Displayname Crossover zu arbeiten – stackuser11

Verwandte Themen