我正在尝试在日记帐分录记录中将强制列字段(通过字段级别的UI)设置为false。
我需要使用用户事件脚本,因为日记帐分录是系统生成的,并且其他交易必须使用相同的自定义字段。
我在加载和setMandatory(false)之前尝试过使用用户事件,但它无法正常工作。
以下是我正在使用的代码:
function removeMandatory(type)
{
if(type == 'create')
{
for( var i =1 ; i < nlapiGetLineItemCount('line') ; i++)
{
var customField = nlapiGetLineItemField('line', 'custcol_test_mandatory', i);
customField.setMandatory(false);
}
}
}
感谢任何帮助,谢谢
答案 0 :(得分:1)
谢谢@Rusty Shackles:
我实际上是使用用户事件加载前功能完成的。这是代码:
function notMandatoryBeforeLoad(type)
{
var context = nlapiGetContext();
if(type == 'create' && context.getExecutionContext() == 'scheduled')
{
var LineMandatoryField = nlapiGetLineItemField('line','custcol_test_mandatory');
if (LineMandatoryField)
{
LineMandatoryField.setMandatory(false);
}
}
}
答案 1 :(得分:0)
我认为如果没有在Suitelet中完成,则只读取字段对象。
您可以使用在字段更改/验证字段上执行的客户端脚本,并检查“强制”字段是否为值。