【修改】代码添加

This commit is contained in:
郭锦华 2024-01-17 16:35:18 +08:00
parent b5910bc129
commit f5f65379fc
2 changed files with 370 additions and 25 deletions

View File

@ -13,7 +13,7 @@ using static iMESCore.Base.iMESConst;
using static iMESCore.DataBase.iMESSql;
namespace MEStc_SXS
{
public class clsENT : IDisposable
public class clsENT : IDisposable
{
/*使modXX,使OleDb
* (//),使data_access_service.dll
@ -32,7 +32,7 @@ namespace MEStc_SXS
private string strSQL = "";
private string strSQLAddField;
private string strSQLAddValue;
#region --- Initial Object ---
public clsENT()
@ -139,7 +139,7 @@ namespace MEStc_SXS
try
{
strSQLAddField = "Insert into tblENTSubcontractor (SubcontractorNo, SubcontractorName, IssueState";
strSQLAddField = "Insert into tblENTSubcontractor_21706 (SubcontractorNo, SubcontractorName, IssueState";
strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0";
if ((Description ?? "") != defString)
@ -190,6 +190,75 @@ namespace MEStc_SXS
}
public string AddSubcontractorCustom(string SubcontractorNo, string SubcontractorName, string NotNull, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string Note21706 = defString, string AdditionalXml = "")
{
string AddSubcontractorRet = default(string);
// 此 Function 为用作练习之自定义 Function
// 此 Function 將新增一筆資料
// 傳入值: 各欄位新增值
// 傳回值: success(成功), fail(失敗)
if (CreateDate == defDateTime)
CreateDate = DateTime.Now;
try
{
// 插入供货商编号、供货商名称、签核状态、自定义非空字段
strSQLAddField = "Insert into tblENTSubcontractor_21706 (SubcontractorNo, SubcontractorName, IssueState, NotNull";
strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0, '" + NotNull + "'";
// 插入描述、创建人、创建日期、自定义字段
if ((Description ?? "") != defString)
{
strSQLAddField += ",Description";
strSQLAddValue += ",'" + Description + "'";
}
if ((Creator ?? "") != defString)
{
strSQLAddField += ",Creator";
strSQLAddValue += ",'" + Creator + "'";
}
if (CreateDate != defDateTime)
{
strSQLAddField += ",CreateDate";
strSQLAddValue += ", To_Date('" + Strings.Format(Conversions.ToDate(CreateDate), "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')";
}
if ((Note21706 ?? "") != defString)
{
strSQLAddField += ",Note21706";
strSQLAddValue += ",'" + Note21706 + "'";
}
if (string.IsNullOrEmpty(AdditionalXml))
{
// 當沒有額外的欄位時,直接給定strSQL
strSQL = strSQLAddField + ")" + strSQLAddValue + ")";
}
else
{
// 加上additional的field & value 後傳回
strSQL = SeparateAddXML_Add(ref strSQLAddField, ref strSQLAddValue, AdditionalXml);
}
// //執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
// //Return success
AddSubcontractorRet = "success";
}
catch (Exception e1)
{
AddSubcontractorRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.AddSubcontractor: " & e1.Message)
return AddSubcontractorRet;
}
public string EditSubcontractor(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
{
string EditSubcontractorRet = default(string);
@ -200,7 +269,7 @@ namespace MEStc_SXS
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblENTSubcontractor Set ";
strSQL = "Update tblENTSubcontractor_21706 Set ";
if ((SubcontractorName ?? "") != defString)
{
@ -264,6 +333,93 @@ namespace MEStc_SXS
return EditSubcontractorRet;
}
public string EditSubcontractorCustom(string SubcontractorNo, string SubcontractorName = defString, string NotNull = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime), string Note21706 = defString)
{
string EditSubcontractorRet = default(string);
// 此 Function 为用作练习之自定义 Function
// 此 Function 將修改一筆資料
// 傳入值: 各欄位修改值
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblENTSubcontractor_21706 Set ";
if ((SubcontractorName ?? "") != defString)
{
strSQL += "SubcontractorName = '" + SubcontractorName + "',";
}
if ((Description ?? "") != defString)
{
strSQL += "Description = '" + Description + "',";
}
// 以下为自定义字段
if ((NotNull ?? "") != defString)
{
strSQL += "NotNull = '" + NotNull + "',";
}
if ((Note21706 ?? "") != defString)
{
strSQL += "Note21706 = '" + Note21706 + "',";
}
if (Reviser != defString)
strSQL = strSQL + "Reviser = '" + Reviser + "',";
if (ReviseDate != defDateTime)
strSQL = strSQL + "ReviseDate = To_Date('" + Strings.Format(ReviseDate, "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS'),";
if (DataStamp != defInteger)
strSQL = strSQL + "DataStamp = DataStamp + 1 ,";
// 有額外的欄位時再Append進原來的strSQL中
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的field & value
strSQL += SeparateAddXML_Edit(AdditionalXml);
}
// 去除strSQL中最後一個 ","
if (Strings.InStr(1, strSQL, ",") != 0) // 表示有要修改的欄位
{
if (Strings.Right(strSQL, 1) == ",")
{
strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1);
}
strSQL += " Where SubcontractorNo ='" + SubcontractorNo + "'";
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
// 有額外的條件式時再Append進原來的strSQL中
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// 呼叫執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
}
// //Return success
EditSubcontractorRet = "success";
}
catch (Exception e1)
{
EditSubcontractorRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.EditSubcontractor: " & e1.Message)
return EditSubcontractorRet;
}
public string DelSubcontractor(string SubcontractorNo, string AdditionalXml = "")
{
string DelSubcontractorRet = default(string);
@ -275,11 +431,11 @@ namespace MEStc_SXS
try
{
// 1. 刪除Contactor
strSQL = "Delete From tblENTSubcontractorCont " + "Where SubcontractorNo='" + SubcontractorNo + "'";
strSQL = "Delete From tblENTSubcontractorCont_21706 " + "Where SubcontractorNo='" + SubcontractorNo + "'";
CollectionSQL.Add(strSQL);
// 2. 刪除主檔
strSQL = "Delete From tblENTSubcontractor " + " Where SubcontractorNo ='" + SubcontractorNo + "'";
strSQL = "Delete From tblENTSubcontractor_21706 " + " Where SubcontractorNo ='" + SubcontractorNo + "'";
if (!string.IsNullOrEmpty(AdditionalXml))
{
@ -323,7 +479,7 @@ namespace MEStc_SXS
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null";
strSQL = "Select * From tblENTSubcontractor_21706 Where SubcontractorNo Is Not Null";
if ((SubcontractorNo ?? "") != defString)
{
@ -342,10 +498,10 @@ namespace MEStc_SXS
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor", cnnTemp);
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21706", cnnTemp);
// //Combine return value
LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21706", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
}
catch (Exception e1)
@ -383,7 +539,7 @@ namespace MEStc_SXS
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null";
strSQL = "Select * From tblENTSubcontractor_21706 Where SubcontractorNo Is Not Null";
if ((SubcontractorNo ?? "") != defString)
{
@ -402,7 +558,7 @@ namespace MEStc_SXS
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor", cnnTemp);
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21706", cnnTemp);
// //Return data
ShowSubcontractorRet = dsENT;
@ -443,7 +599,7 @@ namespace MEStc_SXS
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null";
strSQL = "Select * From tblENTSubcontractor_21706 Where SubcontractorNo Is Not Null";
if ((SubcontractorNo ?? "") != defString)
{
@ -462,7 +618,7 @@ namespace MEStc_SXS
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor", cnnTemp);
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21706", cnnTemp);
// //Return data
if (dsENT.Tables[0].Rows.Count > 0)
@ -503,7 +659,7 @@ namespace MEStc_SXS
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblENTSubcontractor Set IssueState = " + IssueState + ",";
strSQL = "Update tblENTSubcontractor_21706 Set IssueState = " + IssueState + ",";
if (Reviser != defString)
strSQL = strSQL + "Reviser = '" + Reviser + "',";
@ -554,7 +710,7 @@ namespace MEStc_SXS
try
{
strSQLAddField = "Insert into tblENTSubcontractorCont (SubcontractorNo, ContactorName";
strSQLAddField = "Insert into tblENTSubcontractorCont_21706 (SubcontractorNo, ContactorName";
strSQLAddValue = " Values ('" + SubcontractorNo + "','" + ContactorName + "'";
if ((TelNo ?? "") != defString)
@ -630,6 +786,98 @@ namespace MEStc_SXS
}
public string AddSubcontractorContCustom(string SubcontractorNo, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description = defString, string AdditionalXml = "", string Creator = defString, DateTime CreateDate = default(DateTime), string Note21706 = defString)
{
string AddSubcontractorContRet = default(string);
// 此 Function 为用作练习之自定义 Function
// 此 Function 將新增一筆資料
// 傳入值: 各欄位新增值
// 傳回值: success(成功), fail(失敗)
try
{
strSQLAddField = "Insert into tblENTSubcontractorCont_21706 (SubcontractorNo, ContactorName";
strSQLAddValue = " Values ('" + SubcontractorNo + "','" + ContactorName + "'";
if ((TelNo ?? "") != defString)
{
strSQLAddField += ",TelNo";
strSQLAddValue += ",'" + TelNo + "'";
}
if ((FaxNo ?? "") != defString)
{
strSQLAddField += ",FaxNo";
strSQLAddValue += ",'" + FaxNo + "'";
}
if ((Title ?? "") != defString)
{
strSQLAddField += ",Title";
strSQLAddValue += ",'" + Title + "'";
}
if ((Address ?? "") != defString)
{
strSQLAddField += ",Address";
strSQLAddValue += ",'" + Address + "'";
}
if ((EMail ?? "") != defString)
{
strSQLAddField += ",EMail";
strSQLAddValue += ",'" + EMail + "'";
}
if ((Description ?? "") != defString)
{
strSQLAddField += ",Description";
strSQLAddValue += ",'" + Description + "'";
}
if (Creator != defString)
{
strSQLAddField = strSQLAddField + ",Creator";
strSQLAddValue = strSQLAddValue + ",'" + Creator + "'";
}
if (CreateDate != defDateTime)
{
strSQLAddField = strSQLAddField + ",CreateDate";
strSQLAddValue = strSQLAddValue + ", To_Date('" + Strings.Format(CreateDate, "yyyy/MM/dd HH:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')";
}
// 以下为自定义字段
if ((Note21706 ?? "") != defString)
{
strSQLAddField += ",Note21706";
strSQLAddValue += ",'" + Note21706 + "'";
}
if (string.IsNullOrEmpty(AdditionalXml))
{
// 當沒有額外的欄位時,直接給定strSQL
strSQL = strSQLAddField + ")" + strSQLAddValue + ")";
}
else
{
// 加上additional的field & value 後傳回
strSQL = SeparateAddXML_Add(ref strSQLAddField, ref strSQLAddValue, AdditionalXml);
}
// //執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
// //Return success
AddSubcontractorContRet = "success";
}
catch (Exception e1)
{
AddSubcontractorContRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.AddSubcontractorCont: " & e1.Message)
return AddSubcontractorContRet;
}
public string EditSubcontractorCont(string SubcontractorNo, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
{
@ -642,7 +890,7 @@ namespace MEStc_SXS
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblENTSubcontractorCont Set ";
strSQL = "Update tblENTSubcontractorCont_21706 Set ";
if ((TelNo ?? "") != defString)
{
@ -723,6 +971,103 @@ namespace MEStc_SXS
}
public string EditSubcontractorContCustom(string SubcontractorNo, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime), string Note21706 = defString)
{
string EditSubcontractorContRet = default(string);
// 此 Function 为用作练习之自定义 Function
// 此 Function 將修改一筆資料
// 傳入值: 各欄位修改值
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblENTSubcontractorCont_21706 Set ";
if ((TelNo ?? "") != defString)
{
strSQL += "TelNo = '" + TelNo + "',";
}
if ((FaxNo ?? "") != defString)
{
strSQL += "FaxNo = '" + FaxNo + "',";
}
if ((Title ?? "") != defString)
{
strSQL += "Title = '" + Title + "',";
}
if ((Address ?? "") != defString)
{
strSQL += "Address = '" + Address + "',";
}
if ((EMail ?? "") != defString)
{
strSQL += "EMail = '" + EMail + "',";
}
if ((Description ?? "") != defString)
{
strSQL += "Description = '" + Description + "',";
}
// 以下为自定义字段
if ((Note21706 ?? "") != defString)
{
strSQL += "Note21706 = '" + Note21706 + "',";
}
if (Reviser != defString)
strSQL = strSQL + "Reviser = '" + Reviser + "',";
if (ReviseDate != defDateTime)
strSQL = strSQL + "ReviseDate = To_Date('" + Strings.Format(ReviseDate, "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS'),";
if (DataStamp != defInteger)
strSQL = strSQL + "DataStamp = DataStamp + 1 ,";
// 有額外的欄位時再Append進原來的strSQL中
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的field & value
strSQL += SeparateAddXML_Edit(AdditionalXml);
}
// 去除strSQL中最後一個 ","
if (Strings.InStr(1, strSQL, ",") != 0) // 表示有要修改的欄位
{
if (Strings.Right(strSQL, 1) == ",")
{
strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1);
}
strSQL += " Where SubcontractorNo = '" + SubcontractorNo + "'" + " And ContactorName ='" + ContactorName + "'";
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
// 有額外的條件式時再Append進原來的strSQL中
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// 呼叫執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
}
// //Return success
EditSubcontractorContRet = "success";
}
catch (Exception e1)
{
EditSubcontractorContRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.EditSubcontractorCont: " & e1.Message)
return EditSubcontractorContRet;
}
public string DelSubcontractorCont(string SubcontractorNo, string ContactorName = defString, string AdditionalXml = "")
{
string DelSubcontractorContRet = default(string);
@ -732,7 +1077,7 @@ namespace MEStc_SXS
try
{
strSQL = "Delete From tblENTSubcontractorCont " + " Where SubcontractorNo='" + SubcontractorNo + "'";
strSQL = "Delete From tblENTSubcontractorCont_21706 " + " Where SubcontractorNo='" + SubcontractorNo + "'";
if ((ContactorName ?? "") != defString)
{
@ -779,7 +1124,7 @@ namespace MEStc_SXS
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null";
strSQL = "Select * From tblENTSubcontractorCont_21706 Where SubcontractorNo Is Not Null";
// 有傳入SubcontractorNo表示只取該SubcontractorNo之資料
if ((SubcontractorNo ?? "") != defString)
@ -799,10 +1144,10 @@ namespace MEStc_SXS
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp);
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21706", cnnTemp);
// //Combine return value
LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21706", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
}
catch (Exception e1)
@ -841,7 +1186,7 @@ namespace MEStc_SXS
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null";
strSQL = "Select * From tblENTSubcontractorCont_21706 Where SubcontractorNo Is Not Null";
if ((SubcontractorNo ?? "") != defString)
{
strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'";
@ -859,7 +1204,7 @@ namespace MEStc_SXS
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp);
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21706", cnnTemp);
// //Return data
ShowSubcontractorContRet = dsENT;
@ -901,7 +1246,7 @@ namespace MEStc_SXS
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null";
strSQL = "Select * From tblENTSubcontractorCont_21706 Where SubcontractorNo Is Not Null";
if ((SubcontractorNo ?? "") != defString)
{
strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'";
@ -919,7 +1264,7 @@ namespace MEStc_SXS
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp);
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21706", cnnTemp);
// //Return data
if (dsENT.Tables[0].Rows.Count > 0)

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ReferencePath>E:\code\SRC\MES_S_DLL\</ReferencePath>
<ReferencePath>E:\code\SRC\MES_S_DLL\;E:\Project\digihua\iMES\SYS20240115\SRC\MES_S_DLL\;E:\Project\digihua\iMES\SYS20240115\SRC\MEStc_SXS\</ReferencePath>
</PropertyGroup>
</Project>