72.1、WebApi,实战例子,创建中间库原创
36人赞赏了该文章
9,412次浏览
编辑于2021年01月14日 12:28:00
摘要由AI智能服务提供
本文描述了数据同步的业务场景,其中涉及将数据从第三方系统传递到中间库,并定时读取这些数据通过SQL拼接成Json以生成销售订单和发货通知单。销售订单和发货通知单之间存在关联,且一个销售订单可关联多个发货通知单。文中还详述了中间库的设计,包括销售订单主数据、明细数据以及日志表的创建过程,并提供了向中间库插入测试数据的示例SQL语句。此外,还提供了相关的视频和总目录链接以便进一步了解。
业务场景:
数据传递到中间库,然后我们定时读取中间库数据,通过sql语句拼接出Json,再生成销售订单和发货通知单, 第三方系统生成销售订单到星空后,通知星空做发货通知单,销售订单和发货通知单之间有关联关系。
需求:
1、销售订单,发货通知单同步到中间库定时读取。 2、一个销售订单可以关联多个发货通知单。(注:每行单据体只能生成一次发货通知单) 3、记录日志。
开发用到:
1、定时执行任务插件。 2、调用K3cloud WebApi接口。
1、创建中间库
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[T_HH_SAL_ORDER]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[T_HH_SAL_ORDER] /* 销售订单主数据信息 */ go CREATE TABLE [dbo].[T_HH_SAL_ORDER] ( F_IDint Identity(1,1) PRIMARY KEY,--唯一标示 F_OrgNonvarchar(50) Not null,--销售组织编码 F_OrgNamenvarchar(100) Not null,--销售组织名称 F_BillNonvarchar(100) Not null,--三方订单编号 F_DateDate Not null,--订单创建日期 F_CustNonvarchar(100) Not null,--客户编码 F_CustNamenvarchar(100) Not null,--客户名称 F_SalesmanNonvarchar(100) Not null,--销售员编码 F_SalesmanNamenvarchar(100) Not null,--销售员名称 F_DepNonvarchar(100) Not null,--销售员部门编码 F_DepNamenvarchar(100) Not null,--销售员部门名称 F_ERPReadvarchar(2) Not null,--ERP订单是否读取(N未读取,Y。读取) ) go if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[T_HH_SAL_ORDERENTRY]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[T_HH_SAL_ORDERENTRY] /* 销售订单明细数据信息 */ go CREATE TABLE [dbo].[T_HH_SAL_ORDERENTRY] ( F_IDint Identity(1,1) PRIMARY KEY,--唯一标示 F_SalOrderIdint Not null,--外键 F_MaterialNonvarchar(100) Not null,--物料编码 F_MaterialNamenvarchar(100) Not null,--物料名称 F_Qtydecimal(18, 2) Not null,--订单数量 F_TaxPricedecimal(18, 2) ,--含税单价 F_TaxRate decimal(18, 2),--税率 F_OrderFIDint,--ERP读取后返回订单内码 F_OrderEntryIdint,--ERP读取后返回订单行内码 F_NoticeFIDint,--ERP读取后返回发货通知单内码 F_NoticeEntryIdint,--ERP读取后返回发货通知单行内码 F_LogisticsTypeint--物流信息状态默认是null,0三方通知金蝶ERP发货,1.发完成 ) go if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[T_HH_JGtoERPInfo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[T_HH_JGtoERPInfo] /* 日志表中间库 */ go CREATE TABLE [dbo].[T_HH_JGtoERPInfo] ( F_IDint Identity(1,1) PRIMARY KEY,--唯一标示 F_OrderFID int,--id F_BillTypenvarchar(50),--单据类型(如:客户,销售订单) F_BillNonvarchar(100),--订单编号 F_DatetimeDatetime,--同步时间 F_isSuccessint,--0成功,1--失败 F_Makenvarchar(max),--描述 F_Jsonnvarchar(max)--json ) go
2、插入中间测试数据
insert into [T_HH_SAL_ORDER](F_OrgNo,F_OrgName,F_BillNo,F_Date,F_CustNo,F_CustName, F_SalesmanNo,F_SalesmanName,F_DepNo,F_DepName,F_ERPRead) values('100','s','TEST00001','2020-07-19','001','上海A客户','1001','1001', 'BM000001','车间','N')
insert into [dbo].[T_HH_SAL_ORDERENTRY] (F_SalOrderId,F_MaterialNo,F_MaterialName,F_Qty,F_TaxPrice,F_TaxRate, F_OrderFID,F_OrderEntryId,F_NoticeFID,F_NoticeEntryId,F_LogisticsType) values(1,'001','001',10,25,16,null,null,null,null,null)
select * from T_HH_SAL_ORDER select * from T_HH_SAL_ORDERENTRY select * from T_HH_JGtoERPInfo
视频链接
链接:https://pan.baidu.com/s/1xP1pBhiIeJyw8QfmIK-0lw
提取码:kiss
总目录链接
创建中间库.zip(1.26KB)
赞 36
36人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读