如何将Journal条目上的列字段设置为false

时间:2016-06-27 15:22:52

标签: netsuite

我正在尝试在日记帐分录记录中将强制列字段(通过字段级别的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);
         }
  }
}

感谢任何帮助,谢谢

2 个答案:

答案 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中完成,则只读取字段对象。

您可以使用在字段更改/验证字段上执行的客户端脚本,并检查“强制”字段是否为值。