美文网首页
02.PLM系统访问金蝶云星空(webapi):BOM保存接口

02.PLM系统访问金蝶云星空(webapi):BOM保存接口

作者: Steve_Hu | 来源:发表于2020-06-21 17:18 被阅读0次

返回根目录 PLM系统访问金蝶云星空(ERP)的接口定义及示例

1. 需求描述

PLM系统中的BOM,同步到金蝶云星空(ERP)系统中

2. 接口定义

2.1 请求地址

http://ServerIp/K3Cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc

2.2 请求参数

参数列表 参数含义 备注
formid 业务对象表单Id,字符串类型, 必须,BOM为:ENG_BOM
data 表单数据包,JSON类型 必须

data参数说明:

{
    "Creator": "",//创建者内码(非必录)
    "NeedUpDateFields": [],//修改时需要更新的字段,数组类型,格式:[key1,key2,...] (非必录)注(更新单据体字段得加上单据体key)
    "NeedReturnFields": [],//需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录) 注(返回单据体字段格式:entitykey.key)
    "IsDeleteEntry": "true",//是否删除已存在的分录,布尔类型,默认true(非必录)
    "IsAutoSubmitAndAudit": "false",//是否自动提交与审核,布尔类型,默认false(非必录) 注(启用此参数,保存,提交和审核是在一个事务中)
    "Model": {
        "FID": 0,//bom内码,为0表示新增。如果修改BOM,则需要填写具体内码
        "FCreateOrgId": {
            "FNumber": "100"//创建组织编码
        },
        "FNumber": "A150_V1.0", // BOM版本
        "FUseOrgId": {
            "FNumber": "100"//使用组织编码
        },
        "FName": "A150_V1.0",// BOM简称
        "FMATERIALID": {
            "FNumber": "A150"   //父项物料编码
        },
        "FTreeEntity": [   //子项明细实体
            {
                "FMATERIALIDCHILD": {
                    "FNumber": "A151"     //子项物料编码
                }
                "FNUMERATOR": 1.0,  // 用量:分子
                "FDENOMINATOR": 1.0,//用量:分母
                "FISSkip": false,  //是否跳层
                "FIsMrpRun": true//是否参与MRP运算
            }
        ]
    }
}

2.3 返回值

参数列表 参数含义 备注
ResponseStatus 操作状态

ResponseStatus说明:

{"ResponseStatus":{"ErrorCode":"",
"IsSuccess":false,
"Errors":[{"FieldName":"",
"Message":"","DIndex":0}],
"SuccessEntitys":[{"Id":"","Number":"","DIndex":0}],
"SuccessMessages":[{"FieldName":"","Message":"","DIndex":0}]}

IsSuccess:操作是否成功,
Errors:如果失败,具体失败原因
DIndex:原始数据行号

3. 代码示例

3.1 登录金蝶云星空

            string appId = "应用Id";
            string appSecret = "应用密钥";
            string dbId="帐套Id";
            string useName="用户名";
            HttpClient httpClient = new HttpClient();
            httpClient.Url = "http://10.11.0.37/k3cloud/Kingdee.BOS.WebApi.ServicesStub.AuthService.LoginByAppSecret.common.kdsvc";
     
            List<object> Parameters = new List<object>();
            Parameters.Add(dbId);//帐套Id
            Parameters.Add(useName);//用户名
            Parameters.Add(appId);
            Parameters.Add(appSecret);
            Parameters.Add(2052);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            JObject response=JObject.Parse(httpClient.AsyncRequest());
            var iResult = response["LoginResultType"].Value<int>();
            if (iResult == 1)
            {
                //todo:登录成功,处理业务
            }
           else
           {
              //失败信息
               string message= response["Message"].ToString();
           }

3.2 调用BOM保存接口

HttpClient httpClient = new HttpClient();
 httpClient.Url = "http://10.11.0.37/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc";
 List<object> Parameters = new List<object>();
 //业务对象Id 
 String formid = "ENG_BOM";
 Parameters.Add(formid);
  //Json字串
  string data =@"{
    \"Creator\": \"\",
    \"NeedUpDateFields\": [],
    \"NeedReturnFields\": [],
    \"IsDeleteEntry\": \"true\",
    \"IsAutoSubmitAndAudit\": \"false\",
    \"Model\": {
        \"FID\": 0,
        \"FCreateOrgId\": {
            \"FNumber\": \"100\"
        },
        \"FNumber\": \"A150_V1.0\",
        \"FUseOrgId\": {
            \"FNumber\": \"100\"
        },
        \"FName\": \"A150_V1.0\",
        \"FMATERIALID\": {
            \"FNumber\": \"A150\"
        },
        \"FTreeEntity\": [
            {
                \"FMATERIALIDCHILD\": {
                    \"FNumber\": \"A151\"
                },
                \"FNUMERATOR\": 1.0,
                \"FDENOMINATOR\": 1.0,
                \"FISSkip\": false,
                \"FIsMrpRun\": true
            }
        ]
    }
}";
  Parameters.Add(data);
  httpClient.Content = JsonConvert.SerializeObject(Parameters);
  var result = httpClient.AsyncRequest();

返回根目录 PLM系统访问金蝶云星空(ERP)的接口定义及示例

相关文章

网友评论

      本文标题:02.PLM系统访问金蝶云星空(webapi):BOM保存接口

      本文链接:https://www.haomeiwen.com/subject/dosaxktx.html