应收单需要根据不同项目携带不同税率并计算
【解决方案】
1、费用录入界面根据需要添加各个公司对应的税率字段(例如A公司对应A税率);
2、页面加载后置脚本,先获取当前F7字段编码所对应的公司实体,然后根据当前公司找出对应的税率赋值
3、该脚本与一般脚本有所区别需要触发业务计算逻辑具体参考以下脚本实现 var kdtable = pluginCtx.getKDTable(kdtEntry);var f7 = kdtable.getColumn(expenseItemNumber).getEditor().getComponent();f7.addDataChangeListener(function(event,methodName){if(equals == methodName) {return this == event;}else if(dataChanged == methodName) {var cellIndex = kdtable.getColumns().getColumnIndex(taxRate);var rowIndex = kdtable.getSelectManager().getActiveRowIndex();var curRow = kdtable.getRow(rowIndex);//获取编码F7对象
var values = event.getNewValue();
//取编码对象 var number =pluginCtx.getKDBizPromptBox(prmtCompanyOrgUnit).getValue().get(number);
com.kingdee.eas.util.client.MsgBox.showInfo(number);if(values != null && values【0】 != null){kdtable.getEditManager().editCellAt(rowIndex,cellIndex,true);var expenseItemNumber = values【0】;
//获取金额
if(6900.equals(number)){
//获取上海虹桥税率
var tax = expenseItemNumber.get(SL);
com.kingdee.eas.util.client.MsgBox.showInfo(tax);
if(tax!=null){
curRow.getCell(taxRate).setValue(tax);
com.kingdee.eas.util.client.MsgBox.showInfo(tax);
}
}else if(6800.equals(number)){
//获取上海北外滩
var tax1 = expenseItemNumber.get(jgsl);
if(tax1!=null){
curRow.getCell(taxRate).setValue(tax1);
}
}else if(6802.equals(number)){
//获取上海北外滩
var tax2 = expenseItemNumber.get(pqsl);
if(tax2!=null){
curRow.getCell(taxRate).setValue(tax2);
}
}else{
curRow.getCell(taxRate).setValue(new java.math.BigDecimal(0));
curRow.getCell(taxAmount).setValue(new java.math.BigDecimal(0));
}kdtable.getEditManager().stopEditing();
}}});
应收单需要根据不同项目携带不同税率并计算
本文2024-09-22 19:54:39发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-110229.html