|
|
@@ -87,7 +87,15 @@ namespace UAS_LabelMachine
|
|
|
private void GenerateBarCode_Click(object sender, EventArgs e)
|
|
|
{
|
|
|
//获取编码规则
|
|
|
- DataTable Nr = (DataTable)dh.ExecuteSql("select nrd_detno,nrd_name,nrd_type,nrd_sql,nrd_length from NoRuleDetail left join norule on nrd_nrid=nr_id where nr_code='" + CustCode + "' order by nrd_detno", "select");
|
|
|
+ DataTable Nr = (DataTable)dh.ExecuteSql("select nrd_detno,nrd_name,nrd_type,nrd_sql,nrd_length from NoRuleDetail left join norule on nrd_nrid=nr_id where nr_custcode='" + CustCode + "' order by nrd_detno", "select");
|
|
|
+ //如果没有则取公共规则
|
|
|
+ if (Nr.Rows.Count == 0)
|
|
|
+ Nr = (DataTable)dh.ExecuteSql("select nrd_detno,nrd_name,nrd_type,nrd_sql,nrd_length from NoRuleDetail left join norule on nrd_nrid=nr_id where nr_custcode is null and nr_isdefault <> 0 order by nrd_detno", "select");
|
|
|
+ if (Nr.Rows.Count == 0)
|
|
|
+ {
|
|
|
+ MessageBox.Show("未维护任何条码规则");
|
|
|
+ return;
|
|
|
+ }
|
|
|
//用于过滤参数的正则表达式
|
|
|
Regex match = new Regex("{\\w+}");
|
|
|
//用于存放每一项的明细的数据
|
|
|
@@ -426,7 +434,7 @@ namespace UAS_LabelMachine
|
|
|
//获取编码规则编号
|
|
|
NrCode = dh.getFieldDataByCondition("NoRule", "nr_code", "nr_custcode='" + CustCode + "'").ToString();
|
|
|
//获取编码规则
|
|
|
- DataTable Nr = (DataTable)dh.ExecuteSql("select nrd_detno,nrd_name,nrd_type,nrd_sql,nrd_length from NoRuleDetail left join norule on nrd_nrid=nr_id where nr_code='" + CustCode + "' order by nrd_detno", "select");
|
|
|
+ DataTable Nr = (DataTable)dh.ExecuteSql("select nrd_detno,nrd_name,nrd_type,nrd_sql,nrd_length from NoRuleDetail left join norule on nrd_nrid=nr_id where nr_custcode='" + CustCode + "' order by nrd_detno", "select");
|
|
|
//用于过滤参数的正则表达式
|
|
|
Regex match = new Regex("{\\w+}");
|
|
|
//用于存放每一项的明细的数据
|
|
|
@@ -471,7 +479,7 @@ namespace UAS_LabelMachine
|
|
|
break;
|
|
|
//流水需要通过MaxNumber去取
|
|
|
case "流水":
|
|
|
- NrData[m] = dh.getFieldDataByCondition("RuleMaxNum", "rmn_maxnumber", "rmn_nrcode='" + CustCode + "'").ToString();
|
|
|
+ NrData[m] = dh.getFieldDataByCondition("RuleMaxNum", "rmn_maxnumber", "rmn_nrcode='" + NrCode + "'").ToString();
|
|
|
NrDic.Add(m, NrData[m]);
|
|
|
//设置当前流水
|
|
|
custserialnum = int.Parse(NrData[m] == "" ? "0" : NrData[m]);
|