From 1440ef9f5e84ba2f4fa7b38b2dae0acbb09b0bdd Mon Sep 17 00:00:00 2001
From: ch <37327@LLOOCCY>
Date: 星期一, 10 一月 2022 08:49:21 +0800
Subject: [PATCH] 修改了 调拨单扫源单 扫条码方法 基础资料过滤组织
---
WarM/条码打印/Gy_BarCodeBill.cs | 159 ++++++++++++++++++++++++++++++++++-------------------
1 files changed, 102 insertions(+), 57 deletions(-)
diff --git "a/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs" "b/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs"
index 833372c..5dfefdc 100644
--- "a/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs"
+++ "b/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs"
@@ -688,6 +688,7 @@
string HModelName = ""; //鏈哄瀷
string HICMOBillNo = ""; //婧愬崟鍙�
string HBarCodeBatchNo = ""; //鏉$爜鎵规鍙�
+ string HBarCodeDate = ""; //鏉$爜鏃ユ湡
int k = 0;
int n = 0; //鍚屼竴鎵圭敓鎴愭潯鐮佷腑鐨勭鍑犳潯
string sTMNumber = ""; //鏉$爜鑷畾涔夊墠缂�
@@ -704,7 +705,7 @@
//鏃ユ湡鑾峰彇鏂瑰紡
sDate = dtpHDate.Value.ToShortDateString();
//
- if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�") //鍗曟嵁鏃ユ湡(鏀舵枡閫氱煡鍗�)
+ if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�" || cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�") //鍗曟嵁鏃ユ湡(鏀舵枡閫氱煡鍗�)
{
sDate = DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HDateCol].Value);
}
@@ -712,14 +713,15 @@
{
sDate = DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HEndDateCol].Value);
}
- else if (CompanyName=="澶忓疂鐢靛櫒")// 鏃ユ湡锛氱敓浜ц鍗� 鏉$爜鏃ユ湡
+ else if (CampanyName == "澶忓疂鐢靛櫒")// 鏃ユ湡锛氱敓浜ц鍗� 鏉$爜鏃ユ湡
{
sDate = DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HDateCol].Value);
}
HYasuoji= DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HPinfanCol].Value); //鍘嬬缉鏈轰唬鐮侊紙澶忓疂鐢靛櫒锛�
- HModelName= DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HMaterModelCol].Value); //鏈哄瀷锛堝瀹濈數鍣級
+ HModelName= DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HCusTypeCol].Value); //鏈哄瀷锛堝瀹濈數鍣級
HICMOBillNo = DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HSourceBillNoCol].Value); //鐢熶骇璁㈠崟鍙凤紙澶忓疂鐢靛櫒锛�
HBarCodeBatchNo= DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HPinfanBarCodeCol].Value); //鏉$爜鎵规鍙凤紙澶忓疂鐢靛櫒锛�
+ HBarCodeDate= DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HSupNumberCol].Value); //鏉$爜鏃ユ湡锛堝瀹濈數鍣級
//
sYear = ClsPub.isDate(sDate).Year.ToString().Substring(2, 2);
sPeriod = "0" + ClsPub.isDate(sDate).Month.ToString();
@@ -776,7 +778,7 @@
{
TM = HOrgNumber + HNumber + HBatchNo;
}//鍗氭棩鐗规畩澶勭悊
- else if(cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�")
+ else if(cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�" || cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�")
{
//鐗╂枡缂栫爜+鍗曟嵁鏃ユ湡锛圷YMMDD锛�+娴佹按4浣�
sTMNumber = HMaterNumber + sYear + sPeriod + sDay;
@@ -785,7 +787,7 @@
LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
LSHlen = 4;
}
- else if (cmbHBarCodeType.Text == "浠櫒鎴愬搧鏉$爜瑙勫垯")
+ else if (cmbHBarCodeType.Text == "浠櫒鎴愬搧鏉$爜瑙勫垯") //鍙﹀澶勭悊浜�
{
//鐗╂枡缂栫爜+搴忓垪鍙�+鐢熶骇鏃ユ湡
//sTMNumber = HMaterNumber + sYear + sPeriod + sDay;
@@ -806,20 +808,31 @@
{
//鍒堕�犳湰閮�1浣嶏紙榛樿1锛�+鏈哄瀷浠g爜5浣嶏紙锛�+骞�2浣�+鏈�1浣嶏紙A銆丅銆丆浠f浛10鏈堜唤锛�
//+鏃�2浣�+鏉$爜鎵规鐮�2浣�+鍘嬬缉鏈轰唬鐮�1浣�+00+娴佹按鍙�4浣�+鏍¢獙鐮侊紙榛樿0锛�
- sTMNumber = "1" + HModelName + sYear + Sub_PeriodChange(sPeriod) + sDay + HBarCodeBatchNo + HYasuoji;
+ sTMNumber = "1" + HModelName + HBarCodeDate + HBarCodeBatchNo + HYasuoji + "00" ;
Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //鑾峰彇鏈�澶ф祦姘村彿
//oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
LSHlen = 4;
+ if (sTMNumber.Length != 16)
+ {
+ MessageBox.Show("鏉$爜闀垮害涓嶅16浣嶏紝鏄惁鏁版嵁涓嶅叏锛佸埗閫犳湰閮�1浣�:[0] + 鏈哄瀷浠g爜5浣�:[" + HModelName + "] + 骞存湀鏃�5浣�:["+ HBarCodeDate + "] + 鎵规鍙�2浣�:[" + HBarCodeBatchNo + "]+ 鍘嬬缉鏈�1浣�:["+ HYasuoji + "]+00 ; ");
+ return;
+ }
}
else if (cmbHBarCodeType.Text == "澶栭攢鏈烘潯鐮�")
{
//鐗╂枡浠g爜11浣�+骞�2浣�+鏈�1浣嶏紙A銆丅銆丆浠f浛10鏈堜唤锛�+鏃�2浣�+鎵规2浣�+娴佹按鍙�4浣�
- sTMNumber = HMaterNumber + sYear + Sub_PeriodChange(sPeriod) + sDay + HBarCodeBatchNo ;
+ //sTMNumber = HMaterNumber.Replace(Convert.ToChar("."),Convert.ToChar("")) + HBarCodeDate + HBarCodeBatchNo;
+ sTMNumber = HMaterNumber.Replace( "." , "" ) + HBarCodeDate + HBarCodeBatchNo;
Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //鑾峰彇鏈�澶ф祦姘村彿
//oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
LSHlen = 4;
+ if (sTMNumber.Length != 18)
+ {
+ MessageBox.Show("鏉$爜闀垮害涓嶅18浣嶏紝鏄惁鏁版嵁涓嶅叏锛佺墿鏂欎唬鐮�11浣�:["+ HMaterNumber.Replace(".", "") + "]+骞存湀鏃�5浣�:["+ HBarCodeDate + "]+鎵规鍙�2浣�:[" + HBarCodeBatchNo + "];");
+ return;
+ }
}
else if (cmbHBarCodeType.Text == "鍗婃垚鍝佹潯鐮�")
{
@@ -875,7 +888,17 @@
//鏉$爜缂栧彿 = 鏉$爜鍓嶇紑 + 娴佹按鍙�
TM = sTMNumber + LSH2;
}
+ else if(cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�" || cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�" || cmbHBarCodeType.Text == "璇曞墏鎴愬搧鏉$爜瑙勫垯"
+ || cmbHBarCodeType.Text == "鍗婃垚鍝佹潯鐮�" || cmbHBarCodeType.Text == "澶栭攢鏈烘潯鐮�")
+ {
+ TM = sTMNumber + LSH2;
+ }
+ else if (cmbHBarCodeType.Text == "鍐呴攢鏈烘潯鐮�")
+ {
+ TM = sTMNumber + LSH2 + "0";
+ }
+ //
if (i + 1 > grdSub.Rows.Count)
{
grdSub.RowCount = grdSub.RowCount + 1;
@@ -1091,29 +1114,30 @@
}
}
- //鏈堜唤杞寲
- private string Sub_PeriodChange(string sPeriod)
- {
- if(sPeriod=="10")
- {
- return "A";
- }
- else if (sPeriod == "11")
- {
- return "B";
- }
- else if (sPeriod == "12")
- {
- return "C";
- }
- else
- {
- return sPeriod.Substring(2, 1);
- }
- }
+ ////鏈堜唤杞寲
+ //private string Sub_PeriodChange(string sPeriod)
+ //{
+ // if(sPeriod=="10")
+ // {
+ // return "A";
+ // }
+ // else if (sPeriod == "11")
+ // {
+ // return "B";
+ // }
+ // else if (sPeriod == "12")
+ // {
+ // return "C";
+ // }
+ // else
+ // {
+ // return sPeriod.Substring(1, 1);
+ // }
+ //}
- //鐢熸垚鏉$爜 鍗氭棩 //鐗╂枡缂栫爜+搴忓垪鍙�+鐢熶骇鏃ユ湡
+ //鐢熸垚鏉$爜 鍗氭棩
+ //鐗╂枡缂栫爜+搴忓垪鍙�+鐢熶骇鏃ユ湡
private void SaveBarCode_bori()
{
grdSub.Rows.Clear();
@@ -1127,7 +1151,7 @@
int HBQty = 0; //绠辨暟
double HQty = 0; //鏁伴噺
string WeiShu = ""; //灏炬暟
- int LSH = 0; //娴佹按鍙�
+ //int LSH = 0; //娴佹按鍙�
string LSH2 = ""; //娴佹按鍙疯浆鎹㈡垚瀛楃
string sDate = ""; //鏃ユ湡
string sYear = ""; //骞�
@@ -1161,25 +1185,36 @@
sDay = "0" + ClsPub.isDate(sDate).Day.ToString();
sDay = sDay.Substring(sDay.Length - 2, 2);
//==================================
- if (cmbHBarCodeType.Text == "鍞竴鏉$爜")
- {
- //鏉$爜鍓嶇紑 = 缁勭粐浠g爜 + 鐗╂枡浠g爜 + 骞� + 鏈� + 鏃�
- sTMNumber = HOrgNumber + HNumber + sYear + sPeriod + sDay;
- Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //鑾峰彇鏈�澶ф祦姘村彿
- //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
- LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
- }
- else
- {
- MessageBox.Show("閿欒鐨勬潯鐮佺被鍨嬶紝涓嶈兘鐢熸垚鏉$爜锛�");
- return;
- }
+ //if (cmbHBarCodeType.Text == "璇曞墏鎴愬搧鏉$爜瑙勫垯")
+ //{
+ // //鏉$爜鍓嶇紑 = 缁勭粐浠g爜 + 鐗╂枡浠g爜 + 骞� + 鏈� + 鏃�
+ //sTMNumber = HMaterNumber + HNumber + sYear + sPeriod + sDay;
+ // Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //鑾峰彇鏈�澶ф祦姘村彿
+ // //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
+ // LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+ //}
+ //else
+ //{
+ // MessageBox.Show("閿欒鐨勬潯鐮佺被鍨嬶紝涓嶈兘鐢熸垚鏉$爜锛�");
+ // return;
+ //}
HBQty = HBQty + ClsPub.isInt(grdMain.Rows[j].Cells[HBQtyCol].Value);
HMinQty = ClsPub.isDoule(grdMain.Rows[j].Cells[HMinQtyCol].Value);
HSumQty = ClsPub.isDoule(grdMain.Rows[j].Cells[HQtyCol].Value);
n = 0;
- for (int i = k; i < HBQty; i++)
+ //浠庨噾铦跺簭鍒楀彿琛ㄨ幏鍙栧簭鍒楀彿
+ DataSet DSet = oCn.RunProcReturn("exec h_p_CLD_GetBarCodeSno "+ ClsPub.isStrNull(grdMain.Rows[j].Cells[HMainIDCol].Value) + "," + ClsPub.isStrNull(grdMain.Rows[j].Cells[HSubIDCol].Value) + " ", "h_p_CLD_GetBarCodeSno", ref DBUtility.ClsPub.sExeReturnInfo);
+ //鐢熸垚棣栬鏍囬
+ if (DSet == null)
+ {
+ MessageBox.Show("娌℃湁杩斿洖浠讳綍缁撴灉,閲戣澏浜戝簭鍒楀彿涓嶅瓨鍦紒" + DBUtility.ClsPub.sExeReturnInfo);
+ continue;
+ }
+ //
+
+ for (int i = k; i < DSet.Tables[0].Rows.Count; i++)
+ //for (int i = k; i < HBQty; i++)
{
if (HSumQty - HMinQty > 0)
{
@@ -1199,17 +1234,18 @@
HMinQty = HSumQty;
}
//
- LSH = LSH + 1;
- LSH2 = LSH.ToString();
- while (LSH2.Length < LSHlen) //濡傛灉娴佹按鍙峰皬浜�6浣嶆暟鍓嶉潰琛�0
- {
- LSH2 = "0" + LSH2;
- }
- if (cmbHBarCodeType.Text == "鍞竴鏉$爜")
- {
+ //LSH = LSH + 1;
+ LSH2 =DBUtility.ClsPub.isStrNull(DSet.Tables[0].Rows[n]["SHNO"]);
+ //while (LSH2.Length < LSHlen) //濡傛灉娴佹按鍙峰皬浜�6浣嶆暟鍓嶉潰琛�0
+ //{
+ // LSH2 = "0" + LSH2;
+ //}
+ //if (cmbHBarCodeType.Text == "鍞竴鏉$爜")
+ //{
//鏉$爜缂栧彿 = 鏉$爜鍓嶇紑 + 娴佹按鍙�
- TM = sTMNumber + LSH2;
- }
+ //T/*M*/ = HMaterNumber + LSH2 + sYear + sPeriod + sDay;
+ TM = LSH2 + sYear + sPeriod + sDay;
+ //}
if (i + 1 > grdSub.Rows.Count)
{
@@ -1283,7 +1319,7 @@
grdSub.Rows[i].Cells[HGiveAwayFlag2Col] = oCell;
k = k + 1;
n = n + 1;
- oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
+ //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
}
}
}
@@ -2289,6 +2325,7 @@
grdMain.Rows[i].Cells[HMainIDCol].Value = oTable.Rows[0]["hmainid"].ToString();
grdMain.Rows[i].Cells[HSubIDCol].Value = oTable.Rows[0]["hsubid"].ToString();
grdMain.Rows[i].Cells[HBillNoCol].Value = oTable.Rows[0]["鍗曟嵁鍙�"].ToString();
+ grdMain.Rows[i].Cells[HSourceBillNoCol].Value = oTable.Rows[0]["鍗曟嵁鍙�"].ToString();
grdMain.Rows[i].Cells[HBillTypeCol].Value = oTable.Rows[0]["HBillType"].ToString();
grdMain.Rows[i].Cells[HDateCol].Value = oTable.Rows[0]["鏃ユ湡"].ToString(); //鍗氭棩 鏀舵枡鍗曟嵁鏃ユ湡
grdMain.Rows[i].Cells[HShowDateCol].Value = dtpHDate.Value.ToShortDateString();
@@ -2313,15 +2350,19 @@
grdMain.Rows[i].Cells[HCusNumberCol].Value = oTable.Rows[0]["瀹㈡埛浠g爜"].ToString();
grdMain.Rows[i].Cells[HCusNameCol].Value = oTable.Rows[0]["瀹㈡埛"].ToString();
grdMain.Rows[i].Cells[HCusTypeCol].Value = oTable.Rows[0]["瀹㈡埛鍨嬪彿"].ToString();
+ grdMain.Rows[i].Cells[HPinfanBarCodeCol].Value = oTable.Rows[0]["HPinfanBarCode"].ToString();
+ grdMain.Rows[i].Cells[HPinfanCol].Value = oTable.Rows[0]["HPinfan"].ToString();
//grdMain.Rows[i].Cells[HSourceIDCol].Value = oTable.Rows[0]["HSourceID"].ToString();
//grdMain.Rows[i].Cells[HSourceNumberCol].Value = oTable.Rows[0]["鐢熶骇绾夸唬鐮�"].ToString();
grdMain.Rows[i].Cells[HSourceNameCol].Value = oTable.Rows[0]["鐢熶骇绾�"].ToString();
grdMain.Rows[i].Cells[HEndDateCol].Value = oTable.Rows[0]["璁″垝瀹屽伐鏃ユ湡"].ToString();//鍗氭棩 鐢熶骇璁㈠崟 澶辨晥鏃ユ湡
- if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�" && CampanyName == "鍗氭棩绉戞妧")
+ if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�" )
{
grdMain.Rows[i].Cells[HMinQtyCol].Value = ClsPub.isDoule(oTable.Rows[0]["鏈敓鎴愭潯鐮佹暟閲�"]);
}
- else if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�" && CampanyName == "鍗氭棩绉戞妧")
+ else if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�"
+ || cmbHBarCodeType.Text == "浠櫒鎴愬搧鏉$爜瑙勫垯"
+ || cmbHBarCodeType.Text == "璇曞墏鎴愬搧鏉$爜瑙勫垯")
{
grdMain.Rows[i].Cells[HMinQtyCol].Value = "1";
}
@@ -2378,10 +2419,14 @@
grdMain.Rows[i].Cells[HUnitNameCol].Value = oTable.Rows[0]["璁¢噺鍗曚綅"].ToString();
grdMain.Rows[i].Cells[HRemarkCol].Value = oTable.Rows[0]["澶囨敞"].ToString();
grdMain.Rows[i].Cells[HMTONoCol].Value = oTable.Rows[0]["璁″垝璺熻釜鍙�"].ToString();
- if (cmbHBarCodeType.Text == "鎵规鏉$爜" && CampanyName == "鍗氭棩绉戞妧")
+ if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�")
{
grdMain.Rows[i].Cells[HMinQtyCol].Value = ClsPub.isDoule(oTable.Rows[0]["鏈敓鎴愭潯鐮佹暟閲�"]);
}
+ else if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�")
+ {
+ grdMain.Rows[i].Cells[HMinQtyCol].Value = "1";
+ }
else
{
grdMain.Rows[i].Cells[HMinQtyCol].Value = oTable.Rows[0]["鏈�灏忓寘瑁呮暟"].ToString();
--
Gitblit v1.9.1