|
|
回复 2# shary
技术大大,您看我这段脚本有什么问题么,为什么可行生产出库单,但发货单里的数据没有呢
var doc = getCurrentDocument();
var applicationid = getApplication();
var process = getDocProcess(getApplication());
var params = new Packages.cn.myapps.base.action.ParamsTable();
var user = getWebUser();
var today = getCurDate("yyyy-MM-dd");
var day = parseDate(today,"yyyy-MM-dd");
if(doc != null){
$PRINTER.println("-----------------------创建主表记录---------");
var fmprocess = createProcess("cn.myapps.core.dynaform.form.ejb.FormProcess");
var form = fmprocess.doViewByFormName("销售出库",applicationid);
var new_doc = process.doNew(form,user,params);
$PRINTER.println("-----------------------创建完主文档记录---------");
new_doc.setIstmp(false);
new_doc.setApplicationid(getApplication());
new_doc.setDomainid(user.getDomainid());
new_doc.addStringItem("单据编号",doc.getItemValueAsString("单据编号"));
new_doc.addStringItem("客户姓名",doc.getItemValueAsString("客户姓名"));
new_doc.addDateItem("购买日期",day);
new_doc.addStringItem("购买方式",doc.getItemValueAsString("购买方式"));
new_doc.addStringItem("客户状态",doc.getItemValueAsString("客户状态"));
new_doc.addStringItem("是否开发票",doc.getItemValueAsString("是否开发票"));
new_doc.addStringItem("发票抬头",doc.getItemValueAsString("发票抬头"));
new_doc.addStringItem("税号",doc.getItemValueAsString("税号"));
new_doc.addStringItem("开票部门",doc.getItemValueAsString("开票部门"));
new_doc.addStringItem("发票寄送地址",doc.getItemValueAsString("发票寄送地址"));
new_doc.addStringItem("开票负责人",doc.getItemValueAsString("开票负责人"));
new_doc.addStringItem("总金额",doc.getItemValueAsString("总金额"));
new_doc.addStringItem("销售折扣",doc.getItemValueAsString("销售折扣"));
new_doc.addStringItem("付款状态",doc.getItemValueAsString("付款状态"));
new_doc.addStringItem("付款方式",doc.getItemValueAsString("付款方式"));
new_doc.addStringItem("应付总金额",doc.getItemValueAsString("应付总金额"));
new_doc.addStringItem("实付金额",doc.getItemValueAsString("实付金额"));
new_doc.addStringItem("未付款金额",doc.getItemValueAsString("未付款金额"));
new_doc.addStringItem("其他优惠",doc.getItemValueAsString("其他优惠"));
new_doc.addStringItem("建议服用方法",doc.getItemValueAsString("建议服用方法"));
new_doc.addStringItem("其他说明",doc.getItemValueAsString("其他说明"));
new_doc.addStringItem("销售员",doc.getItemValueAsString("销售员"));
new_doc.addStringItem("部门",doc.getItemValueAsString("部门"));
new_doc.addStringItem("出库仓库",doc.getItemValueAsString("出库仓库"));
new_doc.addStringItem("预计下次购买日期",doc.getItemValueAsString("预计下次购买日期"));
$PRINTER.println("-----------------------主文档记录值更新完成---------");
process.doCreate(new_doc);
var dql="$formname='销售开单子表' and $parent.$id='"+doc.getId()+"'";
var subs = queryByDQL(dql);
if(subs !=null || subs.size()>0){
for(var iter = subs.iterator(); iter.hasNext();){
var subdoc = iter.next();
var subform = fmprocess.doViewByFormName("销售出库子表",applicationid);
var new_subdoc = process.doNew(subform,user,params);
new_subdoc.setApplicationid(getApplication());
new_subdoc.setDomainid(user.getDomainid());
new_subdoc.setIstmp(false);
new_subdoc.setParent(new_doc.getId()); //设定父文档ID
new_subdoc.addStringItem("商品名称",subdoc.getItemValueAsString('商品名称'));
new_subdoc.addStringItem("购买数量",subdoc.getItemValueAsString('购买数量'));
new_subdoc.addStringItem("单位",subdoc.getItemValueAsString('单位'));
new_subdoc.addStringItem("单价",subdoc.getItemValueAsString('单价'));
new_subdoc.addStringItem("小计",subdoc.getItemValueAsString('小计'));
process.doCreate(new_subdoc);
}
}
} |
|