2012-12-09 17 views
5

Czy ktoś znalazł sposób dodania błędu poziomu pola dynamicznego do rzutki?Apex AddError do SObject field

chciałbym zrobić coś takiego

mySobjectRec.get('fieldname').addError('my error message'); 

Zdaję sobie sprawę, że mySobjectRec.fieldname__c.addError ('mój komunikat o błędzie') działa.

Odpowiedz

-1

jak o

mySobjectRec.getSObject('fieldname').addError('error message'); 

Co patrzę na to:

http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_methods_system_sobject.htm

nie próbowałem go więc nie wiem, czy to będzie działać, daj mi znać.

+1

Dzięki za odpowiedź, ale wygląda na to, że getSObject pobiera powiązane SObject i błędy z "Invalid relationship", ponieważ moje pole nie jest odnośnikiem lub master/szczegółem. – Jeff

6

Niestety nie można tego zrobić. Szukałem obejścia i nie mogę znaleźć żadnego, metody addError na SObject używają wysoce wyspecjalizowanego sposobu odwoływania się do pola, które polega na twardym kodowaniu odniesienia pola przed metodą.

Metoda ta jest wysoce wyspecjalizowana, ponieważ identyfikator pola nie jest faktycznie obiektem wywołującym - rekordem sObject jest element wywołujący. To pole służy po prostu do zidentyfikowania pola, które powinno zostać użyte do wyświetlenia błędu.