2013-11-23 3 views
4

У меня есть пользовательский объект MyCustomObj__c, который имеет поле «ContactData».Как вставить данные в пользовательский объект с полем поиска из контроллера вершины

Я пытаюсь вставить запись в пользовательский объект со следующим методом apex. Это дает ошибку:

Invalid ID 

Значение Hari уже существует в списке контактов.

апекс код:

public static String saveData(){ 
    MyCustomObj__c newObj = new MyCustomObj__c(); 
    newObj.contactData__c = 'Hari'; 
    insert newObj; 
    return "success"; 
} 

Как вставить строку?

+2

Привет @Hari, есть новый stackexchange сайт специфичен для Salesforce в salesforce.stackexchange.com. Присоединяйтесь к сообществу! :) –

ответ

5

вы должны передать идентификатор записи контакта «Хари»

public static String saveData(){ 
     MyCustomObj__c newObj = new MyCustomObj__c(); 
     newObj.contactData__c = [SELECT Id 
           FROM Contact 
           WHERE Name ='Hari' LIMIT 1].Id; 
     insert newObj; 
     return "success"; 
} 

Конечно, вы должны стараться избегать SOQL здесь, это просто пример.

0

Apex Код для вставки данных в объект:

static void testInsert(){ 
    User testUser = new User(username = '[email protected]', 
    firstname = 'joe', lastname = 'bieber', 
    email = '[email protected]m', Alias = 'jo', 
    CommunityNickname = 'jo', 
    TimeZoneSidKey = 'America/New_York', LocaleSidKey = 'en_US', 
    EmailEncodingKey = 'ISO-8859-1', 
    ProfileId = '00e6000000167RPAAY', 
    LanguageLocaleKey = 'en_US'); 
    insert testUser; 

    List<SObject> sos = Database.query('select username from User'); 

    List<User> users= new List<User>(); 
    if(sos != null){ 
     for(SObject s : sos){ 
      if (((User)s).get('username') == '[email protected]') 
      Utils.log('' + ((User)s).get('username')); 
     } 
    } 
} 

Если напечатать имя пользователя, которого вы только что добавили.

0

Мы можем использовать загрузчик данных для перемещения данных в базу данных для поля поиска Гуру

+1

Спасибо, что нашли время, чтобы внести свой ответ. Именно из-за таких хороших коллег, как вы, мы можем учиться вместе как сообщество. [Вот несколько советов о том, как сделать ваш ответ отличным] (http://stackoverflow.com/help/how-to-answer) – JasonWilczak