简体   繁体   English

无法使用 Netsuite PHP Toolkit 2022_2 创建自定义记录

[英]Can't create custom record using Netsuite PHP Toolkit 2022_2

I'm trying to create custom record using NetSuite PHP Toolkit 2022_2.我正在尝试使用 NetSuite PHP Toolkit 2022_2 创建自定义记录。

On that record I have在那个记录上我有

  1. List/Record field - Item列表/记录字段 - 项目

  2. List/Record Field - Supplier列表/记录字段 - 供应商

  3. Free-Form-Text field - Special Notes自由格式文本字段 - 特别说明

Whatever I do I can't set field values of this custom record.无论我做什么,我都无法设置此自定义记录的字段值。 On other side record is always created with empty fields even tho Im setting values in my code... I'm trying to use documentation code and solutions from google but unfortunately, I could not fix the issue for hours.另一方面,即使我在我的代码中设置值,记录也总是用空字段创建的……我正在尝试使用来自谷歌的文档代码和解决方案,但不幸的是,我几个小时都无法解决这个问题。 Any help is appreciated.任何帮助表示赞赏。 Thanks!谢谢!

Example 1:示例 1:

$service = new NetSuiteService();
$customRecord = new CustomRecord(); 
$customRecord->recType = new RecordRef(); 
$customRecord->recType->internalId = "244";
$customRecord->fields = new CustomFieldList();

$itemField = new StringCustomFieldRef(); 
$itemField->value = "2167"; 
$itemField->internalId = "custrecord_item"; 
$customRecord->fields->customField[] = $itemField;

$supplierField = new StringCustomFieldRef(); 
$supplierField->value = "1221"; $supplierField->internalId = "custrecord_supplier"; 
$customRecord->fields->customField[] = $supplierField;

$addRequest = new AddRequest(); 
$addRequest->record = $customRecord;
$addResponse = $service->add($addRequest);

Example 2 (also not setting field value):示例 2(也不设置字段值):

// Create a object for lab name in netsuite
$itemField = new SelectCustomFieldRef(); 
$itemField->value = new ListOrRecordRef(); 
$itemField->value->internalId = '2167'; // your input 
$itemField->internalId = "custrecord_item"; // internal id of the input in Netsuite

$labCustomRecord = new CustomRecord(); 
$labCustomRecord->recType = new RecordRef(); 
$labCustomRecord->recType->internalId = "244"; // internal id 
$labCustomRecord->customFieldList = new CustomFieldList(); 
$labCustomRecord->customFieldList->customField  = $itemField;

$addRequest = new AddRequest(); $addRequest->record = $labCustomRecord;
$addResponse = $service->add($addRequest);

I just found the issue.我刚发现问题。

The problem is because their documentation is absolute for PHP ToolKit.问题是因为他们的文档对于 PHP ToolKit 是绝对的。 We should use scriptId instead of internalId as on the example below:我们应该使用 scriptId 而不是 internalId,如下例所示:

$itemField = new StringCustomFieldRef(); 
$itemField->value = "2167"; 
$itemField->scriptId = "custrecord_item"; // DONT USE ->internalId
$customRecord->fields->customField[] = $itemField;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM