如何将贷项凭证应用于发票?

问题描述

我正在尝试将贷项凭证应用于发票,但是“应用”子列表中有一长串清单,我不确定如何在行中获取相应的发票编号。

即使在此行中尝试将套用值设置为true,我也遇到了麻烦:

credit_memo_record_obj.setSublistValue({sublistId:'apply',fieldId:'apply',line: 0,value: true})

它告诉我子列表值不存在并且无法更改。

我也从套件答案中尝试过这种方法

var lineWithInvoice = credit_memo_record_obj.findSublistLineWithValue({
           sublistId: 'apply',fieldId: 'internalid',value: invoice_record_id
           });

           //Get Total amount of invoice
           var totalToPay = credit_memo_record_obj.getSublistValue({
               sublistId: 'apply',fieldId: 'total',line: lineWithInvoice
           });

           //Set apply to Truth (checkBox)
           credit_memo_record_obj.setSublistValue({
               sublistId: 'apply',fieldId: 'apply',line: lineWithInvoice,value: 'T'
           });
           credit_memo_record_obj.setSublistValue({
           sublistId: 'apply',fieldId: 'amount',value: totalToPay
       });

这给了我

您尝试了无效的子列表或订单项操作。您正在尝试访问不存在的行中的字段,或者试图在静态子列表中添加删除行。

我尝试在第0行进行测试,但必须响应相应的发票。

可以做到吗?我可以提供进一步的说明。

解决方法

尝试以下选项:

选项1:使用动态记录(isDynamic:true)

credit_memo_record_obj.selectLine({
    sublistId: 'apply',line: lineWithInvoice 
});
credit_memo_record_obj.setCurrentSublistValue({
    sublistId: 'apply',fieldId: 'apply',value: true
});
credit_memo_record_obj.commitLine({
    sublistId: 'apply'
});

选项2:使用record.transform