This repo is archived. You can view files and clone it, but cannot push or open issues or pull requests.
SXS20240115/SRC/MEStc_SXS/tcENT_21674/clsENT_21674.cs

959 lines
33 KiB
C#
Raw Normal View History

2024-01-17 16:35:15 +08:00
using iMESCore.Settings;
using Microsoft.VisualBasic;
using Microsoft.VisualBasic.CompilerServices;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static iMESCore.Base.iMESComSubroutine;
using static iMESCore.Base.iMESComXML;
using static iMESCore.Base.iMESConst;
using static iMESCore.DataBase.iMESSql;
namespace MEStc_SXS
{
public class clsENT_21674 : IDisposable
{
/*使modXX,使OleDb
* (//),使data_access_service.dll
* ,使iMESAppSetting
* Xml相關,使iMESComXML.dll
* ,使iMESConst.dll
* ,使iMESComSubroutine.dll
*/
private AppSettings objSetting = new AppSettings();
private string strConnectionString; // Connection string
private string strDataBaseType; // DataBase Type:oracle, mysql, access
private string strMQType; // MessageQueue Type:TIBCO, MQSeries, MSMQ
private bool disposed = false; // To detect redundant calls
private string strSQL = "";
private string strSQLAddField;
private string strSQLAddValue;
#region --- Initial Object ---
public clsENT_21674()
{
// Get database type
strDataBaseType = objSetting.GetDataBaseType();
// Get connection string
strConnectionString = objSetting.GetConnectionString(strDataBaseType);
// Get Message Queue Type
strMQType = objSetting.GetMQType();
}
#endregion
#region --- Property ---
// //Property--------------------------------------------------------------------------------------------------------------------------------
public string ConnectionString
{
get
{
return strConnectionString;
}
}
public string DataBaseType
{
get
{
return strDataBaseType;
}
}
public string MQType
{
get
{
return strMQType;
}
}
// 2003/03/22,sammi.
// 因TC可能呼叫KC,在整個Function中,必須要使用同一個Reverse物件,如此在產生AddReverseUpdateContent的資料時,ReverseOrder才不會重覆.
// 若KC再往下呼叫UD,則必須將Reverse物件傳遞予UD.
//public object ReverseObj
//{
// get
// {
// //return objReverse;
// // ReverseObj = objReverse
// }
//}
#endregion
#region IDisposable Support
private bool disposedValue; // 偵測多餘的呼叫
// IDisposable
protected virtual void Dispose(bool disposing)
{
if (!disposedValue)
{
if (disposing)
{
// TODO: 處置 Managed 狀態 (Managed 物件)。
}
// TODO: 釋放 Unmanaged 資源 (Unmanaged 物件) 並覆寫下面的 Finalize()。
// TODO: 將大型欄位設定為 null。
}
disposedValue = true;
}
// TODO: 只有當上面的 Dispose(ByVal disposing As Boolean) 有可釋放 Unmanaged 資源的程式碼時,才覆寫 Finalize()。
// Protected Overrides Sub Finalize()
// ' 請勿變更此程式碼。在上面的 Dispose(ByVal disposing As Boolean) 中輸入清除程式碼。
// Dispose(False)
// MyBase.Finalize()
// End Sub
// 由 Visual Basic 新增此程式碼以正確實作可處置的模式。
public void Dispose()
{
// 請勿變更此程式碼。在以上的 Dispose 置入清除程式碼 (ByVal 視為布林值處置)。
Dispose(true);
GC.SuppressFinalize(this);
}
#endregion
#region --- Subcontractor ---
public string AddTeacher(string TeacherNo, string TeacherName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "")
{
string AddTeacherRet = default(string);
// 此 Function 將新增一筆資料
// 傳入值: 各欄位新增值
// 傳回值: success(成功), fail(失敗)
if (CreateDate == defDateTime)
CreateDate = DateTime.Now;
try
{
strSQLAddField = "Insert into AA_21674TEACHER (TeacherNo, TeacherName, IssueState";
strSQLAddValue = " Values ('" + TeacherNo + "','" + TeacherName + "', 0";
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 (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
AddTeacherRet = "success";
}
catch (Exception e1)
{
AddTeacherRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.AddTeacher: " & e1.Message)
return AddTeacherRet;
}
public string EditTeacher(string TeacherNo, string TeaherName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
{
string EditTeacherRet = default(string);
// 此 Function 將修改一筆資料
// 傳入值: 各欄位修改值
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update AA_21674TEACHER Set ";
if ((TeaherName ?? "") != defString)
{
strSQL += "TeacherName = '" + TeaherName + "',";
}
if ((Description ?? "") != defString)
{
strSQL += "Description = '" + Description + "',";
}
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 TeacherNo ='" + TeacherNo + "'";
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
EditTeacherRet = "success";
}
catch (Exception e1)
{
EditTeacherRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.EditTeacher: " & e1.Message)
return EditTeacherRet;
}
public string DelTeacher(string TeacherNo, string AdditionalXml = "")
{
string DelTeacherRet = default(string);
// 此 Function 將刪除資料
// 傳入值: 刪除的索引值
// 傳回值: success(成功), fail(失敗)
var CollectionSQL = new Collection();
try
{
// 1. 刪除Contactor
//strSQL = "Delete From AA_21674TEACHERCont " + "Where TeacherNo='" + TeacherNo + "'";
//CollectionSQL.Add(strSQL);
// 2. 刪除主檔
strSQL = "Delete From AA_21674TEACHER " + " Where TeacherNo ='" + TeacherNo + "'";
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
CollectionSQL.Add(strSQL);
// 呼叫執行SQL指令
ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL);
// //Return success
DelTeacherRet = "success";
}
catch (Exception e1)
{
DelTeacherRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.DelTeacher: " & e1.Message)
return DelTeacherRet;
}
public string LoadTeacher(string TeacherNo = defString, int IssueState = defInteger, string AdditionalXml = "")
{
string LoadTeacherRet = default(string);
// 此 Function 將資料以XML方式取出
// 傳入值: 索引值
// 傳回值: XML(成功), fail(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From AA_21674TEACHER Where TeacherNo Is Not Null";
if ((TeacherNo ?? "") != defString)
{
strSQL += " And TeacherNo = '" + TeacherNo + "'";
}
if (IssueState != defInteger)
{
strSQL += " And IssueState = " + IssueState;
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "AA_21674TEACHER", cnnTemp);
// //Combine return value
LoadTeacherRet = CombineXMLReturnValue("LoadTeacher", "AA_21674TEACHER", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
}
catch (Exception e1)
{
LoadTeacherRet = "fail";
throw;
} // New Exception("kcENT.LoadTeacher: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return LoadTeacherRet;
}
public DataSet ShowSubcontractor(string TeacherNo = defString, int IssueState = defInteger, string AdditionalXml = "")
{
DataSet ShowSubcontractorRet = default(DataSet);
// 此 Function 將資料以 Dataset 方式取出
// 傳入值: 索引值
// 傳回值: Dataset(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From AA_21674TEACHER Where TeacherNo Is Not Null";
if ((TeacherNo ?? "") != defString)
{
strSQL += " And TeacherNo = '" + TeacherNo + "'";
}
if (IssueState != defInteger)
{
strSQL += " And IssueState = " + IssueState;
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "AA_21674TEACHER", cnnTemp);
// //Return data
ShowSubcontractorRet = dsENT;
}
catch (Exception e1)
{
ShowSubcontractorRet = null;
throw;
} // New Exception("kcENT.ShowSubcontractor: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return ShowSubcontractorRet;
}
public DataRow GetSubcontractor(string TeacherNo = defString, int IssueState = defInteger, string AdditionalXml = "")
{
DataRow GetSubcontractorRet = default(DataRow);
// 此 Function 將資料以 DataRow 方式取出
// 傳入值: 索引值
// 傳回值: DataRow(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From AA_21674TEACHER Where TeacherNo Is Not Null";
if ((TeacherNo ?? "") != defString)
{
strSQL += " And TeacherNo = '" + TeacherNo + "'";
}
if (IssueState != defInteger)
{
strSQL += " And IssueState = " + IssueState;
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "AA_21674TEACHER", cnnTemp);
// //Return data
if (dsENT.Tables[0].Rows.Count > 0)
{
GetSubcontractorRet = dsENT.Tables[0].Rows[0];
}
else
{
GetSubcontractorRet = dsENT.Tables[0].NewRow();
}
}
catch (Exception e1)
{
GetSubcontractorRet = null;
throw;
} // New Exception("kcENT.GetSubcontractor: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return GetSubcontractorRet;
}
public string SetTeacherIssueState(string TeacherNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
{
string SetTeacherIssueStateRet = default(string);
// 此 Function 將修改IssueState欄位的值
// 傳入值: IssueState修改後的值及VendorNo
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update AA_21674TEACHER Set IssueState = " + IssueState + ",";
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 ,";
if (Strings.InStr(1, strSQL, ",") != 0) // 表示有要修改的欄位
{
if (Strings.Right(strSQL, 1) == ",")
{
strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1);
}
strSQL = strSQL + " Where TeacherNo ='" + TeacherNo + "'";
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
// 呼叫執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
}
// //Return success
SetTeacherIssueStateRet = "success";
}
catch (Exception e1)
{
SetTeacherIssueStateRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.SetTeacherIssueState: " & e1.Message)
return SetTeacherIssueStateRet;
}
public string AddSubcontractorCont(string TeacherNo, string TeaherName, 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 AddSubcontractorContRet = default(string);
// 此 Function 將新增一筆資料
// 傳入值: 各欄位新增值
// 傳回值: success(成功), fail(失敗)
try
{
strSQLAddField = "Insert into AA_21674TEACHERCont (TeacherNo, TeaherName";
strSQLAddValue = " Values ('" + TeacherNo + "','" + TeaherName + "'";
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 (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 EditTeacherCont(string TeacherNo, string TeaherName, 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 EditTeacherContRet = default(string);
// 此 Function 將修改一筆資料
// 傳入值: 各欄位修改值
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update AA_21674TEACHERCont 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 (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 TeacherNo = '" + TeacherNo + "'" + " And TeaherName ='" + TeaherName + "'";
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
EditTeacherContRet = "success";
}
catch (Exception e1)
{
EditTeacherContRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.EditTeacherCont: " & e1.Message)
return EditTeacherContRet;
}
public string DelTeacherCont(string TeacherNo, string TeaherName = defString, string AdditionalXml = "")
{
string DelTeacherContRet = default(string);
// 此 Function 將刪除資料
// 傳入值: 刪除的索引值
// 傳回值: success(成功), fail(失敗)
try
{
strSQL = "Delete From AA_21674TEACHERCont " + " Where TeacherNo='" + TeacherNo + "'";
if ((TeaherName ?? "") != defString)
{
strSQL += " And TeaherName = '" + TeaherName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// 呼叫執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
// //Return success
DelTeacherContRet = "success";
}
catch (Exception e1)
{
DelTeacherContRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.DelTeacherCont: " & e1.Message)
return DelTeacherContRet;
}
public string LoadTeaherCont(string TeacherNo = defString, string TeaherContName = defString, string AdditionalXml = "")
{
string LoadTeaherContRet = default(string);
// 此 Function 將資料以XML方式取出
// 傳入值: 索引值
// 傳回值: XML(成功), fail(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From AA_21674TEACHERCont Where TeacherNo Is Not Null";
// 有傳入TeacherNo表示只取該TeacherNo之資料
if ((TeacherNo ?? "") != defString)
{
strSQL += " And TeacherNo = '" + TeacherNo + "'";
}
if ((TeaherContName ?? "") != defString)
{
strSQL += " And TeaherName = '" + TeaherContName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "AA_21674TEACHERCont", cnnTemp);
// //Combine return value
LoadTeaherContRet = CombineXMLReturnValue("LoadTeaherCont", "AA_21674TEACHERCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
}
catch (Exception e1)
{
LoadTeaherContRet = "fail";
throw;
} // New Exception("kcENT.LoadTeaherCont: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return LoadTeaherContRet;
}
public DataSet ShowSubcontractorCont(string TeacherNo = defString, string TeaherName = defString, string AdditionalXml = "")
{
DataSet ShowSubcontractorContRet = default(DataSet);
// 此 Function 將資料以 Dataset 方式取出
// 傳入值: 索引值
// 傳回值: Dataset(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From AA_21674TEACHERCont Where TeacherNo Is Not Null";
if ((TeacherNo ?? "") != defString)
{
strSQL += " And TeacherNo = '" + TeacherNo + "'";
}
if ((TeaherName ?? "") != defString)
{
strSQL += " And TeaherName = '" + TeaherName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "AA_21674TEACHERCont", cnnTemp);
// //Return data
ShowSubcontractorContRet = dsENT;
}
catch (Exception e1)
{
ShowSubcontractorContRet = null;
throw;
} // New Exception("kcENT.ShowSubcontractorCont: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return ShowSubcontractorContRet;
}
public DataRow GetSubcontractorCont(string TeacherNo = defString, string TeaherName = defString, string AdditionalXml = "")
{
DataRow GetSubcontractorContRet = default(DataRow);
// 此 Function 將資料以 DataRow 方式取出
// 傳入值: 索引值
// 傳回值: DataRow(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From AA_21674TEACHERCont Where TeacherNo Is Not Null";
if ((TeacherNo ?? "") != defString)
{
strSQL += " And TeacherNo = '" + TeacherNo + "'";
}
if ((TeaherName ?? "") != defString)
{
strSQL += " And TeaherName = '" + TeaherName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "AA_21674TEACHERCont", cnnTemp);
// //Return data
if (dsENT.Tables[0].Rows.Count > 0)
{
GetSubcontractorContRet = dsENT.Tables[0].Rows[0];
}
else
{
GetSubcontractorContRet = dsENT.Tables[0].NewRow();
}
}
catch (Exception e1)
{
GetSubcontractorContRet = null;
throw;
} // New Exception("kcENT.GetSubcontractorCont: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return GetSubcontractorContRet;
}
#endregion
}
}