Browse Source

U9仓库同步

master
陆晔 2 years ago
parent
commit
a39b1ad5f3
  1. 36
      ICSSoft.FromU9ERP/ICSSoft.FromERP/ICSWarehouse.cs

36
ICSSoft.FromU9ERP/ICSSoft.FromERP/ICSWarehouse.cs

@ -48,34 +48,36 @@ namespace ICSSoft.FromERP
string Class = this.GetType().Name + WorkPoint; string Class = this.GetType().Name + WorkPoint;
erpName = string.Format(erpName, WorkPoint); erpName = string.Format(erpName, WorkPoint);
#region SQL #region SQL
string sql = @"select NEWID() AS Serial ,
cWhCode AS StorageCode ,
cWhName AS StorageName ,
bWhAsset As Asset,
bProxyWh AS Proxy,
bInCost AS InCost,
dModifyDate AS MTIME,
'{0}' as WorkPoint
string sql = @"select A.ID AS Serial ,
A.Code AS StorageCode ,
B.Name AS StorageName ,
CAST(A.IsLot AS VARCHAR) AS BatchEnable,
0 As Asset,
0 AS Proxy,
0 AS InCost,
ISNULL(CreatedOn,ModifiedOn) AS MTIME,
C.Code AS WorkPoint
INTO #TempWarehouse INTO #TempWarehouse
FROM {1}.dbo.Warehouse
WHERE dWhEndDate IS NULL AND dModifyDate>=@LastTime
ORDER BY cWhCode
FROM {1}.dbo.[CBO_Wh] A
LEFT JOIN {1}.dbo.[CBO_Wh_Trl] AS B ON B.ID = A.ID AND B.SysMLFlag = 'zh-CN'
LEFT JOIN {1}.dbo.Base_Organization C ON A.Org=C.ID
WHERE C.Code='{0}' AND ISNULL(A.CreatedOn,A.ModifiedOn)>=@LastTime
ORDER BY A.Code
IF NOT EXISTS(SELECT * FROM #TempWarehouse) IF NOT EXISTS(SELECT * FROM #TempWarehouse)
RETURN"; RETURN";
sql = ICSHelper.Time(Namespace, Class, WorkPoint, sql, "#TempWarehouse"); sql = ICSHelper.Time(Namespace, Class, WorkPoint, sql, "#TempWarehouse");
sql += @"--删除数据 sql += @"--删除数据
-- DELETE ICSWarehouse WHERE WarehouseCode NOT IN (SELECT cWhCode FROM {1}.dbo.Warehouse)
-- DELETE ICSWarehouse WHERE WarehouseCode NOT IN (SELECT cWhCode FROM {1}.dbo.CBO_Wh)
SELECT a.WarehouseCode INTO #tableICSWarehouse SELECT a.WarehouseCode INTO #tableICSWarehouse
FROM ICSWarehouse a With(NoLock) FROM ICSWarehouse a With(NoLock)
LEFT JOIN {1}.dbo.[Warehouse] b With(NoLock) ON a.WarehouseCode=b.cWhCode
WHERE a.WorkPoint='{0}' and b.cWhCode IS NULL
LEFT JOIN {1}.dbo.[CBO_Wh] b With(NoLock) ON a.ID=b.ID
WHERE a.WorkPoint='{0}' and b.ID IS NULL
DELETE ICSWarehouse DELETE ICSWarehouse
WHERE WorkPoint='{0}' and WarehouseCode IN ( SELECT WarehouseCode from #tableICSWarehouse)
";
WHERE WorkPoint='{0}' and WarehouseCode IN ( SELECT WarehouseCode from #tableICSWarehouse)";
Dictionary<string, string> values = new Dictionary<string, string>(); Dictionary<string, string> values = new Dictionary<string, string>();
values.Add("WarehouseName", "a.StorageName"); values.Add("WarehouseName", "a.StorageName");
values.Add("MTIME", "a.MTIME"); values.Add("MTIME", "a.MTIME");
@ -87,7 +89,7 @@ LEFT JOIN {1}.dbo.[Warehouse] b With(NoLock) ON a.WarehouseCode=b.cWhCode
values.Add("WarehouseCode", "a.StorageCode"); values.Add("WarehouseCode", "a.StorageCode");
values.Add("Enable", "1"); values.Add("Enable", "1");
values.Add("BatchEnable", "0");
values.Add("BatchEnable", "a.BatchEnable");
values.Add("ID", "a.Serial"); values.Add("ID", "a.Serial");
values.Add("Asset", "a.Asset"); values.Add("Asset", "a.Asset");
values.Add("Proxy", "a.Proxy"); values.Add("Proxy", "a.Proxy");

Loading…
Cancel
Save