文章目录
- 概要
- 技术要点
- 代码实现
- 小结
概要
单据附件上传
技术要点
单据附件上传金蝶是有提供标准的上传接口:
http://[IP]/K3Cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.AttachmentUpLoad.common.kdsvc
参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
FileName | 字符 | 是 | 文件名 |
FormId | 字符 | 是 | 表单id |
IsLast | 布尔 | 是 | 是否最后一次上传 |
InterId | 字符 | 是 | 单据内码 |
Entrykey | 字符 | 否 | 单据体标识,上传单据体附件时候填写所述单据体的标识 |
EntryinterId | 字符 | 否 | 分录内码,如果是单据头附件,要么不填,要么填-1 |
BillNO | 字符 | 是 | 单据编号 |
AliasFileName | 字符 | 否 | 附件别名 |
FileId | 字符 | 否 | 文件id;如果分多次上传,首次上传后必填 |
SendByte | 字符 | 是 | Base64的文件字节流 |
Postman调用如下:
返回参数
参数 | 类型 | 说明 |
---|---|---|
FileId | 字符 | 文件id |
IsSuccess | 布尔 | 是否成功 |
Message | 字符 | 错误提示信息 |
SuccessEntitys.Id | 长整型 | 附件内码 |
代码实现
/// <summary>/// 上传附件/// </summary>/// <param name="FileName">文件名</param>/// <param name="formId">单据内码</param>/// <param name="InterId">单据id</param>/// <param name="BillNO">单据号</param>/// <param name="AliasFileName">别名</param>/// <param name="SendByte">流文件</param>/// <returns></returns>public static string Draft(string FileName, string formId, string InterId, string BillNO, string AliasFileName, string SendByte){try{HttpClient httpClient = new HttpClient();httpClient.Url = string.Concat(cloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.AttachmentUpLoad.common.kdsvc");JObject jObj = new JObject();jObj.Add("FileName", FileName);jObj.Add("FormId", formId);jObj.Add("IsLast", true);jObj.Add("InterId", InterId);jObj.Add("BillNO", BillNO);jObj.Add("AliasFileName", AliasFileName);jObj.Add("SendByte", SendByte);httpClient.Content = JsonConvert.SerializeObject(jObj);return httpClient.Sysncup();}catch (Exception ex){throw ex; }}
小结
以上就是调用金蝶标准接口上传单据附件,至于单据内码怎么找可以留言给我。