var colPOApprovalByPRNo = [ { data: 'itemNo' }, { data: 'itemName' }, { data: 'itemSpecs' }, { data: 'qty', render: function (data, type, row, meta) { return data.toLocaleString(); } }, { data: 'emailAddress' }, { data: 'supplierName' }, { data: 'manufacturer' }, { data: 'price' }, { data: null, render: function (data, type, row) { return renderSuppbtn(data, row); } }, { data: 'supplierId', visible: false }, { data: 'canvassDetailId', visible: false }, ]; var colPOApproval = [ { data: 'poNo', className: 'text-center align-middle', render: function (data) { return ''; } }, { data: 'poType' }, { data: 'poNo' }, { data: 'aggrePRNo' }, { data: 'aggreItemNo' }, { data: 'aggreItemName' }, { data: 'itemCategoryName' }, { data: 'supplierName' }, { data: null, render: function (data, type, row) { return renderForPObtn(data, row); } } ]; var colForPO = [ { data: 'aggrePRNo' }, { data: 'aggreItemNo' }, { data: 'aggreItemName' }, { data: 'itemCategoryName' }, { data: 'supplierName' }, { data: null, render: function (data, type, row) { return renderForPObtn(data, row); } } ]; var colCustomPO = [ { data: null, render: function (data, type, row) { return renderDelItem(data, row); } }, { data: 'prNo' }, { data: 'qty' }, { data: 'uomName' }, { data: 'itemNo' }, { data: 'itemName' }, { data: 'specification' }, { data: 'unitPrice' }, { data: 'totalAmount', render: function (data, type, row) { return numberWithCommas(data); } }, ]; var colDefCustomPO = [ { targets: [2], render: function (data, type, row) { return ''; } }, { targets: [6], render: function (data, type, row) { const cleanedData = data ?.replace(/\s+/g, ' ') .replace(/\.([^\s])/g, '. $1') .trim(); return ` `; }, }, { targets: [7], render: function (data, type, row) { return ''; }, } ]; var colPOPRList = [ { data: 'prDetailsId', title: '', render: function () { return ''; }, orderable: false, searchable: false }, { data: 'prNo' }, { data: 'qty', render: function (data, type, row, meta) { return numberWithCommas(data); } }, { data: 'uomName' }, { data: 'itemNo' }, { data: 'itemName' }, { data: 'itemDescription' }, { data: 'createdBy' }, { data: 'createdDate', render: function (data, type, row) { if (type === 'display' && data) { return formatDate(data); } return data; } }, { data: null, render: function (data, type, row) { return renderPRItem(data, row); } }, ]; var colOtherCharges = [ { data: 'otherChargesId', render: function (data) { return ''; } }, { data: 'otherChargesName' }, { data: 'amount' }, { data: null, render: function (data, type, row) { return renderOtherChargebtn(data, row); } } ]; var colIncoterms = [ { data: 'incotermsName' }, { data: null, render: function (data, type, row) { return renderIncotermsbtn(data, row); } } ]; var colDefOtherCharges = [ { targets: [2], // Amount column render: function (data, type, row) { return ''; } } ]; var colSIPOPerSuppEmail = [ { data: 'qty', className: 'qty text-right', render: function (data, type, row) { return numberWithCommas(row.qty); } }, { data: 'uomName', className: 'uomName' }, { data: 'itemNo', className: 'itemNo' }, { data: 'itemDescription', className: 'itemDescription' }, { data: 'unitPrice', className: 'unitPrice', render: function (data, type, row) { return row.itemCategoryName + numberWithCommas(row.unitPrice); } }, { data: 'totalAmount', className: 'totalAmount', render: function (data, type, row) { return row.itemCategoryName + numberWithCommas(parseFloat(row.qty) * parseFloat(row.unitPrice)); } } ]; var colImportPOPerSuppEmail = [ { data: 'prNo' }, { data: 'itemNo' }, { data: 'itemDescription' }, { data: 'uomName' }, { data: 'qty', render: function (data, type, row, meta) { return data.toLocaleString(); } }, { data: 'unitPrice' }, { data: 'unitPrice' }, { data: 'totalAmount', visible: false }, { data: 'supplierName', visible: false }, { data: 'supplierAddress', visible: false }, { data: 'terms', visible: false }, { data: 'deliveryDate', visible: false } ]; var colPOItemDetail = [ { data: 'prNo' }, { data: 'itemNo' }, { data: 'itemName' }, { data: 'itemDescription' }, { data: null, render: function (data, type, row) { return renderPOItemDetail(data, row); } }, ]; var colApprovedPO = [ { data: 'poNo' }, { data: 'poTypeId' }, { data: 'aggrePRNo' }, { data: 'aggreItemNo' }, { data: 'aggreItemName' }, { data: 'itemCategoryName' }, { data: 'supplierName' }, { data: null, render: function (data, type, row) { return renderApprovedPOlbtn(data, row); } }, { data: 'emailAddress', visible: false }, { data: 'canvassDetailId', visible: false }, ]; var colApprovedSIPOPerSuppEmail = [ { data: 'qty', className: 'qty', render: function (data, type, row) { return numberWithCommas(row.qty); } }, { data: 'uomName', className: 'uomName' }, { data: 'itemNo', className: 'itemNo' }, { data: 'itemDescription', className: 'itemDescription' }, { data: 'unitPrice', className: 'unitPrice', render: function (data, type, row) { return row.itemCategoryName + numberWithCommas(row.unitPrice); } }, { data: 'totalAmount', className: 'totalAmount', render: function (data, type, row) { return row.itemCategoryName + numberWithCommas(parseFloat(row.qty) * parseFloat(row.unitPrice)); } } ]; var colApprovedLocalPerSuppEmail = [ { data: 'qty', className: 'qty', render: function (data, type, row) { return numberWithCommas(row.qty); } }, { data: 'uomName', className: 'uomName' }, { data: 'itemNo', className: 'itemNo' }, { data: 'itemDescription', className: 'itemDescription' }, { data: 'unitPrice', className: 'unitPrice', render: function (data, type, row) { return row.itemCategoryName + numberWithCommas(row.unitPrice); } }, { data: 'totalAmount', className: 'totalAmount', render: function (data, type, row) { return row.itemCategoryName + numberWithCommas(parseFloat(row.qty) * parseFloat(row.unitPrice)); } } ]; var colApprovedImportPOPerSuppEmail = [ { data: 'prNo' }, { data: 'itemNo' }, { data: 'itemDescription' }, { data: 'uomName' }, { data: 'qty', render: function (data, type, row) { return numberWithCommas(row.qty); } }, { data: 'unitPrice', render: function (data, type, row) { return numberWithCommas(row.unitPrice); } }, { data: 'totalAmount', render: function (data, type, row) { // Calculate totalAmount if not provided by the server return numberWithCommas((parseFloat(row.qty) * parseFloat(row.unitPrice))); } }, ]; var colCreatedPO = [ { data: 'poNo' }, { data: 'poTypeId' }, { data: 'aggrePRNo' }, { data: 'aggreItemNo' }, { data: 'aggreItemName' }, { data: 'itemCategoryName' }, { data: 'supplierName' }, { data: null, render: function (data, type, row) { return renderCreatedPO(data, row); } } ]; var colMyCreatedPO = [ { data: 'poNo' }, { data: 'poTypeId' }, { data: 'aggrePRNo' }, { data: 'aggreItemNo' }, { data: 'aggreItemName' }, { data: 'itemCategoryName' }, { data: 'supplierName' }, { data: null, render: function (data, type, row) { return renderMyCreatedPO(data, row); } } ]; var colSuppBidByItem = [ { data: 'price', render: function (data, type, row, meta) { return numberWithCommas(data); } }, { data: 'qty', render: function (data, type, row, meta) { return numberWithCommas(data); } }, { data: 'emailAddress' }, { data: 'supplierName' }, { data: 'manufacturer' }, { data: 'specification' }, { data: null, render: function (data, type, row) { return renderSuppBidbtn(data, row); } } ]; var colBiddingApproval = [ { data: 'canvassId' }, { data: 'prNo' }, { data: 'itemNo' }, { data: 'itemName' }, { data: 'itemDescription' }, { data: 'itemCategoryName' }, { data: null, render: function (data, type, row) { return renderForPOItembtn(data, row); } }, { data: 'dateNeeded', visible: false }, { data: 'canvassDetailId', visible: false }, { data: 'poDetailId', visible: false }, ]; var colCentralPO = [ { data: 'poNo' }, { data: 'poTypeId' }, { data: 'appsId' }, { data: 'createdBy' }, { data: 'createdDate', type: 'date-custom', render: function (data, type, row) { if (type === 'display' && data) { return formatDateTime(data); } return data; } }, { data: 'cpoNoId', visible: false }, ]; var colDocRequired = [ { data: 'docRequirementId', render: function () { return ''; } }, { data: 'docName' }, { data: null, render: function (data, type, row) { return renderDocReqbtn(data, row); } }, ] //#Reports var colOnPRPODeptReports = [ { data: 'department' }, { data: 'prItemCount', render: function (data, type, row) { return numberWithCommas(data); } }, { data: 'poItemCount', render: function (data, type, row) { return numberWithCommas(data); } }, { data: 'rrItemCount', render: function (data, type, row) { return numberWithCommas(data); } }, { data: 'wopoItemCount', render: function (data, type, row) { return numberWithCommas(data); } }, { data: 'poCompletionPercent' }, { data: 'rrCompletionPercent' }, ] var colOnPRPOItemReports = [ { data: 'itemNo' }, { data: 'itemName' }, { data: 'department' }, { data: 'prNo' }, { data: 'prDate', render: function (data, type, row) { if (type === 'display' && data) { return formatDate(data); } return data; } }, { data: 'qty', render: function (data, type, row, meta) { return numberWithCommas(data); } }, { data: 'poNo' }, { data: 'poDate', render: function (data, type, row) { if (type === 'display' && data) { return formatDate(data); } return data; } }, { data: 'poQty', render: function (data, type, row, meta) { return numberWithCommas(data); } }, { data: 'rrNo' }, { data: 'rrDate', render: function (data, type, row) { if (type === 'display' && data) { return formatDate(data); } return data; } }, { data: 'quantityReceived', render: function (data, type, row, meta) { return numberWithCommas(data); } } ] var colIncomingItem = [ { data: 'poNo' }, { data: 'supplierName' }, { data: 'createdBy' }, { data: 'aggreItemName' }, { data: 'aggreQty' }, { data: 'deliveryDate', render: function (data, type, row) { return formatDate(data); } }, { data: null, render: function (data, type, row) { return renderDelIncShip(data, row); } } ];