Apex update-trigger - update lookup-Feld

Ich bin versucht zu schreiben, dass meine erste Apex update-trigger und zappelte leicht, als ich versuche, den Wert für ein benutzerdefiniertes Feld suchen.

Ich habe ein Objekt namens Deployment__c was ist der master in einer master-detail-Beziehung mit einem Objekt aufgerufen Service__c (Namen vereinfacht!)

Den Service__c Feld hat keine Owner in Salesforce, wie es ist, das Kind/detail in einer master-detail-Beziehung. Daher haben wir ein pseudo-Feld "Eigentümer" genannt Owner__c auf das Objekt, das ist ein lookup-Feld suchen, bis die User Objekt in Salesforce.

Ziel des triggers ist, um den Wert Service__c.Owner__c zu der der Benutzer ist der Besitzer des Deployment__c, wenn es keine Owner__c bereits auf Service__c.

Den code habe ich wie folgt:

trigger AfterServiceUpdate on Service__c (before update) {
    for (Service__c oldService : Trigger.new) {
        if (oldService.Owner__c == null) {
            User defaultUser = [Select Id FROM User WHERE User.Id = :oldService.Deployment__r.OwnerId];
            oldService.Owner__c = defaultUser.Id;
        }
    }
}

Allerdings bekomme ich eine Fehlermeldung, wenn ich versuche zu speichern, dies trigger:

Fehler: Compile Error: Invalid field Eigentümer__c für SObject ASE_Implementierung__c in Zeile 5 Spalte 13

Ich habe festgestellt, dass ich die Feldnamen richtig, aber kann nicht ankommen dieses zu wirken. Alle Hinweise willkommen!

InformationsquelleAutor JimmE | 2013-02-19

Schreibe einen Kommentar