委外订单主细表、子个构成需求。具体代码与参数说明。

下面调用的通用方法在: http://www.cnblogs.com/spring_wang/p/3393147.html

作者:王春天 2013-10-31

地址:http://www.cnblogs.com/spring_wang/p/3399331.html

1.具体代码:

'委外订单生成XML
Public Function xml_omorder(ds_data As ADODB.Recordset, as_proc As String) As Boolean
xml_omorder = True
Dim ls_xml As String
Dim ls_sender As String
Dim ls_code As String
Dim ls_date As String
Dim ls_vendorcode As String
Dim ls_deptcode As String
Dim ls_personcode As String
Dim ls_purchase_type_code As String
Dim ls_operation_type_code As String
Dim ls_address As String
Dim ls_recsend_type As String
Dim ls_idiscounttaxtype As String
Dim ls_currency_name As String
Dim ls_currency_rate As String
Dim ls_tax_rate As String
Dim ls_paycondition_code As String
Dim ls_traffic_money As String
Dim ls_bargain As String
Dim ls_remark As String
Dim ls_period As String
Dim ls_maker As String
Dim i As Long
Dim j As Long
Dim ls_data As String
ls_code = "ddd000312" '订单编号
ls_date = "2013-10-14" '订单日期
ls_vendorcode = "" '供应商编号
ls_deptcode = "" '"101" '部门编号
ls_personcode = "koutao" '业务员
ls_purchase_type_code = "" '采购类型编码
ls_operation_type_code = "委外加工" '业务类型
ls_address = "" '到货地址
ls_recsend_type = "" '运输方式
' ls_idiscounttaxtype = "0" '扣税类别 (0应税外加,1应税内含)
ls_currency_name = "美元" '外币名称
ls_currency_rate = "" '汇率
ls_tax_rate = "" '税率
ls_paycondition_code = "" '付款条件
ls_traffic_money = "" '运费
ls_bargain = "" '定金
ls_remark = "" '备注
ls_period = "" '采购计划期间
ls_maker = "肖雨" '制单人 '增加文件头相关信息
ls_xml = "<?xml version=""1.0"" encoding=""UTF-8""?>" + vbCrLf ls_xml = ls_xml & "<ufinterface sender=""" & u8_xtm & """ receiver=""u8"" roottag=""omorder"" docid="""" proc=""" & as_proc & """ renewproofno = ""Y"" codeexchanged=""N"" exportneedexch=""N"" display="""" family="""" timestamp="""">" + vbCrLf '增加文件中数据项信息 header
ls_xml = ls_xml & "<omorder>" + vbCrLf
ls_xml = ls_xml & "<header>" + vbCrLf
ls_xml = ls_xml & "<code>" & ls_code & "</code>" + vbCrLf '订单编号
ls_xml = ls_xml & "<date>" & ls_date & "</date>" + vbCrLf '订单日期
ls_xml = ls_xml & "<vendorcode>" & ls_vendorcode & "</vendorcode>" + vbCrLf '供应商编号
ls_xml = ls_xml & "<deptcode>" & ls_deptcode & "</deptcode>" + vbCrLf '部门编号
ls_xml = ls_xml & "<personcode>" & ls_personcode & "</personcode>" + vbCrLf '业务员
ls_xml = ls_xml & "<purchase_type_code>" & ls_purchase_type_code & "</purchase_type_code>" + vbCrLf '采购类型编码

ls_xml = ls_xml & "<ordertype>0</ordertype>" + vbCrLf
ls_xml = ls_xml & "<operation_type_code>" & ls_operation_type_code & "</operation_type_code>" + vbCrLf '业务类型
ls_xml = ls_xml & "<address>" & ls_address & "</address>" + vbCrLf '到货地址
ls_xml = ls_xml & "<recsend_type>" & ls_recsend_type & "</recsend_type>" + vbCrLf '运输方式
ls_xml = ls_xml & "<currency_name>" & ls_currency_name & "</currency_name>" + vbCrLf '外币名称
ls_xml = ls_xml & "<currency_rate>" & ls_currency_rate & "</currency_rate>" + vbCrLf '汇率
ls_xml = ls_xml & "<tax_rate>" & ls_tax_rate & "</tax_rate>" + vbCrLf '税率
ls_xml = ls_xml & "<paycondition_code>" & ls_paycondition_code & "</paycondition_code>" + vbCrLf '付款条件
ls_xml = ls_xml & "<traffic_money>" & ls_traffic_money & "</traffic_money>" + vbCrLf '运费
ls_xml = ls_xml & "<bargain>" & ls_bargain & "</bargain>" + vbCrLf '定金
ls_xml = ls_xml & "<remark>" & ls_remark & "</remark>" + vbCrLf '备注
ls_xml = ls_xml & "<maker>" & ls_maker & "</maker>" + vbCrLf '制单人 ls_xml = ls_xml & "</header>" + vbCrLf
'body
ls_xml = ls_xml & "<body>" + vbCrLf
For i = To 'ds_data.RecordCount
ls_xml = ls_xml & "<entry>" + vbCrLf
ls_data = "A0001"
ls_xml = ls_xml & "<inventorycode>" & ls_data & "</inventorycode>" + vbCrLf '母件存货编码
ls_data = ""
ls_xml = ls_xml & "<checkflag>" & ls_data & "</checkflag>" + vbCrLf '是否检验
ls_data = ""
ls_xml = ls_xml & "<unitcode>" & ls_data & "</unitcode>" + vbCrLf '物料单位编码
ls_data = ""
ls_xml = ls_xml & "<quantity>" & ls_data & "</quantity>" + vbCrLf '主计量数量
ls_data = ""
ls_xml = ls_xml & "<num>" & ls_data & "</num>" + vbCrLf '辅计量数量
ls_data = ""
ls_xml = ls_xml & "<quotedprice>" & ls_data & "</quotedprice>" + vbCrLf '报价
ls_data = ""
ls_xml = ls_xml & "<price>" & ls_data & "</price>" + vbCrLf '单价(原币,无税)
ls_data = ""
ls_xml = ls_xml & "<taxprice>" & ls_data & "</taxprice>" + vbCrLf '含税单价(原币,无税)
ls_data = ""
ls_xml = ls_xml & "<money>" & ls_data & "</money>" + vbCrLf '金额(原币,无税)
ls_data = ""
ls_xml = ls_xml & "<tax>" & ls_data & "</tax>" + vbCrLf '税额(原币)
ls_data = ""
ls_xml = ls_xml & "<sum>" & ls_data & "</sum>" + vbCrLf '价税合计(原币)
ls_data = "" '"1000"
ls_xml = ls_xml & "<natprice>" & ls_data & "</natprice>" + vbCrLf '单价(本币,无税)
ls_data = "" '"10000"
ls_xml = ls_xml & "<natmoney>" & ls_data & "</natmoney>" + vbCrLf '金额(本币,无税)
ls_data = "" '"1700"
ls_xml = ls_xml & "<nattax>" & ls_data & "</nattax>" + vbCrLf '税额(本币)
ls_data = "" '"11700"
ls_xml = ls_xml & "<natsum>" & ls_data & "</natsum>" + vbCrLf '价税合计(本币)
ls_data = ""
ls_xml = ls_xml & "<natdiscount>" & ls_data & "</natdiscount>" + vbCrLf '折扣额(本币)
ls_data = ""
ls_xml = ls_xml & "<taxrate>" & ls_data & "</taxrate>" + vbCrLf '税率
ls_data = ""
ls_xml = ls_xml & "<item_class>" & ls_data & "</item_class>" + vbCrLf '项目大类
ls_data = ""
ls_xml = ls_xml & "<item_code>" & ls_data & "</item_code>" + vbCrLf '项目
ls_data = ""
ls_xml = ls_xml & "<item_name>" & ls_data & "</item_name>" + vbCrLf '项目名
ls_data = "2013-11-24"
ls_xml = ls_xml & "<arrivedate>" & ls_data & "</arrivedate>" + vbCrLf '计划到货日期
ls_data = "2013-11-24"
ls_xml = ls_xml & "<startdate>" & ls_data & "</startdate>" + vbCrLf '计划下达日期
ls_data = ""
ls_xml = ls_xml & "<bomid>" & ls_data & "</bomid>" + vbCrLf 'BOMID
ls_data = ""
ls_xml = ls_xml & "<fparentscrp>" & ls_data & "</fparentscrp>" + vbCrLf '母件损耗率
ls_data = ""
ls_xml = ls_xml & "<btaxcost>" & ls_data & "</btaxcost>" + vbCrLf '价格标准(0无税,1含税) ls_xml = ls_xml & "<details ivouchrowno = """ & Trim(Str(i)) & """>" + vbCrLf
For j = To
ls_xml = ls_xml & "<entrys>" + vbCrLf
ls_data = "Z00" & Trim(Str(j))
ls_xml = ls_xml & "<inventorycode>" & ls_data & "</inventorycode>" + vbCrLf '子件存货编码
ls_data = Trim(Str(j * ))
ls_xml = ls_xml & "<quantity>" & ls_data & "</quantity>" + vbCrLf '数量
ls_data = "2013-10-20"
ls_xml = ls_xml & "<requireddate>" & ls_data & "</requireddate>" + vbCrLf '需求日期
ls_data = ""
ls_xml = ls_xml & "<baseqtyn>" & ls_data & "</baseqtyn>" + vbCrLf '基本用量(分子)
ls_data = ""
ls_xml = ls_xml & "<baseqtyd>" & ls_data & "</baseqtyd>" + vbCrLf '基本用量(分母)
ls_data = ""
ls_xml = ls_xml & "<basenumn>" & ls_data & "</basenumn>" + vbCrLf '辅助基本用量
ls_data = ""
ls_xml = ls_xml & "<unitnum>" & ls_data & "</unitnum>" + vbCrLf '辅助使用数量
ls_data = ""
ls_xml = ls_xml & "<num>" & ls_data & "</num>" + vbCrLf '应领辅助数量
ls_data = ""
ls_xml = ls_xml & "<compscrp>" & ls_data & "</compscrp>" + vbCrLf '子件耗损率
ls_data = ""
ls_xml = ls_xml & "<fvgty>" & ls_data & "</fvgty>" + vbCrLf 'F/V(0:否/1:是)
ls_data = ""
ls_xml = ls_xml & "<wiptype>" & ls_data & "</wiptype>" + vbCrLf '供应类型(1:倒冲/3:领用)
ls_data = ""
ls_xml = ls_xml & "<opcomponentid>" & ls_data & "</opcomponentid>" + vbCrLf '子件BOM子表ID
ls_data = ""
ls_xml = ls_xml & "<sendtype>" & ls_data & "</sendtype>" + vbCrLf '领料方式
ls_data = Trim(Str(i))
ls_xml = ls_xml & "<usequantity>" & ls_data & "</usequantity>" + vbCrLf
ls_xml = ls_xml & "</entrys>" + vbCrLf
Next j
ls_xml = ls_xml & "</details>" + vbCrLf
ls_xml = ls_xml & "</entry>" + vbCrLf
Next i
ls_xml = ls_xml & "</body>" + vbCrLf '增加文件尾相关信息
ls_xml = ls_xml & "</omorder>" + vbCrLf
ls_xml = ls_xml & "</ufinterface>" + vbCrLf Dim xml_document As New DOMDocument
xml_document.loadXML (ls_xml)
fn2 = App.Path & "\u8_temp.xml"
xml_document.save (fn2) Dim ls_temp As String '接收返回消息,如果成功,返回U8中委外订单编号,如果失败,返回错误信息
If SendToEAI(ls_xml, ls_temp) Then '成功
MsgBox "上传成功" & ls_temp
Else '失败
MsgBox ls_temp
xml_omorder = False
End If
End Function

2.参数说明

主表:      
项目 是否必传 对应业务系统字段 描述
订单编号   将在U8中自动生成一个新编号,但注意:不能获取到U8新生成的编号
订单日期   YYYY-MM-DD
供应商编号    
部门编号    
业务员编号    
采购类型编码    
业务类型   委外加工
到货地址    
运输方式    
外币名称   人民币、美元、日元
汇率    
税率   如:17
付款条件    
运费    
定金    
备注    
采购计划期间    
制单人名称   如果需要上传,传入名称
       
母件信息:      
项目 是否必传 对应业务系统字段 描述
母件编码    
是否检验   1   or 0,在U8直接做时默认为0
物料单位编码    
主计量数量    
辅计量数量   如果是浮动转换率不传,如果是固定转换率必传
报价    
单价(原币,无税)   不传在话,在U8的委外订单中为空
含税单价(原币,无税)   不传在话,在U8的委外订单中为空
金额(原币,无税)   不传在话,在U8的委外订单中为空
税额(原币)   不传在话,在U8的委外订单中为空
价税合计(原币)   不传在话,在U8的委外订单中为空
单价(本币,无税)   不传在话,在U8的委外订单中为空
金额(本币,无税)   不传在话,在U8的委外订单中为空
税额(本币)   不传在话,在U8的委外订单中为空
价税合计(本币)   不传在话,在U8的委外订单中为空
折扣额(本币)   不传在话,在U8的委外订单中为空
税率   如17
项目大类    
项目    
项目名    
到货日期   YYYY-MM-DD
计划下达日期   YYYY-MM-DD
BOMID   母件委外BOMID
母件损耗率    
价格标准   0无税,1含税,不知道和后续有什么关系
       
       
       
       
子件信息:      
项目 是否必传 对应业务系统字段 描述
子件编码    
数量    
需求日期   注意:以下字段都可以不传,但不传,在U8中数据为空,不知道后续是否有影响
基本用量(分子)    
基本用量(分母)    
辅助基本用量    
辅助使用数量    
应领辅助数量    
子件耗损率    
F/V   (0:否/1:是),默认0
供应类型   (1:倒冲/3:领用),默认3
子件BOM子表ID    
领料方式    
       

U811.1接口EAI系列之四--委外订单生成--VB语言的更多相关文章

  1. U811.1接口EAI系列之二-BOM构成-委外BOM构成--VB语言

    1.下面代码实现了VB6.0中调用U8EAI-BOM构成服务,以下代码均为项目实际代码,可直接复制应用. 2.在u811.1版本中委外BOM构成与正常的BOM构成是同系列表,不单独存储. 3.是以存货 ...

  2. U811.1接口EAI系列之六--物料上传--VB语言

    1. 业务系统同步U811.1存货档案通用方法. 2.具体代码处理如下: 作者:王春天 2013-11-06 地址:http://www.cnblogs.com/spring_wang/p/34098 ...

  3. U811.1接口EAI系列之一-通用访问EAI方法--统一调用EAI公共方法--VB语言

    1.现在做的项目是关于业务系统与U811.1的接口项目. 2.那么就需要调整通过EAI调用生成U8业务单据. 3.下面就一个通用的向U8-EAI传递XML的通用方法 4.肯定有人会问怎么还用VB调用呢 ...

  4. U811.1接口EAI系列之二--生成销售出库单调用U8的EAI通用处理方法--PowerBuilder语言

    1.销售系统销售出库,更新U811.1材料库存的EAI的XML生成. 2.主要根据U8配置会生成出库单和同时是否更新库存量,还是更新现存量等等. 3.具体参考代码如下: 作者:王春天 2013-11- ...

  5. U811.1接口EAI系列之一--通用把XML传送给EAI处理方法--PowerBuilder语言

    1.前面配置参考:http://www.cnblogs.com/spring_wang/p/3393147.html 2.pb通用调EAI方法代码如下: //===================== ...

  6. U811.1接口EAI系列之五--材料出库--VB语言

    主要业务有:09其他出库单 11:材料出库单 32:销售出库单 主要业务代码: '材料出库生成XML Public Function xml_storeout(ds_head As MSHFlexGr ...

  7. U811.1接口EAI系列之三--采购订单生成--VB语言

    采购订单业务,下面是具体代码与参数说明: 下面调用的通用方法在: http://www.cnblogs.com/spring_wang/p/3393147.html 作者:王春天 2013-10-31 ...

  8. 【MM系列】SAP MM模块-委外采购订单 把Warning转换成Error信息提示

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-委外采购订单 把W ...

  9. 餐厅随评系列之四:Umu日本料理(米其林二星)

    文章目录 在过去的几个月,工作和生活都极其忙碌,因此博客短暂停更了一阵子.慢慢积累下了很多素材,从近期开始恢复博客更新,不过很多内容估计得靠回忆了. 索性采取"倒叙"的方法,先从最 ...

随机推荐

  1. vsphere性能

    vNUMA介绍 http://virtualbarker.com/ vSphere VMware Performance With every release of vSphere the overh ...

  2. Nginx反向代理转发Host设置

    默认情况下反向代理是不会转发请求中的Host头部,如果需要转发,则需要配置红色字体表示的选项参数. location /t02 { proxy_set_header Host $host; proxy ...

  3. vue循环中的v-show

    v-show如果使用循环对象的属性来时控制, 这个属性必须是加载时就存在的 <div class="list-group col-sm-12" v-for="(is ...

  4. java.lang.ClassNotFoundException: SparkPi$$anonfun$1

    出现这个错误可能有两种情况,Jar文件没有传上去,或者Build Path里面包含的Jar文件和Spark的运行环境有冲突. 对于第一种情况,需要在SparkConf语句后面加上Jar文件的路径: v ...

  5. python从sqlite中提取数据到excel

    import sqlite3 as sqlite from xlwt import * import sys def sqlite_get_col_names(cur, select_sql): cu ...

  6. 12 个非常实用的 jQuery 代码片段

    jQuery是一个非常流行而且实用的JavaScript前端框架,本文并不是介绍jQuery的特效动画,而是分享一些平时积累的12个jQuery实用代码片段,希望对你有所帮助. 导航菜单背景切换效果 ...

  7. mysql加密函数

    md5 password() //案例 mysql> select md5('xiaodeng'); +----------------------------------+ | md5('xi ...

  8. python之模块filecmp(文件/目录比较)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块filecmp(文件/目录比较) #用于比较文件及文件夹的内容.他是轻量级的工具.可以做一 ...

  9. dom4j 输出UTF-8 XML时中文乱码

    使用DOM4J的XMLWriter输出UTF-8编码的XML文件时,出现乱码 public static void writToXml(Document document) throws IOExce ...

  10. SSM框架-使用MyBatis Generator自动创建代码

    参考:http://blog.csdn.net/zhshulin/article/details/23912615 SSM搭建的时候用到MyBatis的代码自动生成的功能,由于MyBatis属于一种半 ...