diff --git a/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.dbml b/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.dbml
index 9b8636a..6334ca2 100644
--- a/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.dbml
+++ b/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.dbml
@@ -102,6 +102,7 @@
+
diff --git a/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.designer.cs b/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.designer.cs
index 35dc411..427bc1d 100644
--- a/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.designer.cs
+++ b/ICSSoft.FromERP/ICSSoft.Frame.Data.Entity/Fram.designer.cs
@@ -1638,6 +1638,8 @@ namespace ICSSoft.Frame.Data.Entity
private string _IsSerialNumber;
+ private string _SAPSequence;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -1726,6 +1728,8 @@ namespace ICSSoft.Frame.Data.Entity
partial void OnStockIndicatorChanged();
partial void OnIsSerialNumberChanging(string value);
partial void OnIsSerialNumberChanged();
+ partial void OnSAPSequenceChanging(string value);
+ partial void OnSAPSequenceChanged();
#endregion
public ICSMOApply()
@@ -2573,6 +2577,26 @@ namespace ICSSoft.Frame.Data.Entity
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SAPSequence", DbType="VarChar(50)")]
+ public string SAPSequence
+ {
+ get
+ {
+ return this._SAPSequence;
+ }
+ set
+ {
+ if ((this._SAPSequence != value))
+ {
+ this.OnSAPSequenceChanging(value);
+ this.SendPropertyChanging();
+ this._SAPSequence = value;
+ this.SendPropertyChanged("SAPSequence");
+ this.OnSAPSequenceChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -2956,6 +2980,8 @@ namespace ICSSoft.Frame.Data.Entity
private string _EATTRIBUTE;
+ private string _SAPSequence;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -2990,6 +3016,8 @@ namespace ICSSoft.Frame.Data.Entity
partial void OnWorkPointChanged();
partial void OnEATTRIBUTEChanging(string value);
partial void OnEATTRIBUTEChanged();
+ partial void OnSAPSequenceChanging(string value);
+ partial void OnSAPSequenceChanged();
#endregion
public ICSMOApplyNegDetail()
@@ -3297,6 +3325,26 @@ namespace ICSSoft.Frame.Data.Entity
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SAPSequence", DbType="VarChar(50)")]
+ public string SAPSequence
+ {
+ get
+ {
+ return this._SAPSequence;
+ }
+ set
+ {
+ if ((this._SAPSequence != value))
+ {
+ this.OnSAPSequenceChanging(value);
+ this.SendPropertyChanging();
+ this._SAPSequence = value;
+ this.SendPropertyChanged("SAPSequence");
+ this.OnSAPSequenceChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -3400,6 +3448,8 @@ namespace ICSSoft.Frame.Data.Entity
private string _IsSerialNumber;
+ private string _SAPSequence;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -3480,6 +3530,8 @@ namespace ICSSoft.Frame.Data.Entity
partial void OnRemark2Changed();
partial void OnIsSerialNumberChanging(string value);
partial void OnIsSerialNumberChanged();
+ partial void OnSAPSequenceChanging(string value);
+ partial void OnSAPSequenceChanged();
#endregion
public ICSTransfer()
@@ -4247,6 +4299,26 @@ namespace ICSSoft.Frame.Data.Entity
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SAPSequence", DbType="VarChar(50)")]
+ public string SAPSequence
+ {
+ get
+ {
+ return this._SAPSequence;
+ }
+ set
+ {
+ if ((this._SAPSequence != value))
+ {
+ this.OnSAPSequenceChanging(value);
+ this.SendPropertyChanging();
+ this._SAPSequence = value;
+ this.SendPropertyChanged("SAPSequence");
+ this.OnSAPSequenceChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -4322,6 +4394,8 @@ namespace ICSSoft.Frame.Data.Entity
private string _EATTRIBUTE1;
+ private string _SAPSequence;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -4374,6 +4448,8 @@ namespace ICSSoft.Frame.Data.Entity
partial void OnWorkPointChanged();
partial void OnEATTRIBUTE1Changing(string value);
partial void OnEATTRIBUTE1Changed();
+ partial void OnSAPSequenceChanging(string value);
+ partial void OnSAPSequenceChanged();
#endregion
public ICSMTDOC()
@@ -4861,6 +4937,26 @@ namespace ICSSoft.Frame.Data.Entity
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SAPSequence", DbType="VarChar(50)")]
+ public string SAPSequence
+ {
+ get
+ {
+ return this._SAPSequence;
+ }
+ set
+ {
+ if ((this._SAPSequence != value))
+ {
+ this.OnSAPSequenceChanging(value);
+ this.SendPropertyChanging();
+ this._SAPSequence = value;
+ this.SendPropertyChanged("SAPSequence");
+ this.OnSAPSequenceChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -4952,6 +5048,8 @@ namespace ICSSoft.Frame.Data.Entity
private string _IsSerialNumber;
+ private string _SAPSequence;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -5020,6 +5118,8 @@ namespace ICSSoft.Frame.Data.Entity
partial void OnRemarksTermChanged();
partial void OnIsSerialNumberChanging(string value);
partial void OnIsSerialNumberChanged();
+ partial void OnSAPSequenceChanging(string value);
+ partial void OnSAPSequenceChanged();
#endregion
public ICSManufactureReceive()
@@ -5667,6 +5767,26 @@ namespace ICSSoft.Frame.Data.Entity
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SAPSequence", DbType="VarChar(50)")]
+ public string SAPSequence
+ {
+ get
+ {
+ return this._SAPSequence;
+ }
+ set
+ {
+ if ((this._SAPSequence != value))
+ {
+ this.OnSAPSequenceChanging(value);
+ this.SendPropertyChanging();
+ this._SAPSequence = value;
+ this.SendPropertyChanged("SAPSequence");
+ this.OnSAPSequenceChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -9068,6 +9188,8 @@ namespace ICSSoft.Frame.Data.Entity
private string _IsSerialNumber;
+ private string _SAPSequence;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -9132,6 +9254,8 @@ namespace ICSSoft.Frame.Data.Entity
partial void OnStockIndicatorChanged();
partial void OnIsSerialNumberChanging(string value);
partial void OnIsSerialNumberChanged();
+ partial void OnSAPSequenceChanging(string value);
+ partial void OnSAPSequenceChanged();
#endregion
public ICSOtherOut()
@@ -9739,6 +9863,26 @@ namespace ICSSoft.Frame.Data.Entity
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SAPSequence", DbType="VarChar(50)")]
+ public string SAPSequence
+ {
+ get
+ {
+ return this._SAPSequence;
+ }
+ set
+ {
+ if ((this._SAPSequence != value))
+ {
+ this.OnSAPSequenceChanging(value);
+ this.SendPropertyChanging();
+ this._SAPSequence = value;
+ this.SendPropertyChanged("SAPSequence");
+ this.OnSAPSequenceChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
@@ -9826,6 +9970,8 @@ namespace ICSSoft.Frame.Data.Entity
private string _IsSerialNumber;
+ private string _SAPSequence;
+
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -9890,6 +10036,8 @@ namespace ICSSoft.Frame.Data.Entity
partial void OnStockIndicatorChanged();
partial void OnIsSerialNumberChanging(string value);
partial void OnIsSerialNumberChanged();
+ partial void OnSAPSequenceChanging(string value);
+ partial void OnSAPSequenceChanged();
#endregion
public ICSOtherIn()
@@ -10497,6 +10645,26 @@ namespace ICSSoft.Frame.Data.Entity
}
}
+ [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SAPSequence", DbType="VarChar(50)")]
+ public string SAPSequence
+ {
+ get
+ {
+ return this._SAPSequence;
+ }
+ set
+ {
+ if ((this._SAPSequence != value))
+ {
+ this.OnSAPSequenceChanging(value);
+ this.SendPropertyChanging();
+ this._SAPSequence = value;
+ this.SendPropertyChanged("SAPSequence");
+ this.OnSAPSequenceChanged();
+ }
+ }
+ }
+
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
diff --git a/ICSSoft.FromERP/ICSSoft.FromERP/ICSSAPDocGet.cs b/ICSSoft.FromERP/ICSSoft.FromERP/ICSSAPDocGet.cs
index 5d7cba4..a2f6a39 100644
--- a/ICSSoft.FromERP/ICSSoft.FromERP/ICSSAPDocGet.cs
+++ b/ICSSoft.FromERP/ICSSoft.FromERP/ICSSAPDocGet.cs
@@ -602,145 +602,334 @@ namespace ICSSoft.FromERP
db.Transaction = db.Connection.BeginTransaction();
var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
int Count = 0;
+ int LineNum = 10;
foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
{
- Count++;
- string ExtensionID = "";
- bool isNew = false;
- string Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
- var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
- if (Extensionline == null)
+ if (Item.SERNP != "ZS01")
{
- ExtensionID = AppConfig.GetGuid();
- Extensionline = new ICSExtension();
- Extensionline.ID = ExtensionID;
- Extensionline.BatchCode = Item.SERNP;
- Extensionline.Version = "";
- Extensionline.Brand = Item.POSNR_VA;
- Extensionline.ProjectCode = Item.VBELN_VA;
- Extensionline.cFree1 = "";
- Extensionline.cFree2 = "";
- Extensionline.cFree3 = "";
- Extensionline.cFree4 = "";
- Extensionline.cFree5 = "";
- Extensionline.cFree6 = "";
- Extensionline.cFree7 = "";
- Extensionline.cFree8 = "";
- Extensionline.cFree9 = "";
- Extensionline.cFree10 = "";
- Extensionline.Colspan = Colspan;
- Extensionline.MTIME = DateTime.Now;
- Extensionline.MUSER = "JOB";
- Extensionline.MUSERName = "JOB";
- Extensionline.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
+ Count++;
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSMOApply.SingleOrDefault(a => a.ApplyCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSMOApply();
+ line.ID = AppConfig.GetGuid();
+ line.IssueQuantity = 0;
+ line.ApplyID = AppConfig.GetGuid();
+ line.ApplyDetailID = AppConfig.GetGuid();
+ line.ApplyCode = Item.DANJU;//领料单号
+ line.SAPSequence = Item.POSNR;//领料单行号(SAP)
+ line.Sequence = LineNum.ToString();//领料单行号(WMS自用)
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.Type = "1";
+ line.WorkPoint = Info.WERKS;//站点(工厂)
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.SourceCode = Item.EBELN;//采购凭证号
+ line.SourceSequence = Item.EBELP;//采购凭证的项目编号
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ line.Status = "2";
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
+ line.EATTRIBUTE = Info.LEIXING;//单据类型
+
+ //订单号
+ line.OrderNumber = Info.AUFNR;
+ //套数
+ line.Sets = Info.TAOSHU;
+ //物料号 父项生产订单物料
+ line.OrderInvCode = Info.MATNR_FAT;
+ //物料描述 父项 生产订单主物料
+ line.OrderInvDescribe = Info.MAKTX_FAT;
+ //出入库 1.出库 2.入库 3.转移 4.盘点
+ line.BillType = Info.CHURU;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //工位
+ line.Desks = Info.P_GW;
+ //调度工号
+ line.DispatchNumber = Info.P_DD;
+ //调度姓名
+ line.DispatcherName = Info.P_DDNAME;
+ //收料人工号
+ line.ReceiverNumber = Info.P_SL;
+ //收料人姓名
+ line.ReceiverName = Info.P_SLNAME;
+ //紧急程度
+ line.Urgency = Info.P_JJ;
+ //需求日期
+ line.NeedDate = Info.ZXQRQ;
+ //需求时间
+ line.NeedTime = Info.ZXQSJ.ToString();
+ //备注项
+ line.RemarksTerm = Info.ZBEIZ;
+ //工艺文本码
+ line.TextNumber = Info.KTSCH;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+
+
+ if (isNew == true)
+ {
+ db.ICSMOApply.InsertOnSubmit(line);
+ }
db.SubmitChanges();
+ if (Count == ItemInfo.Count())
+ {
+ InspectJosn += "{";
+ InspectJosn += "\"RIG_ORDINE\":\"" + Info.DANJU + "\",";
+ InspectJosn += "\"RIG_ARTICOLO\": \"" + Item.MATNR + "\",";
+ InspectJosn += "\"RIG_SUB1\": \"\",";
+ InspectJosn += "\"RIG_SUB2\": \"\",";
+ InspectJosn += "\"RIG_QTAR\": " + Item.LINGYSL + ",";
+ InspectJosn += "\"RIG_HOSTINF\": " + Item.POSNR + "";
+ InspectJosn += "}";
+ }
+ else
+ {
+ InspectJosn += "{";
+ InspectJosn += "\"RIG_ORDINE\":\"" + Info.DANJU + "\",";
+ InspectJosn += "\"RIG_ARTICOLO\": \"" + Item.MATNR + "\",";
+ InspectJosn += "\"RIG_SUB1\": \"\",";
+ InspectJosn += "\"RIG_SUB2\": \"\",";
+ InspectJosn += "\"RIG_QTAR\": " + Item.LINGYSL + ",";
+ InspectJosn += "\"RIG_HOSTINF\": " + Item.POSNR + "";
+ InspectJosn += "},";
+ }
+ LineNum += 10;
}
else
{
- ExtensionID = Extensionline.ID;
- }
+ var SubLineInfo = SubLineInfoList.Where(a => a.DANJU == Item.DANJU);
+ foreach (SAPGetDocInfo.ZWEBS_GERNR SubInfo in SubLineInfo)
+ {
+ Count++;
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~" + SubInfo.GERNR + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~" + SubInfo.GERNR + "~~~~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
- var line = db.ICSMOApply.SingleOrDefault(a => a.ApplyCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
- if (line == null)
- {
- isNew = true;
- line = new Frame.Data.Entity.ICSMOApply();
- line.ID = AppConfig.GetGuid();
- line.IssueQuantity = 0;
- line.ApplyID = AppConfig.GetGuid();
- line.ApplyDetailID = AppConfig.GetGuid();
- line.ApplyCode = Item.DANJU;//领料单号
- line.Sequence = Item.POSNR;//领料单行号
- line.InvCode = Item.MATNR;//物料编码
- }
- line.Type = "1";
- line.WorkPoint = Info.WERKS;//站点(工厂)
- line.CreatePerson = Info.XINGMING;
- line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- line.SourceCode = Item.EBELN;//采购凭证号
- line.SourceSequence = Item.EBELP;//采购凭证的项目编号
- line.Quantity = Item.LINGYSL;//领用数量
- line.Amount = 0;
- line.WHCode = Item.LGORT;//仓库
- line.Status = "2";
- line.MUSER = "JOB";
- line.MUSERName = "JOB";
- line.MTIME = DateTime.Now;
- line.ExtensionID = ExtensionID;
- line.EATTRIBUTE = Info.LEIXING;//单据类型
-
- //订单号
- line.OrderNumber = Info.AUFNR;
- //套数
- line.Sets = Info.TAOSHU;
- //物料号 父项生产订单物料
- line.OrderInvCode = Info.MATNR_FAT;
- //物料描述 父项 生产订单主物料
- line.OrderInvDescribe = Info.MAKTX_FAT;
- //出入库 1.出库 2.入库 3.转移 4.盘点
- line.BillType = Info.CHURU;
- //备注
- line.Remarks = Info.BEIZHU;
- //工位
- line.Desks = Info.P_GW;
- //调度工号
- line.DispatchNumber = Info.P_DD;
- //调度姓名
- line.DispatcherName = Info.P_DDNAME;
- //收料人工号
- line.ReceiverNumber = Info.P_SL;
- //收料人姓名
- line.ReceiverName = Info.P_SLNAME;
- //紧急程度
- line.Urgency = Info.P_JJ;
- //需求日期
- line.NeedDate = Info.ZXQRQ;
- //需求时间
- line.NeedTime = Info.ZXQSJ.ToString();
- //备注项
- line.RemarksTerm = Info.ZBEIZ;
- //工艺文本码
- line.TextNumber = Info.KTSCH;
- //物料描述
- line.InvDescribe = Item.MAKTX;
- //基本计量单位
- line.Unit = Item.MEINS;
- //特殊库存标识
- line.StockIndicator = Item.SOBKZ;
- //序列号参数
- line.IsSerialNumber = Item.SERNP;
-
-
-
- if (isNew == true)
- {
- db.ICSMOApply.InsertOnSubmit(line);
- }
- db.SubmitChanges();
- if (Count == ItemInfo.Count())
- {
- InspectJosn += "{";
- InspectJosn += "\"RIG_ORDINE\":\"" + Info.DANJU + "\",";
- InspectJosn += "\"RIG_ARTICOLO\": \"" + Item.MATNR + "\",";
- InspectJosn += "\"RIG_SUB1\": \"\",";
- InspectJosn += "\"RIG_SUB2\": \"\",";
- InspectJosn += "\"RIG_QTAR\": " + Item.LINGYSL + ",";
- InspectJosn += "\"RIG_HOSTINF\": " + Item.POSNR + "";
- InspectJosn += "}";
- }
- else
- {
- InspectJosn += "{";
- InspectJosn += "\"RIG_ORDINE\":\"" + Info.DANJU + "\",";
- InspectJosn += "\"RIG_ARTICOLO\": \"" + Item.MATNR + "\",";
- InspectJosn += "\"RIG_SUB1\": \"\",";
- InspectJosn += "\"RIG_SUB2\": \"\",";
- InspectJosn += "\"RIG_QTAR\": " + Item.LINGYSL + ",";
- InspectJosn += "\"RIG_HOSTINF\": " + Item.POSNR + "";
- InspectJosn += "},";
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSMOApply.SingleOrDefault(a => a.ApplyCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSMOApply();
+ line.ID = AppConfig.GetGuid();
+ line.IssueQuantity = 0;
+ line.ApplyID = AppConfig.GetGuid();
+ line.ApplyDetailID = AppConfig.GetGuid();
+ line.ApplyCode = Item.DANJU;//领料单号
+ line.SAPSequence = Item.POSNR;//领料单行号(SAP)
+ line.Sequence = LineNum.ToString();//领料单行号(WMS自用)
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.Type = "1";
+ line.WorkPoint = Info.WERKS;//站点(工厂)
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.SourceCode = Item.EBELN;//采购凭证号
+ line.SourceSequence = Item.EBELP;//采购凭证的项目编号
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ line.Status = "2";
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
+ line.EATTRIBUTE = Info.LEIXING;//单据类型
+
+ //订单号
+ line.OrderNumber = Info.AUFNR;
+ //套数
+ line.Sets = Info.TAOSHU;
+ //物料号 父项生产订单物料
+ line.OrderInvCode = Info.MATNR_FAT;
+ //物料描述 父项 生产订单主物料
+ line.OrderInvDescribe = Info.MAKTX_FAT;
+ //出入库 1.出库 2.入库 3.转移 4.盘点
+ line.BillType = Info.CHURU;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //工位
+ line.Desks = Info.P_GW;
+ //调度工号
+ line.DispatchNumber = Info.P_DD;
+ //调度姓名
+ line.DispatcherName = Info.P_DDNAME;
+ //收料人工号
+ line.ReceiverNumber = Info.P_SL;
+ //收料人姓名
+ line.ReceiverName = Info.P_SLNAME;
+ //紧急程度
+ line.Urgency = Info.P_JJ;
+ //需求日期
+ line.NeedDate = Info.ZXQRQ;
+ //需求时间
+ line.NeedTime = Info.ZXQSJ.ToString();
+ //备注项
+ line.RemarksTerm = Info.ZBEIZ;
+ //工艺文本码
+ line.TextNumber = Info.KTSCH;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+
+
+ if (isNew == true)
+ {
+ db.ICSMOApply.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ if (Count == ItemInfo.Count())
+ {
+ InspectJosn += "{";
+ InspectJosn += "\"RIG_ORDINE\":\"" + Info.DANJU + "\",";
+ InspectJosn += "\"RIG_ARTICOLO\": \"" + Item.MATNR + "\",";
+ InspectJosn += "\"RIG_SUB1\": \"\",";
+ InspectJosn += "\"RIG_SUB2\": \"\",";
+ InspectJosn += "\"RIG_QTAR\": " + Item.LINGYSL + ",";
+ InspectJosn += "\"RIG_HOSTINF\": " + Item.POSNR + "";
+ InspectJosn += "}";
+ }
+ else
+ {
+ InspectJosn += "{";
+ InspectJosn += "\"RIG_ORDINE\":\"" + Info.DANJU + "\",";
+ InspectJosn += "\"RIG_ARTICOLO\": \"" + Item.MATNR + "\",";
+ InspectJosn += "\"RIG_SUB1\": \"\",";
+ InspectJosn += "\"RIG_SUB2\": \"\",";
+ InspectJosn += "\"RIG_QTAR\": " + Item.LINGYSL + ",";
+ InspectJosn += "\"RIG_HOSTINF\": " + Item.POSNR + "";
+ InspectJosn += "},";
+ }
+ LineNum += 10;
+ }
}
+
}
InspectJosn += "]";
InspectJosn += "}";
@@ -774,6 +963,7 @@ namespace ICSSoft.FromERP
db.Connection.Open();
db.Transaction = db.Connection.BeginTransaction();
bool headisNew = false;
+ int LineNum = 10;
var headline = db.ICSMOApplyNeg.SingleOrDefault(a => a.ApplyNegCode == Info.DANJU && a.WorkPoint == Info.WERKS);
if (headline == null)
{
@@ -802,196 +992,745 @@ namespace ICSSoft.FromERP
var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
{
- string ExtensionID = "";
- bool isNew = false;
- string Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
- var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
- if (Extensionline == null)
- {
- ExtensionID = AppConfig.GetGuid();
- Extensionline = new ICSExtension();
- Extensionline.ID = ExtensionID;
- Extensionline.BatchCode = Item.SERNP;
- Extensionline.Version = "";
- Extensionline.Brand = Item.POSNR_VA;
- Extensionline.ProjectCode = Item.VBELN_VA;
- Extensionline.cFree1 = "";
- Extensionline.cFree2 = "";
- Extensionline.cFree3 = "";
- Extensionline.cFree4 = "";
- Extensionline.cFree5 = "";
- Extensionline.cFree6 = "";
- Extensionline.cFree7 = "";
- Extensionline.cFree8 = "";
- Extensionline.cFree9 = "";
- Extensionline.cFree10 = "";
- Extensionline.Colspan = Colspan;
- Extensionline.MTIME = DateTime.Now;
- Extensionline.MUSER = "JOB";
- Extensionline.MUSERName = "JOB";
- Extensionline.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
- db.SubmitChanges();
- }
- else
- {
- ExtensionID = Extensionline.ID;
- }
-
- var line = db.ICSMOApplyNegDetail.SingleOrDefault(a => a.ApplyNegCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
- if (line == null)
- {
- isNew = true;
- line = new Frame.Data.Entity.ICSMOApplyNegDetail();
- line.ID = AppConfig.GetGuid();
- line.IssueNegQuantity = 0;
- line.ApplyNegCode = Item.DANJU;//退料单号
- line.Sequence = Item.POSNR;//退料单行号
- line.InvCode = Item.MATNR;//物料编码
- line.SourceDetailID = "";
- }
- line.Quantity = Item.LINGYSL;//领用数量
- line.SourceDetailID = Item.LGORT;//仓库
- line.WHCode = Item.LGORT;//仓库
- line.Amount = 0;
- line.ExtensionID = ExtensionID;
- line.MUSER = "JOB";
- line.MUSERName = "JOB";
- line.MTIME = DateTime.Now;
- line.WorkPoint = Info.WERKS;//站点
-
- if (isNew == true)
+ if (Item.SERNP != "ZS01")
{
- db.ICSMOApplyNegDetail.InsertOnSubmit(line);
- }
- db.SubmitChanges();
- }
- db.Transaction.Commit();
-
- db.Connection.Close();
- }
- catch (Exception ex)
- {
- db.Transaction.Rollback();
- #region 调用SAP接口反写修改NOTMODIFY栏位,取消单据在SAP的锁定状态(接口暂未提供)
- string ErrorDanJU = Info.DANJU;
- #endregion
- log.Error(ex.ToString());
- }
- }
- #endregion
-
- #region 成品入库单同步(单据类型:15)
- HeadInfo = HeadInfoList.Where(a => a.LEIXING == "15");
- foreach (SAPGetDocInfo.ZWMS_SK_HEAD Info in HeadInfo)
- {
- try
- {
- db.Connection.Open();
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~~~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSMOApplyNegDetail.SingleOrDefault(a => a.ApplyNegCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSMOApplyNegDetail();
+ line.ID = AppConfig.GetGuid();
+ line.IssueNegQuantity = 0;
+ line.ApplyNegCode = Item.DANJU;//退料单号
+ line.Sequence = LineNum.ToString();//退料单行号(WMS自用)
+ line.SAPSequence = Item.POSNR;//ASP行号
+ line.InvCode = Item.MATNR;//物料编码
+ line.SourceDetailID = "";
+ }
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.SourceDetailID = Item.LGORT;//仓库
+ line.WHCode = Item.LGORT;//仓库
+ line.Amount = 0;
+ line.ExtensionID = ExtensionID;
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.WorkPoint = Info.WERKS;//站点
+ LineNum += 10;
+
+ if (isNew == true)
+ {
+ db.ICSMOApplyNegDetail.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ }
+ else
+ {
+ var SubLineInfo = SubLineInfoList.Where(a => a.DANJU == Item.DANJU);
+ foreach (SAPGetDocInfo.ZWEBS_GERNR SubInfo in SubLineInfo)
+ {
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~" + SubInfo.GERNR + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~" + SubInfo.GERNR + "~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSMOApplyNegDetail.SingleOrDefault(a => a.ApplyNegCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSMOApplyNegDetail();
+ line.ID = AppConfig.GetGuid();
+ line.IssueNegQuantity = 0;
+ line.ApplyNegCode = Item.DANJU;//退料单号
+ line.Sequence = LineNum.ToString();//退料单行号(WMS自用)
+ line.SAPSequence = Item.POSNR;//ASP行号
+ line.InvCode = Item.MATNR;//物料编码
+ line.SourceDetailID = "";
+ }
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.SourceDetailID = Item.LGORT;//仓库
+ line.WHCode = Item.LGORT;//仓库
+ line.Amount = 0;
+ line.ExtensionID = ExtensionID;
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.WorkPoint = Info.WERKS;//站点
+ LineNum += 10;
+
+ if (isNew == true)
+ {
+ db.ICSMOApplyNegDetail.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+
+ }
+
+ }
+ }
+ db.Transaction.Commit();
+
+ db.Connection.Close();
+
+ }
+ catch (Exception ex)
+ {
+ db.Transaction.Rollback();
+ #region 调用SAP接口反写修改NOTMODIFY栏位,取消单据在SAP的锁定状态(接口暂未提供)
+ string ErrorDanJU = Info.DANJU;
+ #endregion
+ log.Error(ex.ToString());
+ }
+ }
+ #endregion
+
+ #region 成品入库单同步(单据类型:15)
+ HeadInfo = HeadInfoList.Where(a => a.LEIXING == "15");
+ foreach (SAPGetDocInfo.ZWMS_SK_HEAD Info in HeadInfo)
+ {
+ try
+ {
+ db.Connection.Open();
db.Transaction = db.Connection.BeginTransaction();
var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
+ int LineNum = 10;
foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
{
- string ExtensionID = "";
- bool isNew = false;
- string Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
- var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
- if (Extensionline == null)
+ if (Item.SERNP != "ZS01")
{
- ExtensionID = AppConfig.GetGuid();
- Extensionline = new ICSExtension();
- Extensionline.ID = ExtensionID;
- Extensionline.BatchCode = Item.SERNP;
- Extensionline.Version = "";
- Extensionline.Brand = Item.POSNR_VA;
- Extensionline.ProjectCode = Item.VBELN_VA;
- Extensionline.cFree1 = "";
- Extensionline.cFree2 = "";
- Extensionline.cFree3 = "";
- Extensionline.cFree4 = "";
- Extensionline.cFree5 = "";
- Extensionline.cFree6 = "";
- Extensionline.cFree7 = "";
- Extensionline.cFree8 = "";
- Extensionline.cFree9 = "";
- Extensionline.cFree10 = "";
- Extensionline.Colspan = Colspan;
- Extensionline.MTIME = DateTime.Now;
- Extensionline.MUSER = "JOB";
- Extensionline.MUSERName = "JOB";
- Extensionline.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~~~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSManufactureReceive.SingleOrDefault(a => a.RCVCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSManufactureReceive();
+ line.ID = AppConfig.GetGuid();
+ line.RCVQuantity = 0;
+ line.RCVCode = Item.DANJU;//委外领料单号
+ line.Sequence = LineNum.ToString();//委外领料单行号
+ line.SAPSequence = Item.POSNR;
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.Type = "1";
+ line.WorkPoint = Info.WERKS;//站点
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.SourceCode = Item.EBELN;//采购凭证号
+ line.SourceSequence = Item.EBELP;//采购凭证的项目编号
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ if (Info.TEST1 == "N")//Info.TEST1=N为SAP未过账入库单 Info.TEST1=Y为SAP已过账入库单
+ {
+ line.Status = "1";
+ }
+ else
+ {
+ line.Status = "3";
+ }
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
+ line.EATTRIBUTE = Info.LEIXING;
+
+
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //订单号
+ line.OrderNumber = Info.AUFNR;
+ //物料号 父项生产订单主物料
+ line.OrderInvCode = Info.MATNR_FAT;
+ //物料描述 父项生产订单主物料
+ line.OrderInvDescribe = Info.MAKTX_FAT;
+ //出入库
+ line.BillType = Info.CHURU;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //接受特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //备注项
+ line.RemarksTerm = Info.ZBEIZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+
+ if (isNew == true)
+ {
+ db.ICSManufactureReceive.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
+ }
+ else
+ {
+ var SubLineInfo = SubLineInfoList.Where(a => a.DANJU == Item.DANJU);
+ foreach (SAPGetDocInfo.ZWEBS_GERNR SubInfo in SubLineInfo)
+ {
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~" + SubInfo.GERNR + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~" + SubInfo.GERNR + "~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSManufactureReceive.SingleOrDefault(a => a.RCVCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSManufactureReceive();
+ line.ID = AppConfig.GetGuid();
+ line.RCVQuantity = 0;
+ line.RCVCode = Item.DANJU;//委外领料单号
+ line.Sequence = LineNum.ToString();//委外领料单行号
+ line.SAPSequence = Item.POSNR;
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.Type = "1";
+ line.WorkPoint = Info.WERKS;//站点
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.SourceCode = Item.EBELN;//采购凭证号
+ line.SourceSequence = Item.EBELP;//采购凭证的项目编号
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ if (Info.TEST1 == "N")//Info.TEST1=N为SAP未过账入库单 Info.TEST1=Y为SAP已过账入库单
+ {
+ line.Status = "1";
+ }
+ else
+ {
+ line.Status = "3";
+ }
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
+ line.EATTRIBUTE = Info.LEIXING;
+
+
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //订单号
+ line.OrderNumber = Info.AUFNR;
+ //物料号 父项生产订单主物料
+ line.OrderInvCode = Info.MATNR_FAT;
+ //物料描述 父项生产订单主物料
+ line.OrderInvDescribe = Info.MAKTX_FAT;
+ //出入库
+ line.BillType = Info.CHURU;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //接受特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //备注项
+ line.RemarksTerm = Info.ZBEIZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+
+ if (isNew == true)
+ {
+ db.ICSManufactureReceive.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
+ }
+
+
+ }
+
+ }
+ db.Transaction.Commit();
+
+ db.Connection.Close();
+ }
+ catch (Exception ex)
+ {
+ db.Transaction.Rollback();
+ #region 调用SAP接口反写修改NOTMODIFY栏位,取消单据在SAP的锁定状态(接口暂未提供)
+ string ErrorDanJU = Info.DANJU;
+ #endregion
+ log.Error(ex.ToString());
+ }
+ }
+ #endregion
+
+ #region 调拨单同步(单据类型:07 08)
+ HeadInfo = HeadInfoList.Where(a => a.LEIXING == "07" || a.LEIXING == "08");
+ foreach (SAPGetDocInfo.ZWMS_SK_HEAD Info in HeadInfo)
+ {
+ try
+ {
+ db.Connection.Open();
+ db.Transaction = db.Connection.BeginTransaction();
+ var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
+ int LineNum = 10;
+ foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
+ {
+ if (Item.SERNP != "ZS01")
+ {
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~~~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSTransfer.SingleOrDefault(a => a.TransferNO == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSTransfer();
+ line.ID = AppConfig.GetGuid();
+ line.TransferQuantity = 0;
+ line.TransferNO = Item.DANJU;//调拨单号
+ line.SAPSequence = Item.POSNR;
+ line.Sequence = LineNum.ToString(); //调拨单行号
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.FromWarehouseCode = Item.LGORT;
+ line.FromLocationCode = "";
+ line.ToWarehouseCode = Item.LGORT_JS;
+ line.ToLocationCode = "";
+ line.Status = "2";
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.Type = "1";
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.ExtensionID = ExtensionID;
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.WorkPoint = Info.WERKS;//站点
+ line.EATTRIBUTE1 = Item.WERKS_JS;//接收站点
+
+ //单据类型
+ line.OrderType = Info.LEIXING;
+ //类型描述
+ line.TypeDescribe = Info.MIAOSHU;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //人员号
+ line.PersonNumber = Info.PERNR;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //接收物料号
+ line.ReceiveInvCode = Item.MATNR_JS;
+ //接受物料描述
+ line.ReceiveInvDescribe = Item.MAKTX_JS;
+ //接受库存标识
+ line.ReceiveStock = Item.SOBKZ_JS;
+ //接受销售订单
+ line.ReceiveSales = Item.VBELN_JS;
+ //接受行号
+ line.ReceiveSequence = Item.POSNR_JS;
+ //备注2
+ line.Remark2 = Item.BEIZHU2;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+
+ if (isNew == true)
+ {
+ db.ICSTransfer.InsertOnSubmit(line);
+ }
db.SubmitChanges();
+ LineNum += 10;
}
else
{
- ExtensionID = Extensionline.ID;
- }
+ var SubLineInfo = SubLineInfoList.Where(a => a.DANJU == Item.DANJU);
+ foreach (SAPGetDocInfo.ZWEBS_GERNR SubInfo in SubLineInfo)
+ {
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~" + SubInfo.GERNR + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~" + SubInfo.GERNR + "~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var line = db.ICSTransfer.SingleOrDefault(a => a.TransferNO == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSTransfer();
+ line.ID = AppConfig.GetGuid();
+ line.TransferQuantity = 0;
+ line.TransferNO = Item.DANJU;//调拨单号
+ line.SAPSequence = Item.POSNR;
+ line.Sequence = LineNum.ToString(); //调拨单行号
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.FromWarehouseCode = Item.LGORT;
+ line.FromLocationCode = "";
+ line.ToWarehouseCode = Item.LGORT_JS;
+ line.ToLocationCode = "";
+ line.Status = "2";
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.Type = "1";
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.ExtensionID = ExtensionID;
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.WorkPoint = Info.WERKS;//站点
+ line.EATTRIBUTE1 = Item.WERKS_JS;//接收站点
+
+ //单据类型
+ line.OrderType = Info.LEIXING;
+ //类型描述
+ line.TypeDescribe = Info.MIAOSHU;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //人员号
+ line.PersonNumber = Info.PERNR;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //接收物料号
+ line.ReceiveInvCode = Item.MATNR_JS;
+ //接受物料描述
+ line.ReceiveInvDescribe = Item.MAKTX_JS;
+ //接受库存标识
+ line.ReceiveStock = Item.SOBKZ_JS;
+ //接受销售订单
+ line.ReceiveSales = Item.VBELN_JS;
+ //接受行号
+ line.ReceiveSequence = Item.POSNR_JS;
+ //备注2
+ line.Remark2 = Item.BEIZHU2;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+
+
+ if (isNew == true)
+ {
+ db.ICSTransfer.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
+ }
- var line = db.ICSManufactureReceive.SingleOrDefault(a => a.RCVCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
- if (line == null)
- {
- isNew = true;
- line = new Frame.Data.Entity.ICSManufactureReceive();
- line.ID = AppConfig.GetGuid();
- line.RCVQuantity = 0;
- line.RCVCode = Item.DANJU;//委外领料单号
- line.Sequence = Item.POSNR;//委外领料单行号
- line.InvCode = Item.MATNR;//物料编码
- }
- line.Type = "1";
- line.WorkPoint = Info.WERKS;//站点
- line.CreatePerson = Info.XINGMING;
- line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- line.SourceCode = Item.EBELN;//采购凭证号
- line.SourceSequence = Item.EBELP;//采购凭证的项目编号
- line.Quantity = Item.LINGYSL;//领用数量
- line.Amount = 0;
- line.WHCode = Item.LGORT;//仓库
- if (Info.TEST1 == "N")//Info.TEST1=N为SAP未过账入库单 Info.TEST1=Y为SAP已过账入库单
- {
- line.Status = "1";
- }
- else
- {
- line.Status = "3";
- }
- line.MUSER = "JOB";
- line.MUSERName = "JOB";
- line.MTIME = DateTime.Now;
- line.ExtensionID = ExtensionID;
- line.EATTRIBUTE = Info.LEIXING;
-
-
- //物料描述
- line.InvDescribe = Item.MAKTX;
- //订单号
- line.OrderNumber = Info.AUFNR;
- //物料号 父项生产订单主物料
- line.OrderInvCode = Info.MATNR_FAT;
- //物料描述 父项生产订单主物料
- line.OrderInvDescribe = Info.MAKTX_FAT;
- //出入库
- line.BillType = Info.CHURU;
- //备注
- line.Remarks = Info.BEIZHU;
- //基本计量单位
- line.Unit = Item.MEINS;
- //接受特殊库存标识
- line.StockIndicator = Item.SOBKZ;
- //备注项
- line.RemarksTerm = Info.ZBEIZ;
- //序列号参数
- line.IsSerialNumber = Item.SERNP;
-
-
- if (isNew == true)
- {
- db.ICSManufactureReceive.InsertOnSubmit(line);
}
- db.SubmitChanges();
+
}
db.Transaction.Commit();
@@ -1008,8 +1747,8 @@ namespace ICSSoft.FromERP
}
#endregion
- #region 调拨单同步(单据类型:07 08)
- HeadInfo = HeadInfoList.Where(a => a.LEIXING == "07" || a.LEIXING == "08");
+ #region 形态转换单同步(物料)(单据类型:13)
+ HeadInfo = HeadInfoList.Where(a => a.LEIXING == "13");
foreach (SAPGetDocInfo.ZWMS_SK_HEAD Info in HeadInfo)
{
try
@@ -1017,243 +1756,271 @@ namespace ICSSoft.FromERP
db.Connection.Open();
db.Transaction = db.Connection.BeginTransaction();
var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
+ int LineNum = 10;
foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
{
- string ExtensionID = "";
- bool isNew = false;
- string Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
- var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
- if (Extensionline == null)
+ if (Item.SERNP != "ZS01")
{
- ExtensionID = AppConfig.GetGuid();
- Extensionline = new ICSExtension();
- Extensionline.ID = ExtensionID;
- Extensionline.BatchCode = Item.SERNP;
- Extensionline.Version = "";
- Extensionline.Brand = Item.POSNR_VA;
- Extensionline.ProjectCode = Item.VBELN_VA;
- Extensionline.cFree1 = "";
- Extensionline.cFree2 = "";
- Extensionline.cFree3 = "";
- Extensionline.cFree4 = "";
- Extensionline.cFree5 = "";
- Extensionline.cFree6 = "";
- Extensionline.cFree7 = "";
- Extensionline.cFree8 = "";
- Extensionline.cFree9 = "";
- Extensionline.cFree10 = "";
- Extensionline.Colspan = Colspan;
- Extensionline.MTIME = DateTime.Now;
- Extensionline.MUSER = "JOB";
- Extensionline.MUSERName = "JOB";
- Extensionline.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~~~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+
+ var linebefore = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "1" && a.WorkPoint == Info.WERKS);
+ if (linebefore == null)
+ {
+ isNew = true;
+ linebefore = new Frame.Data.Entity.ICSMTDOC();
+ linebefore.ID = AppConfig.GetGuid();
+ linebefore.MTDOCQuantity = 0;
+ linebefore.MTDOCCode = Item.DANJU;//形态转换单号
+ linebefore.SAPSequence = Item.POSNR;
+ linebefore.Sequence = LineNum.ToString();//形态转换单行号
+ linebefore.MTDOCType = "1";//转换前
+ }
+ linebefore.DepCode = Info.KOSTL;
+ linebefore.WHCode = Item.LGORT;
+ linebefore.Quantity = Item.LINGYSL;//领用数量
+ linebefore.Amount = 0;
+ linebefore.Memo = "";
+ linebefore.Status = "2";
+ linebefore.INVCode = Item.MATNR;//转换前物料编码
+ linebefore.SOCode = "";
+ linebefore.SOSequence = "";
+ linebefore.CreatePerson = Info.XINGMING;
+ linebefore.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ linebefore.ExtensionID = ExtensionID;
+ linebefore.MUSER = "JOB";
+ linebefore.MUSERName = "JOB";
+ linebefore.MTIME = DateTime.Now;
+ linebefore.WorkPoint = Info.WERKS;//站点
+ linebefore.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
+ db.SubmitChanges();
+
+ var lineafter = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "2" && a.WorkPoint == Info.WERKS);
+ if (lineafter == null)
+ {
+ isNew = true;
+ lineafter = new Frame.Data.Entity.ICSMTDOC();
+ lineafter.ID = AppConfig.GetGuid();
+ lineafter.MTDOCQuantity = 0;
+ lineafter.MTDOCCode = Item.DANJU;//形态转换单号
+ lineafter.Sequence = LineNum.ToString();//形态转换单行号
+ lineafter.SAPSequence = Item.POSNR;
+ lineafter.MTDOCType = "2";//转换后
+ }
+ lineafter.DepCode = Info.KOSTL;
+ lineafter.WHCode = Item.LGORT;
+ lineafter.Quantity = Item.LINGYSL;//领用数量
+ lineafter.Amount = 0;
+ lineafter.Memo = "";
+ lineafter.Status = "2";
+ lineafter.INVCode = Item.MATNR_JS;//转换后物料编码
+ lineafter.SOCode = "";
+ lineafter.SOSequence = "";
+ lineafter.CreatePerson = Info.XINGMING;
+ lineafter.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ lineafter.ExtensionID = ExtensionID;
+ lineafter.MUSER = "JOB";
+ lineafter.MUSERName = "JOB";
+ lineafter.MTIME = DateTime.Now;
+ lineafter.WorkPoint = Info.WERKS;//站点
+ lineafter.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
db.SubmitChanges();
+ LineNum += 10;
}
else
{
- ExtensionID = Extensionline.ID;
- }
+ var SubLineInfo = SubLineInfoList.Where(a => a.DANJU == Item.DANJU);
+ foreach (SAPGetDocInfo.ZWEBS_GERNR SubInfo in SubLineInfo)
+ {
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~" + SubInfo.GERNR + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~" + SubInfo.GERNR + "~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
- var line = db.ICSTransfer.SingleOrDefault(a => a.TransferNO == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
- if (line == null)
- {
- isNew = true;
- line = new Frame.Data.Entity.ICSTransfer();
- line.ID = AppConfig.GetGuid();
- line.TransferQuantity = 0;
- line.TransferNO = Item.DANJU;//调拨单号
- line.Sequence = Item.POSNR;//调拨单行号
- line.InvCode = Item.MATNR;//物料编码
- }
- line.FromWarehouseCode = Item.LGORT;
- line.FromLocationCode = "";
- line.ToWarehouseCode = Item.LGORT_JS;
- line.ToLocationCode = "";
- line.Status = "2";
- line.Quantity = Item.LINGYSL;//领用数量
- line.Amount = 0;
- line.Type = "1";
- line.CreatePerson = Info.XINGMING;
- line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- line.ExtensionID = ExtensionID;
- line.MUSER = "JOB";
- line.MUSERName = "JOB";
- line.MTIME = DateTime.Now;
- line.WorkPoint = Info.WERKS;//站点
- line.EATTRIBUTE1 = Item.WERKS_JS;//接收站点
-
- //单据类型
- line.OrderType = Info.LEIXING;
- //类型描述
- line.TypeDescribe = Info.MIAOSHU;
- //备注
- line.Remarks = Info.BEIZHU;
- //人员号
- line.PersonNumber = Info.PERNR;
- //物料描述
- line.InvDescribe = Item.MAKTX;
- //基本计量单位
- line.Unit = Item.MEINS;
- //特殊库存标识
- line.StockIndicator = Item.SOBKZ;
- //接收物料号
- line.ReceiveInvCode = Item.MATNR_JS;
- //接受物料描述
- line.ReceiveInvDescribe = Item.MAKTX_JS;
- //接受库存标识
- line.ReceiveStock = Item.SOBKZ_JS;
- //接受销售订单
- line.ReceiveSales = Item.VBELN_JS;
- //接受行号
- line.ReceiveSequence = Item.POSNR_JS;
- //备注2
- line.Remark2 = Item.BEIZHU2;
- //序列号参数
- line.IsSerialNumber = Item.SERNP;
-
-
-
-
-
-
- if (isNew == true)
- {
- db.ICSTransfer.InsertOnSubmit(line);
- }
- db.SubmitChanges();
- }
- db.Transaction.Commit();
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
- db.Connection.Close();
- }
- catch (Exception ex)
- {
- db.Transaction.Rollback();
- #region 调用SAP接口反写修改NOTMODIFY栏位,取消单据在SAP的锁定状态(接口暂未提供)
- string ErrorDanJU = Info.DANJU;
- #endregion
- log.Error(ex.ToString());
- }
- }
- #endregion
+ var linebefore = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "1" && a.WorkPoint == Info.WERKS);
+ if (linebefore == null)
+ {
+ isNew = true;
+ linebefore = new Frame.Data.Entity.ICSMTDOC();
+ linebefore.ID = AppConfig.GetGuid();
+ linebefore.MTDOCQuantity = 0;
+ linebefore.MTDOCCode = Item.DANJU;//形态转换单号
+ linebefore.SAPSequence = Item.POSNR;
+ linebefore.Sequence = LineNum.ToString();//形态转换单行号
+ linebefore.MTDOCType = "1";//转换前
+ }
+ linebefore.DepCode = Info.KOSTL;
+ linebefore.WHCode = Item.LGORT;
+ linebefore.Quantity = Item.LINGYSL;//领用数量
+ linebefore.Amount = 0;
+ linebefore.Memo = "";
+ linebefore.Status = "2";
+ linebefore.INVCode = Item.MATNR;//转换前物料编码
+ linebefore.SOCode = "";
+ linebefore.SOSequence = "";
+ linebefore.CreatePerson = Info.XINGMING;
+ linebefore.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ linebefore.ExtensionID = ExtensionID;
+ linebefore.MUSER = "JOB";
+ linebefore.MUSERName = "JOB";
+ linebefore.MTIME = DateTime.Now;
+ linebefore.WorkPoint = Info.WERKS;//站点
+ linebefore.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
+ db.SubmitChanges();
- #region 形态转换单同步(物料)(单据类型:13)
- HeadInfo = HeadInfoList.Where(a => a.LEIXING == "13");
- foreach (SAPGetDocInfo.ZWMS_SK_HEAD Info in HeadInfo)
- {
- try
- {
- db.Connection.Open();
- db.Transaction = db.Connection.BeginTransaction();
- var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
- foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
- {
- string ExtensionID = "";
- bool isNew = false;
- string Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
- var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
- if (Extensionline == null)
- {
- ExtensionID = AppConfig.GetGuid();
- Extensionline = new ICSExtension();
- Extensionline.ID = ExtensionID;
- Extensionline.BatchCode = Item.SERNP;
- Extensionline.Version = "";
- Extensionline.Brand = Item.POSNR_VA;
- Extensionline.ProjectCode = Item.VBELN_VA;
- Extensionline.cFree1 = "";
- Extensionline.cFree2 = "";
- Extensionline.cFree3 = "";
- Extensionline.cFree4 = "";
- Extensionline.cFree5 = "";
- Extensionline.cFree6 = "";
- Extensionline.cFree7 = "";
- Extensionline.cFree8 = "";
- Extensionline.cFree9 = "";
- Extensionline.cFree10 = "";
- Extensionline.Colspan = Colspan;
- Extensionline.MTIME = DateTime.Now;
- Extensionline.MUSER = "JOB";
- Extensionline.MUSERName = "JOB";
- Extensionline.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
- db.SubmitChanges();
- }
- else
- {
- ExtensionID = Extensionline.ID;
- }
+ var lineafter = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "2" && a.WorkPoint == Info.WERKS);
+ if (lineafter == null)
+ {
+ isNew = true;
+ lineafter = new Frame.Data.Entity.ICSMTDOC();
+ lineafter.ID = AppConfig.GetGuid();
+ lineafter.MTDOCQuantity = 0;
+ lineafter.MTDOCCode = Item.DANJU;//形态转换单号
+ lineafter.Sequence = LineNum.ToString();//形态转换单行号
+ lineafter.SAPSequence = Item.POSNR;
+ lineafter.MTDOCType = "2";//转换后
+ }
+ lineafter.DepCode = Info.KOSTL;
+ lineafter.WHCode = Item.LGORT;
+ lineafter.Quantity = Item.LINGYSL;//领用数量
+ lineafter.Amount = 0;
+ lineafter.Memo = "";
+ lineafter.Status = "2";
+ lineafter.INVCode = Item.MATNR_JS;//转换后物料编码
+ lineafter.SOCode = "";
+ lineafter.SOSequence = "";
+ lineafter.CreatePerson = Info.XINGMING;
+ lineafter.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ lineafter.ExtensionID = ExtensionID;
+ lineafter.MUSER = "JOB";
+ lineafter.MUSERName = "JOB";
+ lineafter.MTIME = DateTime.Now;
+ lineafter.WorkPoint = Info.WERKS;//站点
+ lineafter.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
+ }
- var linebefore = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "1" && a.WorkPoint == Info.WERKS);
- if (linebefore == null)
- {
- isNew = true;
- linebefore = new Frame.Data.Entity.ICSMTDOC();
- linebefore.ID = AppConfig.GetGuid();
- linebefore.MTDOCQuantity = 0;
- linebefore.MTDOCCode = Item.DANJU;//形态转换单号
- linebefore.Sequence = Item.POSNR;//形态转换单行号
- linebefore.MTDOCType = "1";//转换前
}
- linebefore.DepCode = Info.KOSTL;
- linebefore.WHCode = Item.LGORT;
- linebefore.Quantity = Item.LINGYSL;//领用数量
- linebefore.Amount = 0;
- linebefore.Memo = "";
- linebefore.Status = "2";
- linebefore.INVCode = Item.MATNR;//转换前物料编码
- linebefore.SOCode = "";
- linebefore.SOSequence = "";
- linebefore.CreatePerson = Info.XINGMING;
- linebefore.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- linebefore.ExtensionID = ExtensionID;
- linebefore.MUSER = "JOB";
- linebefore.MUSERName = "JOB";
- linebefore.MTIME = DateTime.Now;
- linebefore.WorkPoint = Info.WERKS;//站点
- linebefore.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
- if (isNew == true)
- {
- db.ICSMTDOC.InsertOnSubmit(linebefore);
- }
- db.SubmitChanges();
- var lineafter = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "2" && a.WorkPoint == Info.WERKS);
- if (lineafter == null)
- {
- isNew = true;
- lineafter = new Frame.Data.Entity.ICSMTDOC();
- lineafter.ID = AppConfig.GetGuid();
- lineafter.MTDOCQuantity = 0;
- lineafter.MTDOCCode = Item.DANJU;//形态转换单号
- lineafter.Sequence = Item.POSNR;//形态转换单行号
- lineafter.MTDOCType = "2";//转换后
- }
- lineafter.DepCode = Info.KOSTL;
- lineafter.WHCode = Item.LGORT;
- lineafter.Quantity = Item.LINGYSL;//领用数量
- lineafter.Amount = 0;
- lineafter.Memo = "";
- lineafter.Status = "2";
- lineafter.INVCode = Item.MATNR_JS;//转换后物料编码
- lineafter.SOCode = "";
- lineafter.SOSequence = "";
- lineafter.CreatePerson = Info.XINGMING;
- lineafter.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- lineafter.ExtensionID = ExtensionID;
- lineafter.MUSER = "JOB";
- lineafter.MUSERName = "JOB";
- lineafter.MTIME = DateTime.Now;
- lineafter.WorkPoint = Info.WERKS;//站点
- lineafter.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
- if (isNew == true)
- {
- db.ICSMTDOC.InsertOnSubmit(linebefore);
- }
- db.SubmitChanges();
}
db.Transaction.Commit();
@@ -1279,147 +2046,370 @@ namespace ICSSoft.FromERP
db.Connection.Open();
db.Transaction = db.Connection.BeginTransaction();
var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
+ int LineNum = 10;
foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
{
- string ExtensionBefore = "";
- string ExtensionAfter = "";
- bool isNew = false;
- string Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
- string ColspanAfter = Item.VBELN_JS + "~" + Item.SERNP + "~~" + Item.POSNR_JS + "~~~~~~~~~~";
- var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
- if (Extensionline == null)
+ if (Item.SERNP != "ZS01")
{
- ExtensionBefore = AppConfig.GetGuid();
- Extensionline = new ICSExtension();
- Extensionline.ID = ExtensionBefore;
- Extensionline.BatchCode = Item.SERNP;
- Extensionline.Version = "";
- Extensionline.Brand = Item.POSNR_VA;
- Extensionline.ProjectCode = Item.VBELN_VA;
- Extensionline.cFree1 = "";
- Extensionline.cFree2 = "";
- Extensionline.cFree3 = "";
- Extensionline.cFree4 = "";
- Extensionline.cFree5 = "";
- Extensionline.cFree6 = "";
- Extensionline.cFree7 = "";
- Extensionline.cFree8 = "";
- Extensionline.cFree9 = "";
- Extensionline.cFree10 = "";
- Extensionline.Colspan = Colspan;
- Extensionline.MTIME = DateTime.Now;
- Extensionline.MUSER = "JOB";
- Extensionline.MUSERName = "JOB";
- Extensionline.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
+ string ExtensionBefore = "";
+ string ExtensionAfter = "";
+ bool isNew = false;
+ string Colspan;
+ string ColspanAfter;
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~~~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ ColspanAfter = Item.VBELN_JS + "~~~" + Item.POSNR_JS + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ ColspanAfter = "~~~~~000000~~~~~~~~~~";
+ }
+ Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionBefore = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionBefore;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionBefore = Extensionline.ID;
+ }
+ var ExtensionlineAfter = db.ICSExtension.SingleOrDefault(a => a.Colspan == ColspanAfter && a.WorkPoint == Info.WERKS);
+ if (ExtensionlineAfter == null)
+ {
+ ExtensionAfter = AppConfig.GetGuid();
+ ExtensionlineAfter = new ICSExtension();
+ ExtensionlineAfter.ID = ExtensionAfter;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_JS;
+ Extensionline.ProjectCode = Item.VBELN_JS;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ ExtensionlineAfter.cFree1 = "";
+ ExtensionlineAfter.cFree2 = "";
+ ExtensionlineAfter.cFree3 = "";
+ ExtensionlineAfter.cFree4 = "";
+ ExtensionlineAfter.cFree5 = "";
+ ExtensionlineAfter.cFree6 = "";
+ ExtensionlineAfter.cFree7 = "";
+ ExtensionlineAfter.cFree8 = "";
+ ExtensionlineAfter.cFree9 = "";
+ ExtensionlineAfter.cFree10 = "";
+ ExtensionlineAfter.Colspan = ColspanAfter;
+ ExtensionlineAfter.MTIME = DateTime.Now;
+ ExtensionlineAfter.MUSER = "JOB";
+ ExtensionlineAfter.MUSERName = "JOB";
+ ExtensionlineAfter.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionAfter = ExtensionlineAfter.ID;
+ }
+
+ var linebefore = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "1" && a.WorkPoint == Info.WERKS);
+ if (linebefore == null)
+ {
+ isNew = true;
+ linebefore = new Frame.Data.Entity.ICSMTDOC();
+ linebefore.ID = AppConfig.GetGuid();
+ linebefore.MTDOCQuantity = 0;
+ linebefore.MTDOCCode = Item.DANJU;//形态转换单号
+ linebefore.SAPSequence = Item.POSNR;
+ linebefore.Sequence = LineNum.ToString(); //形态转换单行号
+ linebefore.MTDOCType = "1";//转换前
+ }
+ linebefore.DepCode = Info.KOSTL;
+ linebefore.WHCode = Item.LGORT;
+ linebefore.Quantity = Item.LINGYSL;//领用数量
+ linebefore.Amount = 0;
+ linebefore.Memo = Item.SOBKZ_JS;
+ linebefore.Status = "2";
+ linebefore.INVCode = Item.MATNR;//转换前物料编码
+ linebefore.SOCode = "";
+ linebefore.SOSequence = "";
+ linebefore.CreatePerson = Info.XINGMING;
+ linebefore.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ linebefore.ExtensionID = ExtensionBefore;
+ linebefore.MUSER = "JOB";
+ linebefore.MUSERName = "JOB";
+ linebefore.MTIME = DateTime.Now;
+ linebefore.WorkPoint = Info.WERKS;//站点
+ linebefore.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
db.SubmitChanges();
- }
- else
- {
- ExtensionBefore = Extensionline.ID;
- }
- var ExtensionlineAfter = db.ICSExtension.SingleOrDefault(a => a.Colspan == ColspanAfter && a.WorkPoint == Info.WERKS);
- if (ExtensionlineAfter == null)
- {
- ExtensionAfter = AppConfig.GetGuid();
- ExtensionlineAfter = new ICSExtension();
- ExtensionlineAfter.ID = ExtensionAfter;
- ExtensionlineAfter.BatchCode = Item.SERNP;
- ExtensionlineAfter.Version = "";
- ExtensionlineAfter.Brand = Item.POSNR_JS;
- ExtensionlineAfter.ProjectCode = Item.VBELN_JS;
- ExtensionlineAfter.cFree1 = "";
- ExtensionlineAfter.cFree2 = "";
- ExtensionlineAfter.cFree3 = "";
- ExtensionlineAfter.cFree4 = "";
- ExtensionlineAfter.cFree5 = "";
- ExtensionlineAfter.cFree6 = "";
- ExtensionlineAfter.cFree7 = "";
- ExtensionlineAfter.cFree8 = "";
- ExtensionlineAfter.cFree9 = "";
- ExtensionlineAfter.cFree10 = "";
- ExtensionlineAfter.Colspan = ColspanAfter;
- ExtensionlineAfter.MTIME = DateTime.Now;
- ExtensionlineAfter.MUSER = "JOB";
- ExtensionlineAfter.MUSERName = "JOB";
- ExtensionlineAfter.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
+
+ var lineafter = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "2" && a.WorkPoint == Info.WERKS);
+ if (lineafter == null)
+ {
+ isNew = true;
+ lineafter = new Frame.Data.Entity.ICSMTDOC();
+ lineafter.ID = AppConfig.GetGuid();
+ lineafter.MTDOCQuantity = 0;
+ lineafter.MTDOCCode = Item.DANJU;//形态转换单号
+ lineafter.SAPSequence = Item.POSNR;
+ lineafter.Sequence = LineNum.ToString(); //形态转换单行号
+ lineafter.MTDOCType = "2";//转换后
+ }
+ lineafter.DepCode = Info.KOSTL;
+ lineafter.WHCode = Item.LGORT;
+ lineafter.Quantity = Item.LINGYSL;//领用数量
+ lineafter.Amount = 0;
+ lineafter.Memo = Item.SOBKZ_JS;
+ lineafter.Status = "2";
+ lineafter.INVCode = Item.MATNR;//转换后物料编码
+ lineafter.SOCode = "";
+ lineafter.SOSequence = "";
+ lineafter.CreatePerson = Info.XINGMING;
+ lineafter.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ lineafter.ExtensionID = ExtensionAfter;
+ lineafter.MUSER = "JOB";
+ lineafter.MUSERName = "JOB";
+ lineafter.MTIME = DateTime.Now;
+ lineafter.WorkPoint = Info.WERKS;//站点
+ lineafter.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
db.SubmitChanges();
+ LineNum += 10;
}
else
{
- ExtensionAfter = ExtensionlineAfter.ID;
- }
+ var SubLineInfo = SubLineInfoList.Where(a => a.DANJU == Item.DANJU);
+ foreach (SAPGetDocInfo.ZWEBS_GERNR SubInfo in SubLineInfo)
+ {
+ string ExtensionBefore = "";
+ string ExtensionAfter = "";
+ bool isNew = false;
+ string Colspan;
+ string ColspanAfter;
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~" + SubInfo.GERNR + Item.POSNR_VA + "~~~~~~~~~~";
+ ColspanAfter = Item.VBELN_JS + "~" + SubInfo.GERNR + Item.POSNR_JS + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ ColspanAfter = "~~~~~000000~~~~~~~~~~";
+ }
+ Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionBefore = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionBefore;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionBefore = Extensionline.ID;
+ }
+ var ExtensionlineAfter = db.ICSExtension.SingleOrDefault(a => a.Colspan == ColspanAfter && a.WorkPoint == Info.WERKS);
+ if (ExtensionlineAfter == null)
+ {
+ ExtensionAfter = AppConfig.GetGuid();
+ ExtensionlineAfter = new ICSExtension();
+ ExtensionlineAfter.ID = ExtensionAfter;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_JS;
+ Extensionline.ProjectCode = Item.VBELN_JS;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ ExtensionlineAfter.cFree1 = "";
+ ExtensionlineAfter.cFree2 = "";
+ ExtensionlineAfter.cFree3 = "";
+ ExtensionlineAfter.cFree4 = "";
+ ExtensionlineAfter.cFree5 = "";
+ ExtensionlineAfter.cFree6 = "";
+ ExtensionlineAfter.cFree7 = "";
+ ExtensionlineAfter.cFree8 = "";
+ ExtensionlineAfter.cFree9 = "";
+ ExtensionlineAfter.cFree10 = "";
+ ExtensionlineAfter.Colspan = ColspanAfter;
+ ExtensionlineAfter.MTIME = DateTime.Now;
+ ExtensionlineAfter.MUSER = "JOB";
+ ExtensionlineAfter.MUSERName = "JOB";
+ ExtensionlineAfter.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionAfter = ExtensionlineAfter.ID;
+ }
+
+ var linebefore = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "1" && a.WorkPoint == Info.WERKS);
+ if (linebefore == null)
+ {
+ isNew = true;
+ linebefore = new Frame.Data.Entity.ICSMTDOC();
+ linebefore.ID = AppConfig.GetGuid();
+ linebefore.MTDOCQuantity = 0;
+ linebefore.MTDOCCode = Item.DANJU;//形态转换单号
+ linebefore.SAPSequence = Item.POSNR;
+ linebefore.Sequence = LineNum.ToString(); //形态转换单行号
+ linebefore.MTDOCType = "1";//转换前
+ }
+ linebefore.DepCode = Info.KOSTL;
+ linebefore.WHCode = Item.LGORT;
+ linebefore.Quantity = Item.LINGYSL;//领用数量
+ linebefore.Amount = 0;
+ linebefore.Memo = Item.SOBKZ_JS;
+ linebefore.Status = "2";
+ linebefore.INVCode = Item.MATNR;//转换前物料编码
+ linebefore.SOCode = "";
+ linebefore.SOSequence = "";
+ linebefore.CreatePerson = Info.XINGMING;
+ linebefore.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ linebefore.ExtensionID = ExtensionBefore;
+ linebefore.MUSER = "JOB";
+ linebefore.MUSERName = "JOB";
+ linebefore.MTIME = DateTime.Now;
+ linebefore.WorkPoint = Info.WERKS;//站点
+ linebefore.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
+ db.SubmitChanges();
+
+ var lineafter = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "2" && a.WorkPoint == Info.WERKS);
+ if (lineafter == null)
+ {
+ isNew = true;
+ lineafter = new Frame.Data.Entity.ICSMTDOC();
+ lineafter.ID = AppConfig.GetGuid();
+ lineafter.MTDOCQuantity = 0;
+ lineafter.MTDOCCode = Item.DANJU;//形态转换单号
+ lineafter.SAPSequence = Item.POSNR;
+ lineafter.Sequence = LineNum.ToString(); //形态转换单行号
+ lineafter.MTDOCType = "2";//转换后
+ }
+ lineafter.DepCode = Info.KOSTL;
+ lineafter.WHCode = Item.LGORT;
+ lineafter.Quantity = Item.LINGYSL;//领用数量
+ lineafter.Amount = 0;
+ lineafter.Memo = Item.SOBKZ_JS;
+ lineafter.Status = "2";
+ lineafter.INVCode = Item.MATNR;//转换后物料编码
+ lineafter.SOCode = "";
+ lineafter.SOSequence = "";
+ lineafter.CreatePerson = Info.XINGMING;
+ lineafter.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ lineafter.ExtensionID = ExtensionAfter;
+ lineafter.MUSER = "JOB";
+ lineafter.MUSERName = "JOB";
+ lineafter.MTIME = DateTime.Now;
+ lineafter.WorkPoint = Info.WERKS;//站点
+ lineafter.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
+ if (isNew == true)
+ {
+ db.ICSMTDOC.InsertOnSubmit(linebefore);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
- var linebefore = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "1" && a.WorkPoint == Info.WERKS);
- if (linebefore == null)
- {
- isNew = true;
- linebefore = new Frame.Data.Entity.ICSMTDOC();
- linebefore.ID = AppConfig.GetGuid();
- linebefore.MTDOCQuantity = 0;
- linebefore.MTDOCCode = Item.DANJU;//形态转换单号
- linebefore.Sequence = Item.POSNR;//形态转换单行号
- linebefore.MTDOCType = "1";//转换前
- }
- linebefore.DepCode = Info.KOSTL;
- linebefore.WHCode = Item.LGORT;
- linebefore.Quantity = Item.LINGYSL;//领用数量
- linebefore.Amount = 0;
- linebefore.Memo = Item.SOBKZ_JS;
- linebefore.Status = "2";
- linebefore.INVCode = Item.MATNR;//转换前物料编码
- linebefore.SOCode = "";
- linebefore.SOSequence = "";
- linebefore.CreatePerson = Info.XINGMING;
- linebefore.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- linebefore.ExtensionID = ExtensionBefore;
- linebefore.MUSER = "JOB";
- linebefore.MUSERName = "JOB";
- linebefore.MTIME = DateTime.Now;
- linebefore.WorkPoint = Info.WERKS;//站点
- linebefore.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
- if (isNew == true)
- {
- db.ICSMTDOC.InsertOnSubmit(linebefore);
- }
- db.SubmitChanges();
+ }
- var lineafter = db.ICSMTDOC.SingleOrDefault(a => a.MTDOCCode == Item.DANJU && a.Sequence == Item.POSNR && a.MTDOCType == "2" && a.WorkPoint == Info.WERKS);
- if (lineafter == null)
- {
- isNew = true;
- lineafter = new Frame.Data.Entity.ICSMTDOC();
- lineafter.ID = AppConfig.GetGuid();
- lineafter.MTDOCQuantity = 0;
- lineafter.MTDOCCode = Item.DANJU;//形态转换单号
- lineafter.Sequence = Item.POSNR;//形态转换单行号
- lineafter.MTDOCType = "2";//转换后
- }
- lineafter.DepCode = Info.KOSTL;
- lineafter.WHCode = Item.LGORT;
- lineafter.Quantity = Item.LINGYSL;//领用数量
- lineafter.Amount = 0;
- lineafter.Memo = Item.SOBKZ_JS;
- lineafter.Status = "2";
- lineafter.INVCode = Item.MATNR;//转换后物料编码
- lineafter.SOCode = "";
- lineafter.SOSequence = "";
- lineafter.CreatePerson = Info.XINGMING;
- lineafter.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- lineafter.ExtensionID = ExtensionAfter;
- lineafter.MUSER = "JOB";
- lineafter.MUSERName = "JOB";
- lineafter.MTIME = DateTime.Now;
- lineafter.WorkPoint = Info.WERKS;//站点
- lineafter.EATTRIBUTE1 = Info.LEIXING;//单据类型 12:按单转移 13:按物料转移
- if (isNew == true)
- {
- db.ICSMTDOC.InsertOnSubmit(linebefore);
}
- db.SubmitChanges();
+
}
db.Transaction.Commit();
@@ -1445,147 +2435,343 @@ namespace ICSSoft.FromERP
db.Connection.Open();
db.Transaction = db.Connection.BeginTransaction();
var ItemInfo = ItemInfoList.Where(a => a.DANJU == Info.DANJU);
+ int LineNum = 10;
foreach (SAPGetDocInfo.ZWEBSERVICE_ITEM Item in ItemInfo)
{
- string ExtensionID = "";
- bool isNew = false;
- string Colspan = Item.VBELN_VA + "~" + Item.SERNP + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
- var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
- if (Extensionline == null)
- {
- ExtensionID = AppConfig.GetGuid();
- Extensionline = new ICSExtension();
- Extensionline.ID = ExtensionID;
- Extensionline.BatchCode = Item.SERNP;
- Extensionline.Version = "";
- Extensionline.Brand = Item.POSNR_VA;
- Extensionline.ProjectCode = Item.VBELN_VA;
- Extensionline.cFree1 = "";
- Extensionline.cFree2 = "";
- Extensionline.cFree3 = "";
- Extensionline.cFree4 = "";
- Extensionline.cFree5 = "";
- Extensionline.cFree6 = "";
- Extensionline.cFree7 = "";
- Extensionline.cFree8 = "";
- Extensionline.cFree9 = "";
- Extensionline.cFree10 = "";
- Extensionline.Colspan = Colspan;
- Extensionline.MTIME = DateTime.Now;
- Extensionline.MUSER = "JOB";
- Extensionline.MUSERName = "JOB";
- Extensionline.WorkPoint = Info.WERKS;
-
- db.ICSExtension.InsertOnSubmit(Extensionline);
- db.SubmitChanges();
- }
- else
- {
- ExtensionID = Extensionline.ID;
- }
- if (Info.LEIXING == "09")
+ if (Item.SERNP != "ZS01")
{
- var line = db.ICSOtherOut.SingleOrDefault(a => a.OutCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
- if (line == null)
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
{
- isNew = true;
- line = new Frame.Data.Entity.ICSOtherOut();
- line.ID = AppConfig.GetGuid();
- line.OutQuantity = 0;
- line.OutCode = Item.DANJU;//其他出库单号
- line.Sequence = Item.POSNR;//其他出库单行号
- line.InvCode = Item.MATNR;//物料编码
+ Colspan = Item.VBELN_VA + "~~~~" + Item.POSNR_VA + "~~~~~~~~~~";
}
- line.WorkPoint = Info.WERKS;//站点
- line.CreatePerson = Info.XINGMING;
- line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- line.Quantity = Item.LINGYSL;//领用数量
- line.Amount = 0;
- line.WHCode = Item.LGORT;//仓库
- line.Status = "1";
- line.MUSER = "JOB";
- line.MUSERName = "JOB";
- line.MTIME = DateTime.Now;
- line.ExtensionID = ExtensionID;
+ else
+ {
+ Colspan = "~~~~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = "";
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
+
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+ if (Info.LEIXING == "09")
+ {
+ var line = db.ICSOtherOut.SingleOrDefault(a => a.OutCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSOtherOut();
+ line.ID = AppConfig.GetGuid();
+ line.OutQuantity = 0;
+ line.OutCode = Item.DANJU;//其他出库单号
+ line.SAPSequence = Item.POSNR;
+ line.Sequence = LineNum.ToString();//其他出库单行号
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.WorkPoint = Info.WERKS;//站点
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ line.Status = "1";
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
- //单据类型
- line.OrderType = Info.LEIXING;
- //类型描述
- line.TypeDescribe = Info.MIAOSHU;
- //成本中心
- line.CostCenter = Info.KOSTL;
- //备注
- line.Remarks = Info.BEIZHU;
- //人员号
- line.PersonNumber = Info.PERNR;
- //物料描述
- line.InvDescribe = Item.MAKTX;
- //基本计量单位
- line.Unit = Item.MEINS;
- //特殊库存标识
- line.StockIndicator = Item.SOBKZ;
- //序列号参数
- line.IsSerialNumber = Item.SERNP;
+ //单据类型
+ line.OrderType = Info.LEIXING;
+ //类型描述
+ line.TypeDescribe = Info.MIAOSHU;
+ //成本中心
+ line.CostCenter = Info.KOSTL;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //人员号
+ line.PersonNumber = Info.PERNR;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
- if (isNew == true)
+ if (isNew == true)
+ {
+ db.ICSOtherOut.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
+ }
+ else
{
- db.ICSOtherOut.InsertOnSubmit(line);
+ var line = db.ICSOtherIn.SingleOrDefault(a => a.InCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSOtherIn();
+ line.ID = AppConfig.GetGuid();
+ line.InQuantity = 0;
+ line.InCode = Item.DANJU;//其他出库单号
+ line.Sequence = LineNum.ToString();//其他出库单行号
+ line.SAPSequence = Item.POSNR;
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.WorkPoint = Info.WERKS;//站点
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ line.Status = "1";
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
+
+ //单据类型
+ line.OrderType = Info.LEIXING;
+ //类型描述
+ line.TypeDescribe = Info.MIAOSHU;
+ //成本中心
+ line.CostCenter = Info.KOSTL;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //人员号
+ line.PersonNumber = Info.PERNR;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+ if (isNew == true)
+ {
+ db.ICSOtherIn.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
}
- db.SubmitChanges();
}
else
{
- var line = db.ICSOtherIn.SingleOrDefault(a => a.InCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
- if (line == null)
+ var SubLineInfo = SubLineInfoList.Where(a => a.DANJU == Item.DANJU);
+ foreach (SAPGetDocInfo.ZWEBS_GERNR SubInfo in SubLineInfo)
{
- isNew = true;
- line = new Frame.Data.Entity.ICSOtherIn();
- line.ID = AppConfig.GetGuid();
- line.InQuantity = 0;
- line.InCode = Item.DANJU;//其他出库单号
- line.Sequence = Item.POSNR;//其他出库单行号
- line.InvCode = Item.MATNR;//物料编码
- }
- line.WorkPoint = Info.WERKS;//站点
- line.CreatePerson = Info.XINGMING;
- line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
- line.Quantity = Item.LINGYSL;//领用数量
- line.Amount = 0;
- line.WHCode = Item.LGORT;//仓库
- line.Status = "1";
- line.MUSER = "JOB";
- line.MUSERName = "JOB";
- line.MTIME = DateTime.Now;
- line.ExtensionID = ExtensionID;
-
- //单据类型
- line.OrderType = Info.LEIXING;
- //类型描述
- line.TypeDescribe = Info.MIAOSHU;
- //成本中心
- line.CostCenter = Info.KOSTL;
- //备注
- line.Remarks = Info.BEIZHU;
- //人员号
- line.PersonNumber = Info.PERNR;
- //物料描述
- line.InvDescribe = Item.MAKTX;
- //基本计量单位
- line.Unit = Item.MEINS;
- //特殊库存标识
- line.StockIndicator = Item.SOBKZ;
- //序列号参数
- line.IsSerialNumber = Item.SERNP;
+ string ExtensionID = "";
+ bool isNew = false;
+ string Colspan = "";
+ if (Item.SOBKZ == "E")
+ {
+ Colspan = Item.VBELN_VA + "~" + SubInfo.GERNR + "~~" + Item.POSNR_VA + "~~~~~~~~~~";
+ }
+ else
+ {
+ Colspan = "~~" + SubInfo.GERNR + "~~000000~~~~~~~~~~";
+ }
+ var Extensionline = db.ICSExtension.SingleOrDefault(a => a.Colspan == Colspan && a.WorkPoint == Info.WERKS);
+ if (Extensionline == null)
+ {
+ ExtensionID = AppConfig.GetGuid();
+ Extensionline = new ICSExtension();
+ Extensionline.ID = ExtensionID;
+ if (Item.SOBKZ == "E")
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = Item.POSNR_VA;
+ Extensionline.ProjectCode = Item.VBELN_VA;
+ }
+ else
+ {
+ Extensionline.BatchCode = SubInfo.GERNR;
+ Extensionline.Version = "";
+ Extensionline.Brand = "000000";
+ Extensionline.ProjectCode = "";
+ }
+ Extensionline.cFree1 = "";
+ Extensionline.cFree2 = "";
+ Extensionline.cFree3 = "";
+ Extensionline.cFree4 = "";
+ Extensionline.cFree5 = "";
+ Extensionline.cFree6 = "";
+ Extensionline.cFree7 = "";
+ Extensionline.cFree8 = "";
+ Extensionline.cFree9 = "";
+ Extensionline.cFree10 = "";
+ Extensionline.Colspan = Colspan;
+ Extensionline.MTIME = DateTime.Now;
+ Extensionline.MUSER = "JOB";
+ Extensionline.MUSERName = "JOB";
+ Extensionline.WorkPoint = Info.WERKS;
- if (isNew == true)
- {
- db.ICSOtherIn.InsertOnSubmit(line);
+ db.ICSExtension.InsertOnSubmit(Extensionline);
+ db.SubmitChanges();
+ }
+ else
+ {
+ ExtensionID = Extensionline.ID;
+ }
+ if (Info.LEIXING == "09")
+ {
+ var line = db.ICSOtherOut.SingleOrDefault(a => a.OutCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSOtherOut();
+ line.ID = AppConfig.GetGuid();
+ line.OutQuantity = 0;
+ line.OutCode = Item.DANJU;//其他出库单号
+ line.SAPSequence = Item.POSNR;
+ line.Sequence = LineNum.ToString();//其他出库单行号
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.WorkPoint = Info.WERKS;//站点
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ line.Status = "1";
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
+
+
+ //单据类型
+ line.OrderType = Info.LEIXING;
+ //类型描述
+ line.TypeDescribe = Info.MIAOSHU;
+ //成本中心
+ line.CostCenter = Info.KOSTL;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //人员号
+ line.PersonNumber = Info.PERNR;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+
+
+ if (isNew == true)
+ {
+ db.ICSOtherOut.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
+ }
+ else
+ {
+ var line = db.ICSOtherIn.SingleOrDefault(a => a.InCode == Item.DANJU && a.Sequence == Item.POSNR && a.WorkPoint == Info.WERKS);
+ if (line == null)
+ {
+ isNew = true;
+ line = new Frame.Data.Entity.ICSOtherIn();
+ line.ID = AppConfig.GetGuid();
+ line.InQuantity = 0;
+ line.InCode = Item.DANJU;//其他出库单号
+ line.Sequence = LineNum.ToString();//其他出库单行号
+ line.SAPSequence = Item.POSNR;
+ line.InvCode = Item.MATNR;//物料编码
+ }
+ line.WorkPoint = Info.WERKS;//站点
+ line.CreatePerson = Info.XINGMING;
+ line.CreateDateTime = Convert.ToDateTime(Info.DATE_C);//检验时间
+ line.Quantity = Item.LINGYSL;//领用数量
+ line.Amount = 0;
+ line.WHCode = Item.LGORT;//仓库
+ line.Status = "1";
+ line.MUSER = "JOB";
+ line.MUSERName = "JOB";
+ line.MTIME = DateTime.Now;
+ line.ExtensionID = ExtensionID;
+
+ //单据类型
+ line.OrderType = Info.LEIXING;
+ //类型描述
+ line.TypeDescribe = Info.MIAOSHU;
+ //成本中心
+ line.CostCenter = Info.KOSTL;
+ //备注
+ line.Remarks = Info.BEIZHU;
+ //人员号
+ line.PersonNumber = Info.PERNR;
+ //物料描述
+ line.InvDescribe = Item.MAKTX;
+ //基本计量单位
+ line.Unit = Item.MEINS;
+ //特殊库存标识
+ line.StockIndicator = Item.SOBKZ;
+ //序列号参数
+ line.IsSerialNumber = Item.SERNP;
+
+ if (isNew == true)
+ {
+ db.ICSOtherIn.InsertOnSubmit(line);
+ }
+ db.SubmitChanges();
+ LineNum += 10;
+ }
}
- db.SubmitChanges();
+
}
+
}
db.Transaction.Commit();
diff --git a/WMS-BS/NFine.Web/Configs/database.config b/WMS-BS/NFine.Web/Configs/database.config
index 894039d..19c0be7 100644
--- a/WMS-BS/NFine.Web/Configs/database.config
+++ b/WMS-BS/NFine.Web/Configs/database.config
@@ -1,8 +1,8 @@
-
+
-
+