/** * 初始化 辅组织汇兑损益应付单的表体 * * @param objF * @return */ private ExchangeAssistSyfBVO initSyfAssistBVO(Object[] objF) throws BusinessException { ExchangeAssistSyfBVO bvo = new ExchangeAssistSyfBVO(); // 用于关联 汇兑损益应付单表头(即SYF的字段) bvo.setSyf_billno(SYF_Bill_no); bvo.setSyf_sellnum(SYF_Sellnum); bvo.setSyf_product(SYF_pk_product); // objF字段 bvo.setBill_no(objF[1].toString()); // 单据编号 bvo.setOrigin(insertBP.getAddr(objF)); // 始发地 bvo.setDestination(objF[3].toString()); // 目的地 bvo.setVoucher_note(objF[5].toString()); // 凭证摘要 bvo.setSell(insertBP.getSell(objF)); // 业务员 bvo.setCustomer(insertBP.getClient(objF)); // 客户 bvo.setSupplier(getSupplier(objF)); // 供应商 bvo.setProduct(insertBP.getProduct(objF)); // 获取产品 bvo.setLink(insertBP.getLink(objF)); // 航线 bvo.setClear_type(insertBP.getClear_type(objF)); // 结算方式 bvo.setVoucher_num(objF[13].toString()); // 凭证号 bvo.setCurrency(insertBP.getCurrency(objF)); // 币种 bvo.setRate(new UFDouble(Double.parseDouble(objF[17].toString()))); // 汇率 bvo.setSellnumber(objF[20].toString()); // 业务单号 bvo.setMainsellnumber(objF[21].toString()); // 主业务单号 bvo.setSell_date(SellDate); // 业务日期 bvo.setYear(objF[25].toString()); // 年 bvo.setMonth(objF[26].toString()); // 月 bvo.setAccounting_subject(getAccounting_subjectF(objF)); // 会计科目 bvo.setSubject_orientation(PK_Subject_orientation); // 科目方向 return bvo; }
private ExchangeSyfHVO initSyfHVO(Object[] objSYF) throws ParseException, BusinessException, UifException { ExchangeSyfHVO hvo = new ExchangeSyfHVO(); hvo.setBill_no(objSYF[1].toString()); // 单据编号 // -- hvo.setPk_group(pk_group_choice); // 赛拾集团 hvo.setApprovestatus(-1); // 审批状态 -1,自由 // hvo.setBill_type("0001ZZ1000000000NO7Q");// 单据类型 hvo.setMaketime(new UFDate(new Date())); // 制单日期 hvo.setSell_date(SellDate); // 业务日期 hvo.setBill_no(objSYF[1].toString()); // 单据编号 hvo.setRate(new UFDouble(Double.valueOf(objSYF[16].toString()))); // 汇率 hvo.setOriginal_sum(new UFDouble(origin)); // 原币金额 hvo.setLocal_sum(new UFDouble(local)); // 本币金额 hvo.setClear_type(getClear_type(objSYF)); // 结算方式 hvo.setOrigin(getAddr(objSYF)); // 始发地 hvo.setSubject_orientation(PK_Subject_orientation); // 科目方向25; 1是借(001) hvo.setAccounting_subject(getAccounting_subject(objSYF)); // 会计科目26 if (objSYF[3] == null) { hvo.setDestination("unknow"); } else { hvo.setDestination(objSYF[3].toString()); // 目的地 如:LAGOS } hvo.setYear(objSYF[23].toString()); // 年 hvo.setMonth(objSYF[24].toString()); // 月 hvo.setCustomer(getClient(objSYF)); // 客户 hvo.setSellnumber(objSYF[19].toString()); // 集团业务单号 hvo.setClient(getSupplier(objSYF)); // 供应商 hvo.setVoucher_note(objSYF[5].toString()); // 凭证 hvo.setFinance(getFinance(hvo.getBill_org())); // 财务账簿 hvo.setCurrency(getCurrency(objSYF)); // 币种 hvo.setBilltype_def(PK_DefBilltype_HDYF); // 自定义档案,单据类型 hvo.setSell(insertBP.getSell(objSYF)); // 业务员 return hvo; }
/** * 初始化 辅组织汇兑损益应付单的表头部分 * * @param objF * @return */ private ExchangeAssistSyfHVO InitSyfAssistHVO(Object[] objF, Object[] objSYF) throws BusinessException { ExchangeAssistSyfHVO hvo = new ExchangeAssistSyfHVO(); // 用于关联 汇兑损益应付单表头(即SYF的字段) hvo.setSyf_billno(SYF_Bill_no); hvo.setSyf_sellnum(SYF_Sellnum); hvo.setSyf_product(SYF_pk_product); // objF字段 hvo.setPk_group(pk_group_choice); hvo.setBilltype_def(PK_DefBilltype_FSYF); hvo.setApprovestatus(-1); hvo.setMaketime(new UFDate()); // 制单时间 hvo.setBill_no(objF[1].toString()); // 单据编号 hvo.setOrigin(insertBP.getAddr(objF)); // 始发地 hvo.setDestination(objF[3].toString()); // 目的地 hvo.setVoucher_note(objF[5].toString()); // 凭证摘要 hvo.setSell(insertBP.getSell(objF)); // 业务员 hvo.setCustomer(insertBP.getClient(objF)); // 客户 hvo.setClient(getSupplier(objF)); // 供应商 hvo.setProduct(insertBP.getProduct(objF)); // 获取产品 hvo.setLink(insertBP.getLink(objF)); // 航线 hvo.setClear_type(insertBP.getClear_type(objF)); // 结算方式 hvo.setVoucher_num(objF[13].toString()); // 凭证号 hvo.setCurrency(insertBP.getCurrency(objF)); // 币种 hvo.setRate(new UFDouble(Double.parseDouble(objF[17].toString()))); // 汇率 hvo.setSellnumber(objF[20].toString()); // 业务单号 hvo.setMainsellnumber(objF[21].toString()); // 主业务单号 hvo.setSell_date(SellDate); // 业务日期 hvo.setYear(objF[25].toString()); // 年 hvo.setMonth(objF[26].toString()); // 月 hvo.setAccounting_subject(getAccounting_subjectF(objF)); // 会计科目 // hvo.setSubject_orientation(getSubject_orientationF(objF));//科目方向 hvo.setSubject_orientation(PK_Subject_orientation); // 科目方向 return hvo; }
/** * 直接照搬,不拆分 * * @param objSYF * @return * @throws Exception */ private AggExchangeSyfHVO CopyWithoutSplit(Object[] objSYF) throws Exception { AggExchangeSyfHVO aggvo = new AggExchangeSyfHVO(); ExchangeSyfHVO hvo = new ExchangeSyfHVO(); hvo.setPk_group(pk_group_choice); // 赛拾集团 hvo.setApprovestatus(-1); // 审批状态 -1,自由 // hvo.setBill_type("0001ZZ1000000000NO7Q");// 单据类型 hvo.setMaketime(new UFDate(new Date())); // 制单日期 // 自定义字段 if (objSYF[21] != null) { hvo.setSell_date(new UFDate(objSYF[21].toString())); // 业务日期(存SYF凭证日期) hvo.setSell_date(new UFDate("2015-05-12")); // 测试,以后删掉 } hvo.setPk_org(insertBP.getOrg_NotSplit(objSYF)); // 组织 // 发现问题:pk_org_v 需要设置的值是表ORG_ORGS_V 的 pk_vid 字段值 // hvo.setPk_org_v(costing[0].getOriginorg());// 组织版本 hvo.setBill_org(insertBP.getOrg_NotSplit(objSYF)); // 单据组织 // obj字段 hvo.setBill_no(objSYF[1].toString()); // 单据编号 hvo.setRate(new UFDouble(Double.valueOf(objSYF[16].toString()))); // 汇率 hvo.setOriginal_sum(new UFDouble(origin)); // 原币金额 hvo.setLocal_sum(new UFDouble(local)); // 本币金额 hvo.setClear_type(getClear_type(objSYF)); // 结算方式 hvo.setOrigin(getAddr(objSYF)); // 始发地 hvo.setSubject_orientation(getSubject_orientation(objSYF)); // 科目方向25; 1是借(001) hvo.setAccounting_subject(getAccounting_subject(objSYF)); // 会计科目26 if (objSYF[3] == null) { hvo.setDestination("unknow"); } else { hvo.setDestination(objSYF[3].toString()); // 目的地 如:LAGOS } hvo.setYear(objSYF[23].toString()); // 年 hvo.setMonth(objSYF[24].toString()); // 月 hvo.setCustomer(getClient(objSYF)); // 客户 hvo.setSellnumber(objSYF[19].toString()); // 集团业务单号 hvo.setClient(getSupplier(objSYF)); // 供应商 hvo.setVoucher_note(objSYF[5].toString()); // 凭证 // hvo.setFinance(getFinance(hvo.getBill_org()));// 财务账簿 // costing字段 hvo.setLink(insertBP.getLink_NotSplit(objSYF)); // 航线 hvo.setSell(insertBP.getSell(objSYF)); // 业务员 // hvo.setSell_dpm(insertBP.getSellDept(objSYF).getPk_dept());// 业务员部门 hvo.setProduct(insertBP.getFailProduct(objSYF)); // 产品 hvo.setCurrency(getCurrency(objSYF)); // 币种 // hvo.setBilltype(2);// 单据种类 hvo.setDept(insertBP.getDept_NotSplit(objSYF).getPk_dept()); // 组织部门,3合1 // hvo.setDef8("汇兑损益应付SYF");//拆分类型 hvo.setBilltype_def(PK_DefBilltype_HDYF); // 自定义档案,单据类型 aggvo.setParent(hvo); // 子表数据(2015.4.15)不拆分的单据没有子表 // List<ExchangegalCostBVO> bvolist = new // ArrayList<ExchangegalCostBVO>(); ExchangeSyfBVO[] syfbvos = new ExchangeSyfBVO[1]; ExchangeSyfBVO bvo = new ExchangeSyfBVO(); bvo.setBilltype(3); bvo.setSell_date(new UFDate("2015-05-12")); // 测试,以后删掉 bvo.setBilltype_def(PK_DefBilltype_HDYF); // 不拆分的单据,将表头的 本币、原币、汇率、币种 写在表体,转换模版是取表体的 bvo.setLocal_sum(hvo.getLocal_sum()); bvo.setOriginal_sum(hvo.getOriginal_sum()); bvo.setRate(hvo.getRate()); bvo.setCurrency(hvo.getCurrency()); syfbvos[0] = bvo; // // 表体数据放进 Aggvo aggvo.setChildren(ExchangeSyfBVO.class, syfbvos); // AggExchangegalCostHVO[] bills = new AggExchangegalCostHVO[1]; // bills[0] = aggvo; // AceExchangeGaLInsertBP insertBP = new AceExchangeGaLInsertBP(); // insertBP.insert(bills); return aggvo; }