Javascript 将销售订单记录转换为项目履行的问题&;现销

Javascript 将销售订单记录转换为项目履行的问题&;现销,javascript,transform,netsuite,suitescript,Javascript,Transform,Netsuite,Suitescript,我正在尝试创建一个简单的后提交用户事件脚本,该脚本可以立即为销售订单上的礼品券项目创建项目履行记录和现金销售。但是,我一直在项目履行部分遇到一个问题,其中显示了其他项目,但没有显示礼品证书。例如,我将有4件物品,其中两件是礼券。只有两个项目将显示在项目履行上。两者都不是礼品卡 此外,现金销售转换不允许我删除行项目。我甚至试着在新创建的现金销售创建后直接打开它,但没有运气 有什么想法吗 function main(type){ if (type == 'create'){

我正在尝试创建一个简单的后提交用户事件脚本,该脚本可以立即为销售订单上的礼品券项目创建项目履行记录和现金销售。但是,我一直在项目履行部分遇到一个问题,其中显示了其他项目,但没有显示礼品证书。例如,我将有4件物品,其中两件是礼券。只有两个项目将显示在项目履行上。两者都不是礼品卡

此外,现金销售转换不允许我删除行项目。我甚至试着在新创建的现金销售创建后直接打开它,但没有运气

有什么想法吗

function main(type){
    if (type == 'create'){
        //transform for cashsale
        var soId = nlapiGetRecordId();
        var csRec = nlapiTransformRecord('salesorder', soId, 'cashsale');
        var lcount = csRec.getLineItemCount('item');
        for (var i = 1; i <= lcount; i++){
            csRec.selectLineItem('item', i);
            var itemType = csRec.getCurrentLineItemValue('item', 'itemtype', i);
            if (itemType != 'GiftCert') {
                csRec.removeLineItem('item', i);
            }
        }
        nlapiSubmitRecord(csRec);

        //transform for item fulfillment
        var ifRec = nlapiTransformRecord('salesorder', soId, 'itemfulfillment');
        var lcounttwo = ifRec.getLineItemCount('item');

        for (var i = 1; i <= lcounttwo; i++){
            ifRec.selectLineItem('item', i);
            var ifType = ifRec.getCurrentLineItemValue('item', 'itemtype', i);
            if (ifType != 'GiftCert') {
                ifRec.removeLineItem('item', i);
            }
        }
        nlapiSubmitRecord(ifRec);
    }
}
主功能(类型){
如果(类型==“创建”){
//变卖
var soId=nlapiGetRecordId();
var csRec=nlapiTransformRecord('salesforder',soId',cashsale');
var lcount=csRec.getLineItemCount('item');

对于(var i=1;i取决于您的礼品证书的设置方式,可能的问题是礼品证书的设置可能导致礼品证书无法兑现/收到

如果你转到销售订单并创建现金销售,你应该在那里看到礼品证书,如果你这样做,那么你的脚本应该只是为礼品证书记账,而不是试图兑现它