| @ -0,0 +1,71 @@ | |||
| from BWP.B3ExportBase.BO import PayU8 | |||
| from BWP.B3ExportBase.BO import PayU8BodyEntry | |||
| class BLMethodEvents(BLMethodEventsBase): | |||
| def before(self): | |||
| #0 读取部分字段,1 读取单据所有字段,包括明细 | |||
| self.proxy.LoadFullDom = 0 | |||
| #当设置 0时,指定需要读取的字段 | |||
| self.proxy.MinDmoProperties.Add("Date");#日期--付款日期 | |||
| self.proxy.MinDmoProperties.Add("Supplier_Name");#供货单位--供应商 | |||
| self.proxy.MinDmoProperties.Add("Supplier_Code");#供货单位--供应商编号 | |||
| self.proxy.MinDmoProperties.Add("Employee_ID");#操作员--经办人 | |||
| self.proxy.MinDmoProperties.Add("Employee_Name");#操作员--经办人 | |||
| self.proxy.MinDmoProperties.Add("Remark");#备注--摘要 | |||
| self.proxy.MinDetailProperties.Add("Pay_ID");#付款明细ID | |||
| self.proxy.MinDetailProperties.Add("StatPay_ID");#付款明细结算单ID | |||
| self.proxy.MinDetailProperties.Add("Money");#金额--本次付款金额 | |||
| def execute(self): | |||
| id = 0; | |||
| for dmo in dmos: | |||
| invoices.Lastquerydate = str(dmo.Date); | |||
| invoices.Dynamicdate = self.proxy.GetDateTime(dmo.Date,"yyyy-MM-dd"); | |||
| invoices.Timestamp = str(dmo.Date); | |||
| invoices.Bignoreextenduserdefines = "y"; | |||
| invoices.Maxdataitems = "20000"; | |||
| invoices.Paginate = "0"; | |||
| #self.emptyError(dmo.SaleKind_Name,"NO."+str(dmo.ID)+"销售类型为空") | |||
| id = id + 1; | |||
| inv = PayU8(); | |||
| invoices.Bills.Add(inv); | |||
| inv.B2BillIDs.Add(dmo.ID); | |||
| #inv.Head.Id = id.ToString("00000000000000"); | |||
| inv.Head.Vouchtype = "49"; | |||
| inv.Head.Vouchcode = id.ToString("00000000000000"); | |||
| inv.Head.Vouchdate = self.proxy.GetDateTime(dmo.Date,"yyyy-MM-dd"); | |||
| inv.Head.Period = "12"; | |||
| #inv.Head.Customercode = "03017"; | |||
| inv.Head.Customercode = dmo.Supplier_Code;#供应商编号 | |||
| inv.Head.Balancecode = "2"; | |||
| inv.Head.Digest = dmo.Remark; | |||
| inv.Head.Foreigncurrency = "人民币"; | |||
| inv.Head.Currencyrate = "1";#汇率 | |||
| moneySum = 0; | |||
| for detail in dmo.Details: | |||
| moneySum += detail.Money; | |||
| inv.Head.Amount = str(moneySum); | |||
| inv.Head.Originalamount = str(moneySum); | |||
| inv.Head.Operator = dmo.Employee_Name;#操作员 | |||
| inv.Head.Balanceitemcode = "1002001002";#结算科目 | |||
| inv.Head.Flag = "AP"; | |||
| inv.Head.Iamount_s = "0"; | |||
| inv.Head.Startflag = "0"; | |||
| #self.error(str(dmo.Details.Count)); | |||
| for detail in dmo.Details: | |||
| entry = PayU8BodyEntry(); | |||
| inv.Body.AddEntry(entry); | |||
| entry.Mainid="1000013997"; | |||
| entry.Type="0"; | |||
| #entry.Customercode = "03017"; | |||
| entry.Customercode = dmo.Supplier_Code;#供应商编号 | |||
| entry.Originalamount = str(detail.Money); | |||
| entry.Amount = str(detail.Money); | |||
| entry.Itemcode = "2202100";#应付材料款(新)2202100 | |||
| entry.Iamt_s = "0"; | |||
| entry.Iramt_s = "0"; | |||