Пользовательское поле обновления php для Salesforce

Я должен создать запись из моего веб-приложения в salesforce:

error_reporting(E_ALL);
ini_set('display_errors', true);
ini_set('display_startup_errors', true);
ini_set('xmlrpc_errors', true);

define("USERNAME", "xxxxxxxxx");
define("PASSWORD", "xxxxxxxxx");
define("SECURITY_TOKEN", "xxxxxxxxxxxxxxxxxxxxxxxxxxx");

require_once ('soapclient/SforceEnterpriseClient.php');
$mySforceConnection = new SforceEnterpriseClient();
$mySforceConnection->createConnection("soapclient/enterprise.wsdl.xml");
$mySforceConnection->login(USERNAME, PASSWORD.SECURITY_TOKEN);

function createRecord(){

global $mySforceConnection;

$records = array();

$records[0] = new stdclass();
$records[0]->FirstName = 'Myriam';
$records[0]->LastName = 'Makeba';
$records[0]->Phone = '(510) 555-5555';
$records[0]->BirthDate = '1957-01-25';
$records[0]->contractType__c = "CDI";

$response = $mySforceConnection->create($records, 'Contact');

$ids = array();
foreach ($response as $i => $result) {
echo $records[$i]->FirstName . " " . $records[$i]->LastName . " ". $records[$i]->Phone . " created with id " . $result->id
. "<br/>\n";
array_push($ids, $result->id);
}
}

Вы видите, что я хочу обновить настраиваемое поле «contractType__c», оно выдает мне ошибку:

Fatal error: Uncaught SoapFault exception: [sf:INVALID_FIELD] INVALID_FIELD: No such column 'TypeContrat__c' on entity 'Contact'.
If you are attempting to use a custom field, be sure to append the '__c' after the custom field name.
Please reference your WSDL or the describe call for the appropriate names.

если я прокомментирую эту строку, она вставит записи, моя цель — обновить настраиваемое поле salesforce. Извините за мой плохой английский.

Спасибо.

Oups! Последние новости я попытался вставить запись без пользовательского поля, я также получил ошибку:

stdClass Object (
[errors] => Array (
[0] => stdClass Object (
[message] => ContactBeforeInsert: execution of BeforeInsert caused by: System.NullPointerException: Attempt to de-reference a null object Trigger.ContactBeforeInsert: line 83, column 1 [statusCode] => CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY ) )
[id] => [success] => )
stdClass Object (
[errors] => Array (
[0] => stdClass Object (
[message] => ContactBeforeInsert: execution of BeforeInsert caused by: System.NullPointerException: **Attempt to de-reference a null object Trigger.ContactBeforeInsert: line 83**, column 1 [statusCode] => CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY ) ) [id] => [success] => )

0

Решение

Первая ошибка:

Согласно вашему описанию, вы получаете проблему «INVALID_FIELD: нет такого столбца ‘TypeContrat__c’ на объекте ‘Контакт’. Поэтому, пожалуйста, проверьте имя API этого поля в salesforce. Я думаю, что вы что-то упустили в имени API пользовательского поля контакта.

Вторая ошибка:

В вашей организации salesforce есть триггер «ContactBeforeInsert» для контакта, который получает исключение нулевого указателя. (Означает, что они получают какое-то значение, и это ноль). Поэтому, пожалуйста, проверьте этот триггер. Следуйте инструкциям, чтобы увидеть список контактов триггера Перейти к настройке-> Настройка -> контакт -> триггер.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]