如何更新已使用PHP工具包完成/计费的Netsuite事务
正如标题中所述,我试图更新Netsuite(本例中为销售订单)中交易的自定义字段,但遇到了无法找到解决方案的问题。现在,我的代码在尚未开票的销售订单上运行良好,但当SO开票时,我得到以下错误:如何更新已使用PHP工具包完成/计费的Netsuite事务,php,netsuite,toolkit,Php,Netsuite,Toolkit,正如标题中所述,我试图更新Netsuite(本例中为销售订单)中交易的自定义字段,但遇到了无法找到解决方案的问题。现在,我的代码在尚未开票的销售订单上运行良好,但当SO开票时,我得到以下错误: UpdateResponse Object ( [writeResponse] => WriteResponse Object ( [status] => Status Object (
UpdateResponse Object
(
[writeResponse] => WriteResponse Object
(
[status] => Status Object
(
[statusDetail] => Array
(
[0] => StatusDetail Object
(
[code] =>
[message] =>
[afterSubmitFailed] =>
[type] => ERROR
)
[1] => StatusDetail Object
(
[code] => WARNING
[message] => Items on this line have been fulfilled and billed. Are you sure you want to modify it?
[afterSubmitFailed] =>
[type] => WARN
)
[2] => StatusDetail Object
(
[code] => WARNING
[message] => Items on this line have been fulfilled and billed. Are you sure you want to modify it?
[afterSubmitFailed] =>
[type] => WARN
)
)
[isSuccess] => 1
)
[baseRef] => RecordRef Object
(
[internalId] => 74452024
[externalId] =>
[type] => salesOrder
[name] =>
)
)
)
我理解为什么我们不想编辑已经过账到总账的交易,但我尝试更新的字段不会影响总账;这只是一个自定义字段,我们将使用它来跟踪我们在线商店中的一些礼品卡信息。我可以在UI中编辑记录并在没有任何警告的情况下保存它,但是我不知道如何通过PHP工具包使其工作。非常感谢您的帮助。我的代码如下:
require_once ('netsuite/NetSuiteService.php');
$ns = new NetSuiteService();
$field = new StringCustomFieldRef();
$field->internalId = "custbody_bc_gift_card";
$field->value = "Test This";
$so = new SalesOrder();
$so->internalId = "xxxxxxxx";
$so->recType = new RecordRef();
$so->customFieldList = new CustomFieldList();
$so->customFieldList->customField = array($field);
$update = new UpdateRequest();
$update->record = $so;
$res = $ns->update($update);
print_r ($res);