diff --git a/SRC/MESAgent/AutoLoaderLib/Properties/BuildIncrementVersionInfo.cs b/SRC/MESAgent/AutoLoaderLib/Properties/BuildIncrementVersionInfo.cs deleted file mode 100644 index cc37e81..0000000 --- a/SRC/MESAgent/AutoLoaderLib/Properties/BuildIncrementVersionInfo.cs +++ /dev/null @@ -1 +0,0 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.31114")] diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/wsSXS.csproj.user b/SRC/MESAgent/MESAutoRun/AutoRunLib/AutoRunLib_C.csproj.user similarity index 70% rename from SRC/MESWin/SYS4/21670ll/wsSXS/wsSXS.csproj.user rename to SRC/MESAgent/MESAutoRun/AutoRunLib/AutoRunLib_C.csproj.user index 3c48538..86ccdc7 100644 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/wsSXS.csproj.user +++ b/SRC/MESAgent/MESAutoRun/AutoRunLib/AutoRunLib_C.csproj.user @@ -1,6 +1,6 @@  - E:\code\SRC\MES_S_DLL\ + D:\Digiwin\IMES\Temp\WXLJW\AutoRunService\ \ No newline at end of file diff --git a/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj.vspscc b/SRC/MESAgent/MESAutoRun/AutoRunLib/AutoRunLib_C.csproj.vspscc similarity index 100% rename from SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj.vspscc rename to SRC/MESAgent/MESAutoRun/AutoRunLib/AutoRunLib_C.csproj.vspscc diff --git a/SRC/MESAgent/MESAutoRun/AutoRunLib/clsAutoRunLibrary.cs b/SRC/MESAgent/MESAutoRun/AutoRunLib/clsAutoRunLibrary.cs index 379e6b8..a6bf569 100644 --- a/SRC/MESAgent/MESAutoRun/AutoRunLib/clsAutoRunLibrary.cs +++ b/SRC/MESAgent/MESAutoRun/AutoRunLib/clsAutoRunLibrary.cs @@ -1143,7 +1143,9 @@ namespace AutoRunLib_C #endregion #region 客製JobName + public void fun_c_Test(){ + } #endregion diff --git a/SRC/MESAgent/MESIEW/IEWService/IEWService.Designer.cs b/SRC/MESAgent/MESIEW/IEWService/IEWService.Designer.cs new file mode 100644 index 0000000..64c6200 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/IEWService.Designer.cs @@ -0,0 +1,73 @@ +using System; +using System.Diagnostics; +using System.ServiceProcess; + +namespace IEWService +{ + + [Microsoft.VisualBasic.CompilerServices.DesignerGenerated()] + public partial class IEWService : ServiceBase + { + + // UserService 覆寫 Dispose 以清除元件清單。 + [DebuggerNonUserCode()] + protected override void Dispose(bool disposing) + { + try + { + if (disposing && components != null) + { + components.Dispose(); + } + } + finally + { + base.Dispose(disposing); + } + } + + // 處理序的主要進入點 + [MTAThread()] + [DebuggerNonUserCode()] + public static void Main() + { + ServiceBase[] ServicesToRun; + + // 在同一個處理序中可以執行多個 NT 服務。若要在這個處理序中 + // 加入另一項服務,請修改下行程式碼, + // 以建立第二個服務物件。例如, + // + // ServicesToRun = New System.ServiceProcess.ServiceBase () {New IEWService, New MySecondUserService} + // + ServicesToRun = new ServiceBase[] { new IEWService() }; + + Run(ServicesToRun); + } + + // 為元件設計工具的必要項 + private System.ComponentModel.IContainer components; + + // 注意: 以下為元件設計工具的所需的程序 + // 您可以使用元件設計工具進行修改。 + // 請不要使用程式碼編輯器進行修改。 + [DebuggerStepThrough()] + private void InitializeComponent() + { + TimerCheckEvent = new System.Timers.Timer(); + TimerCheckEvent.Elapsed += new System.Timers.ElapsedEventHandler(TimerCheckEvent_Elapsed); + ((System.ComponentModel.ISupportInitialize)TimerCheckEvent).BeginInit(); + // + // TimerCheckEvent + // + TimerCheckEvent.Interval = 300000.0d; + // + // IEWService + // + ServiceName = "MES IEW Service"; + ((System.ComponentModel.ISupportInitialize)TimerCheckEvent).EndInit(); + + } + internal System.Timers.Timer TimerCheckEvent; + + } +} \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/IEWService.cs b/SRC/MESAgent/MESIEW/IEWService/IEWService.cs new file mode 100644 index 0000000..46b2a1c --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/IEWService.cs @@ -0,0 +1,2824 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.ComponentModel; +using static System.Configuration.ConfigurationManager; +using System.Data; +using System.Diagnostics; +using System.IO; +using System.Runtime.CompilerServices; +using System.Xml; +using Microsoft.VisualBasic; +using Microsoft.VisualBasic.CompilerServices; +using static iMESCore.DataBase.iMESSql; + +namespace IEWService +{ + + public partial class IEWService + { + + #region 列舉型別 + + public enum ExecuteResultEnum : int + { + SUCCESS = 0, // 成功 + FAIL = 1 // 失敗 + } + + // 警示DB類型 + public enum AlertDBTypeEnum : int + { + RealTime = 0, // 即時資料庫 + History = 1 // 歷史資料庫 + } + + // 警示類型 + // 2014/01/17 YF, 加入PRD & OP + public enum AlertTypeEnum : int + { + ERF = 1, // ERFNo + LOT = 2, // LotNo + EQP = 3, // EQPNo + ACC = 4, // AccNo + MO = 5, // MONo + PRD = 6, // PRD + OP = 7 // OP + } + + // 資料型態 + public enum DataTypeEnum : int + { + NumericType = 0, // 數值型態 + StringType = 1, // 字串型態 + DateTimeType = 3 // 日期型態 + } + + // 條件週期 + public enum DataPeriodEnum : int + { + Minute = 0, // 分鐘 + Hour = 1, // 小時 + Day = 2, // 天 + Month = 3 // 月 + } + + // 警示事件類型 + public enum AlertEventTypeEnum : int + { + DEF = 0, // 預設事件 + CUS = 1 // 自定義事件 + } + + #endregion + private const int CHECKEVENT_INTERVAL = 300; // 每隔300秒鐘, 檢查是否有符合週期的預警事件 + + private int MAX_RUNNINGJOB_COUNT = 5; // 允許同時執行預警事件數量 + private BackgroundWorker[] workers; // 用來執行預警事件的執行緒 + private BackgroundWorker WorkerMain; // 主執行緒, 用來啟動Event, EventLog, AutoRunLog and Delivery執行緒 + private BackgroundWorker WorkerEvent; // 預警事件執行緒, 指派QueueEvent的預警事件給workers + private BackgroundWorker WorkerEventLog; // 預警事件Log執行緒, 將QueueEventLog的資料寫入資料庫 + private BackgroundWorker WorkerAutoRunLog; // AutoRunLog執行緒, 將QueueAutoRunLog的資料寫入資料庫 + private BackgroundWorker WorkerDelivery; // 派送執行緒, 派送QueueDelivery的資料 + + private IEWQueue _QueueEvent; + + private IEWQueue QueueEvent + { + [MethodImpl(MethodImplOptions.Synchronized)] + get + { + return _QueueEvent; + } + + [MethodImpl(MethodImplOptions.Synchronized)] + set + { + if (_QueueEvent != null) + { + _QueueEvent.AddComplete -= QueueEvent_AddComplete; + } + + _QueueEvent = value; + if (_QueueEvent != null) + { + _QueueEvent.AddComplete += QueueEvent_AddComplete; + } + } + } + private IEWQueue _QueueEventLog; + + private IEWQueue QueueEventLog + { + [MethodImpl(MethodImplOptions.Synchronized)] + get + { + return _QueueEventLog; + } + + [MethodImpl(MethodImplOptions.Synchronized)] + set + { + if (_QueueEventLog != null) + { + _QueueEventLog.AddComplete -= QueueEventLog_AddComplete; + } + + _QueueEventLog = value; + if (_QueueEventLog != null) + { + _QueueEventLog.AddComplete += QueueEventLog_AddComplete; + } + } + } + private IEWQueue _QueueAutoRunLog; + + private IEWQueue QueueAutoRunLog + { + [MethodImpl(MethodImplOptions.Synchronized)] + get + { + return _QueueAutoRunLog; + } + + [MethodImpl(MethodImplOptions.Synchronized)] + set + { + if (_QueueAutoRunLog != null) + { + _QueueAutoRunLog.AddComplete -= QueueAutoRunLog_AddComplete; + } + + _QueueAutoRunLog = value; + if (_QueueAutoRunLog != null) + { + _QueueAutoRunLog.AddComplete += QueueAutoRunLog_AddComplete; + } + } + } + private IEWQueue _QueueDelivery; + + private IEWQueue QueueDelivery + { + [MethodImpl(MethodImplOptions.Synchronized)] + get + { + return _QueueDelivery; + } + + [MethodImpl(MethodImplOptions.Synchronized)] + set + { + if (_QueueDelivery != null) + { + _QueueDelivery.AddComplete -= QueueDelivery_AddComplete; + } + + _QueueDelivery = value; + if (_QueueDelivery != null) + { + _QueueDelivery.AddComplete += QueueDelivery_AddComplete; + } + } + } + + // 即時&歷史資料庫連線相關資料 + private DatabaseInfo dbi = new DatabaseInfo(); + + private iMESLog.MESLog logger; + + public IEWService() + { + QueueEvent = new IEWQueue(); // 預警事件Queue, 符合執行週期的事件會放入此Queue + QueueEventLog = new IEWQueue(); // 預警事件Log Queue, 預警事件執行後, 將觸發結果放入此Queue + QueueAutoRunLog = new IEWQueue(); // AutoRunLog Queue, 預警事件執行後, 將要Log的資料放入此Queue + QueueDelivery = new IEWQueue(); // 派送Queue, 預警事件觸發後, 將要派送的資料放入此Queue + InitializeComponent(); + } + + protected override void OnStart(string[] args) + { + + try + { + // 取出允許同時執行預警事件數量 + MAX_RUNNINGJOB_COUNT = Convert.ToInt32(AppSettings["MaxRunningJobCount"]); + + logger = new iMESLog.MESLog(GetType().ToString()); + } + catch (Exception ex) + { + } + + workers = new BackgroundWorker[MAX_RUNNINGJOB_COUNT]; + + // 建立主執行緒 + WorkerMain = new BackgroundWorker(); + WorkerMain.DoWork += Main_DoWork; + WorkerMain.RunWorkerCompleted += Main_RunWorkerCompleted; + WorkerMain.RunWorkerAsync(); + + // 設定檢查是否有符合週期的預警事件的間隔秒數 + TimerCheckEvent.Interval = CHECKEVENT_INTERVAL * 1000; + TimerCheckEvent.Enabled = true; + + funWriteTxtFile("Service Started."); + + } + + protected override void OnStop() + { + + TimerCheckEvent.Enabled = false; + + var result = new AutoRunLog(); + + try + { + result.AlertEventID = "IEW Service Stop"; + result.AlertEventName = result.AlertEventID; + result.StartTime = DateTime.Now; + + workers = null; + WorkerMain = null; + WorkerEvent = null; + WorkerEventLog = null; + WorkerAutoRunLog = null; + WorkerDelivery = null; + + QueueEvent = null; + QueueEventLog = null; + QueueAutoRunLog = null; + QueueDelivery = null; + + dbi = null; + + result.ExecuteResult = ExecuteResultEnum.SUCCESS; + result.ErrorMessage = "Success"; + funWriteTxtFile("Service Stopped."); + } + + catch (Exception ex) + { + result.ExecuteResult = ExecuteResultEnum.FAIL; + result.ErrorMessage = ex.Message; + funWriteTxtFile("Service Error : " + ex.Message + ".", ex); + } + finally + { + result.EndTime = DateTime.Now; + WriteToAnEventLog(result, EventLogEntryType.Information, 9000); + result = null; + } + + } + + private void TimerCheckEvent_Elapsed(object sender, System.Timers.ElapsedEventArgs e) + { + + try + { + + TimerCheckEvent.Enabled = false; + funWriteTxtFile("CheckEvent"); + CheckEvent(); + } + + catch (Exception ex) + { + } + + finally + { + TimerCheckEvent.Enabled = true; + } + + } + + #region CheckEvent + + /// + /// 取出符合執行週期的預警事件 + /// + /// + private void CheckEvent() + { + + var result = new AutoRunLog(); + string strSQL; + DataTable dtTemp = null; + string str10MinIntervalSQLString; + string strSpecificSQLString; + int intCheckTimePoint = 6; + int intCheckTimeOver = 60 - intCheckTimePoint; + + try + { + + result.LogID = "N/A"; + result.AlertEventID = "CheckEvent"; + result.AlertEventName = result.AlertEventID; + result.StartTime = DateTime.Now; + + // 將失效事件的狀態改為非作用中 + strSQL = " Update TBLIEWALERTEVENTBASIS " + " Set Status = 1 "; + + if (dbi.RealDB.DatabaseType.ToLower() != "oracle") + { + strSQL += " Where INVALIDDATE < GETDATE() "; + } + else + { + strSQL += " Where INVALIDDATE < Sysdate "; + } + + //var cn = CreateConnection(dbi.RealDB.ConnectionString); + //using (var cmd = CreateCommand(strSQL, cn)) + //{ + // string cmdTmp = cmd.ToString(); + // //cn.Open(); + // cmd.ExecuteNonQuery(); + // cn.Close(); + //} + ExecuteSQLNoneQuery(dbi.RealDB.DatabaseType, dbi.RealDB.ConnectionString, ref strSQL); + + + // 取出符合執行週期的預警事件 + if (dbi.RealDB.DatabaseType.ToLower() != "oracle") + { + // SQL Server + // 20190213 FixBy KevinChang 0054942: 6.0.3.5 智慧預警派送頻率問題 + // str10MinIntervalSQLString = "(RUNFREQUENT = 'Each10Min' and (LASTRUNTIME is null or LASTRUNTIME <= Cast('" & Format(Now.AddMinutes(-10).AddSeconds(intCheckTimePoint * 60), "yyyy/MM/dd HH:mm:ss") & "' as datetime)))" + str10MinIntervalSQLString = "(RUNFREQUENT = 'Each10Min' and (LASTRUNTIME is null or LASTRUNTIME <= Cast('" + Strings.Format(DateTime.Now.AddMinutes(-10), "yyyy/MM/dd HH:mm:ss") + "' as datetime)))"; + } + else + { + // Oracle + // 20190213 FixBy KevinChang 0054942: 6.0.3.5 智慧預警派送頻率問題 + // str10MinIntervalSQLString = "(RUNFREQUENT = 'Each10Min' and (LASTRUNTIME is null or LASTRUNTIME <= TO_DATE('" & Format(Now.AddMinutes(-10).AddSeconds(intCheckTimePoint * 60), "yyyy/MM/dd HH:mm:ss") & "','YYYY/MM/DD HH24:MI:SS')))" + str10MinIntervalSQLString = "(RUNFREQUENT = 'Each10Min' and (LASTRUNTIME is null or LASTRUNTIME <= TO_DATE('" + Strings.Format(DateTime.Now.AddMinutes(-10), "yyyy/MM/dd HH:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')))"; + } + + // 取出指定時間要執行的job + if (dbi.RealDB.DatabaseType.ToLower() != "oracle") + { + // SQL Server + strSpecificSQLString = "( LASTRUNTIME < CAST('" + Strings.Format(DateTime.Now.AddSeconds(-intCheckTimePoint * 60), "yyyy/MM/dd HH:mm:ss") + "' as datetime))"; + } + else + { + // Oracle + strSpecificSQLString = "( LASTRUNTIME < TO_DATE('" + Strings.Format(DateTime.Now.AddSeconds(-intCheckTimePoint * 60), "yyyy/MM/dd HH:mm:ss") + "','YYYY/MM/DD HH24:MI:SS'))"; + } + + strSpecificSQLString += " and ((RUNYEAR is null or RUNYEAR = '" + Strings.Format(DateTime.Now.Year, "0000") + "')"; + strSpecificSQLString += " and ( RUNMONTH is null or RUNMONTH = '" + Strings.Format(DateTime.Now.Month, "00") + "')"; + strSpecificSQLString += " and ( RUNDAY is null or RUNDAY = '" + Strings.Format(DateTime.Now.Day, "00") + "')"; + strSpecificSQLString += " and ( RUNWEEK is null or RUNWEEK = '" + DateTime.Now.DayOfWeek.ToString() + "')"; + strSpecificSQLString += " and ( RUNHOUR is null or RUNHOUR = '" + Strings.Format(DateTime.Now, "HH") + "')"; + + // 取出指定時間要執行的job之2 + // 若n分鐘內, 包含跨小時, 跨日, 跨月, 跨年,則 + if (DateTime.Now.Minute > intCheckTimeOver) + { + strSpecificSQLString += " and ( RUNMIN>='" + Strings.Format(DateTime.Now.Minute, "00") + "' AND RUNMIN<'60'))"; + strSpecificSQLString += " or (( RUNYEAR is null or RUNYEAR='" + Strings.Format(DateTime.Now.AddMinutes(intCheckTimePoint).Year, "0000") + "' or RUNYEAR = '')"; + strSpecificSQLString += " and ( RUNMONTH is null or RUNMONTH='" + Strings.Format(DateTime.Now.AddMinutes(intCheckTimePoint).Month, "00") + "' or RUNMONTH ='')"; + strSpecificSQLString += " and ( RUNDAY is null or RUNDAY='" + Strings.Format(DateTime.Now.AddMinutes(intCheckTimePoint).Day, "00") + "' or RUNDAY = '')"; + strSpecificSQLString += " and ( RUNWEEK is null or RUNWEEK='" + DateTime.Now.AddMinutes(intCheckTimePoint).DayOfWeek.ToString() + "' or RUNWEEK = '')"; + strSpecificSQLString += " and ( RUNHOUR is null or RUNHOUR='" + Strings.Format(DateTime.Now.AddMinutes(intCheckTimePoint), "HH") + "')"; + strSpecificSQLString += " and ( RUNMIN>='00' AND RUNMIN<'" + Strings.Format(DateTime.Now.AddMinutes(intCheckTimePoint).Minute, "00") + "'))"; + } + else + { + strSpecificSQLString += " and ( RUNMIN>='" + Strings.Format(DateTime.Now.Minute, "00") + "' AND RUNMIN<'" + Strings.Format(DateTime.Now.AddMinutes(intCheckTimePoint).Minute, "00") + "'))"; + } + + strSQL = " Select * " + " From tblIEWAlertEventBasis " + " Where Status = 0 " + " And ( (LASTRUNTIME is null) or (" + strSpecificSQLString + ") or (" + str10MinIntervalSQLString + "))"; + //using (var da = new System.Data.OleDb.OleDbDataAdapter(strSQL, dbi.RealDB.ConnectionString)) + //{ + // dtTemp = new DataTable(); + // da.Fill(dtTemp); + //} + ExecuteSQLQuery_Adapter(strSQL, dtTemp, dbi.RealDB.ConnectionString, dbi.RealDB.DatabaseType); + + // 將要執行且不存在Quene的預警事件放入Queue + foreach (DataRow row in dtTemp.Rows) + { + var ae = new AlertEvent(row); + if (!QueueEvent.Contains(ae)) + { + ae.LogID = Guid.NewGuid().ToString(); + QueueEvent.Add(ae); + + funWriteTxtFile(string.Format("Add Event To Queue.{2}{0}:{1}:", ae.AlertEventID, ae.AlertEventName, Constants.vbCrLf)); + } + } + + result.EndTime = DateTime.Now; + result.ExecuteResult = ExecuteResultEnum.SUCCESS; + result.ErrorMessage = "Success"; + } + + catch (Exception ex) + { + result.EndTime = DateTime.Now; + result.ExecuteResult = ExecuteResultEnum.FAIL; + result.ErrorMessage = ex.Message; + QueueAutoRunLog.Add(result); + } + finally + { + if (dtTemp != null) + { + dtTemp.Dispose(); + dtTemp = null; + } + result = null; + } + + } + + #endregion + + #region 主執行緒 + + /// + /// 主執行緒非同步作業開始, 用來啟動其它執行緒 + /// + /// + /// + /// + private void Main_DoWork(object sender, DoWorkEventArgs e) + { + + var result = new AutoRunLog(); + + try + { + + result.AlertEventID = "IEW Service Start"; + funWriteTxtFile("IEW Service Start"); + + result.AlertEventName = result.AlertEventID; + result.StartTime = DateTime.Now; + + // 建立執行預警事件的執行緒 + for (int i = 0, loopTo = MAX_RUNNINGJOB_COUNT - 1; i <= loopTo; i++) + { + workers[i] = new BackgroundWorker(); + workers[i].DoWork += DoWork; + workers[i].RunWorkerCompleted += RunWorkerCompleted; + } + // 啟動預警事件QUEUE的執行緒 + WorkerEvent = new BackgroundWorker(); + WorkerEvent.DoWork += Event_DoWork; + WorkerEvent.RunWorkerCompleted += Event_RunWorkerCompleted; + + // 啟動預警事件Log QUEUE的執行緒 + WorkerEventLog = new BackgroundWorker(); + WorkerEventLog.DoWork += EventLog_DoWork; + WorkerEventLog.RunWorkerCompleted += EventLog_RunWorkerCompleted; + + // 啟動AutoRunLog QUEUE的執行緒 + WorkerAutoRunLog = new BackgroundWorker(); + WorkerAutoRunLog.DoWork += AutoRunLog_DoWork; + WorkerAutoRunLog.RunWorkerCompleted += AutoRunLog_RunWorkerCompleted; + + // 啟動派送QUEUE的執行緒 + WorkerDelivery = new BackgroundWorker(); + WorkerDelivery.DoWork += Delivery_DoWork; + WorkerDelivery.RunWorkerCompleted += Delivery_RunWorkerCompleted; + + result.ExecuteResult = ExecuteResultEnum.SUCCESS; + result.ErrorMessage = "Success"; + funWriteTxtFile("Success"); + } + catch (Exception ex) + { + result.ExecuteResult = ExecuteResultEnum.FAIL; + result.ErrorMessage = ex.Message; + funWriteTxtFile(ex.Message, ex); + } + finally + { + result.EndTime = DateTime.Now; + e.Result = result; + } + + } + + /// + /// 主執行緒非同步作業結束 + /// + /// + /// + /// + private void Main_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + + AutoRunLog result = (AutoRunLog)e.Result; + + // 寫入Windows事件檢視器, 可由事件檢視器查看是否啟動成功 + if (result.ExecuteResult == ExecuteResultEnum.SUCCESS) + { + WriteToAnEventLog(result, EventLogEntryType.Information, 9000); + } + else + { + WriteToAnEventLog(result, EventLogEntryType.Error, 9000); + } + + } + + #endregion + + #region 預警事件Queue執行緒 + + /// + /// 預警事件Queue非同步作業開始 + /// + /// + /// + /// + private void Event_DoWork(object sender, DoWorkEventArgs e) + { + + AlertEvent ae = null; + AutoRunLog result = null; + AutoRunLog result2 = null; + + try + { + + result2 = new AutoRunLog(); + result2.LogID = "N/A"; + result2.AlertEventID = "Event_DoWork"; + result2.AlertEventName = result2.AlertEventID; + result2.StartTime = DateTime.Now; + + // 逐筆處理Queue內的預警事件 + while (QueueEvent.Count > 0) + { + + try + { + + // 取出Queue中的第一筆預警事件 + ae = QueueEvent[0]; + + result = new AutoRunLog(ae); + + // 找出空閒的執行緒 + for (int i = 0, loopTo = MAX_RUNNINGJOB_COUNT - 1; i <= loopTo; i++) + { + + if (workers[i].IsBusy) + { + continue; + } + else + { + // 指派AlertEvent給執行緒, 並開始執行 + workers[i].RunWorkerAsync(ae); + // 指派事件成功 + result.ExecuteResult = ExecuteResultEnum.SUCCESS; + result.ErrorMessage = "指派事件成功"; + break; + } + + } + } + + catch (Exception ex) + { + // 指派事件失敗 + result.ExecuteResult = ExecuteResultEnum.FAIL; + result.ErrorMessage = "指派事件失敗, " + ex.Message; + } + finally + { + if (result.ExecuteResult == ExecuteResultEnum.SUCCESS || result.ExecuteResult == ExecuteResultEnum.FAIL) + { + result.EndTime = DateTime.Now; + QueueEvent.Remove(ae); + QueueAutoRunLog.Add(result); + } + } + + } + + result2 = null; + } + + catch (Exception ex) + { + result2.EndTime = DateTime.Now; + result2.ExecuteResult = ExecuteResultEnum.FAIL; + result2.ErrorMessage = ex.Message; + funWriteTxtFile(ex.Message, ex); + } + finally + { + e.Result = result2; + } + + } + + /// + /// 預警事件Queue非同步作業結束 + /// + /// + /// + /// + private void Event_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + + AutoRunLog result = (AutoRunLog)e.Result; + + if (result != null && result.ExecuteResult == ExecuteResultEnum.FAIL) + { + QueueAutoRunLog.Add(result); + } + + } + + #endregion + + #region 預警事件執行緒 + + /// + /// 執行預警事件非同步執行作業開始 + /// + /// + /// + /// + private void DoWork(object sender, DoWorkEventArgs e) + { + + BackgroundWorker worker = (BackgroundWorker)sender; + AlertEvent ae = (AlertEvent)e.Argument; + DataTable dtTemp = null; + DataTable dtResult = null; + string strSQL = ""; + string strConnString = ""; + AutoRunLog result = null; + + try + { + + funWriteTxtFile(string.Format("Process Queue.{2}{0}:{1}", ae.AlertEventID, ae.AlertEventName, Constants.vbCrLf)); + + result = new AutoRunLog(ae); + + // 取出預警事件語法及條件 + if (ae.AlertEventType == AlertEventTypeEnum.CUS) + { + // 自定義事件 + strSQL = " Select A.AlertEventID, A.AlertEventName, A.Subject, A.Recipient, A.Description, A.Creator, B.ItemNo, " + " B.CondField, B.CondDataType, B.CondOperator, B.CondValue, B.CondPeriod, B.CondPeriodTime, " + " C.AlertDBType, C.AlertType, C.AlertScript, B.InsertName " + " From tblIEWAlertEventBasis A " + " Left Join tblIEWAlertCondition B " + " On A.AlertEventID = B.AlertEventID " + " Inner Join tblIEWAlertBasis C " + " On A.AlertEventSource = C.AlertNo " + " Where A.AlertEventID = '" + ae.AlertEventID + "'"; + } + // 預設事件 + // Oracle & MSSQL Script使用不同欄位 + else if (dbi.RealDB.DatabaseType.ToLower() == "oracle") + { + strSQL = " Select A.AlertEventID, A.AlertEventName, A.Subject, A.Recipient, A.Description, A.Creator, B.ItemNo, " + " B.CondField, B.CondDataType, B.CondOperator, B.CondValue, B.CondPeriod, B.CondPeriodTime, " + " C.AlertDBType, C.AlertType, C.EventScript As AlertScript, B.InsertName " + " From tblIEWAlertEventBasis A " + " Left Join tblIEWAlertCondition B " + " On A.AlertEventID = B.AlertEventID " + " Inner Join tblIEWDefaultEventBasis C " + " On A.AlertEventSource = C.DefEventID " + " Where A.AlertEventID = '" + ae.AlertEventID + "'"; + } + else + { + strSQL = " Select A.AlertEventID, A.AlertEventName, A.Subject, A.Recipient, A.Description, A.Creator, B.ItemNo, " + " B.CondField, B.CondDataType, B.CondOperator, B.CondValue, B.CondPeriod, B.CondPeriodTime, " + " C.AlertDBType, C.AlertType, C.EventScript_MSSQL As AlertScript, B.InsertName " + " From tblIEWAlertEventBasis A " + " Left Join tblIEWAlertCondition B " + " On A.AlertEventID = B.AlertEventID " + " Inner Join tblIEWDefaultEventBasis C " + " On A.AlertEventSource = C.DefEventID " + " Where A.AlertEventID = '" + ae.AlertEventID + "'"; + } + + //using (var da = new System.Data.OleDb.OleDbDataAdapter(strSQL, dbi.RealDB.ConnectionString)) + //{ + // // 2022/11/2,Ning,121417: 台基:服务日志报错:未将对象引用设置到对象的实例 + // // da.SelectCommand.Parameters.AddWithValue("AlertEventID", ae.AlertEventID) + // dtTemp = new DataTable(); + // da.Fill(dtTemp); + //} + //IDbConnection cn = CreateConnection(); + ExecuteSQLQuery_Adapter(strSQL, dtTemp, dbi.RealDB.ConnectionString, dbi.RealDB.DatabaseType); + + if (dtTemp.Rows.Count == 0) + { + throw new Exception("AlertEventID(" + ae.AlertEventID + ")" + Constants.vbCrLf + "警示事件主檔取出失敗!"); + } + + if (string.IsNullOrEmpty(dtTemp.Rows[0]["AlertScript"].ToString())) + { + throw new Exception("AlertEventID(" + ae.AlertEventID + ")" + Constants.vbCrLf + "AlertEventType(" + dtTemp.Rows[0]["AlertEventType"].ToString() + ")" + Constants.vbCrLf + "AlertEventSource(" + dtTemp.Rows[0]["AlertEventSource"].ToString() + ")" + Constants.vbCrLf + "警示語法是空值!"); + } + + string strDBType; + if (Convert.ToInt32(dtTemp.Rows[0]["AlertDBType"]) == (int)AlertDBTypeEnum.RealTime) + { + strConnString = dbi.RealDB.ConnectionString; + strDBType = dbi.RealDB.DatabaseType; + } + else + { + strConnString = dbi.HistoryDB.ConnectionString; + strDBType = dbi.HistoryDB.DatabaseType; + } + + // 警示類型 1:ERF, 2:LOT, 3:EQP, 4:ACC, 5:MO + ae.AlertType = (AlertTypeEnum)Conversions.ToInteger(dtTemp.Rows[0]["AlertType"]); + + // 產生SQL語法 + strSQL = GenerateSQLScript(dtTemp); + + //using (var da = new System.Data.OleDb.OleDbDataAdapter(strSQL, strConnString)) + //{ + // dtResult = new DataTable(); + // da.Fill(dtResult); + //} + //IDbConnection CNstrConnString = CreateConnection(strConnString); + ExecuteSQLQuery_Adapter(strSQL, dtResult, strConnString, strDBType); + + if (dtResult != null && dtResult.Rows.Count > 0) + { + ae.ResultTable = dtResult; + // 寫入派送Queue + QueueDelivery.Add(ae); + // 寫入警示事件Log Queue + QueueEventLog.Add(ae); + + funWriteTxtFile(string.Format("Add Queue To Delivery.{2}{0}:{1}", ae.AlertEventID, ae.AlertEventName, Constants.vbCrLf)); + } + + result.ExecuteResult = ExecuteResultEnum.SUCCESS; + result.ErrorMessage = "執行事件成功"; + funWriteTxtFile("執行事件成功 執行事件名稱: " + ae.AlertEventName + ""); + } + catch (Exception ex) + { + result.ExecuteResult = ExecuteResultEnum.FAIL; + result.ErrorMessage = "執行事件失敗, " + ex.Message; + funWriteTxtFile("執行事件失敗 執行事件名稱: " + ae.AlertEventName + " " + ex.Message, ex); + } + finally + { + dtTemp = null; + dtResult = null; + e.Result = result; + } + + } + + /// + /// 預警事件非同步執行作業結束 + /// + /// + /// + /// + private void RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + + BackgroundWorker worker = (BackgroundWorker)sender; + AutoRunLog result = (AutoRunLog)e.Result; + + if (result == null) + { + return; + } + + result.EndTime = DateTime.Now; + + // 寫入AutoRunLog Queue + QueueAutoRunLog.Add(result); + + // 寫回最後執行時間 + WriteLastRunTime(result); + + } + + /// + /// 產生SQL語法 + /// + /// + /// + /// + private string GenerateSQLScript(DataTable pTable) + { + + string strResult = ""; + string strOperator; + DataTypeEnum intDataType; + string strSymbol; + string strCondValue; + // Dim strScript As String + string strCondition = ""; + string strCondition2 = ""; + // Dim intGroupBy, intOrderBy As Integer + // Dim strBody As String + // Dim i As Integer + var htScriptCond = new Hashtable(); + + // 逐筆產生Where條件 + foreach (DataRow row in pTable.Rows) + { + + // 運算子或週期需指定其一 + if (string.IsNullOrEmpty(row["CondOperator"].ToString()) && row["CondPeriod"] is DBNull) + { + throw new Exception("AlertEventID(" + row["A.AlertEventID"].ToString() + "), ItemNo(" + row["ItemNo"].ToString() + ")需指定運算子或週期!"); + } + + // 指定運算子, 條件值不可是空值 + if (!string.IsNullOrEmpty(row["CondOperator"].ToString()) && string.IsNullOrEmpty(row["CondValue"].ToString())) + { + throw new Exception("AlertEventID(" + row["A.AlertEventID"].ToString() + "), ItemNo(" + row["ItemNo"].ToString() + ")條件值不可是空值!"); + } + + // 指定週期, 週期時間不可是空值 + if (string.IsNullOrEmpty(row["CondOperator"].ToString()) && row["CondPeriodTime"] is DBNull) + { + throw new Exception("AlertEventID(" + row["A.AlertEventID"].ToString() + "), ItemNo(" + row["ItemNo"].ToString() + ")週期時間不可是空值!"); + } + + strCondition2 = ""; + intDataType = (DataTypeEnum)Conversions.ToInteger(row["CondDataType"]); + strOperator = row["CondOperator"].ToString().ToUpper(); + strCondValue = row["CondValue"].ToString(); + + if (!string.IsNullOrEmpty(row["InsertName"].ToString()) && !htScriptCond.ContainsKey(row["InsertName"].ToString().ToUpper())) + { + htScriptCond.Add(row["InsertName"].ToString().ToUpper(), ""); + } + + if (string.IsNullOrEmpty(strOperator)) + { + // 依週期 + if (dbi.RealDB.DatabaseType.ToLower() == "oracle") + { + strCondition2 += " And (Sysdate - " + row["CondField"].ToString() + ") "; + switch ((DataPeriodEnum)Conversions.ToInteger(row["CondPeriod"])) + { + case DataPeriodEnum.Minute: + { + strCondition2 += " * 24 * 60 "; + break; + } + case DataPeriodEnum.Hour: + { + strCondition2 += " * 24 "; + break; + } + case DataPeriodEnum.Day: + { + strCondition2 += ""; + break; + } + case DataPeriodEnum.Month: + { + strCondition2 += " / 30 "; + break; + } + + default: + { + throw new Exception("無法識別條件週期CondPeriod(" + row["CondPeriod"].ToString() + ")!"); + } + } + strCondition2 += " >= " + row["CondPeriodTime"].ToString(); + } + else + { + string interval = ""; + switch ((DataPeriodEnum)Conversions.ToInteger(row["CondPeriod"])) + { + case DataPeriodEnum.Minute: + { + interval = DataPeriodEnum.Minute.ToString(); + break; + } + case DataPeriodEnum.Hour: + { + interval = DataPeriodEnum.Hour.ToString(); + break; + } + case DataPeriodEnum.Day: + { + interval = DataPeriodEnum.Day.ToString(); + break; + } + case DataPeriodEnum.Month: + { + interval = DataPeriodEnum.Month.ToString(); + break; + } + + default: + { + throw new Exception("無法識別條件週期CondPeriod(" + row["CondPeriod"].ToString() + ")!"); + } + } + strCondition2 += " And DateDiff(" + interval + ", " + row["CondField"].ToString() + ", GETDATE()) >= " + row["CondPeriodTime"].ToString(); + } + } + + else + { + // 依運算子 + // 資料型態的符號 + if (intDataType == DataTypeEnum.StringType) + { + strSymbol = "'"; + } + else + { + strSymbol = ""; + } + + // 依運算子設定條件值 + switch (strOperator ?? "") + { + case "IN": + { + strCondValue = strCondValue.ToString().Replace(",", strSymbol + "," + strSymbol); + break; + } + case "LIKE": + { + strCondValue += "%"; + break; + } + } + + strCondValue = strSymbol + strCondValue + strSymbol; + + strCondition2 += " And " + row["CondField"].ToString() + " " + strOperator + " "; + + // 2022/7/5, Ning, 運算子為IN時, 需加上前後的括號 + if (strOperator == "IN") + { + strCondition2 = strCondition2 + "("; + } + + if (intDataType == DataTypeEnum.DateTimeType) + { + + if (dbi.RealDB.DatabaseType.ToLower() == "oracle") + { + strCondition2 += " To_Date('" + Strings.Format(Conversions.ToDate(strCondValue), "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')"; + } + else + { + strCondition2 += " '" + Strings.Format(Conversions.ToDate(strCondValue), "yyyy/MM/dd H:mm:ss") + "' "; + } + } + + else + { + strCondition2 += strCondValue; + } + + // 2022/7/5, Ning, 運算子為IN時, 需加上前後的括號 + if (strOperator == "IN") + { + strCondition2 = strCondition2 + ")"; + } + + } + + if (string.IsNullOrEmpty(row["InsertName"].ToString())) + { + strCondition += strCondition2; + } + else + { + htScriptCond[row["InsertName"].ToString().ToUpper()] = htScriptCond[row["InsertName"].ToString().ToUpper()].ToString() + strCondition2; + } + + } + + // 判斷Where + // strScript = pTable.Rows(0)("AlertScript").ToString.ToLower + + // If (strCondition <> "") Then + + // If strScript.Contains("where") = True Then '有Where,需要判斷 + + // If strScript.Contains(")") = False Then '沒有括弧,where在最外層 + // '不置換And成為Where + // Else '有括弧,判斷where是否在最外層 + + // Dim blnHaveWhere As Boolean = False ' + // Dim ScriptChar() As Char = strScript.ToCharArray + // i = 0 + // For j As Integer = 0 To ScriptChar.Length - 1 + // If ScriptChar(j) = "(" Then '進入子查詢, 紀錄+1 + // i += 1 + // ElseIf ScriptChar(j) = ")" Then '離開子查詢, 紀錄-1 + // i -= 1 + // ElseIf ScriptChar(j) = "w" Then 'where的起始點 + // If j + 4 <= ScriptChar.Length - 1 Then + // If strScript.Substring(j, 5) = "where" AndAlso i <= 0 Then + // blnHaveWhere = True + // Exit For + // End If + // End If + // Else '其他字元不處理 + // End If + // Next + + // If blnHaveWhere = False Then + // strCondition = Replace(strCondition, "And", "Where", 1, 1, CompareMethod.Text) + // End If + + // End If + + // Else '一個where都沒有,將開頭And換成Where + // strCondition = Replace(strCondition, "And", "Where", 1, 1, CompareMethod.Text) + // End If + + // End If + + // 將有指定位置的條件插入 + foreach (DictionaryEntry de in htScriptCond) + pTable.Rows[0]["AlertScript"] = pTable.Rows[0]["AlertScript"].ToString().Replace("/*" + de.Key.ToString() + "*/", de.Value.ToString()); + + // ' 處理Group By及Order By + // If (strScript.LastIndexOf("group by") <> -1) Then ' 有group by,需要判斷 + + // If (strScript.Contains(")")) = False Then ' 沒有括弧,group by在最外層 + + // intGroupBy = strScript.LastIndexOf("group by") + + // Else ' 有括弧,判斷group by是否在最外層 + + // Dim blnHaveGroupBy As Boolean = False + // Dim ScriptChar() As Char = strScript.ToCharArray + + // i = 0 + + // For j As Integer = 0 To ScriptChar.Length - 1 + // If ScriptChar(j) = "(" Then '進入子查詢, 紀錄+1 + // i += 1 + // ElseIf ScriptChar(j) = ")" Then '離開子查詢, 紀錄-1 + // i -= 1 + // ElseIf ScriptChar(j) = "g" Then 'where的起始點 + // If j + 7 <= ScriptChar.Length - 1 Then + // If strScript.Substring(j, 8) = "group by" AndAlso i <= 0 Then + // blnHaveGroupBy = True + // Exit For + // End If + // End If + // Else '其他字元不處理 + // End If + // Next + + // If blnHaveGroupBy = False Then + // intGroupBy = -1 + // Else + // intGroupBy = strScript.LastIndexOf("group by") + // End If + + // End If + + // Else '一個group by都沒有 + // intGroupBy = -1 + // End If + + // If (strScript.LastIndexOf("order by") <> -1) Then '有order by,需要判斷 + + // If (strScript.Contains(")")) = False Then '沒有括弧,group by在最外層 + + // intOrderBy = strScript.LastIndexOf("order by") + + // Else '有括弧,判斷group by是否在最外層 + + // Dim blnHaveOrderBy As Boolean = False + // Dim ScriptChar() As Char = strScript.ToCharArray + + // i = 0 + + // For j As Integer = 0 To ScriptChar.Length - 1 + // If ScriptChar(j) = "(" Then '進入子查詢, 紀錄+1 + // i += 1 + // ElseIf ScriptChar(j) = ")" Then '離開子查詢, 紀錄-1 + // i -= 1 + // ElseIf ScriptChar(j) = "o" Then 'where的起始點 + // If j + 7 <= ScriptChar.Length - 1 Then + // If (strScript.Substring(j, 8) = "order by" AndAlso i <= 0) Then + // blnHaveOrderBy = True + // Exit For + // End If + // End If + // Else '其他字元不處理 + // End If + // Next + + // If blnHaveOrderBy = False Then + // intOrderBy = -1 + // Else + // intOrderBy = strScript.LastIndexOf("order by") + // End If + + // End If + + // Else '一個order by都沒有 + // intOrderBy = -1 + // End If + + // If intGroupBy = -1 Then + // If intOrderBy = -1 Then + // 'Script中無GroupBy及OrderBy + // strResult = pTable.Rows(0)("AlertScript").ToString & " " & strCondition + // Else + // Dim strOrderBy As String = Mid(strScript, strScript.LastIndexOf("order by")) + // 'Script中無GroupBy但有OrderBy + // strBody = Mid(pTable.Rows(0)("AlertScript").ToString, 1, Len(strScript) - Len(strOrderBy)) + // strResult = strBody & " " & strCondition & " " & strOrderBy + // End If + // Else + // Dim strGroupBy As String = Mid(pTable.Rows(0)("AlertScript").ToString, strScript.LastIndexOf("group by")) + // 'Script中有GroupBy,並可能有OrderBy + // strBody = Mid(pTable.Rows(0)("AlertScript").ToString, 1, Len(strScript) - Len(strGroupBy)) + // strResult = strBody & " " & strCondition & " " & strGroupBy + // End If + + + // 2014/01/27, Hank, 以Select * From包原本語法再插入無特殊位置的條件式 + strCondition = Strings.Replace(strCondition, "And", "Where", 1, 1); + strResult = Conversions.ToString(Operators.ConcatenateObject(Operators.ConcatenateObject(Operators.ConcatenateObject("Select * From ( ", pTable.Rows[0]["AlertScript"]), " ) T "), strCondition)); + + return strResult; + + } + + #endregion + + #region AlertEventLog執行緒 + + /// + /// 預警事件Log非同步作業開始 + /// + /// + /// + /// + private void EventLog_DoWork(object sender, DoWorkEventArgs e) + { + + string strSQL; + AlertEvent ae = null; + AutoRunLog result = null; + AutoRunLog result2 = null; + IDbConnection cn = null; + IDbCommand cmd = null; + IDbTransaction tx = null; + DateTime dtAlertTime; + + try + { + + result2 = new AutoRunLog(); + result2.LogID = "N/A"; + result2.AlertEventID = "EventLog_DoWork"; + result2.AlertEventName = result2.AlertEventID; + result2.StartTime = DateTime.Now; + + // 開啟資料庫連線 + if (QueueEventLog.Count > 0) + { + cn = CreateConnection(dbi.RealDB.ConnectionString); + //cn.Open(); + cmd = CreateCommand("", cn); + } + + while (QueueEventLog.Count > 0) + { + + try + { + + // 取出預警事件Log的第一筆, 並設定起始時間 + ae = QueueEventLog[0]; + + result = new AutoRunLog(ae); + + tx = cn.BeginTransaction(); + cmd.Transaction = tx; + + dtAlertTime = DateTime.Now; + + string FIELD01 = ""; + string FIELD02 = ""; + string FIELD03 = ""; + string FIELD04 = ""; + string FIELD05 = ""; + string strAlertTime = ""; + + foreach (DataRow row in ae.ResultTable.Rows) + { + cmd.Parameters.Clear(); + // 20221107,13871,0121824: 台基预警:预警频率不是设定的预警频率,固定的5分钟一预警,註解此 + // cmd.Parameters.AddWithValue("LogID", ae.LogID) + // cmd.Parameters.AddWithValue("AlertEventID", ae.AlertEventID & "") + // cmd.Parameters.AddWithValue("AlertType", ae.AlertType) + // cmd.Parameters.AddWithValue("AlertEventName", ae.AlertEventName & "") + // cmd.Parameters.AddWithValue("AlertTime", dtAlertTime) + // cmd.Parameters.AddWithValue("AlertDesc", ae.Description & "") + // cmd.Parameters.AddWithValue("AlertCreator", ae.Creator & "") + // cmd.Parameters.AddWithValue("FIELD01", "") + // cmd.Parameters.AddWithValue("FIELD02", "") + // cmd.Parameters.AddWithValue("FIELD03", "") + // cmd.Parameters.AddWithValue("FIELD04", "") + // cmd.Parameters.AddWithValue("FIELD05", "") + + switch (ae.AlertType) + { + case AlertTypeEnum.ERF: + { + // cmd.Parameters("FIELD01").Value = row("ERFNo").ToString + FIELD01 = row["ERFNo"].ToString(); + break; + } + case AlertTypeEnum.LOT: + { + // cmd.Parameters("FIELD01").Value = row("LotNo").ToString + FIELD01 = row["LotNo"].ToString(); + break; + } + case AlertTypeEnum.EQP: + { + // cmd.Parameters("FIELD01").Value = row("EquipmentNo").ToString + FIELD01 = row["EquipmentNo"].ToString(); + break; + } + case AlertTypeEnum.ACC: + { + // cmd.Parameters("FIELD01").Value = row("AccessoryNo").ToString + FIELD01 = row["AccessoryNo"].ToString(); + if (ae.ResultTable.Columns.Contains("AccessoryVersion")) + { + // cmd.Parameters("FIELD02").Value = row("AccessoryVersion").ToString + FIELD02 = row["AccessoryVersion"].ToString(); + } + else + { + // cmd.Parameters("FIELD02").Value = "*" + FIELD02 = "*"; + } + + break; + } + case AlertTypeEnum.MO: + { + // cmd.Parameters("FIELD01").Value = row("MONo").ToString + FIELD01 = row["MONo"].ToString(); + break; + } + case AlertTypeEnum.PRD: + { + // cmd.Parameters("FIELD01").Value = row("ProductNo").ToString + FIELD01 = row["ProductNo"].ToString(); + if (ae.ResultTable.Columns.Contains("ProductVersion")) + { + // cmd.Parameters("FIELD02").Value = row("ProductVersion").ToString + FIELD02 = row["ProductVersion"].ToString(); + } + else + { + // cmd.Parameters("FIELD02").Value = "*" + FIELD02 = "*"; + } + + break; + } + case AlertTypeEnum.OP: + { + // cmd.Parameters("FIELD01").Value = row("OPNo").ToString + FIELD01 = row["OPNo"].ToString(); + break; + } + } + + // 20221107,13871,0121824: 台基预警:预警频率不是设定的预警频率,固定的5分钟一预警 + if (dbi.RealDB.DatabaseType.ToLower() != "oracle") + { + strAlertTime = "'" + Strings.Format(Conversions.ToDate(dtAlertTime), "yyyy/MM/dd H:mm:ss") + "'"; + } + else + { + strAlertTime = "To_Date('" + Strings.Format(Conversions.ToDate(dtAlertTime), "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')"; + } + + + // 20221107,13871,0121824: 台基预警:预警频率不是设定的预警频率,固定的5分钟一预警 + strSQL = " Insert into tblIEWAlertEventLog " + " (LogID, AlertEventID, AlertType, AlertEventName, AlertTime, AlertDesc, AlertCreator, " + " FIELD01, FIELD02, FIELD03, FIELD04, FIELD05) Values " + string.Format(" ('{0}', '{1}', '{2}', '{3}', {4}, '{5}', '{6}', '{7}', '{8}', '{9}', '{10}', '{11}') ", ae.LogID, ae.AlertEventID, (int)ae.AlertType, ae.AlertEventName, strAlertTime, ae.Description, ae.Creator, FIELD01, FIELD02, FIELD03, FIELD04, FIELD05); + + cmd.CommandText = strSQL; + + cmd.ExecuteNonQuery(); + //string cmdTmp = cmd.ToString(); + + } + + tx.Commit(); + + result.ExecuteResult = ExecuteResultEnum.SUCCESS; + result.ErrorMessage = "寫入記錄成功"; + } + + catch (Exception ex) + { + result.ExecuteResult = ExecuteResultEnum.FAIL; + result.ErrorMessage = "寫入記錄失敗, " + ex.Message; + if (tx != null) + { + tx.Rollback(); + } + } + finally + { + if (result.ExecuteResult == ExecuteResultEnum.SUCCESS || result.ExecuteResult == ExecuteResultEnum.FAIL) + { + result.EndTime = DateTime.Now; + QueueEventLog.Remove(ae); + QueueAutoRunLog.Add(result); + } + if (tx != null) + { + tx = null; + } + } + + } + + result2 = null; + } + + catch (Exception ex) + { + result2.EndTime = DateTime.Now; + result2.ExecuteResult = ExecuteResultEnum.FAIL; + result2.ErrorMessage = ex.Message; + } + finally + { + if (cn.State == ConnectionState.Open) + { + cn.Close(); + cn = null; + } + if (cmd != null) + { + cmd = null; + } + e.Result = result2; + } + + } + + /// + /// 預警事件Log非同步作業結束 + /// + /// + /// + /// + private void EventLog_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + + AutoRunLog result = (AutoRunLog)e.Result; + + if (result != null && result.ExecuteResult == ExecuteResultEnum.FAIL) + { + QueueAutoRunLog.Add(result); + } + + } + + #endregion + + #region AutoRunLog執行緒 + + /// + /// AutoRunLog非同步作業開始 + /// + /// + /// + /// + private void AutoRunLog_DoWork(object sender, DoWorkEventArgs e) + { + + AutoRunLog log = null; + AutoRunLog result2 = null; + IDbConnection cn = null; + IDbCommand cmd = null; + DataTable dtLog = null; + string strSQL = ""; + string strReturnMsg = ""; + + try + { + + result2 = new AutoRunLog(); + result2.LogID = "N/A"; + result2.AlertEventID = "AutoRunLog_DoWork"; + result2.AlertEventName = result2.AlertEventID; + result2.StartTime = DateTime.Now; + + // 開啟資料庫連線 + if (QueueAutoRunLog.Count > 0) + { + cn = CreateConnection(dbi.RealDB.ConnectionString); + //cn.Open(); + cmd = CreateCommand("", cn); + } + + while (QueueAutoRunLog.Count > 0) + { + + try + { + + log = QueueAutoRunLog[0]; + + // LogID存在 --> Append Message, LogID不存在 --> Insert Message + strSQL = " Select * " + " From tblIEWAutoRunLog " + " Where LogID = '" + log.LogID + "'"; + + cmd.CommandText = strSQL; + cmd.Parameters.Clear(); + // 20221107,13871,0121824: 台基预警:预警频率不是设定的预警频率,固定的5分钟一预警,註解此 + // cmd.Parameters.AddWithValue("LogID", log.LogID & "") + + //using (var da = new System.Data.OleDb.OleDbDataAdapter(cmd)) + //{ + dtLog = new DataTable(); + //da.Fill(dtLog); + ExecuteSQLQuery_Adapter(cmd, dtLog); + //} + + if (dtLog.Rows.Count == 0 || log.LogID == "N/A") + { + // Insert + //strSQL = " Insert into tblIEWAutoRunLog " + " (AlertEventID, AlertEventName, Status, StartTime, EndTime, RunTime, ReturnMsg, LogID) Values " + " (?, ?, ?, ?, ?, ?, ?, ?) "; + strSQL = " Insert into tblIEWAutoRunLog " + " (AlertEventID, AlertEventName, Status, StartTime, EndTime, RunTime, ReturnMsg, LogID) Values " + " (:p1, :p2, :p3, :p4, :p5, :p6, :p7, :p8) "; + + strReturnMsg = Strings.Format(log.EndTime, "yyyy/MM/dd HH:mm") + ", " + log.ErrorMessage.ToString(); + + cmd.CommandText = strSQL; + cmd.Parameters.Clear(); + //cmd.Parameters.AddWithValue("AlertEventID", log.AlertEventID.ToString()); + //cmd.Parameters.AddWithValue("AlertEventName", log.AlertEventName.ToString()); + //cmd.Parameters.AddWithValue("Status", log.ExecuteResult.ToString()); + //cmd.Parameters.AddWithValue("StartTime", log.StartTime); + //cmd.Parameters.AddWithValue("EndTime", log.EndTime); + //cmd.Parameters.AddWithValue("RunTime", DateAndTime.DateDiff(DateInterval.Second, log.StartTime, log.EndTime)); + //cmd.Parameters.AddWithValue("ReturnMsg", strReturnMsg); + //cmd.Parameters.AddWithValue("LogID", log.LogID.ToString()); + AddCommandParameter(cmd, "p1", log.AlertEventID); + AddCommandParameter(cmd, "p2", log.AlertEventName); + AddCommandParameter(cmd, "p3", log.ExecuteResult); + AddCommandParameter(cmd, "p4", log.StartTime); + AddCommandParameter(cmd, "p5", log.EndTime); + AddCommandParameter(cmd, "p6", DateAndTime.DateDiff(DateInterval.Second, log.StartTime, log.EndTime)); + AddCommandParameter(cmd, "p7", strReturnMsg); + AddCommandParameter(cmd, "p8", log.LogID); + cmd.ExecuteNonQuery(); + } + else + { + // Append + //strSQL = " Update tblIEWAutoRunLog " + " Set Status = ?, " + " EndTime = ?, " + " RunTime = ?, " + " ReturnMsg = ? " + " Where LogID = ? "; + strSQL = " Update tblIEWAutoRunLog " + " Set Status = :p1, " + " EndTime = :p2, " + " RunTime = :p3, " + " ReturnMsg = :p4 " + " Where LogID = :p5 "; + cmd.CommandText = strSQL; + cmd.Parameters.Clear(); + + if (log.ExecuteResult == ExecuteResultEnum.FAIL) + { + //cmd.Parameters.AddWithValue("Status", log.ExecuteResult.ToString()); + AddCommandParameter(cmd, "p1", log.ExecuteResult); + } + else + { + //cmd.Parameters.AddWithValue("Status", dtLog.Rows[0]["Status"]); + AddCommandParameter(cmd, "p1", dtLog.Rows[0]["Status"]); + } + + strReturnMsg = Strings.Format(log.EndTime, "yyyy/MM/dd HH:mm") + ", " + log.ErrorMessage.ToString(); + + if (Operators.ConditionalCompareObjectNotEqual(Operators.ConcatenateObject(dtLog.Rows[0]["ReturnMsg"], ""), "", false)) + { + strReturnMsg = Conversions.ToString(Operators.ConcatenateObject(Operators.ConcatenateObject(dtLog.Rows[0]["ReturnMsg"], Constants.vbCrLf), strReturnMsg)); + } + + //cmd.Parameters.AddWithValue("EndTime", log.EndTime); + //cmd.Parameters.AddWithValue("RunTime", DateAndTime.DateDiff(DateInterval.Second, Conversions.ToDate(dtLog.Rows[0]["StartTime"]), log.EndTime)); + //cmd.Parameters.AddWithValue("ReturnMsg", strReturnMsg); + //cmd.Parameters.AddWithValue("LogID", log.LogID.ToString()); + AddCommandParameter(cmd, "p2", log.EndTime); + AddCommandParameter(cmd, "p3", DateAndTime.DateDiff(DateInterval.Second, Conversions.ToDate(dtLog.Rows[0]["StartTime"]), log.EndTime)); + AddCommandParameter(cmd, "p4", strReturnMsg); + AddCommandParameter(cmd, "p5", log.LogID); + cmd.ExecuteNonQuery(); + } + } + + catch (Exception ex) + { + log.ErrorMessage = log.ErrorMessage + Constants.vbCrLf + ex.Message; + WriteToAnEventLog(log, EventLogEntryType.Error, 9000); + } + finally + { + QueueAutoRunLog.Remove(log); + } + + } + + result2 = null; + } + + catch (Exception ex) + { + result2.EndTime = DateTime.Now; + result2.ExecuteResult = ExecuteResultEnum.FAIL; + result2.ErrorMessage = ex.Message; + } + finally + { + if (cn.State == ConnectionState.Open) + { + cn.Close(); + cn = null; + } + if (cmd != null) + { + cmd = null; + } + if (dtLog != null) + { + dtLog = null; + } + e.Result = result2; + } + + } + + /// + /// AutoRunLog非同步作業結束 + /// + /// + /// + /// + private void AutoRunLog_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + + AutoRunLog result = (AutoRunLog)e.Result; + + if (result != null && result.ExecuteResult == ExecuteResultEnum.FAIL) + { + WriteToAnEventLog(result, EventLogEntryType.Error, 9000); + } + + } + + #endregion + + #region 派送執行緒 + + /// + /// 派送非同步作業開始 + /// + /// + /// + /// + /// Modify Notes:2016-06-02, Joe, 調整程式加MCloud推播功能 + private void Delivery_DoWork(object sender, DoWorkEventArgs e) + { + + + AlertEvent ae = null; + AutoRunLog result = null; + AutoRunLog result2 = null; + + try + { + + result2 = new AutoRunLog(); + result2.LogID = "N/A"; + result2.AlertEventID = "Delivery_DoWork"; + result2.AlertEventName = result2.AlertEventID; + result2.StartTime = DateTime.Now; + + while (QueueDelivery.Count > 0) + { + try + { + + ae = QueueDelivery[0]; + + funWriteTxtFile(string.Format("Process Delivery.{2}{0}:{1}", ae.AlertEventID, ae.AlertEventName, Constants.vbCrLf)); + + result = new AutoRunLog(ae); + + // 2020/04/17 雋辰,修改Notice處理方式 + string[] notices = ae.NoticeType.Split(','); + var appNotices = new List(); + foreach (string notice in notices) + { + if (notice == "0") + { + funSendMail(ref ae); + } + else if (notice == "3") + { + funSendMCloud(ref ae); + } + else if (notice == "4") + { + appNotices.Add("Line"); + } + else if (notice == "5") + { + appNotices.Add("WeChat"); + } + } + if (appNotices.Count > 0) + funSendApp(ref ae, appNotices); + + result.ExecuteResult = ExecuteResultEnum.SUCCESS; + result.ErrorMessage = "派送事件成功"; + } + + catch (Exception ex) + { + result.ExecuteResult = ExecuteResultEnum.FAIL; + result.ErrorMessage = "派送事件失敗, " + ex.Message; + } + finally + { + if (result.ExecuteResult == ExecuteResultEnum.SUCCESS || result.ExecuteResult == ExecuteResultEnum.FAIL) + { + result.EndTime = DateTime.Now; + QueueDelivery.Remove(ae); + QueueAutoRunLog.Add(result); + } + } + } + } + + catch (Exception ex) + { + result2.EndTime = DateTime.Now; + result2.ExecuteResult = ExecuteResultEnum.FAIL; + result2.ErrorMessage = ex.Message; + } + finally + { + e.Result = result2; + } + + } + + // 2016-05-31, Joe, 派送方式加MCloud推播 + private void funSendMCloud(ref AlertEvent ae) + { + + string pKey = ""; + string pPushMsg = ""; + string OutXml = ""; + string strFrom = "SFT"; + string strTargetUser = "DS"; + string strAlert = ae.AlertEventName; + string strKeyField = ""; + + try + { + // strTargetUser = GetAlertRecipients(ae) + + // 組XML,內容要以Base64加密 + pPushMsg = ""; + pPushMsg = pPushMsg + "" + strFrom + ""; + pPushMsg = pPushMsg + "" + strTargetUser + ""; + pPushMsg = pPushMsg + ""; + pPushMsg = pPushMsg + "" + strAlert + ""; + pPushMsg = pPushMsg + "" + strKeyField + ""; + pPushMsg = pPushMsg + ""; + pPushMsg = pPushMsg + ""; + + // Call MCloud Push Message Service + using (var wsMCloud = new wsMCloud.PushService()) + { + OutXml = System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(wsMCloud.PushDevicePMG(pKey, Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(pPushMsg))))); + } + + // 利用XmlDoc物件處理ReturnValue + var XmlDoc = new XmlDocument(); + XmlDoc.LoadXml(OutXml); + if (XmlDoc.DocumentElement["srvcode"].InnerXml != "000") + { + throw new Exception(XmlDoc.DocumentElement["srvmsg"].InnerXml); + } + } + + catch (Exception ex) + { + throw; + } + + } + + private void funSendMail(ref AlertEvent ae) + { + + // Dim mailserver As Net.Mail.SmtpClient = Nothing + System.Net.Mail.MailMessage mail = null; + + Hashtable htSmtp = null; + string bReturn = ""; + int SecureSocketOptions = 1; + + try + { + + // mailserver = New Net.Mail.SmtpClient + mail = new System.Net.Mail.MailMessage(); + htSmtp = new Hashtable(); + + // 取出SMTP的設定 + //using (var da = new System.Data.OleDb.OleDbDataAdapter("Select * From tblSYSParameter Where ParameterType = 'SMTPInfo'", dbi.RealDB.ConnectionString)) + //{ + + using (var dt = new DataTable()) + { + string strSQL = "Select * From tblSYSParameter Where ParameterType = 'SMTPInfo'"; + //da.Fill(dt); + ExecuteSQLQuery_Adapter(strSQL, dt, dbi.RealDB.ConnectionString, dbi.RealDB.DatabaseType); + foreach (DataRow row in dt.Rows) + htSmtp.Add(row["ParameterNo"], row["ParameterValue"]); + + } + + //} + + + + htSmtp["SMTPPassword"] = DeCrypt(htSmtp["SMTPPassword"].ToString()); + + // 0116180: 【晶睿】mes邮件服务器测试不成功,使用iMESMail套件 + // mailserver.Credentials = New Net.NetworkCredential(htSmtp("SMTPUser").ToString, htSmtp("SMTPPassword").ToString) + // mailserver.Port = Convert.ToInt32(htSmtp("SMTPPort")) + // mailserver.Host = htSmtp("SMTPServer").ToString + // '2019/05/08 Shih Kai, 根據參數:SMTPSSL(是否加密連線SSL),決定是否進行SSL加密 + // If htSmtp("SMTPSSL").ToString = "1" Then + // mailserver.EnableSsl = True + // Else + // mailserver.EnableSsl = False + // End If + + // ' 寄件者 + // mail.From = New System.Net.Mail.MailAddress(htSmtp("SYSEMail").ToString, htSmtp("SMTPUser").ToString, System.Text.Encoding.UTF8) + + // ' 主旨 + // mail.Subject = ae.Subject + + // ' 收件者 + var argmailto = mail.To; + AddMailAddress(ae, ref argmailto); + + // ' 內文 + // ' 內文-表頭 + var mailcontent = new EmailContent(); + mailcontent.AlertEventName = ae.AlertEventName; + mailcontent.AlertType = ae.AlertType; + mailcontent.AlertTime = DateTime.Now; + mailcontent.AlertDescription = ae.Description; + + foreach (DataColumn col in ae.ResultTable.Columns) + mailcontent.thead.Add(col.ColumnName); + + // 內文-表身 + foreach (DataRow row in ae.ResultTable.Rows) + { + + var tr = new EmailContent.tr(); + + foreach (DataColumn col in ae.ResultTable.Columns) + tr.Add(row[col.ColumnName].ToString()); + + mailcontent.tbody.Add(tr); + + } + + // mail.IsBodyHtml = True + // mail.Body = mailcontent.Generate + + // ' 發信 + // mailserver.Send(mail) + + var EmailAddress = new Collection(); + + foreach (System.Net.Mail.MailAddress item in mail.To) + EmailAddress.Add(item.Address); + try + { + SecureSocketOptions = Conversions.ToInteger(htSmtp["SMTPSSL"].ToString()); + } + catch (Exception ex) + { + + } + + // 0116180: 【晶睿】mes邮件服务器测试不成功,使用iMESMail套件 + iMESCore.Mail.iMESMail.Send(htSmtp["SMTPServer"].ToString(), Convert.ToInt32(htSmtp["SMTPPort"]), htSmtp["SYSEMail"].ToString(), "", htSmtp["SMTPUser"].ToString(), htSmtp["SMTPPassword"].ToString(), SecureSocketOptions, ae.Subject, mailcontent.Generate(), EmailAddress); + } + + catch (Exception ex) + { + throw; + } + finally + { + // mailserver = Nothing + mail = null; + htSmtp = null; + } + + } + + /// + /// 2020/04/17 雋辰,發送app訊息 + /// + /// + /// + private void funSendApp(ref AlertEvent ae, List pipe) + { + + var objMDS = new kcWIP.clsMDS(); + + try + { + string message = ""; + string lBreak = @"\n"; + + // 主旨 + message = string.Format($"IEW 警示事件:{ae.Subject}{lBreak}{lBreak}"); + // 內容 + message += string.Format($"警示事件名稱:{ae.AlertEventName}{lBreak}{lBreak}警示類別:{ae.AlertType}{lBreak}{lBreak}警示時間:{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")}{lBreak}{lBreak}說明:{ae.Description}{lBreak}{lBreak}"); + // 表格 + var tab = new Dictionary(); + foreach (DataColumn col in ae.ResultTable.Columns) + { + tab[col.ColumnName] = ""; + foreach (DataRow row in ae.ResultTable.Rows) + { + if (col.ColumnName.ToUpper() == "STARTTIME" && Information.IsDate(row[col.ColumnName].ToString())) + { + tab[col.ColumnName] += Conversions.ToDate(row[col.ColumnName].ToString()).ToString("yyyy/MM/dd HH:mm:ss") + ","; + } + else + { + tab[col.ColumnName] += row[col.ColumnName].ToString() + ","; + } + } + tab[col.ColumnName] = tab[col.ColumnName].TrimEnd(','); + } + foreach (string key in tab.Keys) + { + if (string.IsNullOrEmpty(tab[key])) + continue; + message += string.Format($"{key}:{tab[key]}{lBreak}"); + } + + objMDS.invoke_Message_Platform(AppSettings["MSG_SERVICE"].ToString(), objMDS.Create_MsgPlatform_Request("ServicesSTD.Module_MSG.send_notification_process", ae.Creator, message, Get_Users(ae), pipe)); + } + catch (Exception ex) + { + throw; + } + } + + /// + /// 派送非同步作業結束 + /// + /// + /// + /// + private void Delivery_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + + AutoRunLog result = (AutoRunLog)e.Result; + + if (result != null && result.ExecuteResult == ExecuteResultEnum.FAIL) + { + QueueAutoRunLog.Add(result); + } + + } + + #endregion + + #region 事件檢視器 + + /// + /// 寫到 Windows Event Log + /// + /// + private void WriteToAnEventLog(EventBase e, EventLogEntryType pEventType = EventLogEntryType.Information, int pEventID = 0) + { + + string strSource = "MES IEW Service"; + string strLog = "Application"; + string strMessage = ""; + + try + { + if (!EventLog.SourceExists(strSource)) + { + EventLog.CreateEventSource(strSource, strLog); + } + strMessage = "AlertEvent: " + e.AlertEventID + Constants.vbCrLf + "StartTime: " + Strings.Format(e.StartTime, "yyyy/MM/dd HH:mm:ss") + Constants.vbCrLf + "EndTime: " + Strings.Format(e.EndTime, "yyyy/MM/dd HH:mm:ss") + Constants.vbCrLf + "ErrorMessage: " + e.ErrorMessage; + funWriteTxtFile(strMessage); + EventLog.WriteEntry(strSource, strMessage, pEventType, pEventID); + } + catch (Exception ex) + { + + } + + } + + #endregion + + #region 預警事件的最後執行時間 + + private void WriteLastRunTime(AutoRunLog result) + { + + string strSQL = ""; + + try + { + + // 20221107,13871,0121824: 台基预警:预警频率不是设定的预警频率,固定的5分钟一预警 + string strEndTime = ""; + if (dbi.RealDB.DatabaseType.ToLower() != "oracle") + { + strEndTime = "'" + Strings.Format(Conversions.ToDate(result.EndTime), "yyyy/MM/dd H:mm:ss") + "'"; + } + else + { + strEndTime = "To_Date('" + Strings.Format(Conversions.ToDate(result.EndTime), "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')"; + } + + strSQL = " Update tblIEWAlertEventBasis " + " Set LastRunTime = " + strEndTime + " Where AlertEventID = '" + result.AlertEventID + "'"; + + + //using (var cn = CreateConnection(dbi.RealDB.ConnectionString)) + //{ + + // using (var cmd = CreateCommand(strSQL, cn)) + // { + + // //cn.Open(); + + // // 20221107,13871,0121824: 台基预警:预警频率不是设定的预警频率,固定的5分钟一预警,註解此 + // // cmd.Parameters.AddWithValue("LastRunTime", result.EndTime) + // // cmd.Parameters.AddWithValue("AlertEventID", result.AlertEventID) + // cmd.ExecuteNonQuery(); + + // cn.Close(); + + // } + + //} + ExecuteSQLNoneQuery(dbi.RealDB.DatabaseType, dbi.RealDB.ConnectionString, ref strSQL); + } + + catch (Exception ex) + { + } + finally + { + } + + } + + #endregion + + #region 加入收件者 + + /// + /// 依警示事件編號取回收件人, 若無收件人, 則以預警事件的建立人為收件人 + /// + /// + private void AddMailAddress(AlertEvent ae, ref System.Net.Mail.MailAddressCollection mailto) + { + + string strSQL; + IDbConnection cn = null; + //IDbCommand cmd = null; + DataTable dtTemp = null; + + try + { + // 2014/01/24, Hank, 預警事件的建立人也要發送 + strSQL = " Select EmailAddress From tblUSRUserBasis " + " Where UserNo = '" + ae.Creator + "' " + " And EmailAddress is not null " + " Union " + " Select B.EmailAddress " + " From tblIEWAlertRecipients A, tblUSRUserBasis B " + " Where A.Recipient = B.UserNo " + " And A.AlertEventID = '" + ae.AlertEventID + "' " + " And A.RecipientType = 99 " + " And B.IssueState = 2 " + " And B.EmailAddress is not null " + " Union " + " Select C.EmailAddress " + " From tblIEWAlertRecipients A, tblUSRUserGroup B, tblUSRUserBasis C " + " Where A.Recipient = B.GroupNo " + " And A.RecipientType = B.GroupType " + " And B.UserNo = C.UserNo " + " And A.AlertEventID = '" + ae.AlertEventID + "' " + " And A.RecipientType <> 99 " + " And C.EmailAddress is not null "; + + cn = CreateConnection(dbi.RealDB.ConnectionString); + //cn.Open(); + //cmd = CreateCommand(strSQL, cn); + + //using (var da = new System.Data.OleDb.OleDbDataAdapter(cmd)) + //{ + // dtTemp = new DataTable(); + // da.Fill(dtTemp); + //} + ExecuteSQLQuery_Adapter(strSQL, dtTemp, cn); + + foreach (DataRow row in dtTemp.Rows) + mailto.Add(row["EmailAddress"].ToString()); + + if (mailto.Count == 0) + { + throw new Exception("無任何收件人資訊!"); + } + } + + // If (dtTemp.Rows.Count = 0) Then + + // ' 若無收件人, 則以預警事件的建立人為收件人 + // strSQL = " Select EmailAddress From tblUSRUserBasis Where UserNo = '" & di.Creator & "' " + // cmd.CommandText = strSQL + // If (cmd.ExecuteScalar.ToString & "" = "") Then + // Throw New Exception("無任何收件人資訊!") + // Else + // mailto.Add(cmd.ExecuteScalar.ToString) + // End If + + // Else + + // For Each row As DataRow In dtTemp.Rows + // mailto.Add(row("EmailAddress").ToString) + // Next + + // End If + + catch (Exception ex) + { + throw; + } + finally + { + if (cn != null && cn.State == ConnectionState.Open) + { + cn.Close(); + cn.Dispose(); + cn = null; + } + //if (cmd != null) + //{ + // cmd.Dispose(); + // cmd = null; + //} + if (dtTemp != null) + { + dtTemp.Dispose(); + dtTemp = null; + } + } + + } + + /// + /// 2020/04/17 雋辰,取得需要發送的UserNo + /// + /// + /// + private List Get_Users(AlertEvent ae) + { + string strSQL; + IDbConnection cn = null; + //IDbCommand cmd = null; + DataTable dtTemp = null; + var result = new List(); + + try + { + // 2014/01/24, Hank, 預警事件的建立人也要發送 + strSQL = " Select UserNo From tblUSRUserBasis " + " Where UserNo = '" + ae.Creator + "' " + " And UserNo is not null " + " Union " + " Select B.UserNo" + " From tblIEWAlertRecipients A, tblUSRUserBasis B " + " Where A.Recipient = B.UserNo " + " And A.AlertEventID = '" + ae.AlertEventID + "' " + " And A.RecipientType = 99 " + " And B.IssueState = 2 " + " And B.UserNo is not null " + " Union " + " Select C.UserNo" + " From tblIEWAlertRecipients A, tblUSRUserGroup B, tblUSRUserBasis C " + " Where A.Recipient = B.GroupNo " + " And A.RecipientType = B.GroupType " + " And B.UserNo = C.UserNo " + " And A.AlertEventID = '" + ae.AlertEventID + "' " + " And A.RecipientType <> 99 " + " And C.UserNo is not null "; + + cn = CreateConnection(dbi.RealDB.ConnectionString); + //cn.Open(); + //cmd = CreateCommand(strSQL, cn); + + //using (var da = new System.Data.OleDb.OleDbDataAdapter(cmd)) + //{ + // dtTemp = new DataTable(); + // da.Fill(dtTemp); + //} + ExecuteSQLQuery_Adapter(strSQL, dtTemp, cn); + + foreach (DataRow row in dtTemp.Rows) + { + if (!result.Contains(row["UserNo"].ToString())) + result.Add(row["UserNo"].ToString()); + } + + if (result.Count == 0) + { + throw new Exception(string.Format($"無任何接收者資訊")); + } + + return result; + } + + catch (Exception ex) + { + throw; + } + finally + { + if (cn != null && cn.State == ConnectionState.Open) + { + cn.Close(); + cn.Dispose(); + cn = null; + } + //if (cmd != null) + //{ + // cmd.Dispose(); + // cmd = null; + //} + if (dtTemp != null) + { + dtTemp.Dispose(); + dtTemp = null; + } + } + } + + // 2016-06-02, Joe, Add + private string GetAlertRecipients(AlertEvent ae) + { + string GetAlertRecipientsRet = default(string); + + string strSQL; + IDbConnection cn = null; + //IDbCommand cmd = null; + DataTable dtTemp = null; + string strReturn = ""; + + try + { + strSQL = " Select A.* " + " From tblIEWAlertRecipients A " + " Where A.AlertEventID = '" + ae.AlertEventID + "' " + " And A.RecipientType <> 99 "; + + cn = CreateConnection(dbi.RealDB.ConnectionString); + //cn.Open(); + //cmd = CreateCommand(strSQL, cn); + + //using (var da = new System.Data.OleDb.OleDbDataAdapter(cmd)) + //{ + // dtTemp = new DataTable(); + // da.Fill(dtTemp); + //} + ExecuteSQLQuery_Adapter(strSQL, dtTemp, cn); + + foreach (DataRow row in dtTemp.Rows) + { + if (string.IsNullOrEmpty(strReturn)) + { + strReturn = row["RECIPIENT"].ToString(); + } + else + { + strReturn = strReturn + "├" + row["RECIPIENT"].ToString(); + } + } + + if (string.IsNullOrEmpty(strReturn)) + { + throw new Exception("無任何警示群組資訊!"); + } + } + + + catch (Exception ex) + { + throw; + } + finally + { + if (cn != null && cn.State == ConnectionState.Open) + { + cn.Close(); + cn.Dispose(); + cn = null; + } + //if (cmd != null) + //{ + // cmd.Dispose(); + // cmd = null; + //} + if (dtTemp != null) + { + dtTemp.Dispose(); + dtTemp = null; + } + + GetAlertRecipientsRet = strReturn; + } + + return GetAlertRecipientsRet; + + } + + #endregion + + #region Other Class + + /// + /// 警示事件主檔 + /// + /// + private class AlertEvent : EventBase, IEquatable + { + + public AlertEventTypeEnum AlertEventType; // 警示事件類型 0:Default(預設事件) 1:Custom(自定義事件) + public string AlertEventSource; // 警示事件來源(警示編號/預設事件ID) + public string NoticeType; // 警示通知方式 '0':Email(郵件) '1':SMS(簡訊) '0,1':EMail+SMS(郵件+簡訊) '2':MCloud(推播) + public string Subject; // 訊息主旨 + public string Description; // 說明 + public string Creator; // 建立人 + public DataTable ResultTable; + + public AlertEvent(DataRow row) + { + AlertEventID = row["AlertEventID"].ToString(); + AlertEventName = row["AlertEventName"].ToString(); + AlertEventType = (AlertEventTypeEnum)Conversions.ToInteger(row["AlertEventType"]); + AlertEventSource = row["AlertEventSource"].ToString(); + NoticeType = row["NoticeType"].ToString(); + Subject = row["Subject"].ToString(); + Description = row["Description"].ToString(); + Creator = row["Creator"].ToString(); + } + + // 判斷是否有相同的警示事件編號 + public bool Equals(AlertEvent other) + { + + if ((AlertEventID ?? "") == (other.AlertEventID ?? "")) + { + return true; + } + else + { + return false; + } + + } + + } + + // ''' + // ''' 警示事件結果記錄表(Log) + // ''' + // ''' + // Private Class AlertEventLog + // Inherits EventBase + + // Public AlertTime As Date ' 警示時間 + // Public AlertDesc As String ' 說明 + // Public AlertCreator As String ' 警示建立人 + // Public AlertResult As DataTable ' 警示事件觸發結果 + + // Public Sub New() + // Me.Worker = WorkerEnum.ALERTEVENTLOG + // End Sub + + // Public Sub New(ae As AlertEvent, pAlertResult As DataTable) + // Me.AlertEventID = ae.AlertEventID + // Me.AlertEventName = ae.AlertEventName + // Me.AlertType = ae.AlertType + // Me.AlertTime = Now + // Me.AlertDesc = ae.Description + // Me.AlertCreator = ae.Creator + // Me.AlertResult = pAlertResult + // Me.Worker = WorkerEnum.ALERTEVENTLOG + // End Sub + + // End Class + + /// + /// AutoRun Log + /// + /// + private class AutoRunLog : EventBase + { + + public AutoRunLog() + { + } + + public AutoRunLog(AlertEvent ae) + { + LogID = ae.LogID; + AlertEventID = ae.AlertEventID; + AlertEventName = ae.AlertEventName; + StartTime = DateTime.Now; + } + + // Public Sub New(ael As AlertEventLog) + // Me.AlertEventID = ael.AlertEventID + // Me.AlertEventName = ael.AlertEventName + // Me.StartTime = ael.StartTime + // Me.EndTime = ael.EndTime + // Me.ExecuteResult = ael.ExecuteResult + // Me.ErrorMessage = ael.ErrorMessage + // Me.Worker = ael.Worker + // End Sub + + // Public Sub New(di As DeliveryInfo) + // Me.AlertEventID = di.AlertEventID + // Me.AlertEventName = di.AlertEventName + // Me.StartTime = di.StartTime + // Me.EndTime = di.EndTime + // Me.ExecuteResult = di.ExecuteResult + // Me.ErrorMessage = di.ErrorMessage + // Me.Worker = di.Worker + // End Sub + + } + + /// + /// Base + /// + /// + private abstract class EventBase + { + public string LogID; + public string AlertEventID; // 警示事件ID + public string AlertEventName; // 警示事件名稱 + public DateTime StartTime; // 事件開始時間 + public DateTime EndTime; // 事件結束時間 + public ExecuteResultEnum ExecuteResult; // 執行結果 + public string ErrorMessage; // 錯誤訊息 + public AlertTypeEnum AlertType; // 警示類型 1:ERF, 2:LOT, 3:EQP, 4:ACC, 5:MO + } + + // ''' + // ''' 派送資訊 + // ''' + // ''' + // Private Class DeliveryInfo + // Inherits EventBase + + // Public Subject As String ' 訊息主旨 + // Public Description As String ' 說明 + // Public Creator As String ' 預警事件建立者, 若AlertEventID無對應的收件人, 則以此為收件人 + // Public AlertContent As DataTable ' 訊息內容 + + // Public Sub New() + // Me.Worker = WorkerEnum.DELIVERY + // End Sub + + // Public Sub New(ae As AlertEvent, pAlertContent As DataTable) + // Me.AlertEventID = ae.AlertEventID + // Me.AlertEventName = ae.AlertEventName + // Me.AlertType = ae.AlertType + // Me.Subject = ae.Subject + // Me.Description = ae.Description + // Me.Creator = ae.Creator + // Me.AlertContent = pAlertContent + // Me.Worker = WorkerEnum.DELIVERY + // End Sub + + // End Class + + /// + /// Email內容 + /// + /// + private class EmailContent + { + + #region tr + + public class tr : IList + { + + private List listTR = new List(); + + public void Add(string item) + { + listTR.Add(item); + } + + public void Clear() + { + listTR.Clear(); + } + + public bool Contains(string item) + { + return listTR.Contains(item); + } + + public void CopyTo(string[] array, int arrayIndex) + { + + } + + public int Count + { + get + { + return listTR.Count; + } + } + + public bool IsReadOnly + { + get + { + return false; + } + } + + public bool Remove(string item) + { + return listTR.Remove(item); + } + + public IEnumerator GetEnumerator() + { + return listTR.GetEnumerator(); + } + + public int IndexOf(string item) + { + return listTR.IndexOf(item); + } + + public void Insert(int index, string item) + { + listTR.Insert(index, item); + } + + public string this[int index] + { + get + { + return listTR[index]; + } + set + { + listTR[index] = value; + } + } + + public void RemoveAt(int index) + { + listTR.RemoveAt(index); + } + + public IEnumerator GetEnumerator1() + { + return listTR.GetEnumerator(); + } + + IEnumerator IEnumerable.GetEnumerator() => GetEnumerator1(); + } + + #endregion + + public string AlertEventName; // 警示事件名稱 + public AlertTypeEnum AlertType; // 警示類別 + public DateTime AlertTime; // 警示時間 + public string AlertDescription; // 說明 + public List thead = new List(); + public List tbody = new List(); + + public string Generate() + { + + int idx = 0; + string strTemp = ""; + string strContent = ""; + + strContent += "
警示事件名稱: " + AlertEventName + "

"; + strContent += "
警示類別: " + AlertType.ToString() + "

"; + strContent += "
警示時間: " + Conversions.ToString(AlertTime) + "

"; + strContent += "
說明: " + AlertDescription + "

"; + + // header + strContent += ""; + strContent += ""; + + foreach (string s in thead) + { + strContent += ""; + } + + strContent += ""; + + // body + foreach (tr r in tbody) + { + + idx += 1; + + if (idx % 2 == 1) + { + // 奇數列 + strContent += ""; + } + else + { + // 偶數列 + strContent += ""; + } + + strTemp = ""; + + foreach (string d in r) + { + strTemp += ""; + } + + strContent += strTemp; + strContent += ""; + + } + + strContent += "
"; + strContent += s; + strContent += "
"; + strTemp += d; + strTemp += "
"; + + return strContent; + + } + + } + + #endregion + + #region 資料庫物件 + + private class DatabaseInfo + { + + public struct DatabaseProperty + { + public string DatabaseType; + public string DatabaseOwner; + public string DatabasePassword; + public string ConnectionString; + } + + public DatabaseProperty RealDB = new DatabaseProperty(); + public DatabaseProperty HistoryDB = new DatabaseProperty(); + + public DatabaseInfo() + { + iMESLicxManager.clsDecoding objLicMag = new iMESLicxManager.clsDecoding(); + try + { + RealDB.DatabaseType = AppSettings["DatabaseType"]; + RealDB.DatabaseOwner = AppSettings["DatabaseOwner"]; + RealDB.DatabasePassword = objLicMag.PasswordDecoding(AppSettings["DatabasePassword"]); + RealDB.ConnectionString = AppSettings["ConnectionString"] + ";Password=" + RealDB.DatabasePassword; + HistoryDB.DatabaseType = AppSettings["ReportDatabaseType"]; + HistoryDB.DatabaseOwner = AppSettings["ReportDatabaseOwner"]; + HistoryDB.DatabasePassword = objLicMag.PasswordDecoding(AppSettings["ReportDatabasePassword"]); + HistoryDB.ConnectionString = AppSettings["ReportConnectionString"] + ";Password=" + HistoryDB.DatabasePassword; + } + catch (Exception ex) + { + throw; + } + finally + { + objLicMag = null; + } + + } + + } + + #endregion + + #region 解密 + + // 對應的解密,中文字解碼有問題 + public string DeCrypt(string strCryptThis) + { + string DeCryptRet = default(string); + + string g_Key = "xNDFz6LH67LOv7xKbWFpbMu1wejrM7SzvV4tLRvq3X47m708O1xMHLoaMNCqGhoaEN"; + int iDeCryptChar; + string strDecrypted = ""; + int i, iKeyChar, iStringChar; + + try + { + + strCryptThis = System.Text.Encoding.ASCII.GetString(Convert.FromBase64String(strCryptThis)); + + var loopTo = Strings.Len(strCryptThis); + for (i = 1; i <= loopTo; i++) + { + iKeyChar = Strings.Asc(Strings.Mid(g_Key, i, 1)); + iStringChar = Strings.Asc(Strings.Mid(strCryptThis, i, 1)); + iDeCryptChar = iKeyChar ^ iStringChar; + strDecrypted = strDecrypted + Strings.Chr(iDeCryptChar); + } + DeCryptRet = strDecrypted; + } + + catch (Exception ex) + { + throw; + } + + return DeCryptRet; + + } + + #endregion + + #region Queue + + private class IEWQueue : IList + { + + public event AddCompleteEventHandler AddComplete; + + public delegate void AddCompleteEventHandler(); + + private List q = new List(); + + public void Add(T item) + { + q.Add(item); + AddComplete?.Invoke(); + } + + public void Clear() + { + q.Clear(); + } + + public bool Contains(T item) + { + return q.Contains(item); + } + + public void CopyTo(T[] array, int arrayIndex) + { + q.CopyTo(array, arrayIndex); + } + + public int Count + { + get + { + return q.Count; + } + } + + public bool IsReadOnly + { + get + { + return false; + } + } + + public bool Remove(T item) + { + return q.Remove(item); + } + + public IEnumerator GetEnumerator() + { + return q.GetEnumerator(); + } + + public int IndexOf(T item) + { + return q.IndexOf(item); + } + + public void Insert(int index, T item) + { + q.Insert(index, item); + } + + public T this[int index] + { + get + { + return q[index]; + } + set + { + q[index] = value; + } + } + + public void RemoveAt(int index) + { + q.RemoveAt(index); + } + + public IEnumerator GetEnumerator1() + { + return q.GetEnumerator(); + } + + IEnumerator IEnumerable.GetEnumerator() => GetEnumerator1(); + } + + #endregion + + #region AddComplete Event + + private void QueueEvent_AddComplete() + { + + if (!WorkerEvent.IsBusy) + { + WorkerEvent.RunWorkerAsync(); + } + + } + + private void QueueEventLog_AddComplete() + { + + if (!WorkerEventLog.IsBusy) + { + WorkerEventLog.RunWorkerAsync(); + } + + } + + private void QueueAutoRunLog_AddComplete() + { + + if (!WorkerAutoRunLog.IsBusy) + { + WorkerAutoRunLog.RunWorkerAsync(); + } + + } + + private void QueueDelivery_AddComplete() + { + + if (!WorkerDelivery.IsBusy) + { + WorkerDelivery.RunWorkerAsync(); + } + + } + + #endregion + + private int funWriteTxtFile(string WriteTxt, Exception ex = null) + { + int funWriteTxtFileRet = default(int); + + funWriteTxtFileRet = -1; + + try + { + if (logger != null) + { + logger.WriteLog(WriteTxt, iMESLog.iMESLogLevel.Info, ex); + } + else + { + if (!Directory.Exists(AppDomain.CurrentDomain.BaseDirectory + @"\Log")) + { + Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory + @"\Log"); + } + + var fs = new FileStream(AppDomain.CurrentDomain.BaseDirectory + @"\Log\MESIEW_Log_" + Strings.Format(DateTime.Now, "yyyyMMdd") + ".txt", FileMode.OpenOrCreate, FileAccess.ReadWrite); + var w = new StreamWriter(fs); + + w.BaseStream.Seek(0L, SeekOrigin.End); + w.WriteLine(Strings.Format(DateTime.Now, "yyyy/MM/dd HH:mm:ss") + " " + WriteTxt); + w.Close(); + fs.Close(); + } + + funWriteTxtFileRet = 0; + } + + catch (Exception e1) + { + + } + + return funWriteTxtFileRet; + + } + } +} \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/IEWService.csproj b/SRC/MESAgent/MESIEW/IEWService/IEWService.csproj new file mode 100644 index 0000000..89eeb98 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/IEWService.csproj @@ -0,0 +1,263 @@ + + + + Debug + x86 + + + + + {7538DCCA-4FA2-0BF3-1C07-913D4AE96E95} + WinExe + IEWService.IEWService + IEWService + MESIEW + 512 + Console + v4.6.2 + + + SAK + SAK + SAK + SAK + false + D:\STD_folder\MESSeries_STD_yyyymmdd\MESIEWService\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 2 + 1.0.0.%2a + false + true + true + $(DefaultItemExcludes);$(ProjectDir)**\*.vb + + + On + + + Binary + + + Off + + + Off + + + AnyCPU + ..\..\..\MESClient\MESIEWServiceInstall\ + 41999,42016,42017,42018,42019,42020,42021,42022,42032,42036,42353,42354,42355 + Full + true + true + false + + + AnyCPU + ..\..\..\MESClient\MESIEWServiceInstall\ + 41999,42016,42017,42018,42019,42020,42021,42022,42032,42036,42353,42354,42355 + true + true + pdbonly + true + false + + + BB1E0A6C038D360CE4BE9723ABC415D99A432E73 + + + + + + + true + + + true + + + + False + ..\..\..\MES_S_DLL\data_access_service.dll + True + + + False + ..\..\..\MES_S_DLL\iMESComSubroutine.dll + True + + + False + ..\..\..\MES_S_DLL\iMESComXML.dll + True + + + False + ..\..\..\MES_S_DLL\iMESLicxManager.dll + True + + + + False + ..\..\..\MES_S_DLL\iMESLog.dll + + + ..\..\..\MES_S_DLL\iMESMail.dll + + + ..\..\..\MES_S_DLL\kcWIP.dll + + + + + + + + + + + + + + + + + + + + + + + + + True + Application.myapp + + + Component + + + IEWService.cs + + + True + Settings.settings + True + + + ProjectInstaller.cs + + + Component + + + + True + True + Reference.map + + + + + IEWService.cs + + + ProjectInstaller.cs + + + + + + + + Always + + + Always + + + MyApplicationCodeGenerator + Application.Designer.cs + + + SettingsSingleFileGenerator + IEWService.My + Settings.Designer.cs + + + PreserveNewest + + + Always + + + Always + + + + MSDiscoCodeGenerator + Reference.cs + + + + + False + Microsoft .NET Framework 4 %28x86 和 x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + False + Windows Installer 3.1 + true + + + + + + + + + + + Dynamic + Web References\wsMCloud\ + http://10.20.88.57/MSFT2/PushService.asmx + + + + + MySettings + MESIEW_wsMCloud_PushService + + + + + + + + + \ No newline at end of file diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/frmTest.resx b/SRC/MESAgent/MESIEW/IEWService/IEWService.resx similarity index 93% rename from SRC/MESWin/SYS2/ET_Subcontractor/frmTest.resx rename to SRC/MESAgent/MESIEW/IEWService/IEWService.resx index 1af7de1..2f131da 100644 --- a/SRC/MESWin/SYS2/ET_Subcontractor/frmTest.resx +++ b/SRC/MESAgent/MESIEW/IEWService/IEWService.resx @@ -117,4 +117,10 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 50, 41 + + + False + \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/IEWService_1_TemporaryKey.pfx b/SRC/MESAgent/MESIEW/IEWService/IEWService_1_TemporaryKey.pfx new file mode 100644 index 0000000..d610589 Binary files /dev/null and b/SRC/MESAgent/MESIEW/IEWService/IEWService_1_TemporaryKey.pfx differ diff --git a/SRC/MESAgent/MESIEW/IEWService/IEWService_TemporaryKey.pfx b/SRC/MESAgent/MESIEW/IEWService/IEWService_TemporaryKey.pfx new file mode 100644 index 0000000..eeffda6 Binary files /dev/null and b/SRC/MESAgent/MESIEW/IEWService/IEWService_TemporaryKey.pfx differ diff --git a/SRC/MESAgent/MESIEW/IEWService/Install_x64.bat b/SRC/MESAgent/MESIEW/IEWService/Install_x64.bat new file mode 100644 index 0000000..19cb7df --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Install_x64.bat @@ -0,0 +1,3 @@ +%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe "%~dp0MESIEW.exe" + +Pause \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/Install_x86.bat b/SRC/MESAgent/MESIEW/IEWService/Install_x86.bat new file mode 100644 index 0000000..332da8d --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Install_x86.bat @@ -0,0 +1,3 @@ +%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "%~dp0MESIEW.exe" + +Pause \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Application.Designer.cs b/SRC/MESAgent/MESIEW/IEWService/My Project/Application.Designer.cs similarity index 91% rename from SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Application.Designer.cs rename to SRC/MESAgent/MESIEW/IEWService/My Project/Application.Designer.cs index 299bbe3..ab1b2cb 100644 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Application.Designer.cs +++ b/SRC/MESAgent/MESIEW/IEWService/My Project/Application.Designer.cs @@ -1,7 +1,7 @@ // ------------------------------------------------------------------------------ // // 這段程式碼是由工具產生的。 -// 執行階段版本:4.0.30319.42000 +// 執行階段版本:4.0.30319.18051 // // 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, // 變更將會遺失。 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Application.myapp b/SRC/MESAgent/MESIEW/IEWService/My Project/Application.myapp similarity index 91% rename from SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Application.myapp rename to SRC/MESAgent/MESIEW/IEWService/My Project/Application.myapp index 758895d..602de37 100644 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Application.myapp +++ b/SRC/MESAgent/MESIEW/IEWService/My Project/Application.myapp @@ -5,6 +5,6 @@ 0 true 0 - 1 + 3 true diff --git a/SRC/MESPlugin/MESPI_BusinessRule/My Project/Resources.resx b/SRC/MESAgent/MESIEW/IEWService/My Project/Resources.resx similarity index 100% rename from SRC/MESPlugin/MESPI_BusinessRule/My Project/Resources.resx rename to SRC/MESAgent/MESIEW/IEWService/My Project/Resources.resx diff --git a/SRC/MESAgent/MESIEW/IEWService/My Project/Settings.Designer.cs b/SRC/MESAgent/MESIEW/IEWService/My Project/Settings.Designer.cs new file mode 100644 index 0000000..d25c07a --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/My Project/Settings.Designer.cs @@ -0,0 +1,101 @@ +// ------------------------------------------------------------------------------ +// +// 這段程式碼是由工具產生的。 +// 執行階段版本:4.0.30319.42000 +// +// 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, +// 變更將會遺失。 +// +// ------------------------------------------------------------------------------ + +using System.Diagnostics; +using Microsoft.VisualBasic; +using Microsoft.VisualBasic.CompilerServices; + + +namespace IEWService.My +{ + + [System.Runtime.CompilerServices.CompilerGenerated()] + [System.CodeDom.Compiler.GeneratedCode("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")] + [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Advanced)] + internal sealed partial class MySettings : System.Configuration.ApplicationSettingsBase + { + + private static MySettings defaultInstance = (MySettings)Synchronized(new MySettings()); + + #region My.Settings 自動儲存功能 + /* TODO ERROR: Skipped IfDirectiveTrivia + #If _MyType = "WindowsForms" Then + *//* TODO ERROR: Skipped DisabledTextTrivia + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub + *//* TODO ERROR: Skipped EndIfDirectiveTrivia + #End If + */ + #endregion + + public static MySettings Default + { + get + { + + /* TODO ERROR: Skipped IfDirectiveTrivia + #If _MyType = "WindowsForms" Then + *//* TODO ERROR: Skipped DisabledTextTrivia + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If + *//* TODO ERROR: Skipped EndIfDirectiveTrivia + #End If + */ + return defaultInstance; + } + } + + [System.Configuration.ApplicationScopedSetting()] + [DebuggerNonUserCode()] + [System.Configuration.SpecialSetting(System.Configuration.SpecialSetting.WebServiceUrl)] + [System.Configuration.DefaultSettingValue("http://10.20.88.57/MSFT2/PushService.asmx")] + public string MESIEW_wsMCloud_PushService + { + get + { + return Conversions.ToString(this["MESIEW_wsMCloud_PushService"]); + } + } + } +} + +namespace IEWService.My +{ + + [HideModuleName()] + [DebuggerNonUserCode()] + [System.Runtime.CompilerServices.CompilerGenerated()] + internal static class MySettingsProperty + { + + [System.ComponentModel.Design.HelpKeyword("My.Settings")] + internal static MySettings Settings + { + get + { + return MySettings.Default; + } + } + } +} \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/My Project/Settings.settings b/SRC/MESAgent/MESIEW/IEWService/My Project/Settings.settings new file mode 100644 index 0000000..58e69a1 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/My Project/Settings.settings @@ -0,0 +1,9 @@ + + + + + + http://10.20.88.57/MSFT2/PushService.asmx + + + \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/NLog.config b/SRC/MESAgent/MESIEW/IEWService/NLog.config new file mode 100644 index 0000000..2b3eadc --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/NLog.config @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.Designer.cs b/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.Designer.cs new file mode 100644 index 0000000..a60cf0a --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.Designer.cs @@ -0,0 +1,90 @@ +using System.Diagnostics; +using System.Runtime.CompilerServices; + +namespace IEWService +{ + [System.ComponentModel.RunInstaller(true)] + public partial class ProjectInstaller : System.Configuration.Install.Installer + { + + // Installer 覆寫 Dispose 以清除元件清單。 + [DebuggerNonUserCode()] + protected override void Dispose(bool disposing) + { + try + { + if (disposing && components != null) + { + components.Dispose(); + } + } + finally + { + base.Dispose(disposing); + } + } + + // 為元件設計工具的必要項 + private System.ComponentModel.IContainer components; + + // 注意: 以下為元件設計工具所需的程序 + // 您可以使用元件設計工具進行修改。 + // 請不要使用程式碼編輯器進行修改。 + [DebuggerStepThrough()] + private void InitializeComponent() + { + _ServiceProcessInstaller1 = new System.ServiceProcess.ServiceProcessInstaller(); + _ServiceInstaller1 = new System.ServiceProcess.ServiceInstaller(); + // + // ServiceProcessInstaller1 + // + _ServiceProcessInstaller1.Account = System.ServiceProcess.ServiceAccount.LocalSystem; + _ServiceProcessInstaller1.Password = null; + _ServiceProcessInstaller1.Username = null; + // + // ServiceInstaller1 + // + _ServiceInstaller1.Description = "MESSeries 智慧預警 Service"; + _ServiceInstaller1.DisplayName = "MES IEW Service"; + _ServiceInstaller1.ServiceName = "MES IEW Service"; + // + // ProjectInstaller + // + Installers.AddRange(new System.Configuration.Install.Installer[] { _ServiceProcessInstaller1, _ServiceInstaller1 }); + + } + private System.ServiceProcess.ServiceProcessInstaller _ServiceProcessInstaller1; + + internal virtual System.ServiceProcess.ServiceProcessInstaller ServiceProcessInstaller1 + { + [MethodImpl(MethodImplOptions.Synchronized)] + get + { + return _ServiceProcessInstaller1; + } + + [MethodImpl(MethodImplOptions.Synchronized)] + set + { + _ServiceProcessInstaller1 = value; + } + } + private System.ServiceProcess.ServiceInstaller _ServiceInstaller1; + + internal virtual System.ServiceProcess.ServiceInstaller ServiceInstaller1 + { + [MethodImpl(MethodImplOptions.Synchronized)] + get + { + return _ServiceInstaller1; + } + + [MethodImpl(MethodImplOptions.Synchronized)] + set + { + _ServiceInstaller1 = value; + } + } + + } +} \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.cs b/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.cs new file mode 100644 index 0000000..6927ae8 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.cs @@ -0,0 +1,19 @@ + +namespace IEWService +{ + + public partial class ProjectInstaller + { + + public ProjectInstaller() : base() + { + + // 此為元件設計工具所需的呼叫。 + InitializeComponent(); + + // 在呼叫 InitializeComponent 之後加入初始化程式碼 + + } + + } +} \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/MDI_Panel.resx b/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.resx similarity index 92% rename from SRC/MESWin/SYS4/21670ll/MESWin/Test/MDI_Panel.resx rename to SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.resx index 2d7050a..ccc2ebf 100644 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/MDI_Panel.resx +++ b/SRC/MESAgent/MESIEW/IEWService/ProjectInstaller.resx @@ -117,10 +117,13 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 17, 17 + + 17, 60 - - 254, 17 + + 243, 17 + + + False \ No newline at end of file diff --git a/SRC/MEStc_SXS/Properties/AssemblyInfo.cs b/SRC/MESAgent/MESIEW/IEWService/Properties/AssemblyInfo.cs similarity index 86% rename from SRC/MEStc_SXS/Properties/AssemblyInfo.cs rename to SRC/MESAgent/MESIEW/IEWService/Properties/AssemblyInfo.cs index e2bf75b..161f244 100644 --- a/SRC/MEStc_SXS/Properties/AssemblyInfo.cs +++ b/SRC/MESAgent/MESIEW/IEWService/Properties/AssemblyInfo.cs @@ -5,8 +5,8 @@ using System.Runtime.InteropServices; // 組件的一般資訊是由下列的屬性集控制。 // 變更這些屬性的值即可修改組件的相關 // 資訊。 -[assembly: AssemblyTitle("MEStc_ABC.Properties")] -[assembly: AssemblyDescription("")] +[assembly: AssemblyTitle("IEWService")] +[assembly: AssemblyDescription("IEWService for MESSeries")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("iMES Technology Inc.")] [assembly: AssemblyProduct("MESSeries 6")] @@ -20,7 +20,7 @@ using System.Runtime.InteropServices; [assembly: ComVisible(false)] // 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("00eb00ee-1246-48cf-a0bf-f5203de255f1")] +[assembly: Guid("7c830bc6-e2bd-4b82-9ff3-ad61fd9004c5")] // 組件的版本資訊由下列四個值所組成: // diff --git a/SRC/MESAgent/MESIEW/IEWService/Uninstall_x64.bat b/SRC/MESAgent/MESIEW/IEWService/Uninstall_x64.bat new file mode 100644 index 0000000..a4c2932 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Uninstall_x64.bat @@ -0,0 +1,4 @@ +%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe "%~dp0MESIEW.exe" -u + + +Pause \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/Uninstall_x86.bat b/SRC/MESAgent/MESIEW/IEWService/Uninstall_x86.bat new file mode 100644 index 0000000..80e771c --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Uninstall_x86.bat @@ -0,0 +1,3 @@ +%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "%~dp0MESIEW.exe" -u + +Pause \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/PushService.disco b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/PushService.disco new file mode 100644 index 0000000..75e2d3f --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/PushService.disco @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/PushService.wsdl b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/PushService.wsdl new file mode 100644 index 0000000..34f0745 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/PushService.wsdl @@ -0,0 +1,345 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/Reference.cs b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/Reference.cs new file mode 100644 index 0000000..de5ab92 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/Reference.cs @@ -0,0 +1,435 @@ +// ------------------------------------------------------------------------------ +// +// 這段程式碼是由工具產生的。 +// 執行階段版本:4.0.30319.42000 +// +// 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, +// 變更將會遺失。 +// +// ------------------------------------------------------------------------------ + + +using System; +using System.ComponentModel; +using System.Diagnostics; +using System.Web.Services; +using System.Web.Services.Protocols; +using Microsoft.VisualBasic.CompilerServices; + +// +// 原始程式碼已由 Microsoft.VSDesigner 自動產生,版本 4.0.30319.42000。 +// +namespace IEWService.wsMCloud +{ + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + [DebuggerStepThrough()] + [DesignerCategory("code")] + [WebServiceBinding(Name = "PushServiceSoap", Namespace = "http://tempuri.org/")] + public partial class PushService : SoapHttpClientProtocol + { + + private System.Threading.SendOrPostCallback RegistGuestTokenOperationCompleted; + + private System.Threading.SendOrPostCallback RegistPNDeviceOperationCompleted; + + private System.Threading.SendOrPostCallback PushDevicePMGOperationCompleted; + + private System.Threading.SendOrPostCallback UpdateGProgramBgNumberOperationCompleted; + + private System.Threading.SendOrPostCallback PushMessageByTokenOperationCompleted; + + private bool useDefaultCredentialsSetExplicitly; + + /// + public PushService() : base() + { + Url = My.MySettings.Default.MESIEW_wsMCloud_PushService; + if (IsLocalFileSystemWebService(Url) == true) + { + UseDefaultCredentials = true; + useDefaultCredentialsSetExplicitly = false; + } + else + { + useDefaultCredentialsSetExplicitly = true; + } + } + + public new string Url + { + get + { + return base.Url; + } + set + { + if (IsLocalFileSystemWebService(base.Url) == true && useDefaultCredentialsSetExplicitly == false && IsLocalFileSystemWebService(value) == false) + + { + base.UseDefaultCredentials = false; + } + base.Url = value; + } + } + + public new bool UseDefaultCredentials + { + get + { + return base.UseDefaultCredentials; + } + set + { + base.UseDefaultCredentials = value; + useDefaultCredentialsSetExplicitly = true; + } + } + + /// + public event RegistGuestTokenCompletedEventHandler RegistGuestTokenCompleted; + + /// + public event RegistPNDeviceCompletedEventHandler RegistPNDeviceCompleted; + + /// + public event PushDevicePMGCompletedEventHandler PushDevicePMGCompleted; + + /// + public event UpdateGProgramBgNumberCompletedEventHandler UpdateGProgramBgNumberCompleted; + + /// + public event PushMessageByTokenCompletedEventHandler PushMessageByTokenCompleted; + + /// + [SoapDocumentMethod("http://tempuri.org/RegistGuestToken", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)] + public string RegistGuestToken(string pKey, string pTransData) + { + object[] results = Invoke("RegistGuestToken", new object[] { pKey, pTransData }); + return Conversions.ToString(results[0]); + } + + /// + public void RegistGuestTokenAsync(string pKey, string pTransData) + { + RegistGuestTokenAsync(pKey, pTransData, null); + } + + /// + public void RegistGuestTokenAsync(string pKey, string pTransData, object userState) + { + if (RegistGuestTokenOperationCompleted == null) + { + RegistGuestTokenOperationCompleted = OnRegistGuestTokenOperationCompleted; + } + InvokeAsync("RegistGuestToken", new object[] { pKey, pTransData }, RegistGuestTokenOperationCompleted, userState); + } + + private void OnRegistGuestTokenOperationCompleted(object arg) + { + if (RegistGuestTokenCompleted != null) + { + InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg; + RegistGuestTokenCompleted?.Invoke(this, new RegistGuestTokenCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [SoapDocumentMethod("http://tempuri.org/RegistPNDevice", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)] + public string RegistPNDevice(string pKey, string pTransData) + { + object[] results = Invoke("RegistPNDevice", new object[] { pKey, pTransData }); + return Conversions.ToString(results[0]); + } + + /// + public void RegistPNDeviceAsync(string pKey, string pTransData) + { + RegistPNDeviceAsync(pKey, pTransData, null); + } + + /// + public void RegistPNDeviceAsync(string pKey, string pTransData, object userState) + { + if (RegistPNDeviceOperationCompleted == null) + { + RegistPNDeviceOperationCompleted = OnRegistPNDeviceOperationCompleted; + } + InvokeAsync("RegistPNDevice", new object[] { pKey, pTransData }, RegistPNDeviceOperationCompleted, userState); + } + + private void OnRegistPNDeviceOperationCompleted(object arg) + { + if (RegistPNDeviceCompleted != null) + { + InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg; + RegistPNDeviceCompleted?.Invoke(this, new RegistPNDeviceCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [SoapDocumentMethod("http://tempuri.org/PushDevicePMG", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)] + public string PushDevicePMG(string pKey, string pPushMsg) + { + object[] results = Invoke("PushDevicePMG", new object[] { pKey, pPushMsg }); + return Conversions.ToString(results[0]); + } + + /// + public void PushDevicePMGAsync(string pKey, string pPushMsg) + { + PushDevicePMGAsync(pKey, pPushMsg, null); + } + + /// + public void PushDevicePMGAsync(string pKey, string pPushMsg, object userState) + { + if (PushDevicePMGOperationCompleted == null) + { + PushDevicePMGOperationCompleted = OnPushDevicePMGOperationCompleted; + } + InvokeAsync("PushDevicePMG", new object[] { pKey, pPushMsg }, PushDevicePMGOperationCompleted, userState); + } + + private void OnPushDevicePMGOperationCompleted(object arg) + { + if (PushDevicePMGCompleted != null) + { + InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg; + PushDevicePMGCompleted?.Invoke(this, new PushDevicePMGCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [SoapDocumentMethod("http://tempuri.org/UpdateGProgramBgNumber", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)] + public string UpdateGProgramBgNumber(string pBgP2M) + { + object[] results = Invoke("UpdateGProgramBgNumber", new object[] { pBgP2M }); + return Conversions.ToString(results[0]); + } + + /// + public void UpdateGProgramBgNumberAsync(string pBgP2M) + { + UpdateGProgramBgNumberAsync(pBgP2M, null); + } + + /// + public void UpdateGProgramBgNumberAsync(string pBgP2M, object userState) + { + if (UpdateGProgramBgNumberOperationCompleted == null) + { + UpdateGProgramBgNumberOperationCompleted = OnUpdateGProgramBgNumberOperationCompleted; + } + InvokeAsync("UpdateGProgramBgNumber", new object[] { pBgP2M }, UpdateGProgramBgNumberOperationCompleted, userState); + } + + private void OnUpdateGProgramBgNumberOperationCompleted(object arg) + { + if (UpdateGProgramBgNumberCompleted != null) + { + InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg; + UpdateGProgramBgNumberCompleted?.Invoke(this, new UpdateGProgramBgNumberCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + [SoapDocumentMethod("http://tempuri.org/PushMessageByToken", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)] + public string PushMessageByToken(string pKey, string pPushMsg) + { + object[] results = Invoke("PushMessageByToken", new object[] { pKey, pPushMsg }); + return Conversions.ToString(results[0]); + } + + /// + public void PushMessageByTokenAsync(string pKey, string pPushMsg) + { + PushMessageByTokenAsync(pKey, pPushMsg, null); + } + + /// + public void PushMessageByTokenAsync(string pKey, string pPushMsg, object userState) + { + if (PushMessageByTokenOperationCompleted == null) + { + PushMessageByTokenOperationCompleted = OnPushMessageByTokenOperationCompleted; + } + InvokeAsync("PushMessageByToken", new object[] { pKey, pPushMsg }, PushMessageByTokenOperationCompleted, userState); + } + + private void OnPushMessageByTokenOperationCompleted(object arg) + { + if (PushMessageByTokenCompleted != null) + { + InvokeCompletedEventArgs invokeArgs = (InvokeCompletedEventArgs)arg; + PushMessageByTokenCompleted?.Invoke(this, new PushMessageByTokenCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState)); + } + } + + /// + public new void CancelAsync(object userState) + { + base.CancelAsync(userState); + } + + private bool IsLocalFileSystemWebService(string url) + { + if (url == null || ReferenceEquals(url, string.Empty)) + { + return false; + } + var wsUri = new Uri(url); + if (wsUri.Port >= 1024 && string.Compare(wsUri.Host, "localHost", StringComparison.OrdinalIgnoreCase) == 0) + { + return true; + } + return false; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + public delegate void RegistGuestTokenCompletedEventHandler(object sender, RegistGuestTokenCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + [DebuggerStepThrough()] + [DesignerCategory("code")] + public partial class RegistGuestTokenCompletedEventArgs : AsyncCompletedEventArgs + { + + private object[] results; + + internal RegistGuestTokenCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState) : base(exception, cancelled, userState) + { + this.results = results; + } + + /// + public string Result + { + get + { + RaiseExceptionIfNecessary(); + return Conversions.ToString(results[0]); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + public delegate void RegistPNDeviceCompletedEventHandler(object sender, RegistPNDeviceCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + [DebuggerStepThrough()] + [DesignerCategory("code")] + public partial class RegistPNDeviceCompletedEventArgs : AsyncCompletedEventArgs + { + + private object[] results; + + internal RegistPNDeviceCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState) : base(exception, cancelled, userState) + { + this.results = results; + } + + /// + public string Result + { + get + { + RaiseExceptionIfNecessary(); + return Conversions.ToString(results[0]); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + public delegate void PushDevicePMGCompletedEventHandler(object sender, PushDevicePMGCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + [DebuggerStepThrough()] + [DesignerCategory("code")] + public partial class PushDevicePMGCompletedEventArgs : AsyncCompletedEventArgs + { + + private object[] results; + + internal PushDevicePMGCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState) : base(exception, cancelled, userState) + { + this.results = results; + } + + /// + public string Result + { + get + { + RaiseExceptionIfNecessary(); + return Conversions.ToString(results[0]); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + public delegate void UpdateGProgramBgNumberCompletedEventHandler(object sender, UpdateGProgramBgNumberCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + [DebuggerStepThrough()] + [DesignerCategory("code")] + public partial class UpdateGProgramBgNumberCompletedEventArgs : AsyncCompletedEventArgs + { + + private object[] results; + + internal UpdateGProgramBgNumberCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState) : base(exception, cancelled, userState) + { + this.results = results; + } + + /// + public string Result + { + get + { + RaiseExceptionIfNecessary(); + return Conversions.ToString(results[0]); + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + public delegate void PushMessageByTokenCompletedEventHandler(object sender, PushMessageByTokenCompletedEventArgs e); + + /// + [System.CodeDom.Compiler.GeneratedCode("System.Web.Services", "4.6.1055.0")] + [DebuggerStepThrough()] + [DesignerCategory("code")] + public partial class PushMessageByTokenCompletedEventArgs : AsyncCompletedEventArgs + { + + private object[] results; + + internal PushMessageByTokenCompletedEventArgs(object[] results, Exception exception, bool cancelled, object userState) : base(exception, cancelled, userState) + { + this.results = results; + } + + /// + public string Result + { + get + { + RaiseExceptionIfNecessary(); + return Conversions.ToString(results[0]); + } + } + } +} \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/Reference.map b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/Reference.map new file mode 100644 index 0000000..30ac9a5 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/Web References/wsMCloud/Reference.map @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/SRC/MESAgent/MESIEW/IEWService/app.config b/SRC/MESAgent/MESIEW/IEWService/app.config new file mode 100644 index 0000000..ca29c91 --- /dev/null +++ b/SRC/MESAgent/MESIEW/IEWService/app.config @@ -0,0 +1,50 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + http://10.20.88.57/MSFT2/PushService.asmx + + + + diff --git a/SRC/MESPlugin/MESPI_WIP/MESPI_WIP.sln b/SRC/MESAgent/MESIEW/MESIEW.sln similarity index 55% rename from SRC/MESPlugin/MESPI_WIP/MESPI_WIP.sln rename to SRC/MESAgent/MESIEW/MESIEW.sln index 29ee868..d22e41c 100644 --- a/SRC/MESPlugin/MESPI_WIP/MESPI_WIP.sln +++ b/SRC/MESAgent/MESIEW/MESIEW.sln @@ -1,9 +1,9 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 +VisualStudioVersion = 14.0.25123.0 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MESPI_WIP", "MESPI_WIP.csproj", "{F9051601-B027-0745-17C2-D36A87ABB6A1}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IEWService", "IEWService\IEWService.csproj", "{7538DCCA-4FA2-0BF3-1C07-913D4AE96E95}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -11,22 +11,21 @@ Global Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {F9051601-B027-0745-17C2-D36A87ABB6A1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F9051601-B027-0745-17C2-D36A87ABB6A1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F9051601-B027-0745-17C2-D36A87ABB6A1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F9051601-B027-0745-17C2-D36A87ABB6A1}.Release|Any CPU.Build.0 = Release|Any CPU + {7538DCCA-4FA2-0BF3-1C07-913D4AE96E95}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7538DCCA-4FA2-0BF3-1C07-913D4AE96E95}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7538DCCA-4FA2-0BF3-1C07-913D4AE96E95}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7538DCCA-4FA2-0BF3-1C07-913D4AE96E95}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 1 + SccNumberOfProjects = 2 SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = MESPI_WIP.csproj - SccProjectName0 = . - SccAuxPath0 = http://tfs.imestech.com:8080/tfs/messeries6 SccLocalPath0 = . - SccProvider0 = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} + SccProjectUniqueName1 = IEWService\\IEWService.vbproj + SccProjectName1 = IEWService + SccLocalPath1 = IEWService EndGlobalSection EndGlobal diff --git a/SRC/MESPlugin/MESPI_BusinessRule/MESPI_BusinessRule.csproj b/SRC/MESPlugin/MESPI_BusinessRule/MESPI_BusinessRule.csproj deleted file mode 100644 index ea44882..0000000 --- a/SRC/MESPlugin/MESPI_BusinessRule/MESPI_BusinessRule.csproj +++ /dev/null @@ -1,119 +0,0 @@ - - - - - Debug - AnyCPU - {6CD932DD-93B6-0C5E-06F9-47F39C95CB5A} - Library - MESPI_BusinessRule - MESPI_BusinessRule - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - true - full - true - true - ..\..\MES_S_DLL\plugin\ - ..\..\MES_S_DLL\plugin\MESPI_BusinessRule.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - false - - - pdbonly - false - true - true - bin\Release\ - bin\Release\ - - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - false - - - On - - - Binary - - - Off - - - On - - - true - - - iMES.snk - - - - - False - ..\..\MES_S_DLL\iMESCIO.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - True - Application.myapp - - - True - Settings.settings - True - - - - - - MyApplicationCodeGenerator - Application.Designer.cs - - - SettingsSingleFileGenerator - MESPI_BusinessRule.My - Settings.Designer.cs - - - - - \ No newline at end of file diff --git a/SRC/MESPlugin/MESPI_BusinessRule/MESPI_BusinessRule.vssscc b/SRC/MESPlugin/MESPI_BusinessRule/MESPI_BusinessRule.vssscc deleted file mode 100644 index 6cb031b..0000000 --- a/SRC/MESPlugin/MESPI_BusinessRule/MESPI_BusinessRule.vssscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROJECT" -} diff --git a/SRC/MESPlugin/MESPI_BusinessRule/My Project/AssemblyInfo.cs b/SRC/MESPlugin/MESPI_BusinessRule/My Project/AssemblyInfo.cs deleted file mode 100644 index 6648594..0000000 --- a/SRC/MESPlugin/MESPI_BusinessRule/My Project/AssemblyInfo.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.Reflection; -using System.Runtime.InteropServices; - -// 組件的一般資訊是由下列的屬性集控制。 -// 變更這些屬性的值即可修改組件的相關 -// 資訊。 - -// 檢閱組件屬性的值 - -[assembly: AssemblyTitle("MESPI_BusinessRule")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("MESPI_BusinessRule")] -[assembly: AssemblyCopyright("Copyright © 2016")] -[assembly: AssemblyTrademark("")] - -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("ad5034de-f368-4373-8f98-36aec3edf64e")] - -// 組件的版本資訊由下列四個值所組成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂編號 -// -// 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -// 指定為預設值: -// - -[assembly: AssemblyVersion("6.0.0.0")] -[assembly: AssemblyFileVersion("6.0.0.0")] diff --git a/SRC/MESPlugin/MESPI_BusinessRule/My Project/Settings.Designer.cs b/SRC/MESPlugin/MESPI_BusinessRule/My Project/Settings.Designer.cs deleted file mode 100644 index 77191f5..0000000 --- a/SRC/MESPlugin/MESPI_BusinessRule/My Project/Settings.Designer.cs +++ /dev/null @@ -1,26 +0,0 @@ -//------------------------------------------------------------------------------ -// -// 這段程式碼是由工具產生的。 -// 執行階段版本:4.0.30319.42000 -// -// 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, -// 變更將會遺失。 -// -//------------------------------------------------------------------------------ - -namespace MESPI_BusinessRule.My { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - } -} diff --git a/SRC/MESPlugin/MESPI_BusinessRule/clsBusinessRule.cs b/SRC/MESPlugin/MESPI_BusinessRule/clsBusinessRule.cs deleted file mode 100644 index 7ef3087..0000000 --- a/SRC/MESPlugin/MESPI_BusinessRule/clsBusinessRule.cs +++ /dev/null @@ -1,16 +0,0 @@ -using iMESCIO.PIO.Plugin; -using Microsoft.VisualBasic; - -namespace MESPI_BusinessRule -{ - - public class clsBusinessRule : IBusinessRule - { - - private string funBR_Test(Collection colParameters) - { - return "Pass"; - } - - } -} \ No newline at end of file diff --git a/SRC/MESPlugin/MESPI_BusinessRule/clsGetFunctionBR.cs b/SRC/MESPlugin/MESPI_BusinessRule/clsGetFunctionBR.cs deleted file mode 100644 index 435204b..0000000 --- a/SRC/MESPlugin/MESPI_BusinessRule/clsGetFunctionBR.cs +++ /dev/null @@ -1,96 +0,0 @@ -using System; -using System.Data; -using System.IO; -using System.Linq; -using System.Reflection; -using iMESCIO.PIO.Plugin; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; - -namespace MESPI_BusinessRule -{ - - public class clsGetFunctionBR : ICommonPlugin - { - - public string PlugInPoint - { - get - { - return "wsOP.LoadBRFunctionName"; - } - } - - public object AfterExecut(params object[] Parameters) - { - - string strAppBase = AppDomain.CurrentDomain.BaseDirectory; - string strFilePath = strAppBase.TrimEnd('\\') + @"\Plugin\BusinessRule"; - Assembly mainAssembly; - MethodInfo[] MyMethodInfos; - string strFunction; - string strResult = ""; - - try - { - - foreach (string file in Directory.GetFiles(strFilePath)) - { - - if (new System.IO.FileInfo(file).Extension.ToUpper() != ".DLL") - { - continue; - } - - mainAssembly = Assembly.LoadFrom(file); - - foreach (Type item in mainAssembly.GetTypes()) - { - - var InterfaceTemp = item.GetInterfaces().Where(x => (x.Name ?? "") == (typeof(IBusinessRule).Name.ToString() ?? "")).FirstOrDefault(); - - if (InterfaceTemp == null == false) - { - - MyMethodInfos = item.GetMethods(BindingFlags.NonPublic | BindingFlags.Instance); - - for (int i = 0, loopTo = MyMethodInfos.Length - 1; i <= loopTo; i++) - { - - strFunction = MyMethodInfos[i].Name; - - if (Conversions.ToBoolean(Strings.InStr(strFunction.ToUpper(), "FUNBR"))) - { - strResult += "" + "FunctionName" + "String" + "" + "" + strFunction + "" + "" + "" + new System.IO.FileInfo(file).Name + "" + ""; - } - - } - - } - - } - - } - } - - catch (Exception ex) - { - throw; - } - finally - { - mainAssembly = null; - MyMethodInfos = null; - } - - return strResult; - - } - - public object BeforeExecut(ref bool paramIsCancel, params object[] Parameters) - { - throw new NotImplementedException(); - } - - } -} \ No newline at end of file diff --git a/SRC/MESPlugin/MESPI_WIP/MESPI_WIP.csproj b/SRC/MESPlugin/MESPI_WIP/MESPI_WIP.csproj deleted file mode 100644 index 5509568..0000000 --- a/SRC/MESPlugin/MESPI_WIP/MESPI_WIP.csproj +++ /dev/null @@ -1,124 +0,0 @@ - - - - Debug - AnyCPU - - - - - {F9051601-B027-0745-17C2-D36A87ABB6A1} - Library - MESPI_WIP - MESPI_WIP - 512 - Windows - v4.6.2 - SAK - SAK - SAK - SAK - - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - true - full - true - true - ..\..\MES_S_DLL\plugin\WIP\ - ..\..\MES_S_DLL\plugin\WIP\MESPI_WIP.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - false - 0 - - - pdbonly - false - true - true - bin\Release\ - bin\Release\MESPI_WIP.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - false - 0 - - - On - - - Binary - - - Off - - - On - - - - - False - ..\..\MES_S_DLL\iMESException.dll - True - - - ..\..\MES_S_DLL\iMESLog.dll - - - False - ..\..\MES_S_DLL\kcPRD.dll - - - ..\..\MES_S_DLL\kcWIP.dll - - - - - - - - - - - - - - - - - - - - - - - True - Application.myapp - - - True - Settings.settings - True - - - - - MyApplicationCodeGenerator - Application.Designer.cs - - - SettingsSingleFileGenerator - MESPI_WIP.My - Settings.Designer.cs - - - - - \ No newline at end of file diff --git a/SRC/MESPlugin/MESPI_WIP/My Project/Application.Designer.cs b/SRC/MESPlugin/MESPI_WIP/My Project/Application.Designer.cs deleted file mode 100644 index 299bbe3..0000000 --- a/SRC/MESPlugin/MESPI_WIP/My Project/Application.Designer.cs +++ /dev/null @@ -1,11 +0,0 @@ -// ------------------------------------------------------------------------------ -// -// 這段程式碼是由工具產生的。 -// 執行階段版本:4.0.30319.42000 -// -// 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, -// 變更將會遺失。 -// -// ------------------------------------------------------------------------------ - - diff --git a/SRC/MESPlugin/MESPI_WIP/My Project/AssemblyInfo.cs b/SRC/MESPlugin/MESPI_WIP/My Project/AssemblyInfo.cs deleted file mode 100644 index 0d0d221..0000000 --- a/SRC/MESPlugin/MESPI_WIP/My Project/AssemblyInfo.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.Reflection; -using System.Runtime.InteropServices; - -// 組件的一般資訊是由下列的屬性集控制。 -// 變更這些屬性的值即可修改組件的相關 -// 資訊。 - -// 檢閱組件屬性的值 - -[assembly: AssemblyTitle("MESPI_WIP")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("MESPI_WIP")] -[assembly: AssemblyCopyright("Copyright © 2018")] -[assembly: AssemblyTrademark("")] - -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("438509c2-63aa-45a9-955b-b76a4ad092ac")] - -// 組件的版本資訊是由下列四項值構成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂編號 -// -// 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -// 指定為預設值: -// - -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/SRC/MESPlugin/MESPI_WIP/My Project/Settings.settings b/SRC/MESPlugin/MESPI_WIP/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESPlugin/MESPI_WIP/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.sln b/SRC/MESWin/BR/BR_L_CI_GEN/BR_L_CI_GEN.sln similarity index 68% rename from SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.sln rename to SRC/MESWin/BR/BR_L_CI_GEN/BR_L_CI_GEN.sln index 85b1902..0446495 100644 --- a/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.sln +++ b/SRC/MESWin/BR/BR_L_CI_GEN/BR_L_CI_GEN.sln @@ -1,11 +1,14 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 +VisualStudioVersion = 14.0.25420.1 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "BR_L_CI_GEN", "BR_L_CI_GEN.vbproj", "{0FD97C44-56DD-44B2-AA3E-351935F5AC9C}" EndProject Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" + ProjectSection(ProjectDependencies) = postProject + {0FD97C44-56DD-44B2-AA3E-351935F5AC9C} = {0FD97C44-56DD-44B2-AA3E-351935F5AC9C} + EndProjectSection EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -13,10 +16,10 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 + {0FD97C44-56DD-44B2-AA3E-351935F5AC9C}.Debug|x86.ActiveCfg = Debug|x86 + {0FD97C44-56DD-44B2-AA3E-351935F5AC9C}.Debug|x86.Build.0 = Debug|x86 + {0FD97C44-56DD-44B2-AA3E-351935F5AC9C}.Release|x86.ActiveCfg = Release|x86 + {0FD97C44-56DD-44B2-AA3E-351935F5AC9C}.Release|x86.Build.0 = Release|x86 {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 @@ -29,11 +32,11 @@ Global SccNumberOfProjects = 3 SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj SccLocalPath0 = . SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj SccProjectName1 = ../../Test SccLocalPath1 = ..\\..\\Test + SccProjectUniqueName2 = BR_L_CI_GEN.vbproj SccLocalPath2 = . EndGlobalSection EndGlobal diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/ET_Subcontractor_21676.vbproj b/SRC/MESWin/BR/BR_L_CI_GEN/BR_L_CI_GEN.vbproj similarity index 62% rename from SRC/MESWin/SYS3/ET_Subcontractor_21676/ET_Subcontractor_21676.vbproj rename to SRC/MESWin/BR/BR_L_CI_GEN/BR_L_CI_GEN.vbproj index 1b1ea32..1c39ef5 100644 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/ET_Subcontractor_21676.vbproj +++ b/SRC/MESWin/BR/BR_L_CI_GEN/BR_L_CI_GEN.vbproj @@ -4,10 +4,10 @@ Debug x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} + {0FD97C44-56DD-44B2-AA3E-351935F5AC9C} Library - ET_Subcontractor_21676 - ET_Subcontractor_21676 + BR_L_CI_GEN + BR_L_CI_GEN 512 Windows v4.6.2 @@ -17,6 +17,28 @@ SAK SAK + + true + full + true + true + ..\..\..\MESClient\ + BR_L_CI_GEN.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + 0 + false + + + pdbonly + false + true + true + bin\Release\ + BR_L_CI_GEN.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + 0 + false + On @@ -34,7 +56,7 @@ true true ..\..\..\MESClient\ - ET_Subcontractor_21676.xml + BR_L_CI_GEN.xml 0 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 full @@ -45,7 +67,7 @@ true ..\..\..\MESClient\ - ET_Subcontractor_21676.xml + BR_L_CI_GEN.xml true 0 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 @@ -66,6 +88,11 @@ C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll False + + False + C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinTabControl.v19.1.dll + False + False C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll @@ -86,10 +113,29 @@ C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll False + + False + ..\..\..\MESClient\COM_ERP.dll + False + ..\..\..\MESClient\COM_Kit.dll False + + False + ..\..\..\MESClient\COM_Search.dll + False + + + False + ..\..\..\MESClient\COM_Utility.dll + False + + + ..\..\..\MES_C_DLL\iMESException.dll + False + ..\..\..\MES_C_DLL\iMESExceptionManager.dll False @@ -98,17 +144,29 @@ ..\..\..\MES_C_DLL\iMESUltraGrid.dll False + + False + ..\..\..\MES_S_DLL\Newtonsoft.Json.dll + + + + + False + ..\..\..\MESClient\WP_Kit.dll + False + + @@ -121,34 +179,19 @@ + modConstant.vb - - Form - - - Form - - - Form - - - Form - - - Form - - + Form True Application.myapp - True True @@ -160,25 +203,15 @@ Settings.settings True + + True + True + Reference.map + - - frmSubcontractor_21676.vb - - - frmSubcontractorContDef_21676.vb - - - frmSubcontractorDef_21676.vb - - - frmSubcontractor.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb + + frmBR_L_CI_GEN.vb @@ -189,6 +222,7 @@ + MyApplicationCodeGenerator @@ -199,8 +233,34 @@ My Settings.Designer.vb + + MSDiscoCodeGenerator + Reference.vb + + + + + + + + + + + + Dynamic + Web References\wsEAI\ + http://localhost/EAI/wsEAI.asmx + + + + + MySettings + BR_L_CI_GEN_localhost_wsEAI + + + + - + + + + + + + + + + + + + + + + + + + + + http://localhost/EAI/wsEAI.asmx + + + + diff --git a/SRC/MESWin/SYS1/ET_21674/frmTeacherDef.resx b/SRC/MESWin/BR/BR_L_CI_GEN/frmBR_L_CI_GEN.resx similarity index 94% rename from SRC/MESWin/SYS1/ET_21674/frmTeacherDef.resx rename to SRC/MESWin/BR/BR_L_CI_GEN/frmBR_L_CI_GEN.resx index 1af7de1..46f7a23 100644 --- a/SRC/MESWin/SYS1/ET_21674/frmTeacherDef.resx +++ b/SRC/MESWin/BR/BR_L_CI_GEN/frmBR_L_CI_GEN.resx @@ -117,4 +117,10 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 28, 11 + + + 25 + \ No newline at end of file diff --git a/SRC/MESWin/BR/BR_L_CI_GEN/frmBR_L_CI_GEN.vb b/SRC/MESWin/BR/BR_L_CI_GEN/frmBR_L_CI_GEN.vb new file mode 100644 index 0000000..d82d6a5 --- /dev/null +++ b/SRC/MESWin/BR/BR_L_CI_GEN/frmBR_L_CI_GEN.vb @@ -0,0 +1,6477 @@ +Imports iMESExceptionManager +Imports Infragistics.Win.UltraWinGrid +Imports Infragistics.Win +Imports System.IO +Imports Newtonsoft.Json +Imports Newtonsoft.Json.Linq +Imports COM_ERP + +''' +''' 修改:2012/06/15,sammi.新增多人加工處理. +''' 2016/12/26 YF, 增加新制多人加工(btnOperator), 先將舊有的多人加工隱藏(btnMultiUser) +''' +Public Class frmBR_L_CI_GEN + Inherits System.Windows.Forms.Form + + '//Public Variables + Public LotNo As String = defString + Public UserId As String = defString + Public UserName As String = defString + + Public EquipmentNo As String = defString + Public LoadPort As Integer = defInteger + Public PrivFunNo As String = defString + + '//Web Service相關變數 + Dim tmpStringReader As System.IO.StringReader + Dim InXml, OutXml, strIdentity, strParameter, XmlData, XmlSchema As String + + '//資料表相關變數 + Dim dsWIP, dsTemp, dsINV, dsEQP As New DataSet + Dim dtKeyIn, dtTmpLoginState, dtTmpMTLLotNo As DataTable + Dim drAdd As DataRow + Dim tblLotState, tblTAttrib, tblTMaterial, tblAreaEquipment, tblLotLoginState, tblMaterialLotNo, + tblTmpMTLLotNo, tblMOMaterialState, tblWIPINVRaw, tblSubstituteMaterial, tblSWRJoinLog, + tblMaterialBasis, tblTLotState, tblMaterialProperty, tblOPBasis, tblEQPDispatchState, tblWIPINVSEMI As String + '2016-12-19 系統參數資料表 + Dim dsDefine As New DataSet + Dim tblSYSParam As String = "" + Dim Execute_eSOP As Integer = 0 '2016-12-14, 是否啟用eSOP(0:false,1:true) + + '//其他共用變數 + Dim RevLotSerial As String = defString + Dim LotSerial As String = defString + Dim LogGroupSerial As String = defString + Dim RevLotStamp As Long = defInteger + Dim PhaseNo As Integer + Dim datEventTime As DateTime = Now + Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow + Dim blnGetAccessory As Boolean = True + Dim drSelE As DataRow() + Dim blnChamber As Boolean = False + '2019/02/12 Eric 特殊生產需求是否有資料 + Dim blnShowSWR As Boolean = False + + '20091006 Seam 新增作業工序 + Dim tblSubOP As String + + '2010/03/08,yumei,iugKeyIn區塊新增清單選擇 + Dim strDefaultValue As String + Dim editor As Infragistics.Win.DateTimeEditor + + ' 2016/08/30 YF, ObjectFile物件 + Dim ObjectFileHandler As COM_Utility.ObjectFileHandler + '2016-12-20 XIANG + Dim tblPRDeSOPBasis As String = "" + Friend WithEvents chkUpdCheckInTime As CheckBox + Friend WithEvents btnSWR As Infragistics.Win.Misc.UltraButton + '傳給eSOP,紀錄資料數(ROW欄位) + Dim intRow As Integer = 1 + Dim blnGumMaterialType As Boolean = False + Dim aryGumMaterialType As Array + Dim dtAllMTLLot As DataTable '所有可用料批資料 + Dim tblTMaterialLot As String + Friend WithEvents lblMaterialNo As Label + Friend WithEvents txtMaterialNo As UltraWinEditors.UltraTextEditor + Dim blnSelect As Boolean = False + Dim blnByEQP As Boolean = False + Dim blnCIMTLDBCheck As Boolean = False + Dim blnLock As Boolean = False + + Dim ACCMin As Decimal = defInteger + Dim ACCMax As Decimal = defInteger + Dim ReFrozenFlag As Integer = defInteger + Dim ReACCMin As Decimal = defInteger + Dim ReACCMax As Decimal = defInteger + Dim strTableName, strRaw As String + + Dim vlMaterialLevel As New ValueList + + Dim ckhEQPDispatchRule As String + + ''新设备上料 14278 + Dim dsOE As New DataSet '資料集:儲存取回之資料? + Dim strMOList As String '儲存取回資料表的名稱? +#Region " Windows Form 設計工具產生的程式碼 " + + Public Sub New() + MyBase.New() + + '此呼叫為 Windows Form 設計工具的必要項。 + + InitializeComponent() + + '在 InitializeComponent() 呼叫之後加入所有的初始設定 + ' 2016/08/30 YF, 開另一條執行緒建立會使用到的物件 + Threading.ThreadPool.QueueUserWorkItem(New Threading.WaitCallback( + Sub(pState As Object) + ' 呼叫COM_Utility.ObjectFileHandler建構子, 傳入要載入的ObjectID + Me.ObjectFileHandler = New COM_Utility.ObjectFileHandler("WP_OperatorLogIn_Lot", "WP_EQPConsumeReset", "WP_EQPCheckQCList", "WP_SWRBasisRead", "WP_MaterialQtyInput_Main") + End Sub)) + + End Sub + + 'Form 覆寫 Dispose 以清除元件清單。 + + Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) + If disposing Then + If Not (components Is Nothing) Then + components.Dispose() + End If + End If + MyBase.Dispose(disposing) + End Sub + + '為 Windows Form 設計工具的必要項 + Private components As System.ComponentModel.IContainer + + '注意: 以下為 Windows Form 設計工具所需的程序 + + '您可以使用 Windows Form 設計工具進行修改。 + + '請勿使用程式碼編輯器來修改這些程序。 + Friend WithEvents UltraTabPageControl1 As Infragistics.Win.UltraWinTabControl.UltraTabPageControl + Friend WithEvents UltraTabPageControl2 As Infragistics.Win.UltraWinTabControl.UltraTabPageControl + Friend WithEvents ToolTip1 As System.Windows.Forms.ToolTip + Friend WithEvents UltraTabControl1 As Infragistics.Win.UltraWinTabControl.UltraTabControl + Friend WithEvents UltraTabSharedControlsPage1 As Infragistics.Win.UltraWinTabControl.UltraTabSharedControlsPage + Friend WithEvents utpMaterial As Infragistics.Win.UltraWinTabControl.UltraTabPageControl + Friend WithEvents utpSubOP As Infragistics.Win.UltraWinTabControl.UltraTabPageControl + Friend WithEvents iugSubOP As iMESUltraGrid.iMESUltraGridControl + Friend WithEvents utpEquipment As Infragistics.Win.UltraWinTabControl.UltraTabPageControl + Friend WithEvents IMESUltraGrid3 As iMESUltraGrid.iMESUltraGridControl + Friend WithEvents SBar1 As System.Windows.Forms.StatusBar + Friend WithEvents SBarPanel1 As System.Windows.Forms.StatusBarPanel + Friend WithEvents SBarPanel4 As System.Windows.Forms.StatusBarPanel + Friend WithEvents SBarPanel2 As System.Windows.Forms.StatusBarPanel + Friend WithEvents SBarPanel3 As System.Windows.Forms.StatusBarPanel + Friend WithEvents lblOPNo As System.Windows.Forms.Label + Friend WithEvents lblLotNo As System.Windows.Forms.Label + Friend WithEvents lblSysQty As System.Windows.Forms.Label + Friend WithEvents lblCurQty As System.Windows.Forms.Label + Friend WithEvents lblEmployeeNo As System.Windows.Forms.Label + Friend WithEvents lblShiftNo As System.Windows.Forms.Label + Friend WithEvents lblCustomerLotNo As System.Windows.Forms.Label + Friend WithEvents lblPriority As System.Windows.Forms.Label + Friend WithEvents txtOPNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtLotNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtCurQty As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtCurUnitNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtSysQty As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtSysUnitNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtPriority As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtAreaNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtEmployeeNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtShiftNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtCustomerLotNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents iugAttrib As iMESUltraGrid.iMESUltraGridControl + Friend WithEvents iugMaterial As iMESUltraGrid.iMESUltraGridControl + Friend WithEvents iugEquipment As iMESUltraGrid.iMESUltraGridControl + Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton + Friend WithEvents btnConfirm As Infragistics.Win.Misc.UltraButton + Friend WithEvents lblEquipmentNo As System.Windows.Forms.Label + Friend WithEvents txtEquipmentNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents iugKeyIn As iMESUltraGrid.iMESUltraGridControl + Friend WithEvents lblProductNo As System.Windows.Forms.Label + Friend WithEvents txtProductNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents lblAreaNo As System.Windows.Forms.Label + Friend WithEvents txtOPDescription As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents lblOPDescription As System.Windows.Forms.Label + Friend WithEvents lblLotRecord As System.Windows.Forms.Label + Friend WithEvents txtLotRecord As System.Windows.Forms.RichTextBox + Friend WithEvents txtMONo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents lblMONo As System.Windows.Forms.Label + Friend WithEvents gbxLotInfo As System.Windows.Forms.GroupBox + Friend WithEvents lblupdcheckintime As System.Windows.Forms.Label + Friend WithEvents dtpcheckintime As System.Windows.Forms.DateTimePicker + Friend WithEvents btnQCList As Infragistics.Win.Misc.UltraButton + Friend WithEvents btnEQPConsumeReset As Infragistics.Win.Misc.UltraButton + Friend WithEvents txtOpName As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents btnMultiUser As Infragistics.Win.Misc.UltraButton + Friend WithEvents lblMaterialLotNo As System.Windows.Forms.Label + Friend WithEvents btnOperator As Misc.UltraButton + Friend WithEvents txtMaterialLotNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + + Friend WithEvents uegLotInfo As Misc.UltraExpandableGroupBox + Friend WithEvents uplEquipment As Misc.UltraPanel + Friend WithEvents uplAttrib As Misc.UltraPanel + Friend WithEvents UltraExpandableGroupBoxPanel1 As Misc.UltraExpandableGroupBoxPanel + Friend WithEvents UltraPanel1 As Misc.UltraPanel + Friend WithEvents uplAttrib_Equipment As Misc.UltraPanel + Friend WithEvents UltraSplitter1 As Misc.UltraSplitter + Friend WithEvents uplMaterial_KeyIn As Misc.UltraPanel + Friend WithEvents UltraSplitter2 As Misc.UltraSplitter + Friend WithEvents uplMaterial As Misc.UltraPanel + Friend WithEvents uplKeyIn As Misc.UltraPanel + Friend WithEvents uplAll As Misc.UltraPanel + Friend WithEvents uegMaterial_KeyIn2 As Misc.UltraExpandableGroupBox + Friend WithEvents UltraExpandableGroupBoxPanel4 As Misc.UltraExpandableGroupBoxPanel + Friend WithEvents UltraPanel4 As Misc.UltraPanel + Friend WithEvents uegAttrib_Equipment As Misc.UltraExpandableGroupBox + Friend WithEvents UltraExpandableGroupBoxPanel2 As Misc.UltraExpandableGroupBoxPanel + Friend WithEvents UltraPanel2 As Misc.UltraPanel + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim UltraTab1 As Infragistics.Win.UltraWinTabControl.UltraTab = New Infragistics.Win.UltraWinTabControl.UltraTab() + Dim UltraTab4 As Infragistics.Win.UltraWinTabControl.UltraTab = New Infragistics.Win.UltraWinTabControl.UltraTab() + Me.utpMaterial = New Infragistics.Win.UltraWinTabControl.UltraTabPageControl() + Me.lblMaterialNo = New System.Windows.Forms.Label() + Me.txtMaterialNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.lblMaterialLotNo = New System.Windows.Forms.Label() + Me.txtMaterialLotNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.iugMaterial = New iMESUltraGrid.iMESUltraGridControl() + Me.utpSubOP = New Infragistics.Win.UltraWinTabControl.UltraTabPageControl() + Me.iugSubOP = New iMESUltraGrid.iMESUltraGridControl() + Me.uegLotInfo = New Infragistics.Win.Misc.UltraExpandableGroupBox() + Me.UltraExpandableGroupBoxPanel1 = New Infragistics.Win.Misc.UltraExpandableGroupBoxPanel() + Me.UltraPanel1 = New Infragistics.Win.Misc.UltraPanel() + Me.gbxLotInfo = New System.Windows.Forms.GroupBox() + Me.txtOpName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtOPNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtProductNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtCustomerLotNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtMONo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtShiftNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtEmployeeNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtAreaNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtPriority = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtSysUnitNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtSysQty = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtCurUnitNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtCurQty = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtOPDescription = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtLotNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.lblPriority = New System.Windows.Forms.Label() + Me.lblMONo = New System.Windows.Forms.Label() + Me.lblShiftNo = New System.Windows.Forms.Label() + Me.lblOPNo = New System.Windows.Forms.Label() + Me.lblAreaNo = New System.Windows.Forms.Label() + Me.lblSysQty = New System.Windows.Forms.Label() + Me.lblCurQty = New System.Windows.Forms.Label() + Me.lblProductNo = New System.Windows.Forms.Label() + Me.lblOPDescription = New System.Windows.Forms.Label() + Me.lblCustomerLotNo = New System.Windows.Forms.Label() + Me.lblEmployeeNo = New System.Windows.Forms.Label() + Me.lblLotNo = New System.Windows.Forms.Label() + Me.UltraTabPageControl2 = New Infragistics.Win.UltraWinTabControl.UltraTabPageControl() + Me.UltraTabPageControl1 = New Infragistics.Win.UltraWinTabControl.UltraTabPageControl() + Me.SBar1 = New System.Windows.Forms.StatusBar() + Me.SBarPanel1 = New System.Windows.Forms.StatusBarPanel() + Me.SBarPanel2 = New System.Windows.Forms.StatusBarPanel() + Me.SBarPanel3 = New System.Windows.Forms.StatusBarPanel() + Me.SBarPanel4 = New System.Windows.Forms.StatusBarPanel() + Me.iugAttrib = New iMESUltraGrid.iMESUltraGridControl() + Me.iugEquipment = New iMESUltraGrid.iMESUltraGridControl() + Me.btnClose = New Infragistics.Win.Misc.UltraButton() + Me.btnConfirm = New Infragistics.Win.Misc.UltraButton() + Me.lblEquipmentNo = New System.Windows.Forms.Label() + Me.txtEquipmentNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.lblLotRecord = New System.Windows.Forms.Label() + Me.txtLotRecord = New System.Windows.Forms.RichTextBox() + Me.lblupdcheckintime = New System.Windows.Forms.Label() + Me.dtpcheckintime = New System.Windows.Forms.DateTimePicker() + Me.btnEQPConsumeReset = New Infragistics.Win.Misc.UltraButton() + Me.btnQCList = New Infragistics.Win.Misc.UltraButton() + Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) + Me.utpEquipment = New Infragistics.Win.UltraWinTabControl.UltraTabPageControl() + Me.IMESUltraGrid3 = New iMESUltraGrid.iMESUltraGridControl() + Me.btnMultiUser = New Infragistics.Win.Misc.UltraButton() + Me.btnOperator = New Infragistics.Win.Misc.UltraButton() + Me.chkUpdCheckInTime = New System.Windows.Forms.CheckBox() + Me.btnSWR = New Infragistics.Win.Misc.UltraButton() + Me.uplAttrib = New Infragistics.Win.Misc.UltraPanel() + Me.uplEquipment = New Infragistics.Win.Misc.UltraPanel() + Me.uplAttrib_Equipment = New Infragistics.Win.Misc.UltraPanel() + Me.UltraSplitter1 = New Infragistics.Win.Misc.UltraSplitter() + Me.uplMaterial_KeyIn = New Infragistics.Win.Misc.UltraPanel() + Me.uplKeyIn = New Infragistics.Win.Misc.UltraPanel() + Me.iugKeyIn = New iMESUltraGrid.iMESUltraGridControl() + Me.UltraSplitter2 = New Infragistics.Win.Misc.UltraSplitter() + Me.uplMaterial = New Infragistics.Win.Misc.UltraPanel() + Me.UltraTabControl1 = New Infragistics.Win.UltraWinTabControl.UltraTabControl() + Me.UltraTabSharedControlsPage1 = New Infragistics.Win.UltraWinTabControl.UltraTabSharedControlsPage() + Me.uplAll = New Infragistics.Win.Misc.UltraPanel() + Me.uegMaterial_KeyIn2 = New Infragistics.Win.Misc.UltraExpandableGroupBox() + Me.UltraExpandableGroupBoxPanel4 = New Infragistics.Win.Misc.UltraExpandableGroupBoxPanel() + Me.UltraPanel4 = New Infragistics.Win.Misc.UltraPanel() + Me.uegAttrib_Equipment = New Infragistics.Win.Misc.UltraExpandableGroupBox() + Me.UltraExpandableGroupBoxPanel2 = New Infragistics.Win.Misc.UltraExpandableGroupBoxPanel() + Me.UltraPanel2 = New Infragistics.Win.Misc.UltraPanel() + Me.utpMaterial.SuspendLayout() + CType(Me.txtMaterialNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtMaterialLotNo, System.ComponentModel.ISupportInitialize).BeginInit() + Me.utpSubOP.SuspendLayout() + CType(Me.uegLotInfo, System.ComponentModel.ISupportInitialize).BeginInit() + Me.uegLotInfo.SuspendLayout() + Me.UltraExpandableGroupBoxPanel1.SuspendLayout() + Me.UltraPanel1.ClientArea.SuspendLayout() + Me.UltraPanel1.SuspendLayout() + Me.gbxLotInfo.SuspendLayout() + CType(Me.txtOpName, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtOPNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtProductNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtCustomerLotNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtMONo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtShiftNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtEmployeeNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtAreaNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtPriority, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtSysUnitNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtSysQty, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtCurUnitNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtCurQty, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtOPDescription, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtLotNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SBarPanel1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SBarPanel2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SBarPanel3, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SBarPanel4, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtEquipmentNo, System.ComponentModel.ISupportInitialize).BeginInit() + Me.utpEquipment.SuspendLayout() + Me.uplAttrib.ClientArea.SuspendLayout() + Me.uplAttrib.SuspendLayout() + Me.uplEquipment.ClientArea.SuspendLayout() + Me.uplEquipment.SuspendLayout() + Me.uplAttrib_Equipment.ClientArea.SuspendLayout() + Me.uplAttrib_Equipment.SuspendLayout() + Me.uplMaterial_KeyIn.ClientArea.SuspendLayout() + Me.uplMaterial_KeyIn.SuspendLayout() + Me.uplKeyIn.ClientArea.SuspendLayout() + Me.uplKeyIn.SuspendLayout() + Me.uplMaterial.ClientArea.SuspendLayout() + Me.uplMaterial.SuspendLayout() + CType(Me.UltraTabControl1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.UltraTabControl1.SuspendLayout() + Me.uplAll.ClientArea.SuspendLayout() + Me.uplAll.SuspendLayout() + CType(Me.uegMaterial_KeyIn2, System.ComponentModel.ISupportInitialize).BeginInit() + Me.uegMaterial_KeyIn2.SuspendLayout() + Me.UltraExpandableGroupBoxPanel4.SuspendLayout() + Me.UltraPanel4.ClientArea.SuspendLayout() + Me.UltraPanel4.SuspendLayout() + CType(Me.uegAttrib_Equipment, System.ComponentModel.ISupportInitialize).BeginInit() + Me.uegAttrib_Equipment.SuspendLayout() + Me.UltraExpandableGroupBoxPanel2.SuspendLayout() + Me.UltraPanel2.ClientArea.SuspendLayout() + Me.UltraPanel2.SuspendLayout() + Me.SuspendLayout() + ' + 'utpMaterial + ' + Me.utpMaterial.Controls.Add(Me.lblMaterialNo) + Me.utpMaterial.Controls.Add(Me.txtMaterialNo) + Me.utpMaterial.Controls.Add(Me.lblMaterialLotNo) + Me.utpMaterial.Controls.Add(Me.txtMaterialLotNo) + Me.utpMaterial.Controls.Add(Me.iugMaterial) + Me.utpMaterial.Location = New System.Drawing.Point(1, 23) + Me.utpMaterial.Name = "utpMaterial" + Me.utpMaterial.Size = New System.Drawing.Size(511, 187) + ' + 'lblMaterialNo + ' + Me.lblMaterialNo.BackColor = System.Drawing.Color.Transparent + Me.lblMaterialNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblMaterialNo.Location = New System.Drawing.Point(7, 11) + Me.lblMaterialNo.Name = "lblMaterialNo" + Me.lblMaterialNo.Size = New System.Drawing.Size(90, 16) + Me.lblMaterialNo.TabIndex = 159 + Me.lblMaterialNo.Text = "Material No" + ' + 'txtMaterialNo + ' + Me.txtMaterialNo.Location = New System.Drawing.Point(103, 7) + Me.txtMaterialNo.Name = "txtMaterialNo" + Me.txtMaterialNo.Size = New System.Drawing.Size(132, 22) + Me.txtMaterialNo.TabIndex = 158 + ' + 'lblMaterialLotNo + ' + Me.lblMaterialLotNo.BackColor = System.Drawing.Color.Transparent + Me.lblMaterialLotNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblMaterialLotNo.Location = New System.Drawing.Point(244, 11) + Me.lblMaterialLotNo.Name = "lblMaterialLotNo" + Me.lblMaterialLotNo.Size = New System.Drawing.Size(90, 16) + Me.lblMaterialLotNo.TabIndex = 157 + Me.lblMaterialLotNo.Text = "Material Lot No" + ' + 'txtMaterialLotNo + ' + Me.txtMaterialLotNo.Location = New System.Drawing.Point(340, 7) + Me.txtMaterialLotNo.Name = "txtMaterialLotNo" + Me.txtMaterialLotNo.Size = New System.Drawing.Size(132, 22) + Me.txtMaterialLotNo.TabIndex = 156 + ' + 'iugMaterial + ' + Me.iugMaterial.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.iugMaterial.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down + Me.iugMaterial.GroupBoxPromptText = "Drag a column header here to group by that column." + Me.iugMaterial.GroupBoxTextForeColor = System.Drawing.Color.Red + Me.iugMaterial.Identity = "IMes" + Me.iugMaterial.IdentityForm = "" + Me.iugMaterial.LayOutFilePath = "" + Me.iugMaterial.Location = New System.Drawing.Point(2, 35) + Me.iugMaterial.Name = "iugMaterial" + Me.iugMaterial.PrintFitWidthToPages = 0 + Me.iugMaterial.PrintLandscape = True + Me.iugMaterial.PrintPageFooter = "" + Me.iugMaterial.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] + Me.iugMaterial.PrintPageFooterHeight = 20 + Me.iugMaterial.PrintPageHeader = "" + Me.iugMaterial.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] + Me.iugMaterial.PrintPageHeaderHeight = 20 + Me.iugMaterial.PrintZoom = 1.0R + Me.iugMaterial.Size = New System.Drawing.Size(506, 148) + Me.iugMaterial.TabIndex = 108 + Me.iugMaterial.UserNo = "IMes" + ' + 'utpSubOP + ' + Me.utpSubOP.Controls.Add(Me.iugSubOP) + Me.utpSubOP.Location = New System.Drawing.Point(-10000, -10000) + Me.utpSubOP.Name = "utpSubOP" + Me.utpSubOP.Size = New System.Drawing.Size(511, 187) + ' + 'iugSubOP + ' + Me.iugSubOP.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.iugSubOP.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down + Me.iugSubOP.GroupBoxPromptText = "Drag a column header here to group by that column." + Me.iugSubOP.GroupBoxTextForeColor = System.Drawing.Color.Red + Me.iugSubOP.Identity = "IMes" + Me.iugSubOP.IdentityForm = "" + Me.iugSubOP.LayOutFilePath = "" + Me.iugSubOP.Location = New System.Drawing.Point(3, 3) + Me.iugSubOP.Name = "iugSubOP" + Me.iugSubOP.PrintFitWidthToPages = 0 + Me.iugSubOP.PrintLandscape = True + Me.iugSubOP.PrintPageFooter = "" + Me.iugSubOP.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] + Me.iugSubOP.PrintPageFooterHeight = 20 + Me.iugSubOP.PrintPageHeader = "" + Me.iugSubOP.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] + Me.iugSubOP.PrintPageHeaderHeight = 20 + Me.iugSubOP.PrintZoom = 1.0R + Me.iugSubOP.Size = New System.Drawing.Size(506, 181) + Me.iugSubOP.TabIndex = 1 + Me.iugSubOP.UserNo = "IMes" + ' + 'uegLotInfo + ' + Me.uegLotInfo.Controls.Add(Me.UltraExpandableGroupBoxPanel1) + Me.uegLotInfo.Dock = System.Windows.Forms.DockStyle.Top + Me.uegLotInfo.ExpandedSize = New System.Drawing.Size(1013, 153) + Me.uegLotInfo.Location = New System.Drawing.Point(0, 0) + Me.uegLotInfo.Name = "uegLotInfo" + Me.uegLotInfo.Size = New System.Drawing.Size(1013, 153) + Me.uegLotInfo.TabIndex = 161 + Me.uegLotInfo.Text = "Lot Information" + Me.uegLotInfo.ViewStyle = Infragistics.Win.Misc.GroupBoxViewStyle.Office2003 + ' + 'UltraExpandableGroupBoxPanel1 + ' + Me.UltraExpandableGroupBoxPanel1.Controls.Add(Me.UltraPanel1) + Me.UltraExpandableGroupBoxPanel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UltraExpandableGroupBoxPanel1.Location = New System.Drawing.Point(2, 22) + Me.UltraExpandableGroupBoxPanel1.Name = "UltraExpandableGroupBoxPanel1" + Me.UltraExpandableGroupBoxPanel1.Size = New System.Drawing.Size(1009, 129) + Me.UltraExpandableGroupBoxPanel1.TabIndex = 0 + ' + 'UltraPanel1 + ' + ' + 'UltraPanel1.ClientArea + ' + Me.UltraPanel1.ClientArea.Controls.Add(Me.gbxLotInfo) + Me.UltraPanel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UltraPanel1.Location = New System.Drawing.Point(0, 0) + Me.UltraPanel1.Name = "UltraPanel1" + Me.UltraPanel1.Size = New System.Drawing.Size(1009, 129) + Me.UltraPanel1.TabIndex = 0 + ' + 'gbxLotInfo + ' + Me.gbxLotInfo.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.gbxLotInfo.Controls.Add(Me.txtOpName) + Me.gbxLotInfo.Controls.Add(Me.txtOPNo) + Me.gbxLotInfo.Controls.Add(Me.txtProductNo) + Me.gbxLotInfo.Controls.Add(Me.txtCustomerLotNo) + Me.gbxLotInfo.Controls.Add(Me.txtMONo) + Me.gbxLotInfo.Controls.Add(Me.txtShiftNo) + Me.gbxLotInfo.Controls.Add(Me.txtEmployeeNo) + Me.gbxLotInfo.Controls.Add(Me.txtAreaNo) + Me.gbxLotInfo.Controls.Add(Me.txtPriority) + Me.gbxLotInfo.Controls.Add(Me.txtSysUnitNo) + Me.gbxLotInfo.Controls.Add(Me.txtSysQty) + Me.gbxLotInfo.Controls.Add(Me.txtCurUnitNo) + Me.gbxLotInfo.Controls.Add(Me.txtCurQty) + Me.gbxLotInfo.Controls.Add(Me.txtOPDescription) + Me.gbxLotInfo.Controls.Add(Me.txtLotNo) + Me.gbxLotInfo.Controls.Add(Me.lblPriority) + Me.gbxLotInfo.Controls.Add(Me.lblMONo) + Me.gbxLotInfo.Controls.Add(Me.lblShiftNo) + Me.gbxLotInfo.Controls.Add(Me.lblOPNo) + Me.gbxLotInfo.Controls.Add(Me.lblAreaNo) + Me.gbxLotInfo.Controls.Add(Me.lblSysQty) + Me.gbxLotInfo.Controls.Add(Me.lblCurQty) + Me.gbxLotInfo.Controls.Add(Me.lblProductNo) + Me.gbxLotInfo.Controls.Add(Me.lblOPDescription) + Me.gbxLotInfo.Controls.Add(Me.lblCustomerLotNo) + Me.gbxLotInfo.Controls.Add(Me.lblEmployeeNo) + Me.gbxLotInfo.Controls.Add(Me.lblLotNo) + Me.gbxLotInfo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.gbxLotInfo.Location = New System.Drawing.Point(0, 0) + Me.gbxLotInfo.Name = "gbxLotInfo" + Me.gbxLotInfo.Size = New System.Drawing.Size(1009, 125) + Me.gbxLotInfo.TabIndex = 0 + Me.gbxLotInfo.TabStop = False + ' + 'txtOpName + ' + Me.txtOpName.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtOpName.Location = New System.Drawing.Point(743, 69) + Me.txtOpName.Name = "txtOpName" + Me.txtOpName.ReadOnly = True + Me.txtOpName.Size = New System.Drawing.Size(259, 22) + Me.txtOpName.TabIndex = 109 + ' + 'txtOPNo + ' + Me.txtOPNo.Location = New System.Drawing.Point(609, 69) + Me.txtOPNo.Name = "txtOPNo" + Me.txtOPNo.ReadOnly = True + Me.txtOPNo.Size = New System.Drawing.Size(137, 22) + Me.txtOPNo.TabIndex = 7 + ' + 'txtProductNo + ' + Me.txtProductNo.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtProductNo.Location = New System.Drawing.Point(609, 42) + Me.txtProductNo.Name = "txtProductNo" + Me.txtProductNo.ReadOnly = True + Me.txtProductNo.Size = New System.Drawing.Size(188, 22) + Me.txtProductNo.TabIndex = 13 + ' + 'txtCustomerLotNo + ' + Me.txtCustomerLotNo.Location = New System.Drawing.Point(87, 42) + Me.txtCustomerLotNo.Name = "txtCustomerLotNo" + Me.txtCustomerLotNo.ReadOnly = True + Me.txtCustomerLotNo.Size = New System.Drawing.Size(179, 22) + Me.txtCustomerLotNo.TabIndex = 8 + ' + 'txtMONo + ' + Me.txtMONo.Location = New System.Drawing.Point(341, 42) + Me.txtMONo.Name = "txtMONo" + Me.txtMONo.ReadOnly = True + Me.txtMONo.Size = New System.Drawing.Size(179, 22) + Me.txtMONo.TabIndex = 9 + ' + 'txtShiftNo + ' + Me.txtShiftNo.Location = New System.Drawing.Point(341, 69) + Me.txtShiftNo.Name = "txtShiftNo" + Me.txtShiftNo.ReadOnly = True + Me.txtShiftNo.Size = New System.Drawing.Size(179, 22) + Me.txtShiftNo.TabIndex = 15 + ' + 'txtEmployeeNo + ' + Me.txtEmployeeNo.Location = New System.Drawing.Point(87, 69) + Me.txtEmployeeNo.Name = "txtEmployeeNo" + Me.txtEmployeeNo.ReadOnly = True + Me.txtEmployeeNo.Size = New System.Drawing.Size(179, 22) + Me.txtEmployeeNo.TabIndex = 12 + ' + 'txtAreaNo + ' + Me.txtAreaNo.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtAreaNo.Location = New System.Drawing.Point(609, 15) + Me.txtAreaNo.Name = "txtAreaNo" + Me.txtAreaNo.ReadOnly = True + Me.txtAreaNo.Size = New System.Drawing.Size(188, 22) + Me.txtAreaNo.TabIndex = 2 + ' + 'txtPriority + ' + Me.txtPriority.Location = New System.Drawing.Point(341, 15) + Me.txtPriority.Name = "txtPriority" + Me.txtPriority.ReadOnly = True + Me.txtPriority.Size = New System.Drawing.Size(179, 22) + Me.txtPriority.TabIndex = 1 + ' + 'txtSysUnitNo + ' + Me.txtSysUnitNo.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtSysUnitNo.Location = New System.Drawing.Point(962, 42) + Me.txtSysUnitNo.Name = "txtSysUnitNo" + Me.txtSysUnitNo.ReadOnly = True + Me.txtSysUnitNo.Size = New System.Drawing.Size(40, 22) + Me.txtSysUnitNo.TabIndex = 9 + ' + 'txtSysQty + ' + Me.txtSysQty.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtSysQty.Location = New System.Drawing.Point(860, 42) + Me.txtSysQty.Name = "txtSysQty" + Me.txtSysQty.ReadOnly = True + Me.txtSysQty.Size = New System.Drawing.Size(102, 22) + Me.txtSysQty.TabIndex = 8 + ' + 'txtCurUnitNo + ' + Me.txtCurUnitNo.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtCurUnitNo.Location = New System.Drawing.Point(962, 15) + Me.txtCurUnitNo.Name = "txtCurUnitNo" + Me.txtCurUnitNo.ReadOnly = True + Me.txtCurUnitNo.Size = New System.Drawing.Size(40, 22) + Me.txtCurUnitNo.TabIndex = 4 + ' + 'txtCurQty + ' + Me.txtCurQty.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtCurQty.Location = New System.Drawing.Point(860, 15) + Me.txtCurQty.Name = "txtCurQty" + Me.txtCurQty.ReadOnly = True + Me.txtCurQty.Size = New System.Drawing.Size(102, 22) + Me.txtCurQty.TabIndex = 3 + ' + 'txtOPDescription + ' + Me.txtOPDescription.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtOPDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtOPDescription.Location = New System.Drawing.Point(87, 96) + Me.txtOPDescription.Name = "txtOPDescription" + Me.txtOPDescription.ReadOnly = True + Me.txtOPDescription.Size = New System.Drawing.Size(915, 22) + Me.txtOPDescription.TabIndex = 10 + ' + 'txtLotNo + ' + Me.txtLotNo.Location = New System.Drawing.Point(87, 15) + Me.txtLotNo.Name = "txtLotNo" + Me.txtLotNo.ReadOnly = True + Me.txtLotNo.Size = New System.Drawing.Size(179, 22) + Me.txtLotNo.TabIndex = 0 + ' + 'lblPriority + ' + Me.lblPriority.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblPriority.Location = New System.Drawing.Point(271, 18) + Me.lblPriority.Name = "lblPriority" + Me.lblPriority.Size = New System.Drawing.Size(64, 15) + Me.lblPriority.TabIndex = 85 + Me.lblPriority.Text = "Priority" + Me.lblPriority.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblMONo + ' + Me.lblMONo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblMONo.Location = New System.Drawing.Point(271, 45) + Me.lblMONo.Name = "lblMONo" + Me.lblMONo.Size = New System.Drawing.Size(64, 15) + Me.lblMONo.TabIndex = 83 + Me.lblMONo.Text = "MONo" + Me.lblMONo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblShiftNo + ' + Me.lblShiftNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblShiftNo.Location = New System.Drawing.Point(271, 72) + Me.lblShiftNo.Name = "lblShiftNo" + Me.lblShiftNo.Size = New System.Drawing.Size(64, 15) + Me.lblShiftNo.TabIndex = 79 + Me.lblShiftNo.Text = "Shift No" + Me.lblShiftNo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblOPNo + ' + Me.lblOPNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblOPNo.Location = New System.Drawing.Point(527, 72) + Me.lblOPNo.Name = "lblOPNo" + Me.lblOPNo.Size = New System.Drawing.Size(75, 15) + Me.lblOPNo.TabIndex = 75 + Me.lblOPNo.Text = "OP No" + Me.lblOPNo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblAreaNo + ' + Me.lblAreaNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblAreaNo.Location = New System.Drawing.Point(527, 18) + Me.lblAreaNo.Name = "lblAreaNo" + Me.lblAreaNo.Size = New System.Drawing.Size(75, 15) + Me.lblAreaNo.TabIndex = 71 + Me.lblAreaNo.Text = "Area No" + Me.lblAreaNo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblSysQty + ' + Me.lblSysQty.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.lblSysQty.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblSysQty.Location = New System.Drawing.Point(790, 45) + Me.lblSysQty.Name = "lblSysQty" + Me.lblSysQty.Size = New System.Drawing.Size(64, 15) + Me.lblSysQty.TabIndex = 68 + Me.lblSysQty.Text = "Sys Qty" + Me.lblSysQty.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblCurQty + ' + Me.lblCurQty.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.lblCurQty.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblCurQty.Location = New System.Drawing.Point(790, 18) + Me.lblCurQty.Name = "lblCurQty" + Me.lblCurQty.Size = New System.Drawing.Size(64, 15) + Me.lblCurQty.TabIndex = 64 + Me.lblCurQty.Text = "Cur Qty" + Me.lblCurQty.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblProductNo + ' + Me.lblProductNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblProductNo.Location = New System.Drawing.Point(527, 45) + Me.lblProductNo.Name = "lblProductNo" + Me.lblProductNo.Size = New System.Drawing.Size(75, 15) + Me.lblProductNo.TabIndex = 107 + Me.lblProductNo.Text = "Product No" + Me.lblProductNo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblOPDescription + ' + Me.lblOPDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblOPDescription.Location = New System.Drawing.Point(3, 97) + Me.lblOPDescription.Name = "lblOPDescription" + Me.lblOPDescription.Size = New System.Drawing.Size(80, 15) + Me.lblOPDescription.TabIndex = 108 + Me.lblOPDescription.Text = "OP Description" + Me.lblOPDescription.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblCustomerLotNo + ' + Me.lblCustomerLotNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblCustomerLotNo.Location = New System.Drawing.Point(3, 45) + Me.lblCustomerLotNo.Name = "lblCustomerLotNo" + Me.lblCustomerLotNo.Size = New System.Drawing.Size(80, 15) + Me.lblCustomerLotNo.TabIndex = 81 + Me.lblCustomerLotNo.Text = "Customer Lot No" + Me.lblCustomerLotNo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblEmployeeNo + ' + Me.lblEmployeeNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblEmployeeNo.Location = New System.Drawing.Point(3, 72) + Me.lblEmployeeNo.Name = "lblEmployeeNo" + Me.lblEmployeeNo.Size = New System.Drawing.Size(80, 15) + Me.lblEmployeeNo.TabIndex = 73 + Me.lblEmployeeNo.Text = "Employee No" + Me.lblEmployeeNo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblLotNo + ' + Me.lblLotNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblLotNo.Location = New System.Drawing.Point(3, 18) + Me.lblLotNo.Name = "lblLotNo" + Me.lblLotNo.Size = New System.Drawing.Size(80, 15) + Me.lblLotNo.TabIndex = 62 + Me.lblLotNo.Text = "Lot No" + Me.lblLotNo.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'UltraTabPageControl2 + ' + Me.UltraTabPageControl2.Location = New System.Drawing.Point(-10000, -10000) + Me.UltraTabPageControl2.Name = "UltraTabPageControl2" + Me.UltraTabPageControl2.Size = New System.Drawing.Size(340, 100) + ' + 'UltraTabPageControl1 + ' + Me.UltraTabPageControl1.Location = New System.Drawing.Point(-10000, -10000) + Me.UltraTabPageControl1.Name = "UltraTabPageControl1" + Me.UltraTabPageControl1.Size = New System.Drawing.Size(340, 100) + ' + 'SBar1 + ' + Me.SBar1.Font = New System.Drawing.Font("Times New Roman", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.SBar1.Location = New System.Drawing.Point(0, 707) + Me.SBar1.Name = "SBar1" + Me.SBar1.Panels.AddRange(New System.Windows.Forms.StatusBarPanel() {Me.SBarPanel1, Me.SBarPanel2, Me.SBarPanel3, Me.SBarPanel4}) + Me.SBar1.ShowPanels = True + Me.SBar1.Size = New System.Drawing.Size(1008, 22) + Me.SBar1.TabIndex = 68 + ' + 'SBarPanel1 + ' + Me.SBarPanel1.Name = "SBarPanel1" + ' + 'SBarPanel2 + ' + Me.SBarPanel2.Name = "SBarPanel2" + ' + 'SBarPanel3 + ' + Me.SBarPanel3.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring + Me.SBarPanel3.Name = "SBarPanel3" + Me.SBarPanel3.Width = 641 + ' + 'SBarPanel4 + ' + Me.SBarPanel4.Alignment = System.Windows.Forms.HorizontalAlignment.Right + Me.SBarPanel4.Name = "SBarPanel4" + Me.SBarPanel4.Width = 150 + ' + 'iugAttrib + ' + Me.iugAttrib.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.iugAttrib.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down + Me.iugAttrib.GroupBoxPromptText = "Drag a column header here to group by that column." + Me.iugAttrib.GroupBoxTextForeColor = System.Drawing.Color.Red + Me.iugAttrib.Identity = "IMes" + Me.iugAttrib.IdentityForm = "" + Me.iugAttrib.LayOutFilePath = "" + Me.iugAttrib.Location = New System.Drawing.Point(4, 3) + Me.iugAttrib.Name = "iugAttrib" + Me.iugAttrib.PrintFitWidthToPages = 0 + Me.iugAttrib.PrintLandscape = True + Me.iugAttrib.PrintPageFooter = "" + Me.iugAttrib.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] + Me.iugAttrib.PrintPageFooterHeight = 20 + Me.iugAttrib.PrintPageHeader = "" + Me.iugAttrib.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] + Me.iugAttrib.PrintPageHeaderHeight = 20 + Me.iugAttrib.PrintZoom = 1.0R + Me.iugAttrib.Size = New System.Drawing.Size(506, 214) + Me.iugAttrib.TabIndex = 105 + Me.iugAttrib.UserNo = "IMes" + ' + 'iugEquipment + ' + Me.iugEquipment.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.iugEquipment.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down + Me.iugEquipment.GroupBoxPromptText = "Drag a column header here to group by that column." + Me.iugEquipment.GroupBoxTextForeColor = System.Drawing.Color.Red + Me.iugEquipment.Identity = "IMes" + Me.iugEquipment.IdentityForm = "" + Me.iugEquipment.LayOutFilePath = "" + Me.iugEquipment.Location = New System.Drawing.Point(3, 46) + Me.iugEquipment.Name = "iugEquipment" + Me.iugEquipment.PrintFitWidthToPages = 0 + Me.iugEquipment.PrintLandscape = True + Me.iugEquipment.PrintPageFooter = "" + Me.iugEquipment.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] + Me.iugEquipment.PrintPageFooterHeight = 20 + Me.iugEquipment.PrintPageHeader = "" + Me.iugEquipment.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] + Me.iugEquipment.PrintPageHeaderHeight = 20 + Me.iugEquipment.PrintZoom = 1.0R + Me.iugEquipment.Size = New System.Drawing.Size(477, 171) + Me.iugEquipment.TabIndex = 107 + Me.iugEquipment.UserNo = "IMes" + ' + 'btnClose + ' + Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnClose.Location = New System.Drawing.Point(925, 673) + Me.btnClose.Name = "btnClose" + Me.btnClose.Size = New System.Drawing.Size(80, 32) + Me.btnClose.TabIndex = 144 + Me.btnClose.Text = "Close" + ' + 'btnConfirm + ' + Me.btnConfirm.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnConfirm.Location = New System.Drawing.Point(839, 673) + Me.btnConfirm.Name = "btnConfirm" + Me.btnConfirm.Size = New System.Drawing.Size(80, 32) + Me.btnConfirm.TabIndex = 143 + Me.btnConfirm.Text = "Confirm" + ' + 'lblEquipmentNo + ' + Me.lblEquipmentNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblEquipmentNo.Location = New System.Drawing.Point(20, 16) + Me.lblEquipmentNo.Name = "lblEquipmentNo" + Me.lblEquipmentNo.Size = New System.Drawing.Size(80, 16) + Me.lblEquipmentNo.TabIndex = 147 + Me.lblEquipmentNo.Text = "Equipment No" + ' + 'txtEquipmentNo + ' + Me.txtEquipmentNo.Location = New System.Drawing.Point(106, 12) + Me.txtEquipmentNo.Name = "txtEquipmentNo" + Me.txtEquipmentNo.Size = New System.Drawing.Size(132, 22) + Me.txtEquipmentNo.TabIndex = 17 + ' + 'lblLotRecord + ' + Me.lblLotRecord.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.lblLotRecord.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblLotRecord.Location = New System.Drawing.Point(16, 634) + Me.lblLotRecord.Name = "lblLotRecord" + Me.lblLotRecord.Size = New System.Drawing.Size(64, 16) + Me.lblLotRecord.TabIndex = 145 + Me.lblLotRecord.Text = "Lot Record" + ' + 'txtLotRecord + ' + Me.txtLotRecord.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.txtLotRecord.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtLotRecord.Location = New System.Drawing.Point(88, 634) + Me.txtLotRecord.Name = "txtLotRecord" + Me.txtLotRecord.Size = New System.Drawing.Size(393, 35) + Me.txtLotRecord.TabIndex = 18 + Me.txtLotRecord.Text = "" + ' + 'lblupdcheckintime + ' + Me.lblupdcheckintime.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.lblupdcheckintime.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblupdcheckintime.Location = New System.Drawing.Point(8, 683) + Me.lblupdcheckintime.Name = "lblupdcheckintime" + Me.lblupdcheckintime.Size = New System.Drawing.Size(116, 14) + Me.lblupdcheckintime.TabIndex = 62 + Me.lblupdcheckintime.Text = "Update CheckIn Time" + ' + 'dtpcheckintime + ' + Me.dtpcheckintime.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.dtpcheckintime.CustomFormat = "yyyy/MM/dd HH:mm:ss" + Me.dtpcheckintime.Format = System.Windows.Forms.DateTimePickerFormat.Custom + Me.dtpcheckintime.Location = New System.Drawing.Point(152, 682) + Me.dtpcheckintime.Name = "dtpcheckintime" + Me.dtpcheckintime.Size = New System.Drawing.Size(128, 21) + Me.dtpcheckintime.TabIndex = 151 + ' + 'btnEQPConsumeReset + ' + Me.btnEQPConsumeReset.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnEQPConsumeReset.Location = New System.Drawing.Point(282, 7) + Me.btnEQPConsumeReset.Name = "btnEQPConsumeReset" + Me.btnEQPConsumeReset.Size = New System.Drawing.Size(112, 32) + Me.btnEQPConsumeReset.TabIndex = 152 + Me.btnEQPConsumeReset.Text = "EQPConsumeReset" + ' + 'btnQCList + ' + Me.btnQCList.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnQCList.Location = New System.Drawing.Point(400, 7) + Me.btnQCList.Name = "btnQCList" + Me.btnQCList.Size = New System.Drawing.Size(80, 32) + Me.btnQCList.TabIndex = 153 + Me.btnQCList.Text = "QC List" + ' + 'utpEquipment + ' + Me.utpEquipment.Controls.Add(Me.IMESUltraGrid3) + Me.utpEquipment.Location = New System.Drawing.Point(-10000, -10000) + Me.utpEquipment.Name = "utpEquipment" + Me.utpEquipment.Size = New System.Drawing.Size(772, 150) + ' + 'IMESUltraGrid3 + ' + Me.IMESUltraGrid3.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.IMESUltraGrid3.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down + Me.IMESUltraGrid3.GroupBoxPromptText = "Drag a column header here to group by that column." + Me.IMESUltraGrid3.GroupBoxTextForeColor = System.Drawing.Color.Red + Me.IMESUltraGrid3.Identity = "IMes" + Me.IMESUltraGrid3.IdentityForm = "" + Me.IMESUltraGrid3.LayOutFilePath = "" + Me.IMESUltraGrid3.Location = New System.Drawing.Point(11, 8) + Me.IMESUltraGrid3.Name = "IMESUltraGrid3" + Me.IMESUltraGrid3.PrintFitWidthToPages = 0 + Me.IMESUltraGrid3.PrintLandscape = True + Me.IMESUltraGrid3.PrintPageFooter = "" + Me.IMESUltraGrid3.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] + Me.IMESUltraGrid3.PrintPageFooterHeight = 20 + Me.IMESUltraGrid3.PrintPageHeader = "" + Me.IMESUltraGrid3.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] + Me.IMESUltraGrid3.PrintPageHeaderHeight = 20 + Me.IMESUltraGrid3.PrintZoom = 1.0R + Me.IMESUltraGrid3.Size = New System.Drawing.Size(753, 136) + Me.IMESUltraGrid3.TabIndex = 0 + Me.IMESUltraGrid3.UserNo = "IMes" + ' + 'btnMultiUser + ' + Me.btnMultiUser.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.btnMultiUser.Location = New System.Drawing.Point(398, 673) + Me.btnMultiUser.Name = "btnMultiUser" + Me.btnMultiUser.Size = New System.Drawing.Size(80, 32) + Me.btnMultiUser.TabIndex = 155 + Me.btnMultiUser.Text = "Multi User" + Me.btnMultiUser.Visible = False + ' + 'btnOperator + ' + Me.btnOperator.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.btnOperator.Location = New System.Drawing.Point(315, 673) + Me.btnOperator.Name = "btnOperator" + Me.btnOperator.Size = New System.Drawing.Size(80, 32) + Me.btnOperator.TabIndex = 156 + Me.btnOperator.Text = "Operator" + Me.btnOperator.Visible = False + ' + 'chkUpdCheckInTime + ' + Me.chkUpdCheckInTime.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.chkUpdCheckInTime.AutoSize = True + Me.chkUpdCheckInTime.Location = New System.Drawing.Point(130, 683) + Me.chkUpdCheckInTime.Name = "chkUpdCheckInTime" + Me.chkUpdCheckInTime.Size = New System.Drawing.Size(15, 14) + Me.chkUpdCheckInTime.TabIndex = 157 + ' + 'btnSWR + ' + Me.btnSWR.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnSWR.Location = New System.Drawing.Point(753, 673) + Me.btnSWR.Name = "btnSWR" + Me.btnSWR.Size = New System.Drawing.Size(80, 32) + Me.btnSWR.TabIndex = 158 + Me.btnSWR.Text = "SWR" + ' + 'uplAttrib + ' + ' + 'uplAttrib.ClientArea + ' + Me.uplAttrib.ClientArea.Controls.Add(Me.iugAttrib) + Me.uplAttrib.Dock = System.Windows.Forms.DockStyle.Left + Me.uplAttrib.Location = New System.Drawing.Point(0, 0) + Me.uplAttrib.Name = "uplAttrib" + Me.uplAttrib.Size = New System.Drawing.Size(515, 220) + Me.uplAttrib.TabIndex = 0 + ' + 'uplEquipment + ' + ' + 'uplEquipment.ClientArea + ' + Me.uplEquipment.ClientArea.Controls.Add(Me.lblEquipmentNo) + Me.uplEquipment.ClientArea.Controls.Add(Me.iugEquipment) + Me.uplEquipment.ClientArea.Controls.Add(Me.txtEquipmentNo) + Me.uplEquipment.ClientArea.Controls.Add(Me.btnEQPConsumeReset) + Me.uplEquipment.ClientArea.Controls.Add(Me.btnQCList) + Me.uplEquipment.Dock = System.Windows.Forms.DockStyle.Fill + Me.uplEquipment.Location = New System.Drawing.Point(522, 0) + Me.uplEquipment.Name = "uplEquipment" + Me.uplEquipment.Size = New System.Drawing.Size(487, 220) + Me.uplEquipment.TabIndex = 1 + ' + 'uplAttrib_Equipment + ' + ' + 'uplAttrib_Equipment.ClientArea + ' + Me.uplAttrib_Equipment.ClientArea.Controls.Add(Me.uplEquipment) + Me.uplAttrib_Equipment.ClientArea.Controls.Add(Me.UltraSplitter1) + Me.uplAttrib_Equipment.ClientArea.Controls.Add(Me.uplAttrib) + Me.uplAttrib_Equipment.Dock = System.Windows.Forms.DockStyle.Fill + Me.uplAttrib_Equipment.Location = New System.Drawing.Point(0, 0) + Me.uplAttrib_Equipment.Name = "uplAttrib_Equipment" + Me.uplAttrib_Equipment.Size = New System.Drawing.Size(1009, 220) + Me.uplAttrib_Equipment.TabIndex = 162 + ' + 'UltraSplitter1 + ' + Me.UltraSplitter1.Location = New System.Drawing.Point(515, 0) + Me.UltraSplitter1.Name = "UltraSplitter1" + Me.UltraSplitter1.RestoreExtent = 479 + Me.UltraSplitter1.Size = New System.Drawing.Size(7, 220) + Me.UltraSplitter1.TabIndex = 1 + ' + 'uplMaterial_KeyIn + ' + ' + 'uplMaterial_KeyIn.ClientArea + ' + Me.uplMaterial_KeyIn.ClientArea.Controls.Add(Me.uplKeyIn) + Me.uplMaterial_KeyIn.ClientArea.Controls.Add(Me.UltraSplitter2) + Me.uplMaterial_KeyIn.ClientArea.Controls.Add(Me.uplMaterial) + Me.uplMaterial_KeyIn.Dock = System.Windows.Forms.DockStyle.Fill + Me.uplMaterial_KeyIn.Location = New System.Drawing.Point(0, 0) + Me.uplMaterial_KeyIn.Name = "uplMaterial_KeyIn" + Me.uplMaterial_KeyIn.Size = New System.Drawing.Size(1009, 216) + Me.uplMaterial_KeyIn.TabIndex = 0 + ' + 'uplKeyIn + ' + ' + 'uplKeyIn.ClientArea + ' + Me.uplKeyIn.ClientArea.Controls.Add(Me.iugKeyIn) + Me.uplKeyIn.Dock = System.Windows.Forms.DockStyle.Fill + Me.uplKeyIn.Location = New System.Drawing.Point(522, 0) + Me.uplKeyIn.Name = "uplKeyIn" + Me.uplKeyIn.Size = New System.Drawing.Size(487, 216) + Me.uplKeyIn.TabIndex = 4 + ' + 'iugKeyIn + ' + Me.iugKeyIn.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.iugKeyIn.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down + Me.iugKeyIn.GroupBoxPromptText = "Drag a column header here to group by that column." + Me.iugKeyIn.GroupBoxTextForeColor = System.Drawing.Color.Red + Me.iugKeyIn.Identity = "IMes" + Me.iugKeyIn.IdentityForm = "" + Me.iugKeyIn.LayOutFilePath = "" + Me.iugKeyIn.Location = New System.Drawing.Point(3, 3) + Me.iugKeyIn.Name = "iugKeyIn" + Me.iugKeyIn.PrintFitWidthToPages = 0 + Me.iugKeyIn.PrintLandscape = True + Me.iugKeyIn.PrintPageFooter = "" + Me.iugKeyIn.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] + Me.iugKeyIn.PrintPageFooterHeight = 20 + Me.iugKeyIn.PrintPageHeader = "" + Me.iugKeyIn.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] + Me.iugKeyIn.PrintPageHeaderHeight = 20 + Me.iugKeyIn.PrintZoom = 1.0R + Me.iugKeyIn.Size = New System.Drawing.Size(477, 207) + Me.iugKeyIn.TabIndex = 150 + Me.iugKeyIn.UserNo = "IMes" + ' + 'UltraSplitter2 + ' + Me.UltraSplitter2.Location = New System.Drawing.Point(515, 0) + Me.UltraSplitter2.Name = "UltraSplitter2" + Me.UltraSplitter2.RestoreExtent = 479 + Me.UltraSplitter2.Size = New System.Drawing.Size(7, 216) + Me.UltraSplitter2.TabIndex = 3 + ' + 'uplMaterial + ' + ' + 'uplMaterial.ClientArea + ' + Me.uplMaterial.ClientArea.Controls.Add(Me.UltraTabControl1) + Me.uplMaterial.Dock = System.Windows.Forms.DockStyle.Left + Me.uplMaterial.Location = New System.Drawing.Point(0, 0) + Me.uplMaterial.Name = "uplMaterial" + Me.uplMaterial.Size = New System.Drawing.Size(515, 216) + Me.uplMaterial.TabIndex = 0 + ' + 'UltraTabControl1 + ' + Me.UltraTabControl1.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.UltraTabControl1.Controls.Add(Me.utpMaterial) + Me.UltraTabControl1.Controls.Add(Me.UltraTabSharedControlsPage1) + Me.UltraTabControl1.Controls.Add(Me.utpSubOP) + Me.UltraTabControl1.Location = New System.Drawing.Point(0, 0) + Me.UltraTabControl1.Name = "UltraTabControl1" + Me.UltraTabControl1.SharedControlsPage = Me.UltraTabSharedControlsPage1 + Me.UltraTabControl1.Size = New System.Drawing.Size(515, 213) + Me.UltraTabControl1.TabIndex = 154 + Me.UltraTabControl1.TabLayoutStyle = Infragistics.Win.UltraWinTabs.TabLayoutStyle.MultiRowTabsPerRow + UltraTab1.FixedWidth = 120 + UltraTab1.TabPage = Me.utpMaterial + UltraTab1.Text = "Material" + UltraTab4.TabPage = Me.utpSubOP + UltraTab4.Text = "Sub OP" + Me.UltraTabControl1.Tabs.AddRange(New Infragistics.Win.UltraWinTabControl.UltraTab() {UltraTab1, UltraTab4}) + ' + 'UltraTabSharedControlsPage1 + ' + Me.UltraTabSharedControlsPage1.Location = New System.Drawing.Point(-10000, -10000) + Me.UltraTabSharedControlsPage1.Name = "UltraTabSharedControlsPage1" + Me.UltraTabSharedControlsPage1.Size = New System.Drawing.Size(511, 187) + ' + 'uplAll + ' + Me.uplAll.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ + Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + ' + 'uplAll.ClientArea + ' + Me.uplAll.ClientArea.Controls.Add(Me.uegMaterial_KeyIn2) + Me.uplAll.ClientArea.Controls.Add(Me.uegAttrib_Equipment) + Me.uplAll.ClientArea.Controls.Add(Me.uegLotInfo) + Me.uplAll.Location = New System.Drawing.Point(0, -1) + Me.uplAll.Name = "uplAll" + Me.uplAll.Size = New System.Drawing.Size(1013, 629) + Me.uplAll.TabIndex = 165 + ' + 'uegMaterial_KeyIn2 + ' + Me.uegMaterial_KeyIn2.Controls.Add(Me.UltraExpandableGroupBoxPanel4) + Me.uegMaterial_KeyIn2.Dock = System.Windows.Forms.DockStyle.Fill + Me.uegMaterial_KeyIn2.ExpandedSize = New System.Drawing.Size(1013, 236) + Me.uegMaterial_KeyIn2.Location = New System.Drawing.Point(0, 393) + Me.uegMaterial_KeyIn2.Name = "uegMaterial_KeyIn2" + Me.uegMaterial_KeyIn2.Size = New System.Drawing.Size(1013, 236) + Me.uegMaterial_KeyIn2.TabIndex = 163 + Me.uegMaterial_KeyIn2.ViewStyle = Infragistics.Win.Misc.GroupBoxViewStyle.Office2003 + ' + 'UltraExpandableGroupBoxPanel4 + ' + Me.UltraExpandableGroupBoxPanel4.Controls.Add(Me.UltraPanel4) + Me.UltraExpandableGroupBoxPanel4.Dock = System.Windows.Forms.DockStyle.Fill + Me.UltraExpandableGroupBoxPanel4.Location = New System.Drawing.Point(2, 18) + Me.UltraExpandableGroupBoxPanel4.Name = "UltraExpandableGroupBoxPanel4" + Me.UltraExpandableGroupBoxPanel4.Size = New System.Drawing.Size(1009, 216) + Me.UltraExpandableGroupBoxPanel4.TabIndex = 0 + ' + 'UltraPanel4 + ' + ' + 'UltraPanel4.ClientArea + ' + Me.UltraPanel4.ClientArea.Controls.Add(Me.uplMaterial_KeyIn) + Me.UltraPanel4.Dock = System.Windows.Forms.DockStyle.Fill + Me.UltraPanel4.Location = New System.Drawing.Point(0, 0) + Me.UltraPanel4.Name = "UltraPanel4" + Me.UltraPanel4.Size = New System.Drawing.Size(1009, 216) + Me.UltraPanel4.TabIndex = 0 + ' + 'uegAttrib_Equipment + ' + Me.uegAttrib_Equipment.Controls.Add(Me.UltraExpandableGroupBoxPanel2) + Me.uegAttrib_Equipment.Dock = System.Windows.Forms.DockStyle.Top + Me.uegAttrib_Equipment.ExpandedSize = New System.Drawing.Size(1013, 240) + Me.uegAttrib_Equipment.Location = New System.Drawing.Point(0, 153) + Me.uegAttrib_Equipment.Name = "uegAttrib_Equipment" + Me.uegAttrib_Equipment.Size = New System.Drawing.Size(1013, 240) + Me.uegAttrib_Equipment.TabIndex = 162 + Me.uegAttrib_Equipment.ViewStyle = Infragistics.Win.Misc.GroupBoxViewStyle.Office2003 + ' + 'UltraExpandableGroupBoxPanel2 + ' + Me.UltraExpandableGroupBoxPanel2.Controls.Add(Me.UltraPanel2) + Me.UltraExpandableGroupBoxPanel2.Dock = System.Windows.Forms.DockStyle.Fill + Me.UltraExpandableGroupBoxPanel2.Location = New System.Drawing.Point(2, 18) + Me.UltraExpandableGroupBoxPanel2.Name = "UltraExpandableGroupBoxPanel2" + Me.UltraExpandableGroupBoxPanel2.Size = New System.Drawing.Size(1009, 220) + Me.UltraExpandableGroupBoxPanel2.TabIndex = 0 + ' + 'UltraPanel2 + ' + ' + 'UltraPanel2.ClientArea + ' + Me.UltraPanel2.ClientArea.Controls.Add(Me.uplAttrib_Equipment) + Me.UltraPanel2.Dock = System.Windows.Forms.DockStyle.Fill + Me.UltraPanel2.Location = New System.Drawing.Point(0, 0) + Me.UltraPanel2.Name = "UltraPanel2" + Me.UltraPanel2.Size = New System.Drawing.Size(1009, 220) + Me.UltraPanel2.TabIndex = 0 + ' + 'frmBR_L_CI_GEN + ' + Me.AutoScaleBaseSize = New System.Drawing.Size(5, 14) + Me.ClientSize = New System.Drawing.Size(1008, 729) + Me.Controls.Add(Me.uplAll) + Me.Controls.Add(Me.btnSWR) + Me.Controls.Add(Me.chkUpdCheckInTime) + Me.Controls.Add(Me.btnOperator) + Me.Controls.Add(Me.btnMultiUser) + Me.Controls.Add(Me.dtpcheckintime) + Me.Controls.Add(Me.txtLotRecord) + Me.Controls.Add(Me.lblLotRecord) + Me.Controls.Add(Me.btnClose) + Me.Controls.Add(Me.btnConfirm) + Me.Controls.Add(Me.SBar1) + Me.Controls.Add(Me.lblupdcheckintime) + Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.MinimizeBox = False + Me.Name = "frmBR_L_CI_GEN" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "General Check In" + Me.utpMaterial.ResumeLayout(False) + Me.utpMaterial.PerformLayout() + CType(Me.txtMaterialNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtMaterialLotNo, System.ComponentModel.ISupportInitialize).EndInit() + Me.utpSubOP.ResumeLayout(False) + CType(Me.uegLotInfo, System.ComponentModel.ISupportInitialize).EndInit() + Me.uegLotInfo.ResumeLayout(False) + Me.UltraExpandableGroupBoxPanel1.ResumeLayout(False) + Me.UltraPanel1.ClientArea.ResumeLayout(False) + Me.UltraPanel1.ResumeLayout(False) + Me.gbxLotInfo.ResumeLayout(False) + Me.gbxLotInfo.PerformLayout() + CType(Me.txtOpName, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtOPNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtProductNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtCustomerLotNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtMONo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtShiftNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtEmployeeNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtAreaNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtPriority, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtSysUnitNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtSysQty, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtCurUnitNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtCurQty, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtOPDescription, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtLotNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SBarPanel1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SBarPanel2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SBarPanel3, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SBarPanel4, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtEquipmentNo, System.ComponentModel.ISupportInitialize).EndInit() + Me.utpEquipment.ResumeLayout(False) + Me.uplAttrib.ClientArea.ResumeLayout(False) + Me.uplAttrib.ResumeLayout(False) + Me.uplEquipment.ClientArea.ResumeLayout(False) + Me.uplEquipment.ClientArea.PerformLayout() + Me.uplEquipment.ResumeLayout(False) + Me.uplAttrib_Equipment.ClientArea.ResumeLayout(False) + Me.uplAttrib_Equipment.ResumeLayout(False) + Me.uplMaterial_KeyIn.ClientArea.ResumeLayout(False) + Me.uplMaterial_KeyIn.ResumeLayout(False) + Me.uplKeyIn.ClientArea.ResumeLayout(False) + Me.uplKeyIn.ResumeLayout(False) + Me.uplMaterial.ClientArea.ResumeLayout(False) + Me.uplMaterial.ResumeLayout(False) + CType(Me.UltraTabControl1, System.ComponentModel.ISupportInitialize).EndInit() + Me.UltraTabControl1.ResumeLayout(False) + Me.uplAll.ClientArea.ResumeLayout(False) + Me.uplAll.ResumeLayout(False) + CType(Me.uegMaterial_KeyIn2, System.ComponentModel.ISupportInitialize).EndInit() + Me.uegMaterial_KeyIn2.ResumeLayout(False) + Me.UltraExpandableGroupBoxPanel4.ResumeLayout(False) + Me.UltraPanel4.ClientArea.ResumeLayout(False) + Me.UltraPanel4.ResumeLayout(False) + CType(Me.uegAttrib_Equipment, System.ComponentModel.ISupportInitialize).EndInit() + Me.uegAttrib_Equipment.ResumeLayout(False) + Me.UltraExpandableGroupBoxPanel2.ResumeLayout(False) + Me.UltraPanel2.ClientArea.ResumeLayout(False) + Me.UltraPanel2.ResumeLayout(False) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + +#End Region + + Private Sub frmBR_L_CI_GEN_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + + Cursor.Current = Cursors.WaitCursor + + Dim editorSettings As New Infragistics.Win.UltraWinEditors.DefaultEditorOwnerSettings + editorSettings.DataType = GetType(System.DateTime) + editorSettings.MaskInput = "yyyy/mm/dd hh:mm:ss" + editor = New Infragistics.Win.DateTimeEditor(New Infragistics.Win.UltraWinEditors.DefaultEditorOwner(editorSettings)) + + vlMaterialLevel = COM_Utility.ValueListProvider.GetInstance.GetValueList("TBLWIPTEMP_MATERIAL", "MATERIALLEVEL") + + btnConfirm.Enabled = False + btnMultiUser.Enabled = False + + '2017/11/06 KunYuan:變更開始加工時間checkbox預設不勾選 + chkUpdCheckInTime.Checked = False + + If LotNo = defString Or UserId = defString Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%LotNo%] [%or%] [%UserId%] [%CANNOTBEEMPTY%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + ' 2016/01/05 YF, 左下角的時間預設為AP SERVER的時間 + Me.datEventTime = funGetAPServerTime() + + '1.取出生產批資訊 -------------------------------------------------------------------------------------------- + If funLoadLotState() Then Exit Sub + + If blnByEQP = True Then + txtMaterialNo.Enabled = False + txtMaterialLotNo.Enabled = False + End If + + If dsWIP.Tables(tblLotState).Rows.Count = 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200003", "[%LotNo%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + If funGetShift() Then Exit Sub + If funLoadTemp_AttribJoinBasis() Then Exit Sub + If funLoadTemp_Material() Then Exit Sub + + txtLotNo.Text = LotNo + txtEmployeeNo.Text = UserId + Call funLotInfo_Show() + + '2.機台 ------------------------------------------------------------------------------------------------------- + + '2023/07/25會議結論, 規格書規畫尚不清晰,此項目註解。 + '0138119: [6.0.7]recipe配方管理优化派工--配方关联设定, 2023/07/20, 19245 + 'Dim intAvailable As Integer + 'If funGetSysParameter("RMS TYPE") = "0" Then '使用舊版設備配件 + 'intAvailable = funLoadAvailableEquipment(LotNo) + 'Else '使用設備配方 + ' intAvailable = funLoadAvailableEquipmentInfo(LotNo) + 'End If + + 'If intAvailable < 0 Then + If funLoadAvailableEquipment(LotNo) < 0 Then + Call btnClose_Click(sender, e) '清除trigger OP紀錄 + Me.Dispose() + Exit Sub + Else + If EquipmentNo = defString Then + dsWIP.Tables(tblAreaEquipment).DefaultView.Sort = "EquipmentType, EquipmentNo" + Else '有指定機台,要強制使用. + Dim drSel As DataRow() + drSel = dsWIP.Tables(tblAreaEquipment).Select("EquipmentNo='" & EquipmentNo & "'") + If drSel.Length = 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203072", "[%EquipmentNo%]:" & EquipmentNo & " [%is not in area%]:" & txtAreaNo.Text & "!"), MsgBoxStyle.Exclamation, Me.Text) + Call btnClose_Click(sender, e) '清除trigger OP紀錄 + Me.Dispose() + Exit Sub + Else + If drSel(0)("AllowExecute") = 1 Then '可使用 + + drSel(0).BeginEdit() + drSel(0)("CheckFlag") = True + If LoadPort <> defInteger Then drSel(0)("LoadPort") = LoadPort + drSel(0).EndEdit() + '強制使用機台,故不提供此功能 + txtEquipmentNo.Enabled = False + Else '不可使用 + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203072", "[%EquipmentNo%]:" & EquipmentNo & " [%is not available%] " & drSel(0)("Description")), MsgBoxStyle.Exclamation, Me.Text) + Call btnClose_Click(sender, e) '清除trigger OP紀錄 + Me.Dispose() + Exit Sub + End If + End If + drSel = Nothing + End If + iugEquipment.iMESUltraGrid.DataSource = dsWIP.Tables(tblAreaEquipment) + + 'Modify on 2008/03/31 By OwenLiu, Auto Focus Assign EquipmentNo + If Not EquipmentNo.Equals(defString) Then + Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow + ugrRow = FindRecordPosition(iugEquipment, "EquipmentNo", EquipmentNo) + If Not ugrRow Is Nothing Then + iugEquipment.iMESUltraGrid.ActiveRow = ugrRow + End If + End If + + '2021/3/18,Ning,點檢表檢查方式已調整, 不需在此帶入點檢類型 + ' 查詢可用設備,是否有指定點檢表,並將點檢表點檢類型帶入 + 'Call funQueryEquipmentQCList() + + '20091006 seam + Call Me.funLoadSubOP() + + End If + + '3.生產參數 ------------------------------------------------------------------------------------------------------- + If Not dsWIP.Tables(tblTAttrib) Is Nothing Then + '轉換抽樣參數 + If funGetSampleData() Then Exit Sub + dsWIP.Tables(tblTAttrib).DefaultView.RowFilter = "AttribSource <> 0 And AttribSource <> 1 And (AttribPhase = " & PhaseNo & " Or AttribPhase = 99)" 'Source = Not KeyIn, Not Calculate ,Current and All Phase + iugAttrib.iMESUltraGrid.DataSource = dsWIP.Tables(tblTAttrib).DefaultView + End If + + '4.KeyIn Attrib ---------------------------------------------------------------------------------------------------- + If Not dsWIP.Tables(tblTAttrib) Is Nothing Then + dtKeyIn = New DataTable("KeyIn") + dtKeyIn.DefaultView.AllowNew = False + dtKeyIn.DefaultView.AllowDelete = False + dtKeyIn.DefaultView.AllowEdit = True + '建立KeyIn Table的欄位 + dtKeyIn.Columns.Add("AttribNo", System.Type.GetType("System.String")) + dtKeyIn.Columns.Add("AttribName", System.Type.GetType("System.String")) + dtKeyIn.Columns.Add("AttribValue", System.Type.GetType("System.String")) + dtKeyIn.Columns.Add("AttribSequence", System.Type.GetType("System.Int32")) + dtKeyIn.Columns.Add("InputType", System.Type.GetType("System.Int32")) + dtKeyIn.Columns.Add("DataType", System.Type.GetType("System.Int32")) + dtKeyIn.Columns.Add("ValueType", System.Type.GetType("System.Int32")) + dtKeyIn.Columns.Add("QCItemNo", System.Type.GetType("System.String")) '2015-12-18, Joe, Add + dtKeyIn.Columns.Add("OrgAttribValue", GetType(String)) + + '取出KeyIn Attrib + For Each dr As DataRow In dsWIP.Tables(tblTAttrib).Rows + '將資料存入KeyIn Table + If dr("AttribSource") = 0 AndAlso (dr("AttribPhase") = PhaseNo OrElse dr("AttribPhase") = 99) Then + drAdd = dtKeyIn.NewRow() + drAdd("AttribNo") = dr("AttribNo") + drAdd("AttribName") = dr("AttribName").ToString + drAdd("AttribSequence") = dr("AttribSequence") + drAdd("AttribValue") = dr("AttribValue") + drAdd("InputType") = dr("InputType") + drAdd("DataType") = dr("DataType") + drAdd("ValueType") = dr("ValueType") + drAdd("QCItemNo") = dr("QCItemNo") '2015-12-18, Joe, Add + drAdd("OrgAttribValue") = dr("OrgAttribValue") ' 2016/01/27 YF, 未轉換函式的特性值 + dtKeyIn.Rows.Add(drAdd) + End If + Next + + iugKeyIn.iMESUltraGrid.DataSource = dtKeyIn.DefaultView + + End If + + '5.物料 ----------------------------------------------------------------------------------------------------------- + If Not dsWIP.Tables(tblTMaterial) Is Nothing Then + '获取当前工单的物料清单 新设备上料14278 + Call funLoadMOMaterialList(txtMONo.Text, txtOPNo.Text) + + 'Kevin 2013/1/2,加入替代料處理 + Dim drData As DataRow + Dim drSelMaterialNo As DataRow() + For i As Integer = dsWIP.Tables(tblTMaterial).Rows.Count - 1 To 0 Step -1 + '取得用料清單 + If funLoadSubstituteMaterial_Main(dsWIP.Tables(tblTMaterial).Rows(i)("LotNo"), dsWIP.Tables(tblTMaterial).Rows(i)("MaterialNo"), dsWIP.Tables(tblTMaterial).Rows(i)("UnitNo")) < 0 Then Exit Sub + For Each dr As DataRow In dsWIP.Tables(tblSubstituteMaterial).Rows + drSelMaterialNo = dsWIP.Tables(tblTMaterial).Select("MaterialNo = '" & dr("MaterialNo") & "' And OrgMaterialNo = '" & dr("OrgMaterialNo") & "'") + If drSelMaterialNo.Length = 0 Then + drData = dsWIP.Tables(tblTMaterial).NewRow + drData("OrgMaterialNo") = dsWIP.Tables(tblTMaterial).Rows(i)("MaterialNo") '紀錄原來的主物料 + drData("MaterialNo") = dr("MaterialNo") + drData("MaterialType") = dr("SubstituteMaterialType") + drData("MaterialLevelShow") = dr("SubstituteMaterialLevel") + drData("CheckLotNo") = dr("CheckLotNo") + drData("PutInPlaceType") = dr("SubstitutePutInPlaceType") + drData("StdQty") = dr("SubstituteStdQty") + drData("StdUseQty") = Format(dsWIP.Tables(tblLotState).Rows(0)("CurQty") * dr("SubstituteStdQty") * (1 + dsWIP.Tables(tblTMaterial).Rows(i)("DecreaseRate")), "0.######") + drData("DecreaseRate") = dsWIP.Tables(tblTMaterial).Rows(i)("DecreaseRate") + drData("UnitNo") = dsWIP.Tables(tblTMaterial).Rows(i)("UnitNo") + dsWIP.Tables(tblTMaterial).Rows.Add(drData) + End If + Next + Next + + '產生MaterilaLotNo暫存表 + dtTmpMTLLotNo = New DataTable("TmpMTLLotNo") + dtTmpMTLLotNo.Columns.Add("EquipmentNo", System.Type.GetType("System.String")) + dtTmpMTLLotNo.Columns.Add("OrgMaterialNo", System.Type.GetType("System.String")) + dtTmpMTLLotNo.Columns.Add("MaterialNo", System.Type.GetType("System.String")) + dtTmpMTLLotNo.Columns.Add("SUBSTITUTEMATERIALNO", System.Type.GetType("System.String")) + dtTmpMTLLotNo.Columns.Add("MaterialLotNo", System.Type.GetType("System.String")) + dtTmpMTLLotNo.Columns.Add("Qty", System.Type.GetType("System.Decimal")) + dtTmpMTLLotNo.Columns("Qty").DefaultValue = 0 + dsWIP.Tables.Add(dtTmpMTLLotNo) + tblTmpMTLLotNo = "TmpMTLLotNo" + dsWIP.Tables(tblTmpMTLLotNo).DefaultView.Sort = "MaterialLotNo" + + 'Data(Relation) + Dim parentCol(0) As DataColumn + Dim childCol(0) As DataColumn + parentCol(0) = dsWIP.Tables(tblTMaterial).Columns("MaterialNo") + childCol(0) = dsWIP.Tables(tblTmpMTLLotNo).Columns("OrgMaterialNo") + '建立主從關係(RelationName會影響WinForm資料的顯示) + + Dim tmpRe1 As DataRelation + tmpRe1 = New DataRelation("MTLLotNo", parentCol, childCol, False) + dsWIP.Relations.Add(tmpRe1) + + iugMaterial.iMESUltraGrid.DataSource = dsWIP.Tables(tblTMaterial) + iugMaterial.iMESUltraGrid.Rows.ExpandAll(True) + End If + + '6.OP Description-------------------------------------------------------------------------------------------------- + If funGetOPDescription(LotNo) Then Exit Sub + + '多人加上 + If funMultiUser() < 0 Then Exit Sub + + '7.Initialize + Call funInitialize() + + '2019/09/06 Eric 取出系統參數GumMaterialType 哪些物料是屬於固晶膠類 + Dim strGumMaterialType As String = funLoadParameter("GumMaterialType") + blnGumMaterialType = (strGumMaterialType <> "") + aryGumMaterialType = If((strGumMaterialType <> ""), Split(strGumMaterialType, ","), {}) + + Call funLoadAllMaterialLot() + + '8.語系切換 + Call ExeChangeResource(Me, gLanguageMode) + + txtEquipmentNo.Focus() + btnSWR.Visible = False + + '判斷系統參數EnableSWR_CICO 0:否 1:是 + Dim strEnableSWR_CICO As String = funLoadParameter("EnableSWR_CICO") + If strEnableSWR_CICO = "1" Then '系統參數EnableSWR_CICO為1才需要顯示特殊生產需求 + + '2019/02/12 Eric 無資料不顯示SWR視窗 + Call funLoadSWRJoinLog() + If dsWIP.Tables(tblSWRJoinLog).Rows.Count > 0 Then + + blnShowSWR = True + + Dim Parameters As New Dictionary(Of String, Object) + Parameters.Add("MONo", txtMONo.Text) + Parameters.Add("CustomerLotNo", txtCustomerLotNo.Text) + Parameters.Add("OPNo", txtOPNo.Text) + Parameters.Add("LotNo", txtLotNo.Text) + Parameters.Add("DeviceNo", dsWIP.Tables(tblLotState).Rows(0)("DeviceNo").ToString) + Parameters.Add("CustomerNo", dsWIP.Tables(tblLotState).Rows(0)("CustomerNo").ToString) + Parameters.Add("LogGroupSerial", dsWIP.Tables(tblLotState).Rows(0)("LogGroupSerial").ToString) + Parameters.Add("blnCICo", True) + Me.ObjectFileHandler.Execute("WP_SWRBasisRead", Parameters) + + End If + + btnSWR.Visible = True + + End If + + ExeGroupControlPriv(Me, PrivFunNo) + Cursor.Current = Cursors.Default + + End Sub + + Private Sub frmBR_L_CI_GEN_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated + + txtEquipmentNo.Focus() + + End Sub + + Private Sub frmBR_L_CI_GEN_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing + + If Not dsWIP Is Nothing Then dsWIP.Dispose() + If Not dtKeyIn Is Nothing Then dtKeyIn.Dispose() + + '2019/12/17 OwenLiu, Mantis:0063698, 修正強制關閉企業邏輯,未正確執行ReverseTriggerOP的問題 + 'Call ExeReverseTriggerOP(UserId, LotNo, RevLotSerial, RevLotStamp) + '2020/3/17,Ning,不啟用Reverse時的ReverseTriggerOP + Call ExeReverseTriggerOP_NotUseUndo(UserId, LotNo, RevLotSerial, RevLotStamp) + End Sub + + +#Region "Button Events" + + Private Sub btnQCList_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnQCList.Click + + If Not dsWIP.Tables(tblAreaEquipment).Rows.Count > 0 Then + Exit Sub + End If + + 'Modify on 2008/03/31, By OwenLiu, + + '先取得Actve Row + Dim drSel() As DataRow + drSel = funGetActiveRows() + + If drSel Is Nothing Then Exit Sub + + '檢查設備是否可使用 + If drSel(0)("AllowExecute") <> 1 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203064", "[%Equipment%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + '檢查是否有定義機台點檢表 + If drSel(0)("QCListNo") Is DBNull.Value Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203072", "[%QCListNo%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + '檢查是否有被勾選 + If Not drSel(0)("CheckFlag") Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-103010", "[%Please select%] [%Equipment%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + '檢查是否已點檢完成 + If Not drSel(0)("QCFinish") Is DBNull.Value Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203072", "[%Equipment%] [%FINISHED%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + '自動開立點檢務單 + Call funCheckEQPQCTask(drSel(0)("EquipmentNo")) + + '開始處理設備點檢 + ' 2016/08/30 YF, 不直接參考改用invoke叫用 + Me.ObjectFileHandler.Execute(pObjectID:="WP_EQPCheckQCList", + pParameters:=Nothing, + pArgs:=New Object() { + drSel(0)("EquipmentNo"), LotNo, LotSerial, LogGroupSerial}) + + End Sub + + Private Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConfirm.Click + + Dim strResult As String + + Cursor.Current = Cursors.WaitCursor + + '1.基本檢查---------------------------------------------------------------------------------------------------------- + Dim drSel() As DataRow + Dim drSelAcc As DataRow() + If dsWIP.Tables(tblAreaEquipment).Rows.Count > 0 Then + drSel = dsWIP.Tables(tblAreaEquipment).Select("AllowExecute=1") + If drSel.Length = 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203064", "[%Equipment%]"), MsgBoxStyle.Exclamation, Me.Text) + GoTo lblExitProcedure + Else + drSel = dsWIP.Tables(tblAreaEquipment).Select("CheckFlag=" & True) + If drSel.Length = 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-103010", "[%Please select%] [%Equipment%]"), MsgBoxStyle.Exclamation, Me.Text) + GoTo lblExitProcedure + Else + '檢查所有勾選的設備是否完成設備點檢 + For i As Integer = 0 To drSel.Length - 1 + '2021/3/17,Ning,87547: [6.0.5] 設備點檢支援可設定頻率_生產批進站設備點檢查核調整 + Call funCheckEQPQCList(drSel(i)("EquipmentNo"), strResult) + If strResult <> "success" Then + '有設備未完成點檢 + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-103011", "[%EQP QCList OnLine Check%]" & vbCrLf & strResult & vbCrLf & "[%has not been completed%]"), MsgBoxStyle.Exclamation, Me.Text) + GoTo lblExitProcedure + End If + Next + + '2013/12/25,Kevin,有顯示模治具才檢查 + If Not dsWIP.Tables("AccState") Is Nothing Then + '如有設定產品-作業站-模治具,則這些模治具都一定要被選 + If Not dsWIP.Tables("PRDAccessory") Is Nothing Then + If dsWIP.Tables("PRDAccessory").Rows.Count > 0 Then + Dim drAccState As DataRow() + Dim blnPRDAcc As Boolean = False '是否有產品設定的模治具 + Dim strAccessoryType As String = "" + Dim aryShowAccNo As New ArrayList + Dim aryShowAccType As New ArrayList + Dim blnAllowExecute As Boolean = True + Dim strDesc As String = "" + + For Each dr As DataRow In drSel + blnPRDAcc = False + strAccessoryType = "" + aryShowAccNo.Clear() + aryShowAccType.Clear() + blnAllowExecute = True + strDesc = "" + + drAccState = dsWIP.Tables("AccState").Select("EquipmentNo = '" & dr("EquipmentNo") & "' And Select = True") + If drAccState.Length > 0 Then + '檢查設備是否都有掛產品指定之模治具,相同類別允許掛多個,但至少要有一個 + For Each drPRD As DataRow In dsWIP.Tables("PRDAccessory").Rows + + '檢查是否是同個模治具類別 + If strAccessoryType = drPRD("AccessoryType") Then + If blnPRDAcc Then + '如果已有產品設定的模治具則跳至下一筆 + GoTo lblAccCheck + End If + Else + '第一個物料類別不判斷blnPRDAcc + If strAccessoryType <> "" Then + '不同模治具類別時,如果上個模治具類別沒有符合的資料,則此設備不可用 + If blnPRDAcc = False Then + '只要有一種類別模治具不符合就是False + blnAllowExecute = False + End If + End If + + '記錄此次模治具類別 + strAccessoryType = drPRD("AccessoryType") + End If + + If drPRD("AccessoryNo") = "*" Then + '如果模治具編號為*代表只有指定模治具類別 + For Each drAcc As DataRow In drAccState + If drAcc("AccessoryType") = drPRD("AccessoryType") Then + '有符合的代表有掛指定的模治具類別 + blnPRDAcc = True + '移除此次加入的類別 + aryShowAccType.Remove(drPRD("AccessoryType")) + '有符合一筆即可 + GoTo lblAccCheck + Else + blnPRDAcc = False + If Not aryShowAccType.Contains(drPRD("AccessoryType")) Then + aryShowAccType.Add(drPRD("AccessoryType")) + End If + End If + Next + Else + '如果模治具編號不為*代表有指定模治具 + For Each drAcc As DataRow In drAccState + If drAcc("AccessoryType") = drPRD("AccessoryType") AndAlso drAcc("AccessoryNo") = drPRD("AccessoryNo") Then + '有符合的代表有掛指定的模治具類別 + blnPRDAcc = True + '移除此次加入的編號 + aryShowAccNo.Remove(drPRD("AccessoryNo")) + '有符合一筆即可 + Exit For + Else + blnPRDAcc = False + If Not aryShowAccNo.Contains(drPRD("AccessoryNo")) Then + aryShowAccNo.Add(drPRD("AccessoryNo")) + End If + End If + Next + End If +lblAccCheck: + Next + + '多判斷一次最後一個類別 + If blnPRDAcc = False Then + '只要有一種類別模治具不符合就是False + blnAllowExecute = False + End If + + If blnAllowExecute = False Then + If aryShowAccType.Count > 0 Then + strDesc += vbCrLf & "[%AccessoryType%]:" + For k As Integer = 0 To aryShowAccType.Count - 1 + strDesc += aryShowAccType(k) & "," + Next + strDesc = strDesc.TrimEnd(",") + End If + If aryShowAccNo.Count > 0 Then + strDesc += vbCrLf & "[%AccessoryNo%]:" + For k As Integer = 0 To aryShowAccNo.Count - 1 + strDesc += aryShowAccNo(k) & "," + Next + strDesc = strDesc.TrimEnd(",") + End If + + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-103010", "[%EquipmentNo%]:" & dr("EquipmentNo") & "[%ISNOTSELECTED%][%Product%][%Setup%][%Accessory%]" & strDesc), MsgBoxStyle.Exclamation, Me.Text) + GoTo lblExitProcedure + End If + Else + '設備沒掛模治具就一定沒有掛設定的必需模治具 + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-103010", "[%EquipmentNo%]:" & dr("EquipmentNo") & "[%ISNOTSELECTED%][%Accessory%]"), MsgBoxStyle.Exclamation, Me.Text) + GoTo lblExitProcedure + End If + Next + End If + End If + End If + End If + End If + End If + + If funGetSysParameter("CIMTLDBCheck") = "1" Then + If dsWIP.Tables(tblTMaterial).Rows.Count > 0 Then + If Not funCheckMTL() Then GoTo lblExitProcedure + End If + End If + + '2023/06/07 ,0135702: [6.0.7] SDD220425_01-03_進站設備派工查核調整,19245 + Try + Dim strEQP As String = "" + For Each dr As DataRow In dsWIP.Tables(tblAreaEquipment).Select("CheckFlag=" & True) + strEQP += dr("EquipmentNo").ToString() & "," + Next + If (strEQP <> "") Then + strEQP = strEQP.TrimEnd(",") + Else + strEQP = defString + End If + Call ChkCIEQPDispatch(strEQP, txtLotNo.Text) + + Dim showMSG As String = "" + Dim arrayMsg As New ArrayList + If Not IsNothing(dsEQP) Then + For i = 0 To dsEQP.Tables.Count - 1 + If dsEQP.Tables(i).Rows.Count > 0 Then + For Each drEQP As DataRow In dsEQP.Tables(i).Rows + If drEQP("Result").ToString <> "Success" Then + arrayMsg.Add(ChgTranslateName_Content(drEQP("Description").ToString)) + End If + Next + End If + Next + If arrayMsg.Count > 0 Then + If funGetSysParameter("LotEQPDispatchLimit") = "1" Then '進站是否卡控生產批派工 參數為1 + '是否確定執行? + For i As Integer = 0 To arrayMsg.Count - 1 + showMSG += arrayMsg(i).ToString() & vbCrLf + Next + If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100004", showMSG), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then + GoTo lblExitProcedure + End If + Else + '進站失敗,失敗原因:不滿足規則xx + showMSG = ChgTranslateName_Content("[%CHECK IN FAILED%], [%REASONS FOR FAILURE%]: [%Failure to meet rules%] " & vbCrLf) + For i As Integer = 0 To arrayMsg.Count - 1 + showMSG += arrayMsg(i).ToString() & vbCrLf + Next + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Content(showMSG), MsgBoxStyle.Critical, Me.Text) + GoTo lblExitProcedure + End If + End If + End If + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Finally + End Try + + + '2020/02/26 Grace Mantis 67753 取得此批號於此作業站上的派工資料 + Call funLoadWIPEQPDispatchState(LotNo:=LotNo, OPNo:=txtOPNo.Text) + + If Not IsNothing(dsTemp.Tables(tblEQPDispatchState)) Then + If dsTemp.Tables(tblEQPDispatchState).Rows.Count > 0 Then + Dim aryMsg As New ArrayList + Dim strCheckInDate As String = Now.ToString("yyyy/MM/dd") 'Check In 日期 + If chkUpdCheckInTime.Checked Then strCheckInDate = dtpcheckintime.Value.ToString("yyyy/MM/dd") + + '2020/03/02 Grace Mantis 67753, 68192 檢查所選擇的設備是否有相符的派工資料 + For Each dr As DataRow In dsWIP.Tables(tblAreaEquipment).Select("CheckFlag=" & True) + + '1. 檢查是否有派工設備 + Dim drSelEQP As DataRow() = dsTemp.Tables(tblEQPDispatchState).Select("EquipmentNo = '" & dr("EquipmentNo").ToString() & "'") + If drSelEQP.Count > 0 Then + '1-2. 有派工設備, 檢查派工設備的派工日期是否符合 + Dim iCount As Integer = 0 + Dim strDisDate As String = "" + For Each dr2 As DataRow In dsTemp.Tables(tblEQPDispatchState).Select("EquipmentNo = '" & dr("EquipmentNo").ToString() & "'", "DispatchOrder") + If Convert.ToDateTime(dr2("DispatchDate")).ToString("yyyy/MM/dd") = strCheckInDate Then + iCount += 1 + Exit For + Else + If strDisDate = "" Then strDisDate = Convert.ToDateTime(dr2("DispatchDate")).ToString("yyyy/MM/dd") + End If + Next + + If iCount > 0 Then + '1-2-1. 派工日期符合, 不顯示訊息 + Else + '1-2-2. 派工日期不符合, 顯示訊息 + '選擇的設備於[checkin日期]未派工, 設定的派工日期為[DispatchDate] + aryMsg.Add(ChgTranslateName_Content("[%EQUIPMENTNO%]:" & dr("EquipmentNo").ToString() & ", [%SelectedEQPAt%]" & strCheckInDate & "[%NoDispatch%], [%ActualDispatchDate%]" & strDisDate)) + End If + '2020/11/05 Mantis:0081316:納標調整,派工順序卡控 + If dr("DispatchOrder").ToString <> "1" Then + aryMsg.Add(ChgTranslateName_Content("[%EQUIPMENTNO%]:" & dr("EquipmentNo").ToString() & ", [%DispatchOrder is not top priority%]")) + 'MsgBox(ChgTranslateName_Msg("0000-103010", "[%EquipmentNo%]:" & dr("EquipmentNo") & "[%DispatchOrder is not top priority%]"), MsgBoxStyle.Exclamation, Me.Text) + 'GoTo lblExitProcedure + End If + Else + '1-3. 沒有派工設備, 檢查是否有符合的派工日期 + Dim iCount As Integer = 0 + Dim strEQPNo As String = "" + For Each dr4 As DataRow In dsTemp.Tables(tblEQPDispatchState).Rows + If Convert.ToDateTime(dr4("DispatchDate")).ToString("yyyy/MM/dd") = strCheckInDate Then + '若派工日期相符的設備資料並未勾選, 才顯示訊息 + If dsWIP.Tables(tblAreaEquipment).Select("CheckFlag=" & True & " And EquipmentNo = '" & dr4("EquipmentNo") & "'").Count = 0 Then + iCount += 1 + strEQPNo = dr4("EquipmentNo") + Exit For + End If + End If + Next + + If iCount > 0 Then + '1-3-1. 派工日期符合, 顯示訊息 + '選擇的設備與派工設備不同 + aryMsg.Add(ChgTranslateName_Content("[%EQUIPMENTNO%]:" & dr("EquipmentNo").ToString() & ", " & "[%SelectedEQPDispatchNotMatch%]!" & vbCrLf & "[%EQPDispatch%]:" & strEQPNo)) + Else + '1-3-2. 派工日期不符合, 顯示訊息 + '生產批號於作業站上無任何派工資料 + aryMsg.Add(ChgTranslateName_Content("[%EQUIPMENTNO%]:" & dr("EquipmentNo").ToString() & ", [%AT%][%OP%]: " & txtOPNo.Text & " [%NoDispatchData%]")) + End If + End If + Next + + '若有錯誤訊息, 一次顯示 + If aryMsg.Count > 0 Then + Dim strMsgMix As String = "" + For i As Integer = 0 To aryMsg.Count - 1 + strMsgMix += aryMsg(i).ToString() & vbCrLf & vbCrLf + Next + If strMsgMix.Length > 0 Then + strMsgMix = strMsgMix & ChgTranslateName_Content("[%Sure2Confirm%]?") '是否確定執行? + + If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100004", strMsgMix), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then + GoTo lblExitProcedure + End If + End If + End If + Else + '2020/05/08 Eric 註解派工提示訊息 + ''是否確定 / 生產批號(" & LotNo & ") 於作業站(" & txtOPNo.Text & ") 上無任何派工資料, 是否確定執行? + 'If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100004", "[%LOTNO%](" & LotNo & ") [%AT%][%OP%](" & txtOPNo.Text & ") [%NoDispatchData%], [%Sure2Confirm%]?"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then + ' GoTo lblExitProcedure + 'End If + End If + Else + '2020/05/08 Eric 註解派工提示訊息 + ''是否確定 / 生產批號(" & LotNo & ") 於作業站(" & txtOPNo.Text & ") 上無任何派工資料, 是否確定執行? + 'If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100004", "[%LOTNO%](" & LotNo & ") [%AT%][%OP%](" & txtOPNo.Text & ") [%NoDispatchData%], [%Sure2Confirm%]?"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then + ' GoTo lblExitProcedure + 'End If + End If + + Dim strMTLLot As String = "" + For Each dr As DataRow In dsWIP.Tables(tblTmpMTLLotNo).Rows + strMTLLot += CombineXMLValueTag(CombineXMLValue("materialno", dr("MaterialNo")) & + CombineXMLValue("materiallotno", dr("MaterialLotNo"))) + Next + + '2.格式化資料Attrib----------------------------------------------------------------------------------------------- + Dim strAttrib As String = "" + Dim strTemp As String + + If Not dsWIP.Tables(tblTAttrib) Is Nothing Then + dsWIP.Tables(tblTAttrib).DefaultView.RowFilter = "(AttribPhase = " & PhaseNo & " or AttribPhase = 99) And AttribSource <> 0" 'CurPhase & All的所有Attrib,除了KeyIn + For i As Integer = 0 To dsWIP.Tables(tblTAttrib).DefaultView.Count - 1 + strTemp = CombineXMLValue("attribno", CInput(dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("AttribNo"))) & + CombineXMLValue("attribtype", dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("AttribType")) & + CombineXMLValue("attribsequence", dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("AttribSequence")) & + CombineXMLValue("attribsource", dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("AttribSource")) & + CombineXMLValue("attribphase", dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("AttribPhase")) & + CombineXMLValue("savetolotpropertyno", CInput(dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("SaveToLotPropertyNo"))) + If IsDBNull(dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("AttribValue")) Then + strTemp += CombineXMLValue("attribvalue", "") + Else + strTemp += CombineXMLValue("attribvalue", CInput(dsWIP.Tables(tblTAttrib).DefaultView.Item(i)("AttribValue"))) + End If + strAttrib += CombineXMLValueTag(strTemp) + Next + '還原顯示 + dsWIP.Tables(tblTAttrib).DefaultView.RowFilter = "AttribSource <> 0 And AttribSource <> 1 And (AttribPhase = " & PhaseNo & " or AttribPhase = 99)" 'Source = Not KeyIn, Not Calculate ,CurPhase and All + + 'Temp:Attrib_KeyIn + For i As Integer = 0 To dtKeyIn.Rows.Count - 1 + If IsDBNull(dtKeyIn.Rows(i)("AttribValue")) = True Then + dtKeyIn.Rows(i)("AttribValue") = "" + End If + + ''edit by Zoe,2009/03/17:增加DBNull及Trim的比對 + ''If dtKeyIn.Rows(i)("AttribValue") = "" Then + 'R1102001 改由ChkControlRule時才判斷 By Acer 2011/02/21 + 'If IsDBNull(dtKeyIn.Rows(i)("AttribValue")) OrElse Trim(dtKeyIn.Rows(i)("AttribValue")) = "" OrElse dtKeyIn.Rows(i)("AttribValue") = "" Then + ' iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%AttribValue%] of [%AttribNo%]:" & dtKeyIn.Rows(i)("AttribNo") & " is empty!!"), MsgBoxStyle.Exclamation, Me.Text) + ' GoTo lblExitProcedure + 'End If + + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo='" & dtKeyIn.Rows(i)("AttribNo") & "'") + If drSel.Length = 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203010", "[%AttribNo%]:" & dtKeyIn.Rows(i)("AttribNo")), MsgBoxStyle.Exclamation, Me.Text) + GoTo lblExitProcedure + Else + strTemp = CombineXMLValue("attribno", CInput(dtKeyIn.Rows(i)("AttribNo"))) & + CombineXMLValue("attribtype", drSel(0)("AttribType")) & + CombineXMLValue("attribsequence", drSel(0)("AttribSequence")) & + CombineXMLValue("attribsource", drSel(0)("AttribSource")) & + CombineXMLValue("attribphase", drSel(0)("AttribPhase")) & + CombineXMLValue("attribvalue", CInput(dtKeyIn.Rows(i)("AttribValue"))) & + CombineXMLValue("savetolotpropertyno", CInput(drSel(0)("SaveToLotPropertyNo"))) + '2015-12-18, Joe, Add QCItemNo + If IsDBNull(drSel(0)("QCItemNo")) Then + strTemp += CombineXMLValue("qcitemno", "") + Else + strTemp += CombineXMLValue("qcitemno", CInput(drSel(0)("QCItemNo"))) + End If + strAttrib += CombineXMLValueTag(strTemp) + End If + Next + End If + + '3.格式化資料Equipment----------------------------------------------------------------------------------------------- + Dim strEquipment As String = "" + + '只有一筆 + + drSel = dsWIP.Tables(tblAreaEquipment).Select("CheckFlag=" & True) + If dsWIP.Tables(tblLotState).Rows(0)("MaterialOption").ToString = "1" AndAlso drSel.Length > 1 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-103010", "[%MATERIALOPTIONISEQP%], [%Only Support One Equipment To Select%]"), MsgBoxStyle.Exclamation, Me.Text) + GoTo lblExitProcedure + End If + + 'Modify On 2007/11/30 By OwenLiu, 修正 Equipment 多選後, 仍然只執行第一個設備的Bug + For i As Integer = 0 To drSel.Length - 1 + If IsDBNull(drSel(i)("LoadPort")) Then + strEquipment += CombineXMLValueTag(CombineXMLValue("equipmentno", CInput(drSel(i)("EquipmentNo")))) + If Not ChkWIPEQPConsume(LotNo, CInt(Me.txtCurQty.Text), UserId, drSel(i)("EquipmentNo").ToString) Then GoTo lblExitProcedure + Else + If drSel(i)("LoadPort") = -1 Then '代表不選Port. + strEquipment += CombineXMLValueTag(CombineXMLValue("equipmentno", CInput(drSel(i)("EquipmentNo")))) + If Not ChkWIPEQPConsume(LotNo, CInt(Me.txtCurQty.Text), UserId, drSel(i)("EquipmentNo").ToString) Then GoTo lblExitProcedure + Else + strEquipment += CombineXMLValueTag( + CombineXMLValue("equipmentno", CInput(drSel(i)("EquipmentNo"))) & + CombineXMLValue("loadport", drSel(i)("LoadPort"))) + If Not ChkWIPEQPConsume(LotNo, CInt(Me.txtCurQty.Text), UserId, drSel(i)("EquipmentNo").ToString) Then GoTo lblExitProcedure + End If + End If + Next + + '子設備資料 + Dim strEquipmentChamber = String.Empty + If Not dsWIP.Tables("Chamber") Is Nothing Then + drSel = dsWIP.Tables("Chamber").Select("SELECT1 = True") + For Each dr As DataRow In drSel + strEquipmentChamber += CombineXMLValueTag( + CombineXMLValue("equipmentno", CInput(dr("EquipmentNo"))) & + CombineXMLValue("belongequipmentno", dr("BelongEquipmentNo"))) + Next + End If + '格式化資料Accessory + Dim strAccessory As String = "" + If Not dsWIP.Tables("AccState") Is Nothing Then + drSel = dsWIP.Tables("AccState").Select("Select=" & True) + If drSel.Length > 0 Then + For Each drAcc As DataRow In drSel + strAccessory += CombineXMLValueTag( + CombineXMLValue("equipmentno", CInput(drAcc("EquipmentNo"))) & + CombineXMLValue("accessoryno", CInput(drAcc("AccessoryNo"))) & + CombineXMLValue("accessoryversion", CInput(drAcc("AccessoryVersion"))) & + CombineXMLValue("accessorytype", CInput(drAcc("AccessoryType"))) & + CombineXMLValue("accumulateqty", drAcc("AccumulateQty"))) + Next + End If + End If + + ' 2016/12/27 YF, 取消舊制多人加工 + '3.多人加工----------------------------------------------------------------------------------------------- + 'Dim strLoginState As String = "" + + 'For Each drTmp As DataRow In dtTmpLoginState.Rows + ' 'Kevin,2012/12/18,不取client端的時間作CI時間 + ' If drTmp("CheckInTime").ToString = "" Then + ' drTmp("CheckInTime") = defDateTime + ' End If + ' strLoginState += CombineXMLValueTag( + ' CombineXMLValue("userno", CInput(drTmp("UserNo"))) & + ' CombineXMLValue("username", CInput(drTmp("UserName"))) & + ' CombineXMLValue("checkintime", Format(drTmp("CheckInTime"), "yyyy/MM/dd HH:mm:ss"))) + 'Next + + '4.檢查是否允許執行----------------------------------------------------------------------------------------------- + If ChkLotStamp(LotNo, UserId, dsWIP.Tables(tblLotState).Rows(0)("LotStamp")) < 0 Then GoTo lblExitProcedure + + '5.Control Rule Check -------------------------------------------------------------------------------------------- + Dim strLinkName, strMSG As String + Dim strMailGroupNo As String = "" + Dim strRuleNo As String = defString + Dim intERFType As Integer = defInteger + Dim dsTestValue As DataSet + Dim strERFMsg As String + + If ChkControlRule(LotNo, UserId, dsWIP.Tables(tblLotState).Rows(0)("LotStamp"), + strAttrib, strLinkName, strMSG, strRuleNo, intERFType, strMailGroupNo, , , , dsTestValue) < 0 Then GoTo lblExitProcedure + + '2015-12-17, Joe, Check SPC Contorl + If funChkSPCControl_Var(LotNo, strAttrib, dsTestValue, strLinkName, intERFType, strERFMsg) < 0 Then GoTo lblExitProcedure + strERFMsg = ChgTranslateErrorMsg(strERFMsg) + + '若是Hold詢問是否繼續 + If strLinkName = "HOLD" Then + If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100103", "[%Lot%]"), MsgBoxStyle.DefaultButton2 + MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Hold Inquire") = MsgBoxResult.No Then + GoTo lblExitProcedure + End If + End If + + '6.ExecuteCheckIn ------------------------------------------------------------------------------------------------ + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + strParameter += CombineXMLParameter("linkname", "LinkName", "String", CInput(strLinkName), "") + strParameter += CombineXMLParameter("lotstamp", "LotStamp", "Long", dsWIP.Tables(tblLotState).Rows(0)("LotStamp"), "") + strParameter += CombineXMLParameter("shiftno", "ShiftNo", "String", CInput(txtShiftNo.Text), "") + strParameter += CombineXMLParameter("lotrecord", "LotRecord", "String", CInput(txtLotRecord.Text), "") + 'strParameter += CombineXMLParameter("checkintime", "CheckInTime", "String", dtpcheckintime.Value.ToString("yyyy/MM/dd HH:mm:ss"), "") '2017/11/06 mark by KunYuan:移至下方處理 + strParameter += CombineXMLParameterMultiValue("attrib", "Attrib", "String", strAttrib, "") + strParameter += CombineXMLParameterMultiValue("equipment", "Equipment", "String", strEquipment, "") + strParameter += CombineXMLParameterMultiValue("equipmentchamber", "EquipmentChamber", "String", strEquipmentChamber, "") + strParameter += CombineXMLParameter("ruleno", "RuleNo", "String", CInput(strRuleNo), "") 'Added by Jialing 2011/02/18 + 'strParameter += CombineXMLParameterMultiValue("loginstate", "LoginState", "String", strLoginState, "") ' 2016/12/27 YF, 取消舊制多人加工 + + '2017/11/06 KunYuan:當有勾選『變更開始加工時間』,再傳入CheckInTime + If chkUpdCheckInTime.Checked Then + strParameter += CombineXMLParameter("checkintime", "CheckInTime", "String", dtpcheckintime.Value.ToString("yyyy/MM/dd HH:mm:ss"), "") + End If + + '2013/12/25,Kevin,模治具資料有顯示才傳 + If blnGetAccessory Then + strParameter += CombineXMLParameterMultiValue("accessory", "Accessory", "String", strAccessory, "") + End If + '2019/09/06 Eric + If strMTLLot <> "" Then + strParameter += CombineXMLParameterMultiValue("temp_materiallot", "Temp_MaterialLot", "String", strMTLLot, "") + End If + + + + InXml = CombineXMLRequest(strIdentity, strParameter) + Try + '2019/06/20 Lena, Mantis: 0058845 [WIP] CI/CO執行時間紀錄 + '新增參數 LogOn = True, 記錄執行時間. + OutXml = InvokeSrv("wsWIP.Exe_CheckIn", InXml, LogOn:=True) + + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then '找出Exception訊並顯示出來 + '成功執行完成,避免再按下一次 + btnConfirm.Enabled = False + + '2017/11/06 KunYuan:變更開始加工時間checkbox預設不勾選 + chkUpdCheckInTime.Checked = False + + If strLinkName <> "HOLD" And strLinkName <> "WAIT" Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-000001", "[%LotNo%]:" & LotNo & " [%Check In%] [%Successfully%]"), MsgBoxStyle.Information, Me.Text) + End If + Else + If GetExceptionCode(XmlDoc) = "IPQCNO" Then + 'ExceptionManager.iMESShowDialog("0000-103021", GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200015", GetExceptionSysMsg(XmlDoc)), MsgBoxStyle.Information, Me.Text) + Dim Parameters As New Dictionary(Of String, Object) + Parameters.Add("defLotNo", LotNo) + Me.ObjectFileHandler.Execute("SC_IPQCForm", Parameters) + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + End If + GoTo lblExitProcedure + End If + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + GoTo lblExitProcedure + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + GoTo lblExitProcedure + Finally + End Try + + Me.Close() + + '7.Mail------------------------------------------------------------------------------------------------------------- + '以下的執行,不管成功失敗,都讓FormClose,代表此BR已完成 + + '2016-12-19 add 取得eSOP參數 + Execute_eSOP = funGetSysParameter("Execute_eSOP") + If Execute_eSOP = 1 Then + '讀取eSOP工位及檔案及頁碼 + Call funLoadPRDeSOP() + '顯示作業指導書 + Call funDisplayProcess() + End If + If Execute_eSOP = 2 Then + '組JSON + Dim DataString, ResponsetJson As String + Dim strProductNo, strProductVersion As String + Try + strProductNo = txtProductNo.Text + strProductVersion = dsWIP.Tables(tblLotState).Rows(0)("ProductVersion").ToString + Dim dic As New Dictionary(Of String, String) + dic("userid") = gUserNo + dic("languagemode") = gLanguageMode + dic("computername") = gComputerName + Dim Uri = Newtonsoft.Json.JsonConvert.SerializeObject(dic) + + dic = New Dictionary(Of String, String) + dic("produc_no") = strProductNo + dic("product_ver") = strProductVersion + dic("op_no") = txtOPNo.Text + Dim list As New List(Of String) + Dim rows As DataRow() = dsWIP.Tables(tblAreaEquipment).Select("CheckFlag=" & True) + If rows.Length > 0 Then + For Each dr As DataRow In dsWIP.Tables(tblAreaEquipment).Select("CheckFlag=" & True) + list.Add(dr("EQUIPMENTTYPE")) + Next + dic("eqp_type") = String.Join(""",""", list) + Else + dic("eqp_type") = Nothing + End If + + Dim Content = Newtonsoft.Json.JsonConvert.SerializeObject(dic) + + '呼叫EAI GeteSOPInfo_API + Using wsEAI As New wsEAI.wsEAI + ResponsetJson = wsEAI.GeteSOPInfo_API(Uri, Content) + End Using + + '呼叫WP_eSOPList.dll + Dim Obj As Newtonsoft.Json.Linq.JObject = Newtonsoft.Json.JsonConvert.DeserializeObject(ResponsetJson) + Dim dtResponsetJson As DataTable = JsonConvert.DeserializeObject(Of DataTable)(Obj.Item("ResultJson").ToString) + Dim Parameters As New Dictionary(Of String, Object) + Parameters.Add("dteSOP", dtResponsetJson) + Me.ObjectFileHandler.Execute("WP_eSOPList", Parameters) + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + End Try + End If + + If strMailGroupNo <> "" Then + Call SendEmailToERFGroup_NoneERF(LotNo, UserId, strMailGroupNo, strMSG, + dsWIP.Tables(tblLotState).Rows(0)("OPNo"), dsWIP.Tables(tblLotState).Rows(0)("OPName"), dsWIP.Tables(tblLotState).Rows(0)("BRNo")) + End If + + + + 'C3:依LinkName決定是否Transfer Lot---------------------------------------------------------------------------------- + '以下的執行,不管成功失敗,都讓FormClose,代表此BR已完成 + '若再執行Confirm一次則不正確,同一BR會執行多次 + '2015-12-21, Joe, 加ERFMsg + Call BRTransferLot(LotNo, UserId, strLinkName, intERFType, strRuleNo, , strERFMsg) + + + gReturnKeyValue = LotNo + + +lblExitProcedure: + + Cursor.Current = Cursors.Default + Exit Sub + + End Sub + + Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click + + Cursor.Current = Cursors.WaitCursor + + Try + '2019/12/17 OwenLiu, Mantis:0063698, ReverseTriggerOP統一呼叫 WIP_Kit共用函式 + 'Call ExeReverseTriggerOP(UserId, LotNo, RevLotSerial, RevLotStamp) + + '2020/3/17,Ning,不啟用Reverse時的ReverseTriggerOP + '2022/9/19,Ning, 116091: 各BR 在畫面關閉動作執行ReverseTriggerOP,若有執行失敗須把訊息顯示:統一在form_closing時處理 + 'Call ExeReverseTriggerOP_NotUseUndo(UserId, LotNo, RevLotSerial, RevLotStamp) + + Catch e1 As Exception + Finally + Me.Close() + End Try + + Cursor.Current = Cursors.Default + + + End Sub + + Private Sub btnEQPConsumeReset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEQPConsumeReset.Click + + Try + + If Me.iugEquipment.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub + + ' 2016/08/30 YF, 不直接參考改用invoke叫用 + Me.ObjectFileHandler.Execute(pObjectID:="WP_EQPConsumeReset", + pParameters:=Nothing, + pArgs:=New Object() { + Me.iugEquipment.iMESUltraGrid.ActiveRow.Cells("EquipmentNo").Value.ToString}) + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Sub + + Private Sub btnMultiUser_Click(sender As System.Object, e As System.EventArgs) Handles btnMultiUser.Click + + ' 2016/08/30 YF, 不直接參考改用invoke叫用 + Dim parameters As New Dictionary(Of String, Object) + parameters.Add("CallType", 1) + parameters.Add("UserID", UserId) + parameters.Add("CheckInTime", dtpcheckintime.Value) + parameters.Add("drLotInfo", dsWIP.Tables(tblLotState).Rows(0)) + parameters.Add("dtTmpLoginState", dtTmpLoginState) + '2019/10/17 Grace 調整ObjectID + Me.ObjectFileHandler.Execute("WP_OperatorLogIn_Lot", parameters) + + dtTmpLoginState = parameters("dtTmpLoginState") + + End Sub + + +#End Region + + Protected Overrides Sub Finalize() + MyBase.Finalize() + End Sub + +#Region "Control Enter,KeyPress" + + Private Sub txtLotNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtLotNo.Enter + txtLotNo.SelectAll() + End Sub + Private Sub txtLotNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtLotNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtPriority_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtPriority.Enter + txtPriority.SelectAll() + End Sub + Private Sub txtPriority_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtPriority.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtAreaNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAreaNo.Enter + txtAreaNo.SelectAll() + End Sub + Private Sub txtAreaNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAreaNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtCurQty_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCurQty.Enter + txtCurQty.SelectAll() + End Sub + Private Sub txtCurQty_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtCurQty.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtCurUnitNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCurUnitNo.Enter + txtCurUnitNo.SelectAll() + End Sub + Private Sub txtCurUnitNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtCurUnitNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtSysQty_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSysQty.Enter + txtSysQty.SelectAll() + End Sub + Private Sub txtSysQty_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSysQty.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtSysUnitNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSysUnitNo.Enter + txtSysUnitNo.SelectAll() + End Sub + Private Sub txtSysUnitNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSysUnitNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtOPNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtOPNo.Enter + txtOPNo.SelectAll() + End Sub + Private Sub txtOPNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtOPNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtOPDescription_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtOPDescription.Enter + txtOPDescription.SelectAll() + End Sub + Private Sub txtOPDescription_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtOPDescription.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtCustomerLotNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCustomerLotNo.Enter + txtCustomerLotNo.SelectAll() + End Sub + Private Sub txtCustomerLotNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtCustomerLotNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtMONo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMONo.Enter + txtMONo.SelectAll() + End Sub + Private Sub txtMONo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtMONo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtEmployeeNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEmployeeNo.Enter + txtEmployeeNo.SelectAll() + End Sub + Private Sub txtEmployeeNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEmployeeNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtShiftNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtShiftNo.Enter + txtShiftNo.SelectAll() + End Sub + Private Sub txtShiftNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtShiftNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtLotRecord_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtLotRecord.Enter + txtLotRecord.SelectAll() + End Sub + + Private Sub txtProductNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtProductNo.Enter + txtProductNo.SelectAll() + End Sub + Private Sub txtProductNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtProductNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtMaterialLotNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMaterialLotNo.Enter + txtMaterialLotNo.SelectAll() + End Sub + + Private Sub txtMaterialLotNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtMaterialLotNo.KeyPress + + Try + If (e.KeyChar = Convert.ToChar(13)) Then + funKeyInMaterialLotNo(txtMaterialNo.Text, txtMaterialLotNo.Text) + End If + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Sub + Private Sub funKeyInMaterialLotNo(ByVal MaterialNo As String, ByVal MaterialLotNo As String) + + Try + '2020/10/29 Grace 請先輸入物料編號 + If MaterialNo = "" Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog( + ChgTranslateName_Msg("0000-200005", "[%MaterialNo%]!"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + MaterialLotNo = UCase(MaterialLotNo.Trim) + If MaterialLotNo = "" Then Exit Sub + + If dsWIP.Tables(tblTMaterial).Rows.Count = 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog( + ChgTranslateName_Msg("0000-103019", "[%Do not need to check%]!"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + '相同料批只能加入某一個料,以避免上料錯誤 + '2020/10/29 Grace 依物料編號取得料批 + Dim drCheckMTLLotNo() As DataRow = dsWIP.Tables(tblTmpMTLLotNo).Select( + "MaterialLotNo ='" & MaterialLotNo & "' And MaterialNo ='" & MaterialNo & "'") + + If drCheckMTLLotNo.Length > 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog( + ChgTranslateName_Msg("0000-200004", "[%MaterialLotNo%]:" & MaterialLotNo), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End If + + ' 2016/10/19 YF, 依作業站用料選項取出資料 + Select Case dsWIP.Tables(tblLotState).Rows(0)("MaterialOption").ToString + Case "0" + ' 發料點(線邊倉或工單) + If (Not CheckMaterialByPutinPlace(dsWIP.Tables(tblLotState).Rows(0)("MONo").ToString, MaterialLotNo, MaterialNo)) Then + Exit Sub + End If + + Case "1" + ' 設備 + 'If (Not CheckMaterialByEquipment(MaterialLotNo, MaterialNo)) Then + ' Exit Sub + 'End If + + 'Case "2" + ' 生產線, 待組裝版再實作 + + 'Case "3" + ' 工位, 待組裝版再實作 + + Case Else + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog( + ChgTranslateName_Msg("0000-003000", "[%MaterialOption%]:" & dsWIP.Tables(tblLotState).Rows(0)("MaterialOption").ToString & + " [%NOT DEFINE%]!"), MsgBoxStyle.Exclamation, Me.Text) + Exit Sub + End Select + + Catch ex As Exception + Throw ex + + Finally + txtMaterialLotNo.Text = "" + txtMaterialNo.Text = "" + txtMaterialNo.Focus() + End Try + + End Sub + + Private Sub txtMaterialLotNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMaterialLotNo.Leave + txtMaterialLotNo.Text = UCase(txtMaterialLotNo.Text) + End Sub + +#End Region + +#Region "Ultra Grid" + + Private Sub iugAttrib_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugAttrib.iMESUltraGrid_InitializeLayOut + + Dim i As Integer + + With e.Layout + For i = 0 To dsWIP.Tables(tblTAttrib).Columns.Count - 1 + Select Case dsWIP.Tables(tblTAttrib).Columns(i).ColumnName.ToUpper + Case "ATTRIBNO" + With .Bands(tblTAttrib).Columns("AttribNo") + .Header.Caption = "AttribNo" + .Width = 70 + .Header.VisiblePosition = 1 + End With + Case "ATTRIBNAME" + With .Bands(tblTAttrib).Columns("AttribName") + .Header.Caption = "AttribName" + .Width = 95 + .Header.VisiblePosition = 2 + End With + Case "ATTRIBVALUE" + With .Bands(tblTAttrib).Columns("AttribValue") + .Header.Caption = "AttribValue" + .Width = 80 + .Header.VisiblePosition = 3 + End With + Case "ATTRIBSOURCE" + With .Bands(tblTAttrib).Columns("AttribSource") + .Header.Caption = "AttribSource" + .Width = 65 + .Header.VisiblePosition = 4 + .ValueList = iugAttrib.iMESUltraGrid.DisplayLayout.ValueLists("ASource") + End With + Case Else + With .Bands(tblTAttrib).Columns(dsWIP.Tables(tblTAttrib).Columns(i).ColumnName.ToUpper) + .Hidden = True + End With + End Select + Next + + End With + + End Sub + + Private Sub iugAttrib_iMESUltraGrid_InitializeRow(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeRowEventArgs) Handles iugAttrib.iMESUltraGrid_InitializeRow + + Dim strAttribValue As String + strAttribValue = e.Row.Cells("AttribValue").Value.ToString.Trim + + '\\Server\01A.pdf + If Mid(strAttribValue, 1, 2) = "\\" Then + e.Row.Cells("AttribValue").Style = ColumnStyle.Button + e.Row.Cells("AttribValue").Appearance.BackColor = System.Drawing.Color.Pink + End If + + '\\HTTP + If Mid(strAttribValue.ToUpper, 1, 4) = "HTTP" Then + e.Row.Cells("AttribValue").Style = ColumnStyle.Button + e.Row.Cells("AttribValue").Appearance.BackColor = System.Drawing.Color.Pink + End If + '\\HTTPS + If Mid(strAttribValue.ToUpper, 1, 5) = "HTTPS" Then + e.Row.Cells("AttribValue").Style = ColumnStyle.Button + e.Row.Cells("AttribValue").Appearance.BackColor = System.Drawing.Color.Pink + End If + + End Sub + + Private Sub iugAttrib_iMESUltraGrid_ClickCellButton(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.CellEventArgs) Handles iugAttrib.iMESUltraGrid_ClickCellButton + + Cursor.Current = Cursors.WaitCursor + + Dim strFilePath As String + + strFilePath = e.Cell.Row.Cells("AttribValue").Value.ToString.Trim + + If strFilePath = "" Then Exit Sub + + Try + Dim objProcess As New Process + objProcess.Start(strFilePath) + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + Cursor.Current = Cursors.Default + + End Sub + + Private Sub iugMaterial_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugMaterial.iMESUltraGrid_InitializeLayOut + + Dim i As Integer + + With e.Layout + For i = 0 To dsWIP.Tables(tblTMaterial).Columns.Count - 1 + With .Bands(tblTMaterial).Columns(i) + .Hidden = True + .Header.VisiblePosition = 99 + End With + Next + With .Bands(tblTMaterial).Columns("MaterialLevelShow") + .Header.Caption = "MaterialLevelShow" + .Hidden = False + .CalculateAutoResizeWidth(PerformAutoSizeType.VisibleRows, True) + .Header.VisiblePosition = 0 + .ValueList = vlMaterialLevel + End With + With .Bands(tblTMaterial).Columns("MaterialType") + .Header.Caption = "MaterialType" + .Width = 30 + .Hidden = False + .Header.VisiblePosition = 1 + End With + With .Bands(tblTMaterial).Columns("MaterialNo") + .Header.Caption = "MaterialNo" + .Width = 100 + .Hidden = False + .Header.VisiblePosition = 2 + End With + With .Bands(tblTMaterial).Columns("StdUseQty") + .Header.Caption = "StdUseQty" + .Width = 70 + .Hidden = False + .Header.VisiblePosition = 3 + .Format = "0.########" + .CellAppearance.TextHAlign = Infragistics.Win.HAlign.Right + End With + With .Bands(tblTMaterial).Columns("UnitNo") + .Header.Caption = "UnitNo" + .Width = 70 + .Hidden = False + .Header.VisiblePosition = 4 + End With + With .Bands(tblTMaterial).Columns("MTLLotNoSearch") + .Header.Caption = "" + .Width = 40 + .Hidden = blnByEQP + .Header.VisiblePosition = 5 + .CellAppearance.TextHAlign = Infragistics.Win.HAlign.Center + '20231106,13871,0148577: Online Help優化建議 + .Tag = New COM_Kit.TagInformation.clsGridColumnTag() With {.UseOnlineHelp = False} + .Style = ColumnStyle.Button + .CellAppearance.BackColor = System.Drawing.Color.Pink + .CellButtonAppearance.BackColor = Color.Pink + .CellButtonAppearance.BorderColor3DBase = Color.Pink + .CellButtonAppearance.BackGradientStyle = GradientStyle.Rectangular + End With + + With .Bands("MTLLotNo").Columns("EquipmentNo") + If blnByEQP = True Then + .Hidden = False + .Width = 40 + Else + .Hidden = True + End If + End With + With .Bands("MTLLotNo").Columns("OrgMaterialNo") + .Hidden = True + End With + With .Bands("MTLLotNo").Columns("MaterialNo") + .Hidden = True + End With + With .Bands("MTLLotNo").Columns("SUBSTITUTEMATERIALNO") + .Hidden = False + End With + With .Bands("MTLLotNo").Columns("MaterialLotNo") + .Hidden = False + End With + With .Bands("MTLLotNo").Columns("Qty") + .Hidden = False + .Format = "0.########" + .Width = 50 + .CellAppearance.TextHAlign = Infragistics.Win.HAlign.Right + End With + End With + + End Sub + + Private Sub iugMaterial_iMESUltraGrid_InitializeRow(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeRowEventArgs) Handles iugMaterial.iMESUltraGrid_InitializeRow + + If e.Row.Band.Key = tblTMaterial Then + e.Row.Cells("MaterialLevelShow").Appearance.BackColor = System.Drawing.Color.Pink + e.Row.Cells("MaterialType").Appearance.BackColor = System.Drawing.Color.Pink + e.Row.Cells("MaterialNo").Appearance.BackColor = System.Drawing.Color.Pink + e.Row.Cells("StdUseQty").Appearance.BackColor = System.Drawing.Color.Pink + e.Row.Cells("UnitNo").Appearance.BackColor = System.Drawing.Color.Pink + + 'e.Row.Cells("MTLLotNoSearch").Style = ColumnStyle.Button + 'e.Row.Cells("MTLLotNoSearch").Appearance.BackColor = System.Drawing.Color.Pink + 'e.Row.Cells("MTLLotNoSearch").ButtonAppearance.BackColor = Color.Pink + 'e.Row.Cells("MTLLotNoSearch").ButtonAppearance.BorderColor3DBase = Color.Pink + 'e.Row.Cells("MTLLotNoSearch").ButtonAppearance.BackGradientStyle = GradientStyle.Rectangular + e.Row.Cells("MTLLotNoSearch").Value = "..." + e.Row.Update() + End If + + End Sub + + Private Sub iugMaterial_iMESUltraGrid_ClickCellButton(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.CellEventArgs) Handles iugMaterial.iMESUltraGrid_ClickCellButton + + Dim dvData As DataView + + Try + If iugMaterial.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub + + Dim MaterialNo As String = iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + Dim drSel() As DataRow = dsWIP.Tables(tblTMaterial).Select("MaterialNo='" & MaterialNo & "'") + If drSel.Length = 0 Then Exit Sub + + Dim dtMLot As DataTable = dsWIP.Tables(tblTmpMTLLotNo).Copy + Dim drTMaterial As DataRow = drSel(0) + Dim parameters As New Dictionary(Of String, Object) From { + {"drMaterial", drTMaterial}, + {"dtMLot", dtMLot}, + {"blnCheckIn", True} + } + Me.ObjectFileHandler.Execute("WP_MaterialQtyInput_Main", parameters) + + drSel = dsWIP.Tables(tblTmpMTLLotNo).Select("OrgMaterialNo='" & MaterialNo & "'") + For Each dr In drSel + dr.Delete() + Next + dsWIP.Tables(tblTmpMTLLotNo).AcceptChanges() + + dtMLot = parameters("dtMLot") + For Each drMLot As DataRow In dtMLot.Rows + drSel = dsWIP.Tables(tblTmpMTLLotNo).Select( + "SubstituteMaterialNo='" & drMLot("SubstituteMaterialNo").ToString() & "' And + MaterialLotNo='" & drMLot("MaterialLotNo").ToString() & "'") + If drSel.Length > 0 Then Continue For + + Dim drAdd As DataRow = dsWIP.Tables(tblTmpMTLLotNo).NewRow + For Each dcMLot As DataColumn In dtMLot.Columns + drAdd(dcMLot.ColumnName) = drMLot(dcMLot.ColumnName).ToString() + Next + dsWIP.Tables(tblTmpMTLLotNo).Rows.Add(drAdd) + Next + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Sub + + Private Sub iugEquipment_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugEquipment.iMESUltraGrid_InitializeLayOut + + Dim i As Integer + + Dim colShow As New Collection + + With e.Layout + 'Hide all, No Edit + + 'Equipment + For i = 0 To dsWIP.Tables(tblAreaEquipment).Columns.Count - 1 + Select Case dsWIP.Tables(tblAreaEquipment).Columns(i).ColumnName.ToUpper + Case "CHECKFLAG" + With .Bands(tblAreaEquipment).Columns("CheckFlag") + .Width = 50 + .Header.VisiblePosition = 1 + .Style = Infragistics.Win.UltraWinGrid.ColumnStyle.CheckBox + .CellAppearance.BackColor = System.Drawing.Color.White + End With + Case "EQUIPMENTNO" + With .Bands(tblAreaEquipment).Columns("EquipmentNo") + .Width = 100 + .Header.VisiblePosition = 2 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "EQUIPMENTNAME" + '[Mantis:80651]2020/10/27,Boyi,EquipmentDescription => EquipmentName + ' dsWIP.Tables(tblAreaEquipment).Columns("EquipmentName").ColumnName = "EquipmentDescription" + With .Bands(tblAreaEquipment).Columns("EquipmentName") + .Header.Caption = "EquipmentName" + .Width = 150 + .Header.VisiblePosition = 3 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "RECIPEGROUP" + With .Bands(tblAreaEquipment).Columns("RecipeGroup") + .Width = 80 + .Header.VisiblePosition = 4 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "RECIPEVERSION" + With .Bands(tblAreaEquipment).Columns("RecipeVersion") + .Width = 50 + .Header.VisiblePosition = 5 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "DESCRIPTION" + With .Bands(tblAreaEquipment).Columns("Description") + .Width = 100 + .Header.VisiblePosition = 6 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "QCLISTNO" + With .Bands(tblAreaEquipment).Columns("QCListNo") + .Header.VisiblePosition = 7 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "DISPATCHORDER" + With .Bands(tblAreaEquipment).Columns("DispatchOrder") + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + .CellAppearance.TextHAlign = Infragistics.Win.HAlign.Right + End With + Case "DISPATCHDATE" ''2020/11/05 Steven Mantis:0081316: 手動派工,新增顯示欄位 + With .Bands(tblAreaEquipment).Columns("DispatchDate") + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + .Format = "yyyy/MM/dd" + .Width = 100 + End With + '2023/07/25會議結論, 規格書規畫尚不清晰,此項目註解。 + 'Case "LOGICALRECIPENAME" '2023/07/20, 0138119: [6.0.7]recipe配方管理优化派工--配方关联设定, 19245 + ' With .Bands(tblAreaEquipment).Columns("LogicalRecipeName") + ' .Width = 80 + ' .Header.VisiblePosition = 4 + ' .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + ' .TabStop = False + ' End With + 'Case "LOGICALRECIPEVERSION" '2023/07/20, 0138119: [6.0.7]recipe配方管理优化派工--配方关联设定, 19245 + ' With .Bands(tblAreaEquipment).Columns("LogicalRecipeVersion") + ' .Width = 100 + ' .Header.VisiblePosition = 5 + ' .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + ' .TabStop = False + ' End With + Case Else + With .Bands(tblAreaEquipment).Columns(dsWIP.Tables(tblAreaEquipment).Columns(i).ColumnName.ToUpper) + .Hidden = True + End With + End Select + Next + 'Chamber + If Not dsWIP.Tables("Chamber") Is Nothing Then + For i = 0 To dsWIP.Tables("Chamber").Columns.Count - 1 + Select Case dsWIP.Tables("Chamber").Columns(i).ColumnName.ToUpper + Case "SELECT1" + With .Bands("Chamber").Columns("SELECT1") + .Width = 50 + .Header.VisiblePosition = 1 + .Style = Infragistics.Win.UltraWinGrid.ColumnStyle.CheckBox + .CellAppearance.BackColor = System.Drawing.Color.White + End With + Case "EQUIPMENTNO" + With .Bands("Chamber").Columns("EQUIPMENTNO") + .Width = 100 + .Header.VisiblePosition = 2 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "EQUIPMENTNAME" + With .Bands("Chamber").Columns("EQUIPMENTNAME") + .Header.Caption = "EquipmentName" + .Width = 150 + .Header.VisiblePosition = 3 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "DESCRIPTION" + With .Bands("Chamber").Columns("Description") + .Width = 100 + .Header.VisiblePosition = 4 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case Else + With .Bands("Chamber").Columns(dsWIP.Tables("Chamber").Columns(i).ColumnName.ToUpper) + .Hidden = True + End With + End Select + Next + End If + 'For i = 1 To colShow.Count + ' .Columns(CStr(colShow(i))).Hidden = False + ' .Columns(CStr(colShow(i))).Header.VisiblePosition = i + 'Next + + colShow.Add("CHECKFLAG") + colShow.Add("EQUIPMENTNO") + colShow.Add("EQUIPMENTNAME") + colShow.Add("RECIPEGROUP") + colShow.Add("RECIPEVERSION") + 'colShow.Add("LOGICALRECIPENAME") '2023/07/25會議結論, 規格書規畫尚不清晰,此項目註解。 + 'colShow.Add("LOGICALRECIPEVERSION") + colShow.Add("DESCRIPTION") + colShow.Add("QCLISTNO") + colShow.Add("DISPATCHDATE") + colShow.Add("DISPATCHORDER") + + 'Accessory + If Not dsWIP.Tables("AccState") Is Nothing Then + For i = 0 To dsWIP.Tables("AccState").Columns.Count - 1 + Select Case dsWIP.Tables("AccState").Columns(i).ColumnName.ToUpper + Case "SELECT" + With .Bands("Accessory").Columns("SELECT") + .Width = 50 + .Header.VisiblePosition = 1 + .Style = Infragistics.Win.UltraWinGrid.ColumnStyle.CheckBox + .CellAppearance.BackColor = System.Drawing.Color.White + End With + Case "ACCESSORYNO" + With .Bands("Accessory").Columns("AccessoryNo") + .Width = 80 + .Header.Appearance.BackColor = System.Drawing.Color.Yellow + .Header.VisiblePosition = 2 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "ACCESSORYTYPE" + With .Bands("Accessory").Columns("AccessoryType") + .Width = 80 + .Header.Appearance.BackColor = System.Drawing.Color.Yellow + .Header.VisiblePosition = 3 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "STARTTIME" + With .Bands("Accessory").Columns("StartTime") + .Width = 120 + .Header.Appearance.BackColor = System.Drawing.Color.Yellow + .Header.VisiblePosition = 4 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + .Format = "yyyy/MM/dd HH:mm:ss" + End With + Case "ACCUMULATEQTY" + With .Bands("Accessory").Columns("AccumulateQty") + .Width = 80 + .Header.Appearance.BackColor = System.Drawing.Color.Yellow + .Header.VisiblePosition = 5 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .CellAppearance.TextHAlign = Infragistics.Win.HAlign.Right + .TabStop = False + .Format = "0.######" + End With + Case "REPAIRCYCLE" + With .Bands("Accessory").Columns("RepairCycle") + .Width = 80 + .Header.Appearance.BackColor = System.Drawing.Color.Yellow + .Header.VisiblePosition = 6 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .CellAppearance.TextHAlign = Infragistics.Win.HAlign.Right + .TabStop = False + .Format = "0.######" + End With + Case Else + With .Bands("Accessory").Columns(dsWIP.Tables("AccState").Columns(i).ColumnName.ToUpper) + .Hidden = True + End With + End Select + Next + End If + + 'Recipe + 'Dim vlRecipeType As New ValueList '2023/07/25會議結論, 規格書規畫尚不清晰,此項目註解。 + 'vlRecipeType = COM_Utility.ValueListProvider.GetInstance.GetValueList("TBLPRDMACHINERECIPEDETAIL", "RECIPETYPE", True) + + If Not dsWIP.Tables("RecipeDetail") Is Nothing Then + For i = 0 To dsWIP.Tables("RecipeDetail").Columns.Count - 1 + Select Case dsWIP.Tables("RecipeDetail").Columns(i).ColumnName.ToUpper + Case "RECIPENO" + With .Bands("Recipe").Columns("RecipeNo") + .Width = 80 + .Header.Appearance.BackColor = System.Drawing.Color.Yellow + .Header.VisiblePosition = 1 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + Case "RECIPEVALUE" + With .Bands("Recipe").Columns("RecipeValue") + .Width = 100 + .Header.Appearance.BackColor = System.Drawing.Color.Yellow + .Header.VisiblePosition = 2 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .TabStop = False + End With + '2023/07/25會議結論, 規格書規畫尚不清晰,此項目註解。 + 'Case "RECIPEPARAMETERNO" '0138119: [6.0.7]recipe配方管理优化派工--配方关联设定, 2023/07/20, 19245 + ' With .Bands("Recipe").Columns("RecipeParameterNo") + ' .Width = 80 + ' .Header.Appearance.BackColor = System.Drawing.Color.Yellow + ' .Header.VisiblePosition = 1 + ' .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + ' .TabStop = False + ' End With + 'Case "RECIPETYPE" '0138119: [6.0.7]recipe配方管理优化派工--配方关联设定, 2023/07/21, 19245 + ' With .Bands("Recipe").Columns("RecipeType") + ' .Width = 80 + ' .Header.Appearance.BackColor = System.Drawing.Color.Yellow + ' .Header.VisiblePosition = 2 + ' .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + ' .TabStop = False + ' .ValueList = vlRecipeType + 'End With + + Case Else + With .Bands("Recipe").Columns(dsWIP.Tables("RecipeDetail").Columns(i).ColumnName.ToUpper) + .Hidden = True + End With + End Select + Next + End If + End With + + 'UltraGrid + iugEquipment.iMESUltraGrid.DisplayLayout.Override.AllowUpdate = Infragistics.Win.DefaultableBoolean.True + iugEquipment.iMESUltraGrid.Rows.ExpandAll(True) + + End Sub + + Private Sub iugEquipment_iMESUltraGrid_BeforeCellUpdate(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs) Handles iugEquipment.iMESUltraGrid_BeforeCellUpdate + Dim drTemp As DataRow() + Dim strType As String + Dim blnNeedSelect As Boolean + '勾選設備後,才自動勾選模治具 + If e.Cell.Column.Key.ToUpper = "CHECKFLAG" AndAlso e.NewValue = True Then + '預設選取每個類別第一個模治具 + For Each dr As DataRow In dsWIP.Tables(tblAreaEquipment).Select("EquipmentNo = '" & e.Cell.Row.Cells(1).Text & "'") + strType = "" + blnNeedSelect = True + If dr("AllowExecute") = 1 Then '可使用 + drTemp = dsWIP.Tables("AccState").Select("EquipmentNo = '" & dr("EquipmentNo") & "'") + For i = 0 To drTemp.Count - 1 + If drTemp(i)("Select") = True Then blnNeedSelect = False + Next + If drTemp.Length > 0 AndAlso blnNeedSelect = True Then + '有掛模治具 + For Each dr1 As DataRow In drTemp + If strType = "" Then + strType = dr1("AccessoryType") + dr1("Select") = True + ElseIf strType <> dr1("AccessoryType") Then + dr1("Select") = True + strType = dr1("AccessoryType") + End If + Next + End If + End If + Next + End If + End Sub + Private Sub iugEquipment_iMESUltraGrid_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles iugEquipment.iMESUltraGrid_KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub iugEquipment_iMESUltraGrid_InitializeRow(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeRowEventArgs) Handles iugEquipment.iMESUltraGrid_InitializeRow + + If e.Row.Band.Key = tblAreaEquipment Then 'Equipment + If e.Row.Cells("AllowExecute").Value = 0 Then '不可使用 + e.Row.Cells("CheckFlag").Activation = Infragistics.Win.UltraWinGrid.Activation.Disabled + e.Row.Cells("CheckFlag").Appearance.BackColor = System.Drawing.Color.Gainsboro + ElseIf e.Row.Cells("AllowExecute").Value = 1 Then '可使用 + + 'CheckFlag + If EquipmentNo = defString Then + Else + '以機台下貨,關閉勾選介面. + e.Row.Cells("CheckFlag").Activation = Infragistics.Win.UltraWinGrid.Activation.Disabled + e.Row.Cells("CheckFlag").Appearance.BackColor = System.Drawing.Color.Gainsboro + End If + End If + End If + '子設備 + 'TsungYu 2021/06/09 + If e.Row.Band.Key = "Chamber" Then 'Equipment + If e.Row.Cells("AllowExecute").Value = 0 Then '不可使用 + e.Row.Cells("Select1").Activation = Infragistics.Win.UltraWinGrid.Activation.Disabled + e.Row.Cells("Select1").Appearance.BackColor = System.Drawing.Color.Gainsboro + ElseIf e.Row.Cells("AllowExecute").Value = 1 Then '可使用 + 'CheckFlag + If EquipmentNo = defString Then + Else + e.Row.Cells("Select1").Activation = Infragistics.Win.UltraWinGrid.Activation.Disabled + e.Row.Cells("Select1").Appearance.BackColor = System.Drawing.Color.Gainsboro + End If + End If + End If + If e.Row.Band.Key.ToUpper = "ACCESSORY" Then '模治具 + '2014/11/24 Kevin,如果是產品-作業站-模治具所設定的模治具則改變底色 + If Not dsWIP.Tables("PRDAccessory") Is Nothing Then + Dim drSelPRD As DataRow() + drSelPRD = dsWIP.Tables("PRDAccessory").Select("AccessoryNo = '" & e.Row.Cells("AccessoryNo").Value & "'") + If drSelPRD.Length > 0 Then + e.Row.Appearance.BackColor = System.Drawing.Color.Yellow + Else + '找不到的話再看一次模治具類別 + drSelPRD = dsWIP.Tables("PRDAccessory").Select("AccessoryType = '" & e.Row.Cells("AccessoryType").Value & "' And AccessoryNo ='*'") + If drSelPRD.Length > 0 Then + e.Row.Appearance.BackColor = System.Drawing.Color.Yellow + End If + End If + End If + End If + + End Sub + + + Private Sub iugEquipment_iMESUltraGrid_AfterCellUpdate(sender As System.Object, e As Infragistics.Win.UltraWinGrid.CellEventArgs) Handles iugEquipment.iMESUltraGrid_AfterCellUpdate + + '如有點選模製具則將設備自動勾選 + If e.Cell.Column.Key.ToUpper = "SELECT" AndAlso e.Cell.Row.Cells("SELECT").Value Then + drSelE = dsWIP.Tables(tblAreaEquipment).Select("EquipmentNo = '" & e.Cell.Row.Cells("EquipmentNo").Value & "'") + For Each dr As DataRow In drSelE + dr("CHECKFLAG") = True + Next + End If + + If e.Cell.Column.Key.ToUpper = "CHECKFLAG" AndAlso e.Cell.Row.Cells("CHECKFLAG").Value = False Then + drSelE = dsWIP.Tables("AccState").Select("EquipmentNo = '" & iugEquipment.iMESUltraGrid.ActiveRow.Cells("EquipmentNo").Value & "'") + For Each dr As DataRow In drSelE + dr("Select") = False + Next + + '2021/9/14 Mantis:0099587 當取消勾選設備時,此設備已開立的點檢單應刪除 + '自動開立點檢務單 + Call funCheckEQPQCTask(e.Cell.Row.Cells("EquipmentNo").Value, True) + + If blnByEQP = True Then + DeleteTmpMTLLotNo(e.Cell.Row.Cells("EquipmentNo").Value) + End If + + Else + If blnByEQP = True Then + Call LoadMaterialByEquipment(e.Cell.Row.Cells("EquipmentNo").Value) + End If + End If + + If Not dsWIP.Tables("Chamber") Is Nothing Then + If dsWIP.Tables("Chamber").Rows.Count > 0 Then + '如有點選子設備則將設備自動勾選 + If e.Cell.Column.Key.ToUpper = "SELECT1" AndAlso e.Cell.Row.Cells("SELECT1").Value Then + If Not String.IsNullOrEmpty(e.Cell.Row.Cells("BELONGEQUIPMENTNO").Value.ToString) Then + drSelE = dsWIP.Tables(tblAreaEquipment).Select("EquipmentNo = '" & e.Cell.Row.Cells("BelongEquipmentNo").Value & "'") + For Each dr As DataRow In drSelE + dr("CHECKFLAG") = True + Next + End If + End If + '設備取消時子設備的勾選也自動取消 + If e.Cell.Column.Key.ToUpper = "CHECKFLAG" AndAlso e.Cell.Row.Cells("CHECKFLAG").Value = False Then + drSelE = dsWIP.Tables("Chamber").Select("BelongEquipmentNo = '" & iugEquipment.iMESUltraGrid.ActiveRow.Cells("EquipmentNo").Value & "'") + For Each dr As DataRow In drSelE + dr("SELECT1") = False + Next + '設備勾選時自動勾選子設備 + ElseIf e.Cell.Column.Key.ToUpper = "CHECKFLAG" AndAlso e.Cell.Row.Cells("CHECKFLAG").Value Then + drSelE = dsWIP.Tables("Chamber").Select("BelongEquipmentNo = '" & iugEquipment.iMESUltraGrid.ActiveRow.Cells("EquipmentNo").Value & "' and AllowExecute = 1") + For Each dr As DataRow In drSelE + dr("SELECT1") = True + Next + End If + End If + End If + ' 2016/01/27 YF, 取得設備參數值 + e.Cell.Row.Update() + + funGetEquipmentRecipe() + + + End Sub + + Private Sub iugEquipment_iMESUltraGrid_CellChange(sender As Object, e As Infragistics.Win.UltraWinGrid.CellEventArgs) Handles iugEquipment.iMESUltraGrid_CellChange + ' CheckFlag被點選時, 可立即將結果異動回DataTable + e.Cell.Row.Update() + Me.iugEquipment.iMESUltraGrid.ActiveRow = e.Cell.Row + End Sub + + Private Sub iugKeyIn_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugKeyIn.iMESUltraGrid_InitializeLayOut + + With e.Layout + With .Bands("KeyIn").Columns("AttribNo") + .Header.Caption = "AttribNo" + .Width = 90 + .Header.VisiblePosition = 1 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .CellAppearance.BackColor = System.Drawing.Color.Gainsboro + .TabStop = False + End With + With .Bands("KeyIn").Columns("AttribName") + .Header.Caption = "AttribName" + .Width = 150 + .Header.VisiblePosition = 2 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .CellAppearance.BackColor = System.Drawing.Color.Gainsboro + .TabStop = False + End With + With .Bands("KeyIn").Columns("AttribValue") + .Header.Caption = "AttribValue" + .Width = 130 + .Header.VisiblePosition = 3 + End With + '2015-12-18, Joe, Add + With .Bands("KeyIn").Columns("QCItemNo") + .Header.Caption = "QCItemNo" + .Width = 90 + .Header.VisiblePosition = 4 + .CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly + .CellAppearance.BackColor = System.Drawing.Color.Gainsboro + .TabStop = False + End With + With .Bands("KeyIn").Columns("AttribSequence") + .Hidden = True + End With + With .Bands("KeyIn").Columns("InputType") + .Hidden = True + End With + With .Bands("KeyIn").Columns("DataType") + .Hidden = True + End With + With .Bands("KeyIn").Columns("ValueType") + .Hidden = True + End With + + .Bands("KeyIn").Columns("OrgAttribValue").Hidden = True ' 2016/01/27 YF + End With + + 'UltraGrid + iugKeyIn.iMESUltraGrid.DisplayLayout.Override.AllowUpdate = Infragistics.Win.DefaultableBoolean.True + + End Sub + + Private Sub iugKeyIn_iMESUltraGrid_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles iugKeyIn.iMESUltraGrid_KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub iugKeyIn_iMESUltraGrid_InitializeRow(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeRowEventArgs) Handles iugKeyIn.iMESUltraGrid_InitializeRow + Dim strAttribValue As String + + Try + + 'InputType=1 清單選擇 + If e.Row.Cells("InputType").Value = 1 Then + e.Row.Cells("AttribValue").Style = ColumnStyle.Button + e.Row.Cells("AttribValue").Appearance.BackColor = System.Drawing.Color.Pink + ElseIf e.Row.Cells("DataType").Value = 3 Then + e.Row.Cells("AttribValue").Style = ColumnStyle.DateTime + e.Row.Cells("AttribValue").Editor = editor + e.Row.Cells("AttribValue").Appearance.BackColor = Color.White + End If + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Sub + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Sub + End Try + + End Sub + + Private Sub iugKeyIn_iMESUltraGrid_ClickCellButton(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.CellEventArgs) Handles iugKeyIn.iMESUltraGrid_ClickCellButton + + Dim intValueType As Integer + + Cursor.Current = Cursors.WaitCursor + + Try + + intValueType = iugKeyIn.iMESUltraGrid.ActiveRow.Cells("ValueType").Value + + If intValueType = 3 OrElse intValueType = 1 Then 'Reference System Parameter / Assign Valid Value + If Not IsNothing(dsWIP.Tables(strDefaultValue)) Then + dsWIP.Tables.Remove(strDefaultValue) + End If + + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("elementno", "PropertyType", "String", iugKeyIn.iMESUltraGrid.ActiveRow.Cells("AttribNo").Value, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + OutXml = InvokeSrv("wsSYS.LoadElementValue", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '//取出Data + strDefaultValue = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadelementvalue").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadelementvalue").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadelementvalue").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" And XmlData <> "fail" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + + Dim fSearch As New frmCOMSearch + '如果 PropertyNo 的有效性檢查來自 MESParameter,則取出有效值提供選擇 + fSearch.dvSearch = dsWIP.Tables(strDefaultValue).DefaultView + fSearch.strFindColumnName = dsWIP.Tables(strDefaultValue).Columns(0).ColumnName + '20221214,13871,右鍵 儲存設計 需要使用Owner(程式碼由程序建立) + fSearch.ShowDialog(Me) + fSearch.Dispose() + + If Not drSearch Is Nothing Then + If Not IsDBNull(drSearch(0).ToString) Then + iugKeyIn.iMESUltraGrid.ActiveRow.Cells("AttribValue").Value = drSearch(0).ToString + End If + End If + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Sub + End If + + End If + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Sub + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Sub + End Try + + End Sub + + Private Sub iugSubOP_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubOP.iMESUltraGrid_InitializeLayOut + + Dim i As Integer + + With e.Layout + For i = 0 To dsWIP.Tables(tblSubOP).Columns.Count - 1 + Select Case dsWIP.Tables(tblSubOP).Columns(i).ColumnName.ToUpper + Case "SUBOPSEQUENCE" + With .Bands(tblSubOP).Columns("SubOPSequence") + .Header.Caption = "SubOPSequence" + .Width = 50 + .Hidden = False + .Header.VisiblePosition = 1 + End With + Case "SUBOPNO" + With .Bands(tblSubOP).Columns("SubOPNo") + .Header.Caption = "SubOPNo" + .Width = 80 + .Header.VisiblePosition = 2 + End With + Case "SUBOPNAME" + With .Bands(tblSubOP).Columns("SubOPName") + .Header.Caption = "SubOPName" + .Width = 180 + .Header.VisiblePosition = 3 + End With + Case "CREATOR" + With .Bands(tblSubOP).Columns("Creator") + .Header.Caption = "Creator" + .Width = 70 + .Hidden = True + .Header.VisiblePosition = 4 + End With + Case "CREATEDATE" + With .Bands(tblSubOP).Columns("CreateDate") + .Width = 120 + .Header.VisiblePosition = 5 + .Hidden = True + .Format = "yyyy/MM/dd HH:mm:ss" + End With + Case Else + With .Bands(tblSubOP).Columns(dsWIP.Tables(tblSubOP).Columns(i).ColumnName.ToUpper) + .Hidden = True + End With + End Select + Next + + End With + + End Sub + +#End Region + +#Region "Equipment" + + Private Sub txtEquipmentNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEquipmentNo.Enter + txtEquipmentNo.SelectAll() + End Sub + Private Sub txtEquipmentNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEquipmentNo.KeyPress + + Cursor.Current = Cursors.WaitCursor + + '強制使用機台,故不提供此功能 + + If EquipmentNo <> defString Then Exit Sub + + If e.KeyChar = Convert.ToChar(13) Then + If txtEquipmentNo.Text.Trim <> "" Then + Dim drSel() As DataRow + Dim strEQPNo As String + strEQPNo = txtEquipmentNo.Text.Trim.ToUpper + '檢查EquipmentNo是否存在 + drSel = dsWIP.Tables(tblAreaEquipment).Select("EquipmentNo='" & strEQPNo & "'") + If drSel.Length = 0 Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203072", "[%EquipmentNo%]:" & strEQPNo & " [%is not in area%]:" & txtAreaNo.Text & "!"), MsgBoxStyle.Exclamation, Me.Text) + txtEquipmentNo.SelectAll() + Exit Sub + Else + If drSel(0)("AllowExecute") = 1 Then '可使用 + drSel(0)("CheckFlag") = True + If blnByEQP = True Then + Call LoadMaterialByEquipment(strEQPNo) + End If + + Else '不可使用 + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203072", "[%EquipmentNo%]:" & strEQPNo & " [%is not available%] " & Chr(10) + Chr(13) & drSel(0)("Description")), MsgBoxStyle.Exclamation, Me.Text) + txtEquipmentNo.SelectAll() + Exit Sub + End If + End If + + 'Focus + Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow + ugrRow = FindRecordPosition(iugEquipment, "EquipmentNo", strEQPNo) + If Not ugrRow Is Nothing Then + iugEquipment.iMESUltraGrid.ActiveRow = ugrRow + iugEquipment.iMESUltraGrid.ActiveRow.Selected = True + End If + + txtEquipmentNo.Text = "" + txtEquipmentNo.Focus() + End If + End If + + Cursor.Current = Cursors.Default + + End Sub + + +#End Region + +#Region "Load functions" + + Private Function funLoadLotState() As Integer + + funLoadLotState = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", LotNo, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadLotBasisJoinState", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '讀取取出資料表之名稱 + tblLotState = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadlotbasisjoinstate").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadlotbasisjoinstate").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '取出Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadlotbasisjoinstate").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + If dsWIP.Tables(tblLotState).Rows.Count > 0 Then + If dsWIP.Tables(tblLotState).Rows(0)("MaterialOption").ToString = "1" Then + blnByEQP = True + End If + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadLotState = 0 + + End Function + + Private Function funLoadTemp_AttribJoinBasis() As Integer + + funLoadTemp_AttribJoinBasis = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", LotNo, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadTemp_AttribJoinBasis", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblTAttrib = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadtemp_attrib").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadtemp_attrib").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadtemp_attrib").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + Call funAddValueList_Attrib() + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadTemp_AttribJoinBasis = 0 + + + End Function + + Private Function funLoadTemp_Material() As Integer + + funLoadTemp_Material = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", LotNo, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadTemp_Material", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblTMaterial = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadtemp_material").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadtemp_material").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadtemp_material").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + '新增OrgMaterialNo,紀錄原來的主物料用 + Dim colOrgMaterialNo As New DataColumn + colOrgMaterialNo.ColumnName = "OrgMaterialNo" + colOrgMaterialNo.DataType = System.Type.GetType("System.String") + colOrgMaterialNo.DefaultValue = 0 + colOrgMaterialNo.AllowDBNull = False + dsWIP.Tables(tblTMaterial).Columns.Add(colOrgMaterialNo) + + '加入標準用量欄位 + Dim colStdQty As New DataColumn + colStdQty.ColumnName = "StdUseQty" + colStdQty.DataType = System.Type.GetType("System.Decimal") + colStdQty.DefaultValue = 0 + colStdQty.AllowDBNull = False + dsWIP.Tables(tblTMaterial).Columns.Add(colStdQty) + + '計算標準使用量 + Dim decCurQty, decStdQty As Decimal + Dim i As Integer + + 'Rows(0)一定會有資料. + decCurQty = dsWIP.Tables(tblLotState).Rows(0)("CurQty") + For i = 0 To dsWIP.Tables(tblTMaterial).Rows.Count - 1 + decStdQty = decCurQty * dsWIP.Tables(tblTMaterial).Rows(i)("StdQty") * (1 + dsWIP.Tables(tblTMaterial).Rows(i)("DecreaseRate")) + dsWIP.Tables(tblTMaterial).Rows(i)("StdUseQty") = Format(decStdQty, "0.######") + + '紀錄原來的主物料 + dsWIP.Tables(tblTMaterial).Rows(i)("OrgMaterialNo") = dsWIP.Tables(tblTMaterial).Rows(i)("MaterialNo") + Next + + dsWIP.Tables(tblTMaterial).Columns("MaterialLevel").ColumnName = "MaterialLevelShow" + + '加入可供使用者點擊搜尋的欄位 + dsWIP.Tables(tblTMaterial).Columns.Add(New DataColumn("MTLLotNoSearch", System.Type.GetType("System.String"))) + dsWIP.Tables(tblTMaterial).DefaultView.RowFilter = "MaterialNo = OrgMaterialNo" + dsWIP.Tables(tblTMaterial).DefaultView.Sort = "MaterialType,OrgMaterialNo,MaterialNo" + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadTemp_Material = 0 + + + End Function + + Private Function funLoadAvailableEquipment(ByRef LotNo As String) As Integer + + funLoadAvailableEquipment = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", LotNo, "") + strParameter += CombineXMLParameter("getrecipe", "GetRecipe", "Boolean", True, "") + strParameter += CombineXMLParameter("getaccessory", "GetAccessory", "Boolean", blnGetAccessory, "") + strParameter += CombineXMLParameter("multiqclist", "MultiQCList", "Boolean", True, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadAvailableEquipment_All", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblAreaEquipment = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadavailableequipment_all").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadavailableequipment_all").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadavailableequipment_all").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + '2023/12/21,Ning,154124: L_CI_GEN [語系未處理] 挑選設備後,彈窗訊息顯示 LoadPort is full. + For Each drEQP As DataRow In dsWIP.Tables(tblAreaEquipment).Rows + If drEQP("Description").ToString <> "" Then + drEQP("Description") = ChgTranslateName_Content(drEQP("Description")) + End If + Next + + '加入Check Field + Dim colCheckFlag As New DataColumn + colCheckFlag.ColumnName = "CheckFlag" + colCheckFlag.DataType = System.Type.GetType("System.Boolean") + colCheckFlag.DefaultValue = False + colCheckFlag.AllowDBNull = False + dsWIP.Tables(tblAreaEquipment).Columns.Add(colCheckFlag) + '加入LoadPort + Dim colPort As New DataColumn + colPort.ColumnName = "LoadPort" + colPort.DataType = System.Type.GetType("System.String") + dsWIP.Tables(tblAreaEquipment).Columns.Add(colPort) + + '加入點檢識別欄位 + dsWIP.Tables(tblAreaEquipment).Columns.Add(New DataColumn("QCType", System.Type.GetType("System.Decimal"))) + dsWIP.Tables(tblAreaEquipment).Columns.Add(New DataColumn("QCFinish", System.Type.GetType("System.Decimal"))) + + '開放可編輯 + dsWIP.Tables(tblAreaEquipment).DefaultView.AllowEdit = True + + If Not dsWIP.Tables("Chamber") Is Nothing Then + '加入勾選的按鈕 + Dim colChamberCheckFlag As New DataColumn + colChamberCheckFlag.ColumnName = "SELECT1" + colChamberCheckFlag.DataType = System.Type.GetType("System.Boolean") + colChamberCheckFlag.DefaultValue = False + colChamberCheckFlag.AllowDBNull = False + dsWIP.Tables("Chamber").Columns.Add(colChamberCheckFlag) + dsWIP.Tables(tblAreaEquipment).DefaultView.AllowEdit = True + End If + 'Kevin 20131223,如有模治具則開放用選取的方式 + If Not dsWIP.Tables("AccState") Is Nothing Then + '加入勾選的按鈕 + Dim colSelect As New DataColumn + colSelect.ColumnName = "Select" + colSelect.DataType = System.Type.GetType("System.Boolean") + colSelect.DefaultValue = False + colSelect.AllowDBNull = False + dsWIP.Tables("AccState").Columns.Add(colSelect) + + dsWIP.Tables("AccState").DefaultView.Sort = "AccessoryType,AccessoryNo" + Dim strType As String = "" + Dim drTemp As DataRow() + + '預設選取每個類別第一個模治具 + 'For Each dr As DataRow In dsWIP.Tables(tblAreaEquipment).Rows + ' strType = "" + ' If dr("AllowExecute") = 1 Then '可使用 + ' drTemp = dsWIP.Tables("AccState").Select("EquipmentNo = '" & dr("EquipmentNo") & "'") + ' If drTemp.Length > 0 Then + ' '有掛模治具 + ' For Each dr1 As DataRow In drTemp + ' If strType = "" Then + ' strType = dr1("AccessoryType") + ' dr1("Select") = True + ' ElseIf strType <> dr1("AccessoryType") Then + ' dr1("Select") = True + ' strType = dr1("AccessoryType") + ' End If + ' Next + ' End If + ' End If + 'Next + '2020/02/26 Grace Mantis 67753 取得此批號於此作業站上的派工資料 + Call funLoadWIPEQPDispatchState(LotNo:=LotNo, OPNo:=txtOPNo.Text) + '增加顯示欄位:派工日期、派工順序 + If dsWIP.Tables(tblAreaEquipment).Columns.Contains("DispatchOrder") Then + dsWIP.Tables(tblAreaEquipment).Columns.Remove("DispatchOrder") + End If + Dim colDispatchDate As New DataColumn + colDispatchDate.ColumnName = "DispatchDate" + colDispatchDate.DataType = System.Type.GetType("System.DateTime") + dsWIP.Tables(tblAreaEquipment).Columns.Add(colDispatchDate) + Dim colDispatchOrder As New DataColumn + colDispatchOrder.ColumnName = "DispatchOrder" + colDispatchOrder.DataType = System.Type.GetType("System.String") + dsWIP.Tables(tblAreaEquipment).Columns.Add(colDispatchOrder) + + If Not IsNothing(dsTemp.Tables(tblEQPDispatchState)) Then + If dsTemp.Tables(tblEQPDispatchState).Rows.Count > 0 Then + Dim strCheckInDate As String = Now.ToString("yyyy/MM/dd") 'Check In 日期 + '2020/11/05 Steven Mantis:0081316: '增加顯示欄位:派工日期、派工順序 + For i As Integer = 0 To dsWIP.Tables(tblAreaEquipment).Rows.Count - 1 + '1. 檢查是否有派工設備 + Dim drSelEQP As DataRow() = dsTemp.Tables(tblEQPDispatchState).Select("EquipmentNo = '" & + dsWIP.Tables(tblAreaEquipment).Rows(i)("EquipmentNo").ToString() & "'And LotNo = '" & txtLotNo.Text & "'And DispatchDate = '" & strCheckInDate & "'") + If drSelEQP.Count > 0 Then '優先顯示派工日期為當天 + dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchOrder") = drSelEQP(0)("DispatchOrder").ToString + If drSelEQP(0)("DispatchDate").ToString <> "" Then + dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchDate") = drSelEQP(0)("DispatchDate") + End If + Else '如非當天派工日期再顯示 + Dim drSelEQP2 As DataRow() = dsTemp.Tables(tblEQPDispatchState).Select("EquipmentNo = '" & + dsWIP.Tables(tblAreaEquipment).Rows(i)("EquipmentNo").ToString() & "'And LotNo = '" & txtLotNo.Text & "'") + If drSelEQP2.Length > 0 Then + dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchOrder") = drSelEQP2(0)("DispatchOrder").ToString + If drSelEQP2(0)("DispatchDate").ToString <> "" Then + dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchDate") = drSelEQP2(0)("DispatchDate") + End If + End If + End If + Next + End If + End If + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadAvailableEquipment = 0 + + + End Function + + '2023/07/25會議結論, 規格書規畫尚不清晰,此項目註解。 + '0138119: [6.0.7]recipe配方管理优化派工--配方关联设定, 2023-07-20, 19245 + 'Private Function funLoadAvailableEquipmentInfo(ByRef LotNo As String) As Integer + + ' funLoadAvailableEquipmentInfo = -1 + + ' '組InXml的字串 + ' strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + ' strParameter = CombineXMLParameter("lotno", "LotNo", "String", LotNo, "") + ' strParameter += CombineXMLParameter("getrecipe", "GetRecipe", "Boolean", True, "") + ' strParameter += CombineXMLParameter("getaccessory", "GetAccessory", "Boolean", blnGetAccessory, "") + ' strParameter += CombineXMLParameter("multiqclist", "MultiQCList", "Boolean", True, "") + ' InXml = CombineXMLRequest(strIdentity, strParameter) + + ' Try + ' OutXml = InvokeSrv("wsWIP.LoadAvailableEquipmentInfo", InXml) + + ' Dim XmlDoc As New XmlDocument + ' XmlDoc.LoadXml(OutXml) + ' If ChkExecutionSuccess(XmlDoc) Then + ' tblAreaEquipment = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadavailableequipmentinfo").Item(0).SelectNodes("name").Item(0).InnerXml + ' '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + ' XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadavailableequipmentinfo").Item(0).SelectNodes("schema").Item(0).InnerXml + ' If XmlSchema <> "" Then + ' '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + ' tmpStringReader = New System.IO.StringReader(XmlSchema) + ' dsWIP.ReadXmlSchema(tmpStringReader) + ' tmpStringReader.Close() + ' End If + ' XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadavailableequipmentinfo").Item(0).SelectNodes("value").Item(0).InnerXml + ' If XmlData <> "" Then + ' tmpStringReader = New System.IO.StringReader(XmlData) + ' dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + ' tmpStringReader.Close() + ' End If + + ' '加入Check Field + ' Dim colCheckFlag As New DataColumn + ' colCheckFlag.ColumnName = "CheckFlag" + ' colCheckFlag.DataType = System.Type.GetType("System.Boolean") + ' colCheckFlag.DefaultValue = False + ' colCheckFlag.AllowDBNull = False + ' dsWIP.Tables(tblAreaEquipment).Columns.Add(colCheckFlag) + ' '加入LoadPort + ' Dim colPort As New DataColumn + ' colPort.ColumnName = "LoadPort" + ' colPort.DataType = System.Type.GetType("System.String") + ' dsWIP.Tables(tblAreaEquipment).Columns.Add(colPort) + + ' '加入點檢識別欄位 + ' dsWIP.Tables(tblAreaEquipment).Columns.Add(New DataColumn("QCType", System.Type.GetType("System.Decimal"))) + ' dsWIP.Tables(tblAreaEquipment).Columns.Add(New DataColumn("QCFinish", System.Type.GetType("System.Decimal"))) + + ' '開放可編輯 + ' dsWIP.Tables(tblAreaEquipment).DefaultView.AllowEdit = True + + ' If Not dsWIP.Tables("Chamber") Is Nothing Then + ' '加入勾選的按鈕 + ' Dim colChamberCheckFlag As New DataColumn + ' colChamberCheckFlag.ColumnName = "SELECT1" + ' colChamberCheckFlag.DataType = System.Type.GetType("System.Boolean") + ' colChamberCheckFlag.DefaultValue = False + ' colChamberCheckFlag.AllowDBNull = False + ' dsWIP.Tables("Chamber").Columns.Add(colChamberCheckFlag) + ' dsWIP.Tables(tblAreaEquipment).DefaultView.AllowEdit = True + ' End If + ' 'Kevin 20131223,如有模治具則開放用選取的方式 + ' If Not dsWIP.Tables("AccState") Is Nothing Then + ' '加入勾選的按鈕 + ' Dim colSelect As New DataColumn + ' colSelect.ColumnName = "Select" + ' colSelect.DataType = System.Type.GetType("System.Boolean") + ' colSelect.DefaultValue = False + ' colSelect.AllowDBNull = False + ' dsWIP.Tables("AccState").Columns.Add(colSelect) + + ' dsWIP.Tables("AccState").DefaultView.Sort = "AccessoryType,AccessoryNo" + ' Dim strType As String = "" + ' Dim drTemp As DataRow() + + ' '預設選取每個類別第一個模治具 + ' 'For Each dr As DataRow In dsWIP.Tables(tblAreaEquipment).Rows + ' ' strType = "" + ' ' If dr("AllowExecute") = 1 Then '可使用 + ' ' drTemp = dsWIP.Tables("AccState").Select("EquipmentNo = '" & dr("EquipmentNo") & "'") + ' ' If drTemp.Length > 0 Then + ' ' '有掛模治具 + ' ' For Each dr1 As DataRow In drTemp + ' ' If strType = "" Then + ' ' strType = dr1("AccessoryType") + ' ' dr1("Select") = True + ' ' ElseIf strType <> dr1("AccessoryType") Then + ' ' dr1("Select") = True + ' ' strType = dr1("AccessoryType") + ' ' End If + ' ' Next + ' ' End If + ' ' End If + ' 'Next + ' '2020/02/26 Grace Mantis 67753 取得此批號於此作業站上的派工資料 + ' Call funLoadWIPEQPDispatchState(LotNo:=LotNo, OPNo:=txtOPNo.Text) + ' '增加顯示欄位:派工日期、派工順序 + ' If dsWIP.Tables(tblAreaEquipment).Columns.Contains("DispatchOrder") Then + ' dsWIP.Tables(tblAreaEquipment).Columns.Remove("DispatchOrder") + ' End If + ' Dim colDispatchDate As New DataColumn + ' colDispatchDate.ColumnName = "DispatchDate" + ' colDispatchDate.DataType = System.Type.GetType("System.DateTime") + ' dsWIP.Tables(tblAreaEquipment).Columns.Add(colDispatchDate) + ' Dim colDispatchOrder As New DataColumn + ' colDispatchOrder.ColumnName = "DispatchOrder" + ' colDispatchOrder.DataType = System.Type.GetType("System.String") + ' dsWIP.Tables(tblAreaEquipment).Columns.Add(colDispatchOrder) + + ' If Not IsNothing(dsTemp.Tables(tblEQPDispatchState)) Then + ' If dsTemp.Tables(tblEQPDispatchState).Rows.Count > 0 Then + ' Dim strCheckInDate As String = Now.ToString("yyyy/MM/dd") 'Check In 日期 + ' '2020/11/05 Steven Mantis:0081316: '增加顯示欄位:派工日期、派工順序 + ' For i As Integer = 0 To dsWIP.Tables(tblAreaEquipment).Rows.Count - 1 + ' '1. 檢查是否有派工設備 + ' Dim drSelEQP As DataRow() = dsTemp.Tables(tblEQPDispatchState).Select("EquipmentNo = '" & + ' dsWIP.Tables(tblAreaEquipment).Rows(i)("EquipmentNo").ToString() & "'And LotNo = '" & txtLotNo.Text & "'And DispatchDate = '" & strCheckInDate & "'") + ' If drSelEQP.Count > 0 Then '優先顯示派工日期為當天 + ' dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchOrder") = drSelEQP(0)("DispatchOrder").ToString + ' If drSelEQP(0)("DispatchDate").ToString <> "" Then + ' dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchDate") = drSelEQP(0)("DispatchDate") + ' End If + ' Else '如非當天派工日期再顯示 + ' Dim drSelEQP2 As DataRow() = dsTemp.Tables(tblEQPDispatchState).Select("EquipmentNo = '" & + ' dsWIP.Tables(tblAreaEquipment).Rows(i)("EquipmentNo").ToString() & "'And LotNo = '" & txtLotNo.Text & "'") + ' If drSelEQP2.Length > 0 Then + ' dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchOrder") = drSelEQP2(0)("DispatchOrder").ToString + ' If drSelEQP2(0)("DispatchDate").ToString <> "" Then + ' dsWIP.Tables(tblAreaEquipment).Rows(i)("DispatchDate") = drSelEQP2(0)("DispatchDate") + ' End If + ' End If + ' End If + ' Next + ' End If + ' End If + ' End If + ' Else + ' ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + ' Exit Function + ' End If + + ' XmlDoc = Nothing + + ' Catch ex As iMESException.MESException + ' ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + ' Exit Function + ' Catch ex As Exception + ' ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + ' Exit Function + ' End Try + + ' funLoadAvailableEquipmentInfo = 0 + + + 'End Function + + Private Function funLoadAvailableEquipment_Chamber(ByRef LotNo As String) As Integer + + funLoadAvailableEquipment_Chamber = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", LotNo, "") + strParameter += CombineXMLParameter("getrecipe", "GetRecipe", "Boolean", True, "") + strParameter += CombineXMLParameter("getaccessory", "GetAccessory", "Boolean", blnGetAccessory, "") + strParameter += CombineXMLParameter("multiqclist", "MultiQCList", "Boolean", True, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + ' 2016 YF, OutXml = wsWIP.LoadAvailableEquipment_All(InXml) + OutXml = InvokeSrv("wsWIP.LoadAvailableEquipment_All", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblAreaEquipment = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadavailableequipment_all").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadavailableequipment_all").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadavailableequipment_all").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + '加入Check Field + Dim colCheckFlag As New DataColumn + colCheckFlag.ColumnName = "CheckFlag" + colCheckFlag.DataType = System.Type.GetType("System.Boolean") + colCheckFlag.DefaultValue = False + colCheckFlag.AllowDBNull = False + dsWIP.Tables(tblAreaEquipment).Columns.Add(colCheckFlag) + '加入LoadPort + Dim colPort As New DataColumn + colPort.ColumnName = "LoadPort" + colPort.DataType = System.Type.GetType("System.String") + dsWIP.Tables(tblAreaEquipment).Columns.Add(colPort) + + '加入點檢識別欄位 + dsWIP.Tables(tblAreaEquipment).Columns.Add(New DataColumn("QCType", System.Type.GetType("System.Decimal"))) + dsWIP.Tables(tblAreaEquipment).Columns.Add(New DataColumn("QCFinish", System.Type.GetType("System.Decimal"))) + + '開放可編輯 + dsWIP.Tables(tblAreaEquipment).DefaultView.AllowEdit = True + + 'Kevin 20131223,如有模治具則開放用選取的方式 + If Not dsWIP.Tables("AccState") Is Nothing Then + '加入勾選的按鈕 + Dim colSelect As New DataColumn + colSelect.ColumnName = "Select" + colSelect.DataType = System.Type.GetType("System.Boolean") + colSelect.DefaultValue = False + colSelect.AllowDBNull = False + dsWIP.Tables("AccState").Columns.Add(colSelect) + + dsWIP.Tables("AccState").DefaultView.Sort = "AccessoryType,AccessoryNo" + Dim strType As String = "" + Dim drTemp As DataRow() + + '預設選取每個類別第一個模治具 + 'For Each dr As DataRow In dsWIP.Tables(tblAreaEquipment).Rows + ' strType = "" + ' If dr("AllowExecute") = 1 Then '可使用 + ' drTemp = dsWIP.Tables("AccState").Select("EquipmentNo = '" & dr("EquipmentNo") & "'") + ' If drTemp.Length > 0 Then + ' '有掛模治具 + ' For Each dr1 As DataRow In drTemp + ' If strType = "" Then + ' strType = dr1("AccessoryType") + ' dr1("Select") = True + ' ElseIf strType <> dr1("AccessoryType") Then + ' dr1("Select") = True + ' strType = dr1("AccessoryType") + ' End If + ' Next + ' End If + ' End If + 'Next + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadAvailableEquipment_Chamber = 0 + + + End Function + Private Function funGetShift() As Integer + + funGetShift = -1 + + Dim strShiftNo As String = "N/A" + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("userno", "UserNo", "String", UserId, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsUSR.GetShift", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '取出ShiftNo + If XmlDoc.GetElementsByTagName("shiftno").Item(0).SelectNodes("value").Count > 0 Then + strShiftNo = XmlDoc.DocumentElement.GetElementsByTagName("shiftno").Item(0).SelectNodes("value").Item(0).InnerText + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + txtShiftNo.Text = strShiftNo + + funGetShift = 0 + + End Function + + Private Function funGetOPDescription(ByRef LotNo As String) As Integer + + funGetOPDescription = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", LotNo, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.GetLotOPDescription", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + If XmlDoc.GetElementsByTagName("opdescription").Count > 0 Then + If XmlDoc.GetElementsByTagName("opdescription").Item(0).SelectNodes("value").Count > 0 Then + txtOPDescription.Text = XmlDoc.DocumentElement.GetElementsByTagName("opdescription").Item(0).SelectNodes("value").Item(0).InnerText + End If + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funGetOPDescription = 0 + + End Function + + Private Function funLoadSubOP() As Integer + + funLoadSubOP = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + + '用opreference決定現在要用產品 or Module去抓,2011/04/08,by Sherry + If dsWIP.Tables(tblLotState).Rows(0)("OPReference") = 1 Then 'Module + strParameter = CombineXMLParameter("productno", "ProductNo", "String", CInput(dsWIP.Tables(tblLotState).Rows(0)("ModuleNo").ToString), "") + strParameter += CombineXMLParameter("productversion", "ProductVersion", "String", CInput(dsWIP.Tables(tblLotState).Rows(0)("ModuleVersion").ToString), "") + Else 'Product + strParameter = CombineXMLParameter("productno", "ProductNo", "String", txtProductNo.Text, "") + strParameter += CombineXMLParameter("productversion", "ProductVersion", "String", dsWIP.Tables(tblLotState).Rows(0)("ProductVersion").ToString, "") + End If + strParameter += CombineXMLParameter("opno", "OPNo", "String", CInput(txtOPNo.Text), "") '將OPNo加上CInput轉換特殊字元,2010/04/08,by yumei + + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsPRD.LoadPRDOpSubOp", InXml) + + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '讀取取出資料表之名稱 + tblSubOP = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadprdopsubop").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadprdopsubop").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '取出Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadprdopsubop").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + dsWIP.Tables(tblSubOP).DefaultView.Sort = "SubOPSequence,SubOPNo" + iugSubOP.iMESUltraGrid.DataSource = dsWIP.Tables(tblSubOP).DefaultView + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadSubOP = 0 + + End Function + + Private Function funLoadLotLoginState() As Integer + + funLoadLotLoginState = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + strParameter += CombineXMLParameter("opno", "OPNo", "String", CInput(dsWIP.Tables(tblLotState).Rows(0)("OPNo").ToString), "") + strParameter += CombineXMLParameter("userno", "UserNo", "String", CInput(UserId), "") + Dim strAdditional As String + strAdditional = CombineXMLAdditional(CombineAddXML_Condition("CheckOutTime is null")) + strParameter += strAdditional + + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadLotLoginState", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '讀取取出資料表之名稱 + tblLotLoginState = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadlotloginstate").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadlotloginstate").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '取出Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadlotloginstate").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadLotLoginState = 0 + + End Function + Private Function funLoadMOMaterialState(ByVal MONo As String, + ByVal MaterialLotNo As String, + Optional ByVal MaterialNo As String = defString) As Integer + + funLoadMOMaterialState = -1 + + Dim XmlDoc As New XmlDocument + + '先判斷DS中是否已有相同名稱的資料表,若有需先remove,否則會有錯誤 + If Not IsNothing(dsWIP.Tables(tblMOMaterialState)) Then + dsWIP.Tables.Remove(tblMOMaterialState) + End If + + '組InXml的字串 + + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("mono", "MONo", "String", CInput(MONo), "") + strParameter += CombineXMLParameter("materiallotno", "MaterialLotNo", "String", CInput(MaterialLotNo), "") + If MaterialNo <> defString Then + strParameter += CombineXMLParameter("materialno", "MaterialNo", "String", CInput(MaterialNo), "") + End If + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + ' 2016 YF, Using wsOE As New wsOE.wsOE + ' 2016 YF, wsOE.Url = LocalizeWebService(wsOE.Url.ToString) + ' 2016 YF, wsOE.EnableDecompression = True + ' 2016 YF, OutXml = wsOE.LoadMOMaterialState(InXml) + OutXml = InvokeSrv("wsOE.LoadMOMaterialState", InXml) + + ' 2016 YF, End Using + + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblMOMaterialState = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadmomaterialstate").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadmomaterialstate").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadmomaterialstate").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadMOMaterialState = 0 + + End Function + + Private Function funLoadWIPInventory_Raw(ByVal MaterialLotNo As String, + Optional ByVal MaterialNo As String = defString, + Optional ByVal InventoryNo As String = defString) As Integer + + funLoadWIPInventory_Raw = -1 + + Dim XmlDoc As New XmlDocument + + '先判斷DS中是否已有相同名稱的資料表,若有需先remove,否則會有錯誤 + If Not IsNothing(dsWIP.Tables(tblWIPINVRaw)) Then + dsWIP.Tables.Remove(tblWIPINVRaw) + End If + + '組InXml的字串 + + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("materiallotno", "MaterialLotNo", "String", CInput(MaterialLotNo), "") + '2019/06/17 Shih Kai, Mantis:0058359 多加入條件參數 + If MaterialNo <> defString Then + strParameter += CombineXMLParameter("materialno", "MaterialNo", "String", CInput(MaterialNo), "") + End If + If InventoryNo <> defString Then + strParameter += CombineXMLParameter("inventoryno", "InventoryNo", "String", CInput(InventoryNo), "") + End If + + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsINV.LoadWIPInventory_Raw", InXml) + + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblWIPINVRaw = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadwipinventory_raw").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadwipinventory_raw").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadwipinventory_raw").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadWIPInventory_Raw = 0 + + End Function + + Private Function funLoadWIPInventory_SEMI(ByVal LotNo As String, + Optional ByVal ProductNo As String = defString, + Optional ByVal InventoryNo As String = defString) As Integer + + funLoadWIPInventory_SEMI = -1 + + Dim XmlDoc As New XmlDocument + + '先判斷DS中是否已有相同名稱的資料表,若有需先remove,否則會有錯誤 + If Not IsNothing(dsWIP.Tables(tblWIPINVSEMI)) Then + dsWIP.Tables.Remove(tblWIPINVSEMI) + End If + + '組InXml的字串 + + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + '2019/06/17 Shih Kai, Mantis:0058359 多加入條件參數 + If ProductNo <> defString Then + strParameter += CombineXMLParameter("productno", "ProductNo", "String", CInput(ProductNo), "") + End If + If InventoryNo <> defString Then + strParameter += CombineXMLParameter("inventoryno", "InventoryNo", "String", CInput(InventoryNo), "") + End If + + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadWIPInventory_SEMI", InXml) + + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblWIPINVSEMI = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadwipinventory_semi").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadwipinventory_semi").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadwipinventory_semi").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadWIPInventory_SEMI = 0 + + End Function + + '取出用料清單 + Private Function funLoadSubstituteMaterial_Main(ByVal LotNo As String, ByVal MaterialNo As String, + ByVal UnitNo As String) As Integer + funLoadSubstituteMaterial_Main = -1 + + Dim XmlDoc As New XmlDocument '處理Xml字串之物件 + Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 + Dim InXml, OutXml, strIdentity, strParameter, XmlData, XmlSchema As String + + '先判斷DS中是否已有相同名稱的資料表,若有需先remove,否則會有錯誤 + If Not IsNothing(dsWIP.Tables(tblSubstituteMaterial)) Then + dsWIP.Tables.Remove(tblSubstituteMaterial) + End If + + '組InXml的字串 + + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + strParameter += CombineXMLParameter("materialno", "MaterialNo", "String", CInput(MaterialNo), "") + strParameter += CombineXMLParameter("unitno", "UnitNo", "String", CInput(UnitNo), "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadSubstituteMaterial_Main", InXml) + + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblSubstituteMaterial = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadsubstitutematerial_main").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadsubstitutematerial_main").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadsubstitutematerial_main").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + Finally + XmlDoc = Nothing + tmpStringReader = Nothing + End Try + + funLoadSubstituteMaterial_Main = 0 + + End Function + + ''' + ''' 2016/10/19 YF, 依設備及工單取出設備上料現況 + ''' + ''' + ''' + ''' + ''' 2:原物料線邊倉(RAW) 3:工單存料現況(MO) 4:半成品線邊倉(SEMI) + ''' + Private Function LoadEQPMaterialState(ByRef pTable As DataTable, Optional ByVal pEquipmentNo As String = defString, + Optional ByVal pMONo As String = defString, Optional ByVal pMaterialNo As String = defString, + Optional ByVal pPutInPlaceType As Integer = 3) As Boolean + + Dim result As Boolean = False + Dim XmlDoc As New XmlDocument + Dim dsTemp As New DataSet + + Try + + Cursor.Current = Cursors.WaitCursor + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = "" + + If (pEquipmentNo <> defString) Then + strParameter += CombineXMLParameter("equipmentno", "EquipmentNo", "String", pEquipmentNo, "") + End If + + '不需要工单 新设备上料14278 + 'If (pMONo <> defString) Then + ' strParameter += CombineXMLParameter("mono", "MONo", "String", CInput(pMONo), "") + 'End If + + If (pMaterialNo <> defString) Then + strParameter += CombineXMLParameter("materialno", "MaterialNo", "String", CInput(pMaterialNo), "") + End If + + ' 取出剩餘數量>0 + Dim strAdditional As String + strAdditional = CombineXMLAdditional(CombineAddXML_Condition("Qty > 0")) + strParameter += strAdditional + + InXml = CombineXMLRequest(strIdentity, strParameter) + + OutXml = InvokeSrv("wsWIP_Material.LoadWIPEQPMaterialState", InXml) + + XmlDoc.LoadXml(OutXml) + + If ChkExecutionSuccess(XmlDoc) Then + + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadwipeqpmaterialstate").Item(0).SelectNodes("schema").Item(0).InnerXml + + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsTemp.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadwipeqpmaterialstate").Item(0).SelectNodes("value").Item(0).InnerXml + + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsTemp.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + If (dsTemp.Tables.Count > 0) Then + pTable = dsTemp.Tables(0).Copy + result = True + End If + + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + End If + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Finally + XmlDoc = Nothing + dsTemp = Nothing + Cursor.Current = Cursors.Default + End Try + + Return result + + End Function + + '2019/01/18 Eric + Private Function funLoadParameter(ByVal ParameterNo As String) As String + + Dim dsPara As New DataSet + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("parameterno", "ParameterNo", "String", CInput(ParameterNo), "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsSYS.LoadParameter", InXml) + + Dim XmlDoc As New XmlDocument '//處理Xml字串之物件 + XmlDoc.LoadXml(OutXml) + If Not ChkExecutionSuccess(XmlDoc) Then + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + End If + + Dim tblParameter As String = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadparameter").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadparameter").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsPara.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadparameter").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsPara.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + If dsPara.Tables(tblParameter).Rows.Count > 0 Then + Return dsPara.Tables(tblParameter).Rows(0)("PARAMETERVALUE").ToString + End If + + Return "" + + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Finally + End Try + + End Function + + '2020/10/29 Grace 料批查核,相同料批只能刷一個料號,增加料號刷入 + Private Sub txtMaterialNo_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txtMaterialNo.KeyPress + Try + If (e.KeyChar <> Convert.ToChar(13)) Then + Exit Sub + End If + txtMaterialLotNo.Focus() + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + End Sub + + + Private Sub iugMaterial_Click(sender As Object, e As EventArgs) Handles iugMaterial.Click + If iugMaterial.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub + txtMaterialNo.Text = iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + End Sub + + Private Function funLoadTemp_LotState() As Integer + + funLoadTemp_LotState = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.LoadTemp_LotState", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblTLotState = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadtemp_lotstate").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadtemp_lotstate").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadtemp_lotstate").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funLoadTemp_LotState = 0 + + + End Function + + '2019/10/17 Grace 查詢作業站資料 + Private Sub funLoadOPBasis(ByVal OPNo As String) + + If Not IsNothing(dsTemp.Tables(tblOPBasis)) Then + dsTemp.Tables.Remove(tblOPBasis) + End If + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("opno", "OPNo", "String", CInput(OPNo), "") + '2020/02/07 Grace 增加傳入GetXml_CLOB = false, 避免取回企業邏輯CLOB資料 + strParameter += CombineXMLParameter("getxml_clob", "GetXML_CLOB", "Boolean", False, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Dim XmlDoc As New XmlDocument + + Try + ' 2016 YF, Using wsOP As New wsOP.wsOP + ' 2016 YF, wsOP.Url = LocalizeWebService(wsOP.Url.ToString) + ' 2016 YF, wsOP.EnableDecompression = True + ' 2016 YF, OutXml = wsOP.LoadOPBasis(InXml) + OutXml = InvokeSrv("wsOP.LoadOPBasis", InXml) + + ' 2016 YF, End Using + + '利用XmlDoc物件處理ReturnValue + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '//取出 Tablename + tblOPBasis = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadopbasis").Item(0).SelectNodes("name").Item(0).InnerXml + '//取出 Table Schma + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadopbasis").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsTemp.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '//取出Attrib Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadopbasis").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsTemp.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Sub + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Sub + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Sub + End Try + End Sub + + '2020/02/26 Grace 查詢設備派工資料 + Private Sub funLoadWIPEQPDispatchState(Optional ByVal EquipmentNo As String = defString, Optional ByVal LotNo As String = defString, + Optional ByVal OPNo As String = defString, Optional ByVal DispatchDate As DateTime = defDateTime) + + If Not IsNothing(dsTemp.Tables(tblEQPDispatchState)) Then + dsTemp.Tables.Remove(tblEQPDispatchState) + End If + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = "" + If EquipmentNo <> defString Then strParameter += CombineXMLParameter("equipmentno", "EquipmentNo", "String", CInput(EquipmentNo), "") + If LotNo <> defString Then strParameter += CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + If OPNo <> defString Then strParameter += CombineXMLParameter("opno", "OPNo", "String", CInput(OPNo), "") + If chkUpdCheckInTime.Checked And DispatchDate <> defDateTime Then + strParameter += CombineXMLParameter("dispatchdate", "DispatchDate", "String", dtpcheckintime.Value.ToString("yyyy/MM/dd HH:mm:ss"), "") + End If + + InXml = CombineXMLRequest(strIdentity, strParameter) + Dim XmlDoc As New XmlDocument + + Try + ' 2016 YF, Using wsOP As New wsOP.wsOP + ' 2016 YF, wsOP.Url = LocalizeWebService(wsOP.Url.ToString) + ' 2016 YF, wsOP.EnableDecompression = True + ' 2016 YF, OutXml = wsOP.LoadOPBasis(InXml) + OutXml = InvokeSrv("wsWIP.LoadWIPEQPDispatchState", InXml) + + ' 2016 YF, End Using + + '利用XmlDoc物件處理ReturnValue + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '//取出 Tablename + tblEQPDispatchState = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadwipeqpdispatchstate").Item(0).SelectNodes("name").Item(0).InnerXml + '//取出 Table Schma + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadwipeqpdispatchstate").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsTemp.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '//取出Attrib Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadwipeqpdispatchstate").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsTemp.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Sub + End If + + XmlDoc = Nothing + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Sub + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Sub + End Try + End Sub + + +#End Region + +#Region "Others" + + Private Function funInitialize() + + iugAttrib.iMESUltraGrid.Text = "Attrib" + iugAttrib.iMESUltraGrid.DisplayLayout.GroupByBox.Hidden = True + iugAttrib.iMESUltraGrid.ContextMenuStrip.Items.Clear() + iugAttrib.iMESUltraGrid.DisplayLayout.Override.CellAppearance.BackColor = Drawing.Color.Gainsboro + + 'iugMaterial.iMESUltraGrid.Text = "Material" + iugMaterial.iMESUltraGrid.DisplayLayout.GroupByBox.Hidden = True + iugMaterial.iMESUltraGrid.ContextMenuStrip.Items.Clear() + iugMaterial.iMESUltraGrid.DisplayLayout.Override.CellAppearance.BackColor = Drawing.Color.Gainsboro + + iugEquipment.iMESUltraGrid.Text = "Equipment" + iugEquipment.iMESUltraGrid.DisplayLayout.GroupByBox.Hidden = True + iugEquipment.iMESUltraGrid.ContextMenuStrip.Items.Clear() + iugEquipment.iMESUltraGrid.UpdateMode = Infragistics.Win.UltraWinGrid.UpdateMode.OnCellChangeOrLostFocus + iugEquipment.iMESUltraGrid.DisplayLayout.Override.CellAppearance.BackColor = Drawing.Color.Gainsboro + + '78912: 进站选择模治具时,如该机台领用多套模具,会默认选择第一套而不会选择产品作业站设定绑定使用的的模治具 + '78879: 若PRD主檔有設定限定模治具,則勾選各類別限定模治具的第一筆,設定為星號亦同,若未設定則不預勾 Edison 2020/10/15 + '===========================================78879 Start =========================================== + If Not dsWIP.Tables("AccState") Is Nothing Then + For Each r As DataRow In dsWIP.Tables("AccState").Rows + r("Select") = False + Next r + End If + + If Not dsWIP.Tables("PRDAccessory") Is Nothing AndAlso dsWIP.Tables("PRDAccessory").Rows.Count > 0 AndAlso Not dsWIP.Tables("AccState") Is Nothing Then + Dim blnChkACC As Boolean = False + + Dim dtAccType As DataTable = dsWIP.Tables("PRDAccessory").DefaultView.ToTable(True, "AccessoryType") + Dim drSelPRDACC() As DataRow + Dim drSelAccState() As DataRow + + For Each r As DataRow In dtAccType.Rows + drSelPRDACC = dsWIP.Tables("PRDAccessory").Select("AccessoryType = '" & r("AccessoryType") & "'") + If drSelPRDACC.Length > 0 Then + If drSelPRDACC(0)("AccessoryNo") <> "*" Then + drSelAccState = dsWIP.Tables("AccState").Select("AccessoryType = '" & drSelPRDACC(0)("AccessoryType") & "' AND AccessoryNo = '" & drSelPRDACC(0)("AccessoryNo") & "' ") + If drSelAccState.Length > 0 Then + drSelAccState(0)("Select") = True + End If + Else + drSelAccState = dsWIP.Tables("AccState").Select("AccessoryType = '" & drSelPRDACC(0)("AccessoryType") & "' ") + If drSelAccState.Length > 0 Then + drSelAccState(0)("Select") = True + End If + End If + End If + Next r + + End If + '===========================================78879 End =========================================== + + '78913: 【德瑞客户】CI画面放大画面后再缩小画面然后拉伸设备栏位会造成多个设备功能框 Edison 2020/09/24 + '================================ 78913 Start ================================ + '防止透過Scroll Bar分割Grid + iugEquipment.iMESUltraGrid.DisplayLayout.MaxColScrollRegions = 1 + iugEquipment.iMESUltraGrid.DisplayLayout.MaxRowScrollRegions = 1 + '================================ 78913 End ================================ + + iugKeyIn.iMESUltraGrid.Text = "Key In" + iugKeyIn.iMESUltraGrid.DisplayLayout.GroupByBox.Hidden = True + iugKeyIn.iMESUltraGrid.ContextMenuStrip.Items.Clear() + iugKeyIn.iMESUltraGrid.UpdateMode = Infragistics.Win.UltraWinGrid.UpdateMode.OnCellChangeOrLostFocus + iugKeyIn.iMESUltraGrid.DisplayLayout.MaxColScrollRegions = 1 + iugKeyIn.iMESUltraGrid.DisplayLayout.MaxRowScrollRegions = 1 + + 'iugSubOP.iMESUltraGrid.Text = "Sub OP" + iugSubOP.iMESUltraGrid.DisplayLayout.GroupByBox.Hidden = True + iugSubOP.iMESUltraGrid.ContextMenuStrip.Items.Clear() + iugSubOP.iMESUltraGrid.DisplayLayout.Override.CellAppearance.BackColor = Drawing.Color.Gainsboro + + SBar1.Panels(0).Text = "UserNo:" & UserId + SBar1.Panels(3).Text = Format(datEventTime, "yyyy/MM/dd H:mm:ss") + + txtPriority.Appearance.TextHAlign = Infragistics.Win.HAlign.Right + txtCurQty.Appearance.TextHAlign = Infragistics.Win.HAlign.Right + txtSysQty.Appearance.TextHAlign = Infragistics.Win.HAlign.Right + dtpcheckintime.Value = datEventTime + + btnConfirm.Enabled = True + 'btnMultiUser.Enabled = True + + '2019/10/17 Grace 依系統參數是否啟動多人加工, 且多人加工模式為生產批, 來決定是否顯示"多人加工"按鈕 + btnMultiUser.Visible = False + btnMultiUser.Enabled = False + + If Val(funGetSysParameter("MultiOperator")) Then + Call funLoadOPBasis(txtOPNo.Text) + If Not IsNothing(dsTemp.Tables(tblOPBasis)) Then + If dsTemp.Tables(tblOPBasis).Rows.Count > 0 Then + If dsTemp.Tables(tblOPBasis).Rows(0)("MultiOperatorMode").ToString = "5" Then + btnMultiUser.Visible = True + btnMultiUser.Enabled = True + End If + End If + End If + End If + + + ' 2016/12/26 YF, 依系統參數是否啟動多人加工來決定是否顯示"作業人員"按鈕 + Me.btnOperator.Visible = Val(funGetSysParameter("MultiOperator")) + + End Function + + Private Function funLotInfo_Show() + + RevLotSerial = dsWIP.Tables(tblLotState).Rows(0)("LotSerial") + RevLotStamp = dsWIP.Tables(tblLotState).Rows(0)("LotStamp") + LotSerial = dsWIP.Tables(tblLotState).Rows(0)("LotSerial") + LogGroupSerial = dsWIP.Tables(tblLotState).Rows(0)("LogGroupSerial").ToString + txtCurQty.Text = Format(dsWIP.Tables(tblLotState).Rows(0)("CurQty"), "0.####") + txtCurUnitNo.Text = dsWIP.Tables(tblLotState).Rows(0)("CurUnitNo").ToString + txtSysQty.Text = Format(dsWIP.Tables(tblLotState).Rows(0)("SysQty"), "0.####") + txtSysUnitNo.Text = dsWIP.Tables(tblLotState).Rows(0)("SysUnitNo").ToString + txtOPNo.Text = dsWIP.Tables(tblLotState).Rows(0)("OPNo").ToString + txtOpName.Text = dsWIP.Tables(tblLotState).Rows(0)("OPName").ToString + + '2009/05/11 Sophia.Pan R0905002 作業站編號及名稱加上ToolTip + ToolTip1.SetToolTip(Me.txtOPNo, dsWIP.Tables(tblLotState).Rows(0)("OPNo").ToString) + ToolTip1.SetToolTip(Me.txtOpName, dsWIP.Tables(tblLotState).Rows(0)("OPName").ToString) + + txtAreaNo.Text = dsWIP.Tables(tblLotState).Rows(0)("AreaNo").ToString + txtProductNo.Text = dsWIP.Tables(tblLotState).Rows(0)("ProductNo").ToString + PhaseNo = dsWIP.Tables(tblLotState).Rows(0)("PhaseNo") + + txtPriority.Text = dsWIP.Tables(tblLotState).Rows(0)("Priority") + If dsWIP.Tables(tblLotState).Rows(0)("Priority") = 1 Then + txtPriority.BackColor = System.Drawing.Color.Red + ElseIf dsWIP.Tables(tblLotState).Rows(0)("Priority") = 2 Then + txtPriority.BackColor = System.Drawing.Color.Yellow + ElseIf dsWIP.Tables(tblLotState).Rows(0)("Priority") = 3 Then + txtPriority.BackColor = System.Drawing.Color.LimeGreen + End If + txtMONo.Text = dsWIP.Tables(tblLotState).Rows(0)("MONo").ToString + txtCustomerLotNo.Text = dsWIP.Tables(tblLotState).Rows(0)("CustomerLotNo").ToString + + End Function + + Private Sub funAddValueList_Attrib() + + iugAttrib.iMESUltraGrid.DisplayLayout.ValueLists.Add("ASource") + With iugAttrib.iMESUltraGrid.DisplayLayout.ValueLists("ASource").ValueListItems + .Clear() + .Add(0, "KeyIn") + .Add(1, "Calculate") + .Add(2, "System") + .Add(3, "Setup") + End With + + End Sub + + Private Function funGetSampleData() + + Cursor.Current = Cursors.WaitCursor + + '轉換抽樣參數 + Dim strAQLType, strAQL, strQCLevel, strTemp As String + + If dsWIP.Tables(tblTAttrib) Is Nothing Then Exit Function + + Dim drSel() As DataRow + + '若已轉換,不再轉 + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo = 'SampleQty'") + If drSel.Length > 0 Then + If Not IsDBNull(drSel(0)("AttribValue")) Then + If drSel(0)("AttribValue") <> "" Then + Exit Function + End If + End If + End If + + 'AQLType + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo = 'AQLType'") + If drSel.Length > 0 Then + strAQLType = drSel(0)("AttribValue") + Else + strAQLType = defString + End If + 'AQL + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo = 'AQL'") + If drSel.Length > 0 Then + strAQL = drSel(0)("AttribValue") + Else + strAQL = defString + End If + 'QCLevel + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo = 'QCLevel'") + If drSel.Length > 0 Then + strQCLevel = drSel(0)("AttribValue") + Else + strQCLevel = defString + End If + + drSel = Nothing + + If strAQLType = defString Or strAQL = defString Or strQCLevel = defString Then Exit Function + + '取出抽樣數 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("aqltype", "AQLType", "String", strAQLType, "") + strParameter += CombineXMLParameter("qty", "QTY", "Long", dsWIP.Tables(tblLotState).Rows(0)("CurQty"), "") + strParameter += CombineXMLParameter("qclevel", "QCLevel", "String", strQCLevel, "") + strParameter += CombineXMLParameter("aql", "AQL", "String", strAQL, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + Try + OutXml = InvokeSrv("wsQC.GetAQLQty", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + 'SampleQty + If XmlDoc.GetElementsByTagName("sampleqty").Item(0).SelectNodes("value").Count > 0 Then + strTemp = XmlDoc.DocumentElement.GetElementsByTagName("sampleqty").Item(0).SelectNodes("value").Item(0).InnerText + If IsNumeric(strTemp) Then + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo = 'SampleQty'") + If drSel.Length > 0 Then + drSel(0).BeginEdit() + drSel(0)("AttribValue") = strTemp + drSel(0).EndEdit() + End If + Else + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200011", "[%SampleQty%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Function + End If + End If + 'AcceptQty + If XmlDoc.GetElementsByTagName("acceptqty").Item(0).SelectNodes("value").Count > 0 Then + strTemp = XmlDoc.DocumentElement.GetElementsByTagName("acceptqty").Item(0).SelectNodes("value").Item(0).InnerText + If IsNumeric(strTemp) Then + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo = 'AcceptQty'") + If drSel.Length > 0 Then + drSel(0).BeginEdit() + drSel(0)("AttribValue") = strTemp + drSel(0).EndEdit() + End If + Else + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200011", "[%AcceptQty%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Function + End If + End If + 'RejectQty + If XmlDoc.GetElementsByTagName("rejectqty").Item(0).SelectNodes("value").Count > 0 Then + strTemp = XmlDoc.DocumentElement.GetElementsByTagName("rejectqty").Item(0).SelectNodes("value").Item(0).InnerText + If IsNumeric(strTemp) Then + drSel = dsWIP.Tables(tblTAttrib).Select("AttribNo = 'RejectQty'") + If drSel.Length > 0 Then + drSel(0).BeginEdit() + drSel(0)("AttribValue") = strTemp + drSel(0).EndEdit() + End If + Else + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200011", "[%RejectQty%]"), MsgBoxStyle.Exclamation, Me.Text) + Exit Function + End If + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + Cursor.Current = Cursors.Default + + End Function + + Private Function funGetActiveRows() As DataRow() + Dim Rows As DataRow() + Dim oRow As Infragistics.Win.UltraWinGrid.UltraGridRow + oRow = iugEquipment.iMESUltraGrid.ActiveRow + + If oRow Is Nothing Then + Return Nothing + End If + + '找出DataSet中在目前游標列的資料列(DataRow) + + Rows = dsWIP.Tables(tblAreaEquipment).Select( + "EquipmentNo ='" & Replace(oRow.Cells("EquipmentNo").Value.ToString, "'", "''") & "'") + + If Rows.Length = 0 Then + Return Nothing + Else + Return Rows + End If + End Function + + Private Function funMultiUser() As Integer + + funMultiUser = -1 + + If funLoadLotLoginState() < 0 Then Exit Function + + '產生多人加工暫存表 + dtTmpLoginState = New DataTable("TmpLoginState") + dtTmpLoginState.Columns.Add("UserNo", System.Type.GetType("System.String")) + dtTmpLoginState.Columns.Add("UserName", System.Type.GetType("System.String")) + dtTmpLoginState.Columns.Add("CheckInTime", System.Type.GetType("System.DateTime")) + + '檢查tblWIPLotLoginState內是否已有本站未登出的資料,若有,則不自動加入. + If dsWIP.Tables(tblLotLoginState).Rows.Count = 0 Then + drAdd = dtTmpLoginState.NewRow + drAdd("UserNo") = UserId + drAdd("UserName") = UserName + 'Kevin,2012/12/18,不取client端的時間作CI時間 + 'drAdd("CheckInTime") = datEventTime + dtTmpLoginState.Rows.Add(drAdd) + End If + + funMultiUser = 0 + + End Function + + Private Function funGetSysParameter(ByVal pParameterNo As String) As String + + funGetSysParameter = "0" + + '組InXml的字串 + strParameter = "" + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("parameterno", "ParameterNo", "String", CInput(pParameterNo), "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + Dim XmlDoc As New XmlDocument + + OutXml = InvokeSrv("wsSYS.GetParameter", InXml) + + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + If XmlDoc.DocumentElement.SelectNodes("returnvalue").Count > 0 Then + funGetSysParameter = XmlDoc.DocumentElement("returnvalue").InnerXml + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + End Function + +#End Region + +#Region "取得設備參數" + + ' 2016/01/27 YF, 取得設備參數值 + Private Sub funGetEquipmentRecipe() + + Const FUNCTION_NAME As String = "#GETEQPRECIPE" + + Dim strEquipmentNo As String = "" + Dim XmlDoc As New XmlDocument + Dim SelRows() As DataRow + + Try + + ' 取出勾選的設備編號 + For Each row As DataRow In dsWIP.Tables(tblAreaEquipment).Select("CheckFlag = " & True, "EquipmentNo") + strEquipmentNo += row("EquipmentNo").ToString & "," + Next + + If (strEquipmentNo <> "") Then + strEquipmentNo = strEquipmentNo.TrimEnd(",") + End If + + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + + ' 逐筆判斷特性值的函式是否為#GETEQPRECIPE, 若是則至後端取回參數值 + For Each row As DataRow In dsWIP.Tables(tblTAttrib).Rows + + If (Microsoft.VisualBasic.Left(row("OrgAttribValue").ToString, FUNCTION_NAME.Length).ToUpper <> FUNCTION_NAME) Then + Continue For + End If + + ' 沒有挑選設備, 清空#GetEQPRecipe特性值 + If (strEquipmentNo = "") Then + row("AttribValue") = "" + Continue For + End If + + ' 取回設備參數 + strParameter = CombineXMLParameter("equipmentno", "EquipmentNo", "String", strEquipmentNo, "") + strParameter += CombineXMLParameter("recipescript", "RecipeScript", "String", row("OrgAttribValue").ToString, "") + + InXml = CombineXMLRequest(strIdentity, strParameter) + + OutXml = InvokeSrv("wsWIP.GetEquipmentRecipe", InXml) + + XmlDoc.LoadXml(OutXml) + + If ChkExecutionSuccess(XmlDoc) Then + If XmlDoc.GetElementsByTagName("itemvalue").Count > 0 Then + If XmlDoc.GetElementsByTagName("itemvalue").Item(0).SelectNodes("value").Count > 0 Then + row("AttribValue") = XmlDoc.DocumentElement.GetElementsByTagName("itemvalue").Item(0).SelectNodes("value").Item(0).InnerText + + ' 更新KeyIn的特性值 + SelRows = dtKeyIn.Select("AttribNo = '" & row("AttribNo") & "'") + + If (SelRows.Length > 0) Then + SelRows(0)("AttribValue") = row("AttribValue") + End If + + End If + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + End If + + Next + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Finally + XmlDoc = Nothing + End Try + + End Sub + +#End Region + +#Region "用料檢查" + + ''' + ''' 2016/10/19 YF, 投料點用料檢查 + ''' + ''' + Private Function CheckMaterialByPutinPlace(ByVal pMONo As String, ByVal pMaterialLotNo As String, ByVal pMaterialNo As String) As Boolean + + Dim PutinPlace As Integer + Dim intInputFlag As Integer = 0 + Dim strTmpOrgMaterialNo As String = "" + Dim strTmpMaterialNo As String = "" + Dim strTmpMaterialLotNo As String = "" + Dim decQty As Decimal = 0 + Dim strCheckPlaceMsg As String = "" + + + '至工單發料區與線邊倉取出輸入的料批 + If funLoadMOMaterialState(dsWIP.Tables(tblLotState).Rows(0)("MONo").ToString, txtMaterialLotNo.Text) < 0 Then Exit Function + If funLoadWIPInventory_Raw(pMaterialLotNo) < 0 Then Exit Function + If funLoadWIPInventory_SEMI(pMaterialLotNo) < 0 Then Exit Function + + '檢查是否有符合的物料編號與投料點 + + If dsWIP.Tables(tblMOMaterialState).Rows.Count > 0 Then '工單發料區 + + For Each drRaw As DataRow In dsWIP.Tables(tblMOMaterialState).Rows + '2020/10/30 Grace 先檢查輸入的物料編號, 相符後再往下找物料批號 + If drRaw("MaterialNo") = pMaterialNo Then + + 'Kevin 2013/1/2,不同主料替代料有可能相同,先檢查游標所選的主物料 + Dim drSelMTL As DataRow() + + drSelMTL = dsWIP.Tables(tblTMaterial).Select("MaterialNo='" & drRaw("MaterialNo") & "'" & + " And OrgMaterialNo ='" & iugMaterial.iMESUltraGrid.ActiveRow.Cells("OrgMaterialNo").Value & "'" & + " And PutInPlaceType = 3 ") + If drSelMTL.Length > 0 Then + If intInputFlag <> 1 Then + strTmpOrgMaterialNo = drSelMTL(0)("OrgMaterialNo") + strTmpMaterialNo = drRaw("MaterialNo") + strTmpMaterialLotNo = drRaw("MaterialLotNo") + decQty = drRaw("Qty") + End If + intInputFlag = 1 + Else + '全部主物料比對 + For Each dr As DataRow In dsWIP.Tables(tblTMaterial).Rows + '檢查物料編號 + If dr("MaterialNo") = drRaw("MaterialNo") Then + '檢查投料點 + If dr("PutInPlaceType") = 3 Then + Dim drSel() As DataRow + drSel = dsWIP.Tables(tblTmpMTLLotNo).Select("MaterialNo='" & drRaw("MaterialNo") & "' And MaterialLotNo ='" & drRaw("MaterialLotNo") & "'") + If drSel.Length = 0 Then + If intInputFlag <> 1 Then + strTmpOrgMaterialNo = dr("OrgMaterialNo") + strTmpMaterialNo = drRaw("MaterialNo") + strTmpMaterialLotNo = drRaw("MaterialLotNo") + decQty = drRaw("Qty") + End If + intInputFlag = 1 + End If + Else + strCheckPlaceMsg = "[%MaterialLotNo%]:" & pMaterialLotNo & ",[%MaterialNo%]:" & + dr("MaterialNo") & " [%PutInPlace%][%is not%][%MO%] !" + End If + End If + Next + End If + + End If + Next + End If + + If dsWIP.Tables(tblWIPINVRaw).Rows.Count > 0 Then '線邊倉 + + For Each drRaw As DataRow In dsWIP.Tables(tblWIPINVRaw).Rows + + '2020/10/30 Grace 先檢查輸入的物料編號, 相符後再往下找物料批號 + If drRaw("MaterialNo") = pMaterialNo Then + + 'Kevin 2013/1/2,不同主料替代料有可能相同,先檢查游標所選的主物料 + Dim drSelMTL As DataRow() + drSelMTL = dsWIP.Tables(tblTMaterial).Select("MaterialNo='" & drRaw("MaterialNo") & "'" & + " And OrgMaterialNo ='" & iugMaterial.iMESUltraGrid.ActiveRow.Cells("OrgMaterialNo").Value & "'" & + " And PutInPlaceType = 2 ") + If drSelMTL.Length > 0 Then + If intInputFlag <> 1 Then + strTmpOrgMaterialNo = drSelMTL(0)("OrgMaterialNo") + strTmpMaterialNo = drRaw("MaterialNo") + strTmpMaterialLotNo = drRaw("MaterialLotNo") + decQty = drRaw("Qty") + End If + intInputFlag = 1 + Else + '全部主物料比對 + For Each dr As DataRow In dsWIP.Tables(tblTMaterial).Rows + '檢查物料編號 + If dr("MaterialNo") = drRaw("MaterialNo") Then + '檢查投料點 + If dr("PutInPlaceType") = 2 Then + Dim drSel() As DataRow + drSel = dsWIP.Tables(tblTmpMTLLotNo).Select("MaterialNo='" & drRaw("MaterialNo") & "' And MaterialLotNo ='" & drRaw("MaterialLotNo") & "'") + If drSel.Length = 0 Then + If intInputFlag <> 1 Then + strTmpOrgMaterialNo = dr("OrgMaterialNo") + strTmpMaterialNo = drRaw("MaterialNo") + strTmpMaterialLotNo = drRaw("MaterialLotNo") + decQty = drRaw("Qty") + End If + intInputFlag = 1 + End If + Else + strCheckPlaceMsg = "[%MaterialLotNo%]:" & pMaterialLotNo & ",[%MaterialNo%]:" & + dr("MaterialNo") & " [%PutInPlace%][%is not%][%WIP INVENTORY%] !" + End If + End If + Next + End If + + End If + Next + End If + + If dsWIP.Tables(tblWIPINVSEMI).Rows.Count > 0 Then '半成品線邊倉 + + For Each drSEMI As DataRow In dsWIP.Tables(tblWIPINVSEMI).Rows + + '2020/10/30 Grace 先檢查輸入的物料編號, 相符後再往下找物料批號 + If drSEMI("ProductNo") = pMaterialNo Then + + 'Kevin 2013/1/2,不同主料替代料有可能相同,先檢查游標所選的主物料 + Dim drSelMTL As DataRow() + drSelMTL = dsWIP.Tables(tblTMaterial).Select("MaterialNo='" & drSEMI("ProductNo") & "'" & + " And OrgMaterialNo ='" & iugMaterial.iMESUltraGrid.ActiveRow.Cells("OrgMaterialNo").Value & "'" & + " And PutInPlaceType = 4 ") + If drSelMTL.Length > 0 Then + If intInputFlag <> 1 Then + strTmpOrgMaterialNo = drSelMTL(0)("OrgMaterialNo") + strTmpMaterialNo = drSEMI("ProductNo") + strTmpMaterialLotNo = drSEMI("LotNo") + decQty = drSEMI("Qty") + End If + intInputFlag = 1 + Else + '全部主物料比對 + For Each dr As DataRow In dsWIP.Tables(tblTMaterial).Rows + '檢查物料編號 + If dr("MaterialNo") = drSEMI("ProductNo") Then + '檢查投料點 + If dr("PutInPlaceType") = 2 Then + Dim drSel() As DataRow + drSel = dsWIP.Tables(tblTmpMTLLotNo).Select("MaterialNo='" & drSEMI("ProductNo") & "' And MaterialLotNo ='" & drSEMI("LotNo") & "'") + If drSel.Length = 0 Then + If intInputFlag <> 1 Then + strTmpOrgMaterialNo = dr("OrgMaterialNo") + strTmpMaterialNo = drSEMI("ProductNo") + strTmpMaterialLotNo = drSEMI("LotNo") + decQty = drSEMI("Qty") + End If + intInputFlag = 1 + End If + Else + strCheckPlaceMsg = "[%MaterialLotNo%]:" & pMaterialLotNo & ",[%MaterialNo%]:" & + dr("MaterialNo") & " [%PutInPlace%][%is not%][%WIP INVENTORY%] !" + End If + End If + Next + End If + + End If + Next + End If + + If intInputFlag = 1 Then + + '2019/06/18 Shih Kai, Mantis:0058359 ,若物料為指定用料, 則不可使用替代料 + If funGetSysParameter("CIMTLDBCheck") = "1" Then + If dsWIP.Tables(tblTMaterial).Select("MaterialNo = '" & strTmpOrgMaterialNo & "' And Specified = 1").Length > 0 AndAlso + strTmpOrgMaterialNo <> strTmpMaterialNo Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203079", "[%MaterialNo%]:" & strTmpOrgMaterialNo), MsgBoxStyle.Exclamation, Me.Text) + Exit Function + End If + End If + + Dim drAdd As DataRow + drAdd = dsWIP.Tables(tblTmpMTLLotNo).NewRow + drAdd("OrgMaterialNo") = strTmpOrgMaterialNo + drAdd("MaterialNo") = strTmpMaterialNo + drAdd("SUBSTITUTEMATERIALNO") = strTmpMaterialNo + drAdd("MaterialLotNo") = strTmpMaterialLotNo + drAdd("Qty") = decQty + dsWIP.Tables(tblTmpMTLLotNo).Rows.Add(drAdd) + Else + If strCheckPlaceMsg <> "" Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200015", strCheckPlaceMsg), MsgBoxStyle.Exclamation, Me.Text) + Exit Function + Else + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202104", "[%MaterialLotNo%]!"), MsgBoxStyle.Exclamation, Me.Text) + Exit Function + End If + End If + + '選到新加入的列 + Dim Vals(1) As Object + Dim PmyKey(1) As DataColumn + PmyKey(0) = dsWIP.Tables(tblTmpMTLLotNo).Columns("MaterialNo") + PmyKey(1) = dsWIP.Tables(tblTmpMTLLotNo).Columns("MaterialLotNo") + Vals(0) = strTmpMaterialNo + Vals(1) = strTmpMaterialLotNo + + ugrRow = FindRecordPosition_ByMutiCol(iugMaterial, PmyKey, Vals) + If Not ugrRow Is Nothing Then + iugMaterial.iMESUltraGrid.ActiveRow = ugrRow + iugMaterial.iMESUltraGrid.ActiveRow.Selected = True + End If + + Return True + + End Function + +#End Region + +#Region "物料數量檢查" + + Structure MethodNames + ''' + ''' 檢查物料數量 + ''' + Const funCheckMTLQuantity = "funCheckMTLQuantity" + End Structure + + Private Function funCheckMTL() As Boolean + + For Each row As DataRow In dsWIP.Tables(tblTMaterial).Rows + If dsWIP.Tables(tblTmpMTLLotNo).Select("OrgMaterialNo = '" & row("OrgMaterialNo") & "'").Length <= 0 Then + ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-203083", + row("MaterialNo") & "[%IS NOT ENOUGH%], [%PLEASE%][%EXECUTE%][%MOUNTMATERIAL%]")) + Return False + End If + Next + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + strParameter &= CombineXMLParameter("checkin", "CheckIn", "Boolean", CInput(True), "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP_Material.CheckMTLForBR", InXml, dtTmpMTLLotNo.Copy) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + + If Not ChkExecutionSuccess(XmlDoc) Then + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Return False + End If + + Dim xmlList As XmlNodeList = XmlDoc.GetElementsByTagName("message") + If xmlList.Count > 0 Then + xmlList = xmlList(0).SelectNodes("note") + If xmlList.Count > 0 Then + For Each xmlNode As XmlNode In xmlList + If funProcessMessages(xmlNode) = False Then Return False + Next + End If + End If + + Return True + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Function + Private Function funProcessMessages(ByVal xmlNode As XmlNode) As Boolean + + Dim MCode, MType, MMsg As String + MCode = xmlNode.SelectNodes("mcode").Item(0).InnerText + MType = xmlNode.SelectNodes("mtype").Item(0).InnerText + MMsg = xmlNode.SelectNodes("mmsg").Item(0).InnerText + + Dim methodName As String = "" + If MMsg.Contains("{") AndAlso MMsg.Contains("}") Then + Dim intStart As Int16 = MMsg.IndexOf("{") + Dim intEnd As Int16 = MMsg.IndexOf("}") + methodName = MMsg.Substring(intStart + 1, intEnd - intStart - 1) + MMsg = MMsg.Substring(intEnd + 1, MMsg.Length - intEnd - 1) + End If + + Select Case methodName + Case MethodNames.funCheckMTLQuantity + If ExceptionManager.iMESMsgBoxShowDialog( + ChgTranslateName_Msg("0000-100601", MMsg), MsgBoxStyle.YesNo + MsgBoxStyle.Question) = MsgBoxResult.No Then + Return False + End If + + Case Else + ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg(MCode, MMsg), MsgBoxStyle.Exclamation, Me.Text) + Return False + End Select + + Return True + + End Function +#End Region + + '取eSOP 工位及作業站 資料 + Private Function funLoadPRDeSOP() As Integer + + funLoadPRDeSOP = -1 + If Not IsNothing(dsDefine.Tables(tblPRDeSOPBasis)) Then dsDefine.Tables.Remove(tblPRDeSOPBasis) + + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = "" + strParameter += CombineXMLParameter("productno", "ProductNo", "String", CInput(txtProductNo.Text), "") + strParameter += CombineXMLParameter("opno", "OPNo", "String", CInput(txtOPNo.Text), "") + + InXml = CombineXMLRequest(strIdentity, strParameter) + Dim XmlDoc As New XmlDocument + Try + ' 2016 YF, OutXml = wsPRD.LoadPRDeSOPBasis(InXml) + OutXml = InvokeSrv("wsPRD.LoadPRDeSOPBasis", InXml) + + '利用XmlDoc物件處理ReturnValue + XmlDoc.LoadXml(OutXml) + + If ChkExecutionSuccess(XmlDoc) Then + tblPRDeSOPBasis = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadprdesopbasis").Item(0).SelectNodes("name").Item(0).InnerXml + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadprdesopbasis").Item(0).SelectNodes("schema").Item(0).InnerXml + + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsDefine.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + + '取出Data() + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadprdesopbasis").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsDefine.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + Finally + XmlDoc = Nothing + + End Try + funLoadPRDeSOP = 0 + + End Function + '顯示作業指導書(eSOP) 2016-12-19 + Private Function funDisplayProcess() As Integer + Dim XmlDoc As New XmlDocument() + Dim InXml, OutXml As String + Dim strTempRecord As String = String.Empty + Dim arriveTime As DateTime = DateTime.Now + Dim strERP_URL_eSOP As String + Dim responseValue, code As String + + Dim strSplitFile() As String + + Try + '---- InXml ----- + Dim InXmlDoc As XmlDocument = New XmlDocument() + + ' + Dim nodeParam As XmlElement = InXmlDoc.CreateElement("param") + nodeParam.SetAttribute("key", "std_data") + nodeParam.SetAttribute("type", "xml") + InXmlDoc.AppendChild(nodeParam) + + ' + Dim nodeDataRequest As XmlElement = InXmlDoc.CreateElement("data_request") + nodeParam.AppendChild(nodeDataRequest) + + ' + Dim nodeDataInfo As XmlElement = InXmlDoc.CreateElement("datainfo") + nodeDataRequest.AppendChild(nodeDataInfo) + + ' + Dim nodeParameter As XmlElement = InXmlDoc.CreateElement("parameter") + nodeParameter.SetAttribute("key", "sop_display") + nodeParameter.SetAttribute("type", "data") + nodeDataInfo.AppendChild(nodeParameter) + + ' + Dim nodeData As XmlElement = InXmlDoc.CreateElement("data") + nodeData.SetAttribute("name", "sop_display") + nodeParameter.AppendChild(nodeData) + + For Each drData As DataRow In dsDefine.Tables(tblPRDeSOPBasis).Rows + If drData("POSITIONNO") = "N/A" Then Continue For + 'sop no + strSplitFile = Split(drData("SOPFILE"), ".") + '顯示作業說明書必傳實體檔案,工位,執行時間 + ' + Dim nodeRow As XmlElement = InXmlDoc.CreateElement("row") + nodeRow.SetAttribute("seq", intRow) + nodeData.AppendChild(nodeRow) + + Dim nodeDField As XmlElement + ''sop編號 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "sop_no") + nodeDField.SetAttribute("type", "string") + 'nodeDField.InnerText = strSplitFile(0) + nodeDField.InnerText = "" + nodeRow.AppendChild(nodeDField) + '指定版號: Y:指定 N:不指定 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "sop_ver_assign") + nodeDField.SetAttribute("type", "string") + nodeDField.InnerText = "" + nodeRow.AppendChild(nodeDField) + '版本 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "sop_ver") + nodeDField.SetAttribute("type", "string") + nodeDField.InnerText = "" + nodeRow.AppendChild(nodeDField) + '頁數 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "sop_page") + nodeDField.SetAttribute("type", "string") + nodeDField.InnerText = drData("PAGENO") + nodeRow.AppendChild(nodeDField) + '工位編號 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "station_no") + nodeDField.SetAttribute("type", "string") + nodeDField.InnerText = drData("POSITIONNO") + nodeRow.AppendChild(nodeDField) + '實體檔名 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "sop_file") + nodeDField.SetAttribute("type", "string") + nodeDField.InnerText = drData("SOPFILE") + nodeRow.AppendChild(nodeDField) + '傳送時間 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "report_datetime") + nodeDField.SetAttribute("type", "date") + nodeDField.SetAttribute("format", "yyyyMMddHHmmss") + nodeDField.InnerText = Now.ToString("yyyyMMddHHmmss") + nodeRow.AppendChild(nodeDField) + '備註 + nodeDField = InXmlDoc.CreateElement("field") + nodeDField.SetAttribute("name", "remark") + nodeDField.SetAttribute("type", "string") + nodeDField.InnerText = "" + nodeRow.AppendChild(nodeDField) + intRow = intRow + 1 + Next + Using obj As New COM_ERP.clsEAI + InXml = obj.funGenerateRequestXML(COM_ERP.clsEAI.ERPName.eSOP, InXmlDoc.InnerXml, "sop.display.process", False) + strERP_URL_eSOP = obj.getERP_WSURL(COM_ERP.clsEAI.ERPName.eSOP) + End Using + + '----- Call Web Service ----- + Using ws As New COM_ERP.wsESOP.eSOPService + + ws.Url = strERP_URL_eSOP + OutXml = ws.sop_display_process(InXml) + End Using + + code = "success" + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + code = "fail" + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + code = "fail" + Finally + + '紀錄TransactionLog + COM_ERP.clsCommon.addTransactionLog_ErrorCode(InXml, OutXml, arriveTime.ToString("yyyyMMddHHmmssss"), "WIP", "station.get", My.Computer.Name, + gUserNo, arriveTime.ToString("yyyy/MM/dd HH:mm:ss"), code, "", "station.get", LogClass:="WIP") + End Try + End Function + +#Region "作業人員" + + ''' + ''' 2016/12/26 YF, 顯示作業人員現況資訊 + ''' + ''' + ''' + Private Sub btnOperator_Click(sender As Object, e As EventArgs) Handles btnOperator.Click + + Dim parameters As Dictionary(Of String, Object) + Dim EquipmentNo As String = "" + + Try + + parameters = New Dictionary(Of String, Object) + + With dsWIP.Tables(tblLotState).Rows(0) + + Select Case .Item("MultiOperatorMode").ToString + Case "0" + ' 作業站 + parameters.Add("OPNo", .Item("OPNo").ToString) + Case "1" + ' 區域 + parameters.Add("AreaNo", .Item("AreaNo").ToString) + Case "2" + ' 設備 + For Each row As DataRow In dsWIP.Tables(tblAreaEquipment).Select("CheckFlag = True") + EquipmentNo += row("EquipmentNo") & "," + Next + + If (EquipmentNo = "") Then + Throw New iMESException.MESException("0000-103010", "[%PLEASE SELECT%] [%EQUIPMENT%]!") + End If + + EquipmentNo = EquipmentNo.TrimEnd(",") + parameters.Add("EquipmentNo", EquipmentNo) + Case "5" 'Mantis 63873: 增加判斷多人加工模式為生產批, 並傳入資料 + ' 生產批 + parameters.Add("LotNo", .Item("LotNo").ToString) + Case Else + Throw New iMESException.MESException("0000-003000", "[%MultiOperatorMode%]:" & .Item("MultiOperatorMode").ToString & " [%NOT DEFINE%]!") + End Select + + End With + + parameters.Add("EnableSignOut", False) + Me.ObjectFileHandler.Execute(pObjectID:="WP_OperatorOnline", pParameters:=parameters) + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Sub + +#End Region + + '2019/01/18 Eric 特殊生產需求顯示 + Private Sub btnSWR_Click(sender As System.Object, e As System.EventArgs) Handles btnSWR.Click + '2019/02/12 Eric 加入判斷有無資料 + If blnShowSWR = True Then + + Dim Parameters As New Dictionary(Of String, Object) + Parameters.Add("MONo", txtMONo.Text) + Parameters.Add("CustomerLotNo", txtCustomerLotNo.Text) + Parameters.Add("OPNo", txtOPNo.Text) + Parameters.Add("LotNo", txtLotNo.Text) + Parameters.Add("DeviceNo", dsWIP.Tables(tblLotState).Rows(0)("DeviceNo").ToString) + Parameters.Add("CustomerNo", dsWIP.Tables(tblLotState).Rows(0)("CustomerNo").ToString) + Parameters.Add("LogGroupSerial", dsWIP.Tables(tblLotState).Rows(0)("LogGroupSerial").ToString) + Parameters.Add("blnCICo", False) + Me.ObjectFileHandler.Execute("WP_SWRBasisRead", Parameters) + + btnSWR.Visible = True + + End If + + End Sub + + '2019/02/12 Eric + Private Sub funLoadSWRJoinLog() + + Cursor.Current = Cursors.WaitCursor + + + If Not IsNothing(dsWIP.Tables(tblSWRJoinLog)) Then + dsWIP.Tables.Remove(tblSWRJoinLog) + End If + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("loggroupserial", "LogGroupSerial", "String", CInput(dsWIP.Tables(tblLotState).Rows(0)("LogGroupSerial").ToString), "") + strParameter += CombineXMLParameter("customerno", "CustomerNo", "String", CInput(dsWIP.Tables(tblLotState).Rows(0)("CustomerNo").ToString), "") + strParameter += CombineXMLParameter("lotno", "LotNo", "String", CInput(txtLotNo.Text), "") + strParameter += CombineXMLParameter("deviceno", "DeviceNo", "String", CInput(dsWIP.Tables(tblLotState).Rows(0)("DeviceNo").ToString), "") + strParameter += CombineXMLParameter("opno", "OPNo", "String", CInput(txtOPNo.Text), "") + strParameter += CombineXMLParameter("customerlotno", "CustomerLotNo", "String", CInput(txtCustomerLotNo.Text), "") + strParameter += CombineXMLParameter("mono", "MONo", "String", CInput(txtMONo.Text), "") + strParameter += CombineXMLParameter("status", "Status", "Integer", 2, "") + + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + + OutXml = InvokeSrv("wsWIP.LoadSWRBasisJoinLog", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + tblSWRJoinLog = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadswrbasisjoinlog").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadswrbasisjoinlog").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsWIP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '取出Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadswrbasisjoinlog").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsWIP.ReadXml(tmpStringReader) + tmpStringReader.Close() + End If + + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Sub + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Sub + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Sub + End Try + + Cursor.Current = Cursors.Default + + End Sub + + Private Sub funLoadAllMaterialLot() + + Dim drAdd As DataRow + Dim drSel As DataRow() + Dim defNullDate As Date = CDate("9999/12/31") '製造日期或保存期限為Null時, 填入9999/12/31, 以防步Null錯誤, 因Null表示不受管控, 可以較後使用, 故填入較大的值 + + dtAllMTLLot = New DataTable("AllMTLLot") + dtAllMTLLot.Columns.Add("MaterialNo", System.Type.GetType("System.String")) '主料號 + dtAllMTLLot.Columns.Add("MaterialLotNo", System.Type.GetType("System.String")) + dtAllMTLLot.Columns.Add("Qty", System.Type.GetType("System.Decimal")) + dtAllMTLLot.Columns.Add("MFGDate", System.Type.GetType("System.DateTime")) + dtAllMTLLot.Columns.Add("ExpireDate", System.Type.GetType("System.DateTime")) + dtAllMTLLot.Columns.Add("InputDate", System.Type.GetType("System.DateTime")) + + dtAllMTLLot.Columns.Add("SubstituteMaterialNo", System.Type.GetType("System.String")) '新增一替代料欄位,2010/03/26,by yumei, 實際用料的料號 + dtAllMTLLot.Columns.Add("SubstituteMaterialLevel", System.Type.GetType("System.Int16")) '新增一替代料位階欄位,2013/01/08,by Kevin + dtAllMTLLot.Columns.Add("SubstituteMaterialType", System.Type.GetType("System.String")) '新增一替代料類型欄位,2013/01/08,by Kevin + dtAllMTLLot.Columns.Add("SubstituteStdQty", System.Type.GetType("System.Decimal")) '新增一替代料標準用量欄位,2013/01/08,by Kevin + dtAllMTLLot.Columns.Add("CheckLotNo", System.Type.GetType("System.Int16")) '新增一替代料是否檢查批號欄位,2013/01/08,by Kevin + + dtAllMTLLot.Columns.Add("SeqNo", System.Type.GetType("System.Int16")) '記錄同料號間各料批應被使用的次序 + dtAllMTLLot.Columns.Add("blnExpireDate", System.Type.GetType("System.Boolean")) '紀錄是否有超過有效期限 有:True 沒有:False + + Select Case dsWIP.Tables(tblLotState).Rows(0)("MaterialOption").ToString + + Case "0" ' 發料點(線邊倉或工單) + '將Temp_Material中各主料所有可用料批全數取出, 存入dtAllMTLLot中 + For Each drMTL As DataRow In dsWIP.Tables(tblTMaterial).Rows + If drMTL("LOTNO").ToString <> "" Then + Call funLoadSubstituteMaterial_Main(LotNo, drMTL("MaterialNo"), drMTL("UnitNo")) + For Each drMTLLot As DataRow In dsWIP.Tables(tblSubstituteMaterial).Rows + drAdd = dtAllMTLLot.NewRow + drAdd("MaterialNo") = drMTL("MaterialNo") 'BOM的主料號 + drAdd("MaterialLotNo") = drMTLLot("MaterialLotNo") + drAdd("Qty") = drMTLLot("Qty") + 'drAdd("MFGDate") = drMTLLot("ManufactureDate") + 'drAdd("ExpireDate") = drMTLLot("ExpireDate") + If drMTLLot("ManufactureDate").ToString = "" Then + drAdd("MFGDate") = defNullDate + Else + drAdd("MFGDate") = drMTLLot("ManufactureDate") + End If + If drMTLLot("ExpireDate").ToString = "" Then + drAdd("ExpireDate") = defNullDate + Else + drAdd("ExpireDate") = drMTLLot("ExpireDate") + End If + If drMTLLot("InputDate").ToString = "" Then + drAdd("InputDate") = defNullDate + Else + drAdd("InputDate") = drMTLLot("InputDate") + End If + + drAdd("SubstituteMaterialNo") = drMTLLot("MaterialNo") '實際料號, 有可能與主料號同也有可能是替代料號 + drAdd("SubstituteMaterialLevel") = drMTLLot("SubstituteMaterialLevel") + drAdd("SubstituteMaterialType") = drMTLLot("SubstituteMaterialType") + drAdd("SubstituteStdQty") = drMTLLot("SubstituteStdQty") + drAdd("CheckLotNo") = drMTLLot("CheckLotNo") + dtAllMTLLot.Rows.Add(drAdd) + Next + End If + Next + + '計算同一料號各料批的使用次序 + Dim dvAllMTLLot, dvTemp As DataView + Dim dtTemp As DataTable + For Each drMTL As DataRow In dsWIP.Tables(tblTMaterial).Rows + If drMTL("LOTNO").ToString <> "" Then + 'drSel = dtAllMTLLot.Select("MaterialNo = '" & drMTL("MaterialNo") & "'", "MFGDate, ExpireDate, InputDate") + 'For idx As Integer = 0 To drSel.Length - 1 + ' drSel(idx)("SeqNo") = idx + 1 + 'Next + dvAllMTLLot = New DataView(dtAllMTLLot) + dvAllMTLLot.RowFilter = "MaterialNo = '" & drMTL("MaterialNo") & "'" + dtTemp = dvAllMTLLot.ToTable(True, {"MFGDate", "ExpireDate", "InputDate"}) '對製造日期,有效日期,入庫日做Distinct篩選 + dvTemp = dtTemp.DefaultView + dvTemp.Sort = "MFGDate, ExpireDate, InputDate" + '當MFGDate, ExpireDate, InputDate皆相同時, 需給予相同的SeqNo, 故以Distinct的三個日期下去跑Loop + For idx As Integer = 0 To dvTemp.Count - 1 + drSel = dtAllMTLLot.Select("MaterialNo = '" & drMTL("MaterialNo") & "'" & + "And MFGDate = #" & Format(dvTemp(idx)("MFGDate"), "yyyy/MM/dd HH:mm:ss") & "#" & + " And ExpireDate = #" & Format(dvTemp(idx)("ExpireDate"), "yyyy/MM/dd HH:mm:ss") & "#" & + " And InputDate = #" & Format(dvTemp(idx)("InputDate"), "yyyy/MM/dd HH:mm:ss") & "#") + For j As Integer = 0 To drSel.Length - 1 + drSel(j)("SeqNo") = idx + 1 + If Now > CDate(drSel(j)("EXPIREDATE")) Then '判定是否超過有效期限 + drSel(j)("blnExpireDate") = True + Else + drSel(j)("blnExpireDate") = False + End If + Next + Next + End If + Next + + End Select + + End Sub + +#Region "CheckEQPQCList" + + Private Function funCheckEQPQCList(ByVal EquipmentNo As String, ByRef CheckResult As String) As Integer + + funCheckEQPQCList = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("equipmentno", "EquipmentNo", "String", CInput(EquipmentNo), "") + strParameter += CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.CheckEQPQCList", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '取出CheckResult + If XmlDoc.GetElementsByTagName("checkresult").Item(0).SelectNodes("value").Count > 0 Then + CheckResult = XmlDoc.DocumentElement.GetElementsByTagName("checkresult").Item(0).SelectNodes("value").Item(0).InnerText + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funCheckEQPQCList = 0 + + End Function + + Private Function funCheckEQPQCTask(ByVal EquipmentNo As String, Optional ByVal CancelUpdate As Boolean = False) As Integer + + funCheckEQPQCTask = -1 + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, UserId, Now) + strParameter = CombineXMLParameter("equipmentno", "EquipmentNo", "String", CInput(EquipmentNo), "") + strParameter += CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + strParameter += CombineXMLParameter("cancelupdate", "CancelUpdate", "Boolean", CancelUpdate, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + OutXml = InvokeSrv("wsWIP.CheckEQPQCTask", InXml) + + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Function + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Function + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Function + End Try + + funCheckEQPQCTask = 0 + + End Function + +#End Region + + +#Region "ChkCIEQPDispatch" + ''2023/05/29 ,0135702: [6.0.7] SDD220425_01-03_進站設備派工查核調整,19245 + Private Sub ChkCIEQPDispatch(ByVal EquipmentNo As String, ByVal LotNo As String, Optional OpNo As String = defString) + + If Not IsNothing(dsEQP) Then + dsEQP.Clear() + dsEQP.Dispose() + End If + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("equipmentno", "EquipmentNo", "String", CInput(EquipmentNo), "") + strParameter += CombineXMLParameter("lotno", "LotNo", "String", CInput(LotNo), "") + + InXml = CombineXMLRequest(strIdentity, strParameter) + + Dim XmlDoc As New XmlDocument + Try + OutXml = InvokeSrv("wsWIP.ChkCIEQPDispatch", InXml) + + '利用XmlDoc物件處理ReturnValue + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + ckhEQPDispatchRule = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("chkcieqpdispatch").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("chkcieqpdispatch").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsEQP.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '取出Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("chkcieqpdispatch").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsEQP.ReadXml(tmpStringReader) + tmpStringReader.Close() + End If + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Sub + End If + + XmlDoc = Nothing + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Exit Sub + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + Exit Sub + End Try + End Sub + +#End Region + Private Sub DeleteTmpMTLLotNo(ByVal EquipmentNo As String) + + Dim drSelTmpMTL As DataRow() = dsWIP.Tables(tblTmpMTLLotNo).Select("EquipmentNo = '" & EquipmentNo & "'") + For i As Integer = drSelTmpMTL.Count - 1 To 0 Step -1 + drSelTmpMTL(i).Delete() + Next + dsWIP.Tables(tblTmpMTLLotNo).AcceptChanges() + + End Sub + Private Sub LoadMaterialByEquipment(ByVal EquipmentNo As String) + + Try + DeleteTmpMTLLotNo(EquipmentNo) + + Dim MONo As String = dsWIP.Tables(tblLotState).Rows(0)("MONo").ToString + Dim OrgMaterialNo As String + ' 依設備及工單取出設備上料現況 + Dim dtMaterialState As DataTable + If (Not LoadEQPMaterialState(dtMaterialState, EquipmentNo, MONo)) Then + Exit Sub + End If + + ' 寫入暫存表 + For Each r As DataRowView In dtMaterialState.DefaultView + 'Dim drSel() As DataRow = dsWIP.Tables(tblTMaterial).Select("MaterialNo = '" & r("MaterialNo") & "' ") + '物料表中的materialno是* 改成InputMaterialNo 14278 + Dim drSel() As DataRow = dsWIP.Tables(tblTMaterial).Select("MaterialNo = '" & r("InputMaterialNo") & "' ") + If drSel.Length > 0 Then + '根据实际用料 投料点 和检查料批 找到用料清单的数据 原物料-------- + Dim drSel1() As DataRow = dsOE.Tables(strMOList).Select("SubstituteMaterialNo='" & r("InputMaterialNo").ToString & "' and PutInPlaceType='" & drSel(0)("PutInPlaceType") & "' AND CheckLotNo='" & drSel(0)("CHECKLOTNO") & "'") + If drSel1.Length > 0 Then + OrgMaterialNo = drSel1(0)("MATERIALNO").ToString() + End If + ''---------------------- + If drSel(0)("PutInPlaceType") = 3 Then + If r("MONO").ToString.ToUpper = MONo.ToUpper Then + Dim drAdd As DataRow = dsWIP.Tables(tblTmpMTLLotNo).NewRow + drAdd("EquipmentNo") = r("EquipmentNo") + 'drAdd("OrgMaterialNo") = r("MaterialNo").ToString 'Me.iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + drAdd("OrgMaterialNo") = OrgMaterialNo 'Me.iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + drAdd("SUBSTITUTEMATERIALNO") = r("InputMaterialNo").ToString + drAdd("MaterialNo") = r("InputMaterialNo").ToString 'Me.iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + drAdd("MaterialLotNo") = r("MaterialLotNo").ToString 'pMaterialLotNo + drAdd("Qty") = r("Qty") + dsWIP.Tables(tblTmpMTLLotNo).Rows.Add(drAdd) + End If + ElseIf drSel(0)("PutInPlaceType") = 2 OrElse drSel(0)("PutInPlaceType") = 4 Then + If r("MONO").ToString.ToUpper = "N/A" Then + Dim drAdd As DataRow = dsWIP.Tables(tblTmpMTLLotNo).NewRow + drAdd("EquipmentNo") = r("EquipmentNo") + 'drAdd("OrgMaterialNo") = r("MaterialNo").ToString 'Me.iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + drAdd("OrgMaterialNo") = OrgMaterialNo 'Me.iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + drAdd("SUBSTITUTEMATERIALNO") = r("InputMaterialNo").ToString + drAdd("MaterialNo") = r("InputMaterialNo").ToString 'Me.iugMaterial.iMESUltraGrid.ActiveRow.Cells("MaterialNo").Value + drAdd("MaterialLotNo") = r("MaterialLotNo").ToString 'pMaterialLotNo + drAdd("Qty") = r("Qty") + dsWIP.Tables(tblTmpMTLLotNo).Rows.Add(drAdd) + End If + End If + End If + Next + + Catch ex As iMESException.MESException + ExceptionManager.iMESShowDialog(ex.ErrorCode, ex.Message, ex.StackTrace) + Catch ex As Exception + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Sub + + Private Sub uegMaterial_KeyIn2_ExpandedStateChanged(sender As Object, e As EventArgs) Handles uegMaterial_KeyIn2.ExpandedStateChanged, uegAttrib_Equipment.ExpandedStateChanged + + If uegMaterial_KeyIn2.Expanded Then + + If uegAttrib_Equipment.Expanded Then + uegMaterial_KeyIn2.Size = New System.Drawing.Size(uegMaterial_KeyIn2.Width, (uplAll.Height - uegLotInfo.Height) / 2 - 10) + uegAttrib_Equipment.Size = New System.Drawing.Size(uegAttrib_Equipment.Width, (uplAll.Height - uegLotInfo.Height) / 2 - 10) + End If + + Else + + If uegAttrib_Equipment.Expanded Then + uegAttrib_Equipment.Size = New System.Drawing.Size(uegAttrib_Equipment.Width, uplAll.Height - uegLotInfo.Height - 20) + End If + + End If + + End Sub +#Region "'//^_^ADD BY H-14278 2023-12-29 新设备上料" + ''' + ''' 获取工单用料清单 + ''' + ''' + ''' + Private Sub funLoadMOMaterialList(ByVal MONo As String, ByVal OPNo As String) '//取出MO MaterialList資料 + + + Dim i, j As Integer + + If Not IsNothing(dsOE.Tables(strMOList)) Then '修正用料清單多次查詢重複計算問題 + dsOE.Tables.Remove(strMOList) + End If + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("mono", "MONo", "String", MONo.ToUpper, "") + strParameter += CombineXMLParameter("opno", "OPNo", "String", OPNo.ToUpper, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + ' 2016 YF, OutXml = wsOE.LoadMOMaterialListJoinMOBasis(InXml) + OutXml = InvokeSrv("wsOE.LoadMOMaterialListJoinMOBasis", InXml) + + '利用XmlDoc物件處理ReturnValue + Dim XmlDoc As New XmlDocument + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '讀取取出資料表之名稱 + + strMOList = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadmomateriallistjoinmobasis").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadmomateriallistjoinmobasis").Item(0).SelectNodes("schema").Item(0).InnerXml + If XmlSchema <> "" Then + '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 + tmpStringReader = New System.IO.StringReader(XmlSchema) + dsOE.ReadXmlSchema(tmpStringReader) + tmpStringReader.Close() + End If + '取出Data + XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadmomateriallistjoinmobasis").Item(0).SelectNodes("value").Item(0).InnerXml + If XmlData <> "" Then + tmpStringReader = New System.IO.StringReader(XmlData) + dsOE.ReadXml(tmpStringReader, XmlReadMode.InferSchema) + tmpStringReader.Close() + End If + + XmlDoc = Nothing + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + Exit Sub + End If + + Catch ex As Exception + 'MsgBox("Unexpected Error. Load MO Material List Failed," & e1.Message, MsgBoxStyle.Exclamation) + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + + Finally + tmpStringReader = Nothing + End Try + + End Sub + +#End Region + +End Class diff --git a/SRC/MESPlugin/MESPI_BusinessRule/iMES.snk b/SRC/MESWin/BR/BR_L_CI_GEN/iMES.snk similarity index 100% rename from SRC/MESPlugin/MESPI_BusinessRule/iMES.snk rename to SRC/MESWin/BR/BR_L_CI_GEN/iMES.snk diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.sln b/SRC/MESWin/BR/BR_L_CO_GEN/BR_L_CO_GEN.sln similarity index 68% rename from SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.sln rename to SRC/MESWin/BR/BR_L_CO_GEN/BR_L_CO_GEN.sln index 85b1902..6cd5641 100644 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.sln +++ b/SRC/MESWin/BR/BR_L_CO_GEN/BR_L_CO_GEN.sln @@ -1,11 +1,14 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 +VisualStudioVersion = 14.0.25420.1 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "BR_L_CO_GEN", "BR_L_CO_GEN.vbproj", "{380C6B38-FB64-49BE-A9A8-5E49015ADFD2}" EndProject Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" + ProjectSection(ProjectDependencies) = postProject + {380C6B38-FB64-49BE-A9A8-5E49015ADFD2} = {380C6B38-FB64-49BE-A9A8-5E49015ADFD2} + EndProjectSection EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -13,10 +16,10 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 + {380C6B38-FB64-49BE-A9A8-5E49015ADFD2}.Debug|x86.ActiveCfg = Debug|x86 + {380C6B38-FB64-49BE-A9A8-5E49015ADFD2}.Debug|x86.Build.0 = Debug|x86 + {380C6B38-FB64-49BE-A9A8-5E49015ADFD2}.Release|x86.ActiveCfg = Release|x86 + {380C6B38-FB64-49BE-A9A8-5E49015ADFD2}.Release|x86.Build.0 = Release|x86 {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 @@ -29,11 +32,11 @@ Global SccNumberOfProjects = 3 SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj SccLocalPath0 = . SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj SccProjectName1 = ../../Test SccLocalPath1 = ..\\..\\Test + SccProjectUniqueName2 = BR_L_CO_GEN.vbproj SccLocalPath2 = . EndGlobalSection EndGlobal diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.vbproj b/SRC/MESWin/BR/BR_L_CO_GEN/BR_L_CO_GEN.vbproj similarity index 69% rename from SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.vbproj rename to SRC/MESWin/BR/BR_L_CO_GEN/BR_L_CO_GEN.vbproj index 74144a4..c4c85fc 100644 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.vbproj +++ b/SRC/MESWin/BR/BR_L_CO_GEN/BR_L_CO_GEN.vbproj @@ -4,10 +4,10 @@ Debug x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} + {380C6B38-FB64-49BE-A9A8-5E49015ADFD2} Library - ET_Subcontractor_21695 - ET_Subcontractor_21695 + BR_L_CO_GEN + BR_L_CO_GEN 512 Windows v4.6.2 @@ -17,6 +17,28 @@ SAK SAK + + true + full + true + true + ..\..\..\MESClient\ + BR_L_CO_GEN.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + 0 + false + + + pdbonly + false + true + true + bin\Release\ + BR_L_CO_GEN.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + 0 + false + On @@ -34,7 +56,7 @@ true true ..\..\..\MESClient\ - ET_Subcontractor_21695.xml + BR_L_CO_GEN.xml 0 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 full @@ -45,7 +67,7 @@ true ..\..\..\MESClient\ - ET_Subcontractor_21695.xml + BR_L_CO_GEN.xml true 0 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 @@ -60,10 +82,12 @@ iMES.snk - - false - + + False + ..\..\..\MES_C_DLL\iMESWizards.dll + False + False C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll @@ -89,10 +113,29 @@ C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll False + + False + ..\..\..\MESClient\COM_ERP.dll + False + ..\..\..\MESClient\COM_Kit.dll False + + False + ..\..\..\MESClient\COM_Search.dll + False + + + False + ..\..\..\MESClient\COM_Utility.dll + False + + + ..\..\..\MES_C_DLL\iMESException.dll + False + ..\..\..\MES_C_DLL\iMESExceptionManager.dll False @@ -104,14 +147,24 @@ + + + + + + False + ..\..\..\MESClient\WP_Kit.dll + False + + @@ -124,25 +177,22 @@ + modConstant.vb - + Form - - Form - - + Form True Application.myapp - True True @@ -156,14 +206,11 @@ - - frmSubcontractor.vb + + frmBinStateAdjust .vb - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb + + frmBR_L_CO_GEN.vb @@ -185,6 +232,9 @@ Settings.Designer.vb + + + - - \ No newline at end of file diff --git a/SRC/MESWin/ENT/ET_Subcontractor/My Project/Settings.Designer.vb b/SRC/MESWin/ENT/ET_Subcontractor/My Project/Settings.Designer.vb deleted file mode 100644 index aa098f6..0000000 --- a/SRC/MESWin/ENT/ET_Subcontractor/My Project/Settings.Designer.vb +++ /dev/null @@ -1,76 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 這段程式碼是由工具產生的。 -' 執行階段版本:4.0.30319.42000 -' -' 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, -' 變更將會遺失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自動儲存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - - Friend ReadOnly Property Settings() As Global.ET_Subcontractor.My.MySettings - Get - Return Global.ET_Subcontractor.My.MySettings.Default - - - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractor.vb b/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractor.vb deleted file mode 100644 index d2a3050..0000000 --- a/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractor.vb +++ /dev/null @@ -1,1142 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("AGE") - .Header.Caption = "AGE" - .Width = 150 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With .Bands(0).Columns("AGE") - .Header.Caption = "AGE" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 12 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.vb b/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.vb deleted file mode 100644 index 4ccbafa..0000000 --- a/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.vb +++ /dev/null @@ -1,751 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - - Friend WithEvents UltraTextEditor1 As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents dll21671 As Label - - Friend WithEvents lblAge As Label - Friend WithEvents txtAge As Infragistics.Win.UltraWinEditors.UltraTextEditor - - - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - - - Me.dll21671 = New System.Windows.Forms.Label() - Me.UltraTextEditor1 = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - - Me.txtAge = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - - - CType(Me.UltraTextEditor1, System.ComponentModel.ISupportInitialize).BeginInit() - - CType(Me.txtAge, System.ComponentModel.ISupportInitialize).BeginInit() - - - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - - - Me.gbxSubcontractorContData.Controls.Add(Me.UltraTextEditor1) - Me.gbxSubcontractorContData.Controls.Add(Me.dll21671) - - Me.gbxSubcontractorContData.Controls.Add(Me.txtAge) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAge) - - - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(116, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 26) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 26) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 26) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 26) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(116, 190) - Me.txtDescription.Name = "txtDescription" - - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - - - Me.txtDescription.Size = New System.Drawing.Size(316, 36) - - Me.txtDescription.Size = New System.Drawing.Size(336, 21) - - - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 26) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 26) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 26) - Me.txtTelNo.TabIndex = 5 - ' - - - 'dll21671 - ' - Me.dll21671.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.dll21671.Location = New System.Drawing.Point(14, 236) - Me.dll21671.Name = "dll21671" - Me.dll21671.Size = New System.Drawing.Size(86, 14) - Me.dll21671.TabIndex = 16 - Me.dll21671.Text = "AGE" - Me.dll21671.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'UltraTextEditor1 - ' - Me.UltraTextEditor1.Location = New System.Drawing.Point(116, 232) - Me.UltraTextEditor1.Name = "UltraTextEditor1" - Me.UltraTextEditor1.Size = New System.Drawing.Size(114, 26) - Me.UltraTextEditor1.TabIndex = 17 - - 'txtAge - ' - Me.txtAge.Location = New System.Drawing.Point(120, 222) - Me.txtAge.Name = "txtAge" - Me.txtAge.Size = New System.Drawing.Size(336, 22) - Me.txtAge.TabIndex = 17 - - ' - - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - - - CType(Me.UltraTextEditor1, System.ComponentModel.ISupportInitialize).EndInit() - - CType(Me.txtAge, System.ComponentModel.ISupportInitialize).EndInit() - - - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - - - dll21671.Text = EditDataRow.Item("AGE").ToString - - txtAge.Text = EditDataRow.Item("Age").ToString - - - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - strParameter = strParameter & CombineXMLParameter("AGE", "AGE", "String", CInput(dll21671.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - - - Private Sub UltraTextEditor1_ValueChanged(sender As Object, e As EventArgs) Handles UltraTextEditor1.ValueChanged - - End Sub - - Private Sub DD_Click(sender As Object, e As EventArgs) Handles dll21671.Click - - End Sub - - - -End Class - diff --git a/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.vb b/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.vb deleted file mode 100644 index e7662bc..0000000 --- a/SRC/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.vb +++ /dev/null @@ -1,476 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - - - Friend WithEvents RichTextBox1 As RichTextBox - Friend WithEvents dll21671_01 As Label - - Friend WithEvents txtAge As RichTextBox - Friend WithEvents lblAge As Label - - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.dll21671_01 = New System.Windows.Forms.Label() - Me.RichTextBox1 = New System.Windows.Forms.RichTextBox() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - - - Me.gbxSubcontractorData.Controls.Add(Me.RichTextBox1) - Me.gbxSubcontractorData.Controls.Add(Me.dll21671_01) - - Me.gbxSubcontractorData.Controls.Add(Me.txtAge) - Me.gbxSubcontractorData.Controls.Add(Me.lblAge) - - - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - - - Me.txtDescription.Size = New System.Drawing.Size(316, 33) - - Me.txtDescription.Size = New System.Drawing.Size(334, 24) - - - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 26) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 26) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'dll21671_01 - ' - Me.dll21671_01.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.dll21671_01.Location = New System.Drawing.Point(56, 128) - Me.dll21671_01.Name = "dll21671_01" - Me.dll21671_01.Size = New System.Drawing.Size(64, 14) - Me.dll21671_01.TabIndex = 14 - Me.dll21671_01.Text = "AGE" - Me.dll21671_01.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'RichTextBox1 - ' - Me.RichTextBox1.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.RichTextBox1.Location = New System.Drawing.Point(128, 125) - Me.RichTextBox1.Name = "RichTextBox1" - Me.RichTextBox1.Size = New System.Drawing.Size(120, 33) - Me.RichTextBox1.TabIndex = 15 - Me.RichTextBox1.Text = "" - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - - - dll21671_01.Text = EditDataRow.Item("AGE").ToString - - txtAge.Text = EditDataRow.Item("Age").ToString - - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - strParameter = strParameter & CombineXMLParameter("AGE", "AGE", "String", dll21671_01.Text, "") - - strParameter = strParameter & CombineXMLParameter("age", "Age", "String", txtAge.Text, "") - - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj b/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj deleted file mode 100644 index fc8e9ea..0000000 --- a/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj +++ /dev/null @@ -1,207 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj - ET_Subcontractor_21691 - ET_Subcontractor_21691 -======== - ET_Teacher_M - ET_Teacher_M ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj - ET_Subcontractor_21691.xml -======== - ET_Teacher_M.xml ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj - ET_Subcontractor_21691.xml -======== - ET_Teacher_M.xml ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmSubcontractor.vb - - - frmTeacherContDef.vb - - - frmTeacherDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj.user b/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj.user deleted file mode 100644 index 9fe4e52..0000000 --- a/SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj.user +++ /dev/null @@ -1,6 +0,0 @@ - - - - D:\Program Files\work\IIS\607.4\MESsc\SClientSource\ - - \ No newline at end of file diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/Application.Designer.vb b/SRC/MESWin/SYS1/ET_21674/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS1/ET_21674/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS1/ET_21674/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS1/ET_21674/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS1/ET_21674/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS1/ET_21674/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/Resources.Designer.vb b/SRC/MESWin/SYS1/ET_21674/My Project/Resources.Designer.vb deleted file mode 100644 index 688b951..0000000 --- a/SRC/MESWin/SYS1/ET_21674/My Project/Resources.Designer.vb +++ /dev/null @@ -1,67 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/My Project/Resources.Designer.vb - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21691.Resources", GetType(Resources).Assembly) -======== - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Teacher_M.Resources", GetType(Resources).Assembly) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/My Project/Resources.Designer.vb - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/Settings.Designer.vb b/SRC/MESWin/SYS1/ET_21674/My Project/Settings.Designer.vb deleted file mode 100644 index 2ac46e7..0000000 --- a/SRC/MESWin/SYS1/ET_21674/My Project/Settings.Designer.vb +++ /dev/null @@ -1,79 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/My Project/Settings.Designer.vb - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21691.My.MySettings - Get - Return Global.ET_Subcontractor_21691.My.MySettings.Default -======== - Friend ReadOnly Property Settings() As Global.ET_Teacher_M.My.MySettings - Get - Return Global.ET_Teacher_M.My.MySettings.Default ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/My Project/Settings.Designer.vb - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/Settings.settings b/SRC/MESWin/SYS1/ET_21674/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS1/ET_21674/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/licenses.licx b/SRC/MESWin/SYS1/ET_21674/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS1/ET_21674/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS1/ET_21674/frmSubcontractor.vb b/SRC/MESWin/SYS1/ET_21674/frmSubcontractor.vb deleted file mode 100644 index 50ea352..0000000 --- a/SRC/MESWin/SYS1/ET_21674/frmSubcontractor.vb +++ /dev/null @@ -1,1133 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmTeacher - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim AA_21674TEACHER As String '儲存取回資料表的名稱(master)? - Dim AA_21674TeacherCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim TeacherNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugTeacher As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugTeacher = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugTeacher - ' - Me.iugTeacher.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugTeacher.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugTeacher.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugTeacher.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugTeacher.Identity = "IMes" - Me.iugTeacher.IdentityForm = "" - Me.iugTeacher.LayOutFilePath = "" - Me.iugTeacher.Location = New System.Drawing.Point(12, 53) - Me.iugTeacher.Name = "iugTeacher" - Me.iugTeacher.PrintFitWidthToPages = 0 - Me.iugTeacher.PrintLandscape = True - Me.iugTeacher.PrintPageFooter = "" - Me.iugTeacher.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugTeacher.PrintPageFooterHeight = 20 - Me.iugTeacher.PrintPageHeader = "" - Me.iugTeacher.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugTeacher.PrintPageHeaderHeight = 20 - Me.iugTeacher.PrintZoom = 1.0R - Me.iugTeacher.Size = New System.Drawing.Size(894, 192) - Me.iugTeacher.TabIndex = 25 - Me.iugTeacher.UserNo = "IMes" - ' - 'frmTeacher - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugTeacher) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmTeacher" - Me.Text = "ENT Teacher" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugTeacher, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadTeacher() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"TeacherNo", "TeacherNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(AA_21674TEACHER).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(AA_21674TEACHER).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(AA_21674TEACHER).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(AA_21674TEACHER).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugTeacher.iMESUltraGrid.DataSource = dsENT.Tables(AA_21674TEACHER).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim frmTeacherDef As New frmTeacherDef - - frmTeacherDef.DefMode = 0 - frmTeacherDef.ShowDialog(Me) - frmTeacherDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - TeacherNo = gReturnKeyValue - - '重新取出資料 - Call funLoadTeacher() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugTeacher, "TeacherNo", TeacherNo) - If Not ugrRow Is Nothing Then - Me.iugTeacher.iMESUltraGrid.ActiveRow = ugrRow - Me.iugTeacher.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugTeacher.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(AA_21674TEACHER).Select("TeacherNo = '" _ - & Replace(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fTeacherDef As New frmTeacherDef - fTeacherDef.DefMode = 1 - fTeacherDef.EditDataRow = Rows(0) - fTeacherDef.ShowDialog(Me) - fTeacherDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - TeacherNo = gReturnKeyValue - - '重新取出資料 - Call funLoadTeacher() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugTeacher, "TeacherNo", TeacherNo) - If Not ugrRow Is Nothing Then - Me.iugTeacher.iMESUltraGrid.ActiveRow = ugrRow - Me.iugTeacher.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugTeacher.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugTeacher.iMESUltraGrid.ActiveRow.Selected Then - Me.iugTeacher.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugTeacher.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugTeacher.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugTeacher.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugTeacher.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("TeacherNo", "TeacherNo", "String", CInput(Me.iugTeacher.iMESUltraGrid.Selected.Rows(i).Cells("TeacherNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugTeacher.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21674.DelTeacher", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadTeacher() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugTeacher.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(AA_21674TEACHER).Select("TeacherNo = '" _ - & Replace(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmTeacherDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - TeacherNo = gReturnKeyValue - - '重新取出資料 - Call funLoadTeacher() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugTeacher, "TeacherNo", TeacherNo) - If Not ugrRow Is Nothing Then - Me.iugTeacher.iMESUltraGrid.ActiveRow = ugrRow - Me.iugTeacher.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugTeacher.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugTeacher.iMESUltraGrid.ActiveRow.Selected Then - Me.iugTeacher.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugTeacher.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugTeacher.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugTeacher.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugTeacher.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("teacherno", "TeacherNo", "String", CInput(Me.iugTeacher.iMESUltraGrid.Selected.Rows(i).Cells("TeacherNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugTeacher.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21674.ApproveTeacher", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadTeacher() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmTeacherContDef - - 'fSubcontractorContDef.DefMode = 0 - ' fSubcontractorContDef.TeacherNo = Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadTeacherCont(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugTeacher.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(AA_21674TeacherCont).Select("TeacherNo = '" _ - & Replace(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTeacherContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - 'fSubcontractorContDef.TeacherNo = Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadTeacherCont(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("TeacherNo", "TeacherNo", "String", CInput(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadTeacherCont(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugTeacher.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(AA_21674TeacherCont).Select("TeacherNo = '" _ - & Replace(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTeacherContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - 'fSubcontractorContDef.TeacherNo = Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadTeacherCont(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(AA_21674TeacherCont).Select("TeacherNo = '" _ - & Replace(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadTeacher() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugTeacher.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("TeacherNo") - .Header.Caption = "TeacherNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("TeacherName") - .Header.Caption = "TeacherName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugTeacher.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugTeacher.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadTeacherCont(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("TeacherNo") - .Header.Caption = "TeacherNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("TeacherContName") - .Header.Caption = "TeacherContName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadTeacher() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(AA_21674TEACHER)) Then - dsENT.Tables.Remove(AA_21674TEACHER) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadTeacher(InXml) - 'OutXml = InvokeSrv("wsENT.LoadTeacher", InXml) - OutXml = InvokeSrv("SXS.wsENT_21674.LoadTeacher", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - AA_21674TEACHER = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("LoadTeacher").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("LoadTeacher").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("LoadTeacher").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(AA_21674TEACHER).DefaultView.RowFilter = strFilter - dsENT.Tables(AA_21674TEACHER).DefaultView.Sort = "TeacherNo" - - Me.iugTeacher.iMESUltraGrid.DataSource = dsENT.Tables(AA_21674TEACHER).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出AA_21674TeacherCont聯絡人資料 - - Private Sub funLoadTeacherCont(ByRef TeacherNo As String) - - If Not IsNothing(dsENT.Tables(AA_21674TeacherCont)) Then - dsENT.Tables.Remove(AA_21674TeacherCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("teacherno", "TeacherNo", "String", TeacherNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadTeacherCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadTeacherCont", InXml) - OutXml = InvokeSrv("SXS.wsENT_21674.LoadTeacherCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - AA_21674TeacherCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("LoadTeachercont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("LoadTeachercont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("LoadTeachercont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(AA_21674TeacherCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugTeacher.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadTeacherCont(Me.iugTeacher.iMESUltraGrid.ActiveRow.Cells("TeacherNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugTeacher 初始設定 - With Me.iugTeacher.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugTeacher.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - Private Sub iugTeacher_Load(sender As Object, e As EventArgs) Handles iugTeacher.Load - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS1/ET_21674/frmSubcontractorContDef.vb b/SRC/MESWin/SYS1/ET_21674/frmSubcontractorContDef.vb deleted file mode 100644 index c489735..0000000 --- a/SRC/MESWin/SYS1/ET_21674/frmSubcontractorContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.resx b/SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb b/SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb deleted file mode 100644 index 4a55ecf..0000000 --- a/SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb +++ /dev/null @@ -1,526 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Friend WithEvents lblTelNo As Label - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents lblEMail As Label - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblEMail = New System.Windows.Forms.Label() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblTelNo = New System.Windows.Forms.Label() -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.gbxBasisData.Location = New System.Drawing.Point(12, 211) -======== - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.btnApply.Location = New System.Drawing.Point(403, 290) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 290) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 290) -======== - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.gbxSubcontractorData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblTelNo) -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 195) -======== - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(326, 83) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 17 - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(256, 83) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 16 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(128, 83) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 15 - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(34, 83) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 14 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 111) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(58, 114) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.ClientSize = New System.Drawing.Size(503, 335) -======== - Me.ClientSize = New System.Drawing.Size(503, 309) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", CInput(txtTelNo.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractor", InXml) -======== - OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractor", InXml) -======== - OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Private Sub lblTelNo_Click(sender As Object, e As EventArgs) Handles lblTelNo.Click - - End Sub - -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb -#End Region - -End Class - diff --git a/SRC/MESWin/SYS1/ET_21674/frmTeacherContDef.resx b/SRC/MESWin/SYS1/ET_21674/frmTeacherContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS1/ET_21674/frmTeacherContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS1/ET_21674/frmTeacherContDef.vb b/SRC/MESWin/SYS1/ET_21674/frmTeacherContDef.vb deleted file mode 100644 index 0f7590a..0000000 --- a/SRC/MESWin/SYS1/ET_21674/frmTeacherContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTeacherContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblTeacherContName As System.Windows.Forms.Label - Friend WithEvents lblTeacherNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblTeacherNo = New System.Windows.Forms.Label() - Me.lblTeacherContName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTeacherNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTeacherContName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTeacherNo - ' - Me.lblTeacherNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTeacherNo.Location = New System.Drawing.Point(14, 29) - Me.lblTeacherNo.Name = "lblTeacherNo" - Me.lblTeacherNo.Size = New System.Drawing.Size(96, 14) - Me.lblTeacherNo.TabIndex = 0 - Me.lblTeacherNo.Text = "Teacher No" - Me.lblTeacherNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTeacherContName - ' - Me.lblTeacherContName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTeacherContName.Location = New System.Drawing.Point(24, 59) - Me.lblTeacherContName.Name = "lblTeacherContName" - Me.lblTeacherContName.Size = New System.Drawing.Size(86, 14) - Me.lblTeacherContName.TabIndex = 2 - Me.lblTeacherContName.Text = "TeacherCont Name" - Me.lblTeacherContName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmTeacherContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmTeacherContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS1/ET_21674/frmTeacherDef.vb b/SRC/MESWin/SYS1/ET_21674/frmTeacherDef.vb deleted file mode 100644 index 114d58d..0000000 --- a/SRC/MESWin/SYS1/ET_21674/frmTeacherDef.vb +++ /dev/null @@ -1,433 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTeacherDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblTeacherNo As System.Windows.Forms.Label - Friend WithEvents lblTeacherName As System.Windows.Forms.Label - Friend WithEvents gbxTeacherData As System.Windows.Forms.GroupBox - Friend WithEvents txtTeacherNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTeacherName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxTeacherData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblTeacherNo = New System.Windows.Forms.Label() - Me.lblTeacherName = New System.Windows.Forms.Label() - Me.txtTeacherNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTeacherName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxTeacherData.SuspendLayout() - CType(Me.txtTeacherNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTeacherName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxTeacherData - ' - Me.gbxTeacherData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxTeacherData.Controls.Add(Me.txtDescription) - Me.gbxTeacherData.Controls.Add(Me.lblDescription) - Me.gbxTeacherData.Controls.Add(Me.lblTeacherNo) - Me.gbxTeacherData.Controls.Add(Me.lblTeacherName) - Me.gbxTeacherData.Controls.Add(Me.txtTeacherNo) - Me.gbxTeacherData.Controls.Add(Me.txtTeacherName) - Me.gbxTeacherData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxTeacherData.Location = New System.Drawing.Point(12, 8) - Me.gbxTeacherData.Name = "gbxTeacherData" - Me.gbxTeacherData.Size = New System.Drawing.Size(479, 169) - Me.gbxTeacherData.TabIndex = 7 - Me.gbxTeacherData.TabStop = False - Me.gbxTeacherData.Text = "Teacher Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTeacherNo - ' - Me.lblTeacherNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTeacherNo.Location = New System.Drawing.Point(24, 24) - Me.lblTeacherNo.Name = "lblTeacherNo" - Me.lblTeacherNo.Size = New System.Drawing.Size(96, 32) - Me.lblTeacherNo.TabIndex = 5 - Me.lblTeacherNo.Text = "Teacher No" - Me.lblTeacherNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTeacherName - ' - Me.lblTeacherName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTeacherName.Location = New System.Drawing.Point(8, 56) - Me.lblTeacherName.Name = "lblTeacherName" - Me.lblTeacherName.Size = New System.Drawing.Size(112, 32) - Me.lblTeacherName.TabIndex = 9 - Me.lblTeacherName.Text = "Teacher Name" - Me.lblTeacherName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtTeacherNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtTeacherNo.Appearance = Appearance1 - Me.txtTeacherNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtTeacherNo.Location = New System.Drawing.Point(128, 24) - Me.txtTeacherNo.Name = "txtTeacherNo" - Me.txtTeacherNo.Size = New System.Drawing.Size(152, 22) - Me.txtTeacherNo.TabIndex = 0 - ' - 'txtTeacherName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtTeacherName.Appearance = Appearance2 - Me.txtTeacherName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtTeacherName.Location = New System.Drawing.Point(128, 55) - Me.txtTeacherName.Name = "txtTeacherName" - Me.txtTeacherName.Size = New System.Drawing.Size(334, 22) - Me.txtTeacherName.TabIndex = 1 - ' - 'frmTeacherDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxTeacherData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmTeacherDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Teacher Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxTeacherData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxTeacherData.ResumeLayout(False) - Me.gbxTeacherData.PerformLayout() - CType(Me.txtTeacherNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTeacherName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtTeacherNo.Text = EditDataRow.Item("TeacherNo").ToString - txtTeacherName.Text = EditDataRow.Item("TeacherName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtTeacherNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtTeacherNo.Focus() - Else - txtTeacherName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtTeacherNo.Focus() - Else - txtTeacherName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherNo.Click - txtTeacherNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherNo.Enter - txtTeacherNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTeacherNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherNo.Leave - txtTeacherNo.Text = UCase(txtTeacherNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.Click - txtTeacherName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.Enter - txtTeacherName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTeacherName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtTeacherNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%TeacherNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtTeacherNo.Focus() - Exit Function - End If - - If txtTeacherName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%TeacherName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtTeacherName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("teacherno", "TeacherNo", "String", CInput(txtTeacherNo.Text), "") - strParameter = strParameter & CombineXMLParameter("teachername", "TeacherName", "String", CInput(txtTeacherName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT_21674.AddTeacher", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT_21674.EditTeacher", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtTeacherNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - - Private Sub lblSubcontractorNo_Click(sender As Object, e As EventArgs) Handles lblTeacherNo.Click - - End Sub - - Private Sub btnConfirm_Click_1(sender As Object, e As EventArgs) Handles btnConfirm.Click - - End Sub - - Private Sub lblSubcontractorName_Click(sender As Object, e As EventArgs) Handles lblTeacherName.Click - - End Sub - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.sln b/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.sln deleted file mode 100644 index f53561a..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.sln +++ /dev/null @@ -1,31 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.34407.143 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor_21710", "ET_Subcontractor_21710.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {6D3C286F-62F4-4F6B-BEAD-599D39767969} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.vbproj b/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.vbproj deleted file mode 100644 index 9032857..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.vbproj +++ /dev/null @@ -1,194 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor_21710 - ET_Subcontractor_21710 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor_21710.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor_21710.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmTest.vb - - - frmTestContDef.vb - - - frmTestDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710_02.sln b/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710_02.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710_02.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.Designer.vb b/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.myapp b/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS2/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.Designer.vb b/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.Designer.vb deleted file mode 100644 index c0877f0..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21710.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.Designer.vb b/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.Designer.vb deleted file mode 100644 index 548a053..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21710.My.MySettings - Get - Return Global.ET_Subcontractor_21710.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.settings b/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/licenses.licx b/SRC/MESWin/SYS2/ET_Subcontractor/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/frmTest.vb b/SRC/MESWin/SYS2/ET_Subcontractor/frmTest.vb deleted file mode 100644 index ff08a12..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/frmTest.vb +++ /dev/null @@ -1,1129 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmTest - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmTestDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmTestDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmTestDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmTestContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTestContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTestContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21710_02.LoadTest", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadTest").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadTest").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadTest").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.resx b/SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.vb b/SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.vb deleted file mode 100644 index c90a334..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTestContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.resx b/SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.vb b/SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.vb deleted file mode 100644 index cd5f907..0000000 --- a/SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.vb +++ /dev/null @@ -1,421 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTestDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/iMES.snk b/SRC/MESWin/SYS2/ET_Subcontractor/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS2/ET_Subcontractor/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS2/SYSENT21687/ET_Subcontractor.sln b/SRC/MESWin/SYS2/SYSENT21687/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS2/SYSENT21687/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS2/SYSENT21687/ET_Subcontractor.vbproj b/SRC/MESWin/SYS2/SYSENT21687/ET_Subcontractor.vbproj deleted file mode 100644 index c4e1d20..0000000 --- a/SRC/MESWin/SYS2/SYSENT21687/ET_Subcontractor.vbproj +++ /dev/null @@ -1,194 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor_21687 - ET_Subcontractor_21687 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor_21687.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor_21687.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmSubcontractor.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractor.resx b/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorContDef.resx b/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorContDef.vb b/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorContDef.vb deleted file mode 100644 index 9f4f65b..0000000 --- a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorContDef.vb +++ /dev/null @@ -1,784 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents gbxBasisData As Infragistics.Win.Misc.UltraGroupBox - Friend WithEvents txtReviseDate As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtReviser As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents lblReviseDate As Infragistics.Win.Misc.UltraLabel - Friend WithEvents lblReviser As Infragistics.Win.Misc.UltraLabel - Friend WithEvents txtCreateDate As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtCreator As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents lblCreateDate As Infragistics.Win.Misc.UltraLabel - Friend WithEvents lblCreator As Infragistics.Win.Misc.UltraLabel - Friend WithEvents btnApply As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnConfirm As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance3 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance4 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance5 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.txtReviseDate = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtReviser = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblReviseDate = New Infragistics.Win.Misc.UltraLabel() - Me.lblReviser = New Infragistics.Win.Misc.UltraLabel() - Me.txtCreateDate = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtCreator = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblCreateDate = New Infragistics.Win.Misc.UltraLabel() - Me.lblCreator = New Infragistics.Win.Misc.UltraLabel() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtReviseDate, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtReviser, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtCreateDate, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtCreator, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(395, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(207, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(301, 401) - ' - 'txtReviseDate - ' - Me.txtReviseDate.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.txtReviseDate.Location = New System.Drawing.Point(327, 39) - Me.txtReviseDate.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.txtReviseDate.Name = "txtReviseDate" - Me.txtReviseDate.ReadOnly = True - Me.txtReviseDate.Size = New System.Drawing.Size(140, 21) - Me.txtReviseDate.TabIndex = 31 - ' - 'txtReviser - ' - Me.txtReviser.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.txtReviser.Location = New System.Drawing.Point(100, 39) - Me.txtReviser.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.txtReviser.Name = "txtReviser" - Me.txtReviser.ReadOnly = True - Me.txtReviser.Size = New System.Drawing.Size(140, 21) - Me.txtReviser.TabIndex = 29 - ' - 'lblReviseDate - ' - Me.lblReviseDate.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Appearance1.TextHAlignAsString = "Right" - Appearance1.TextVAlignAsString = "Middle" - Me.lblReviseDate.Appearance = Appearance1 - Me.lblReviseDate.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblReviseDate.Location = New System.Drawing.Point(246, 40) - Me.lblReviseDate.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.lblReviseDate.Name = "lblReviseDate" - Me.lblReviseDate.Size = New System.Drawing.Size(75, 22) - Me.lblReviseDate.TabIndex = 30 - Me.lblReviseDate.Text = "Revise Date" - ' - 'lblReviser - ' - Me.lblReviser.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Appearance2.TextHAlignAsString = "Right" - Appearance2.TextVAlignAsString = "Middle" - Me.lblReviser.Appearance = Appearance2 - Me.lblReviser.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblReviser.Location = New System.Drawing.Point(19, 40) - Me.lblReviser.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.lblReviser.Name = "lblReviser" - Me.lblReviser.Size = New System.Drawing.Size(75, 22) - Me.lblReviser.TabIndex = 28 - Me.lblReviser.Text = "Reviser" - ' - 'txtCreateDate - ' - Me.txtCreateDate.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.txtCreateDate.Location = New System.Drawing.Point(327, 7) - Me.txtCreateDate.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.txtCreateDate.Name = "txtCreateDate" - Me.txtCreateDate.ReadOnly = True - Me.txtCreateDate.Size = New System.Drawing.Size(140, 21) - Me.txtCreateDate.TabIndex = 27 - ' - 'txtCreator - ' - Me.txtCreator.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.txtCreator.Location = New System.Drawing.Point(100, 7) - Me.txtCreator.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.txtCreator.Name = "txtCreator" - Me.txtCreator.ReadOnly = True - Me.txtCreator.Size = New System.Drawing.Size(140, 21) - Me.txtCreator.TabIndex = 25 - ' - 'lblCreateDate - ' - Me.lblCreateDate.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Appearance3.TextHAlignAsString = "Right" - Appearance3.TextVAlignAsString = "Middle" - Me.lblCreateDate.Appearance = Appearance3 - Me.lblCreateDate.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblCreateDate.Location = New System.Drawing.Point(246, 8) - Me.lblCreateDate.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.lblCreateDate.Name = "lblCreateDate" - Me.lblCreateDate.Size = New System.Drawing.Size(75, 22) - Me.lblCreateDate.TabIndex = 26 - Me.lblCreateDate.Text = "Create Date" - ' - 'lblCreator - ' - Me.lblCreator.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Appearance4.TextHAlignAsString = "Right" - Appearance4.TextVAlignAsString = "Middle" - Me.lblCreator.Appearance = Appearance4 - Me.lblCreator.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblCreator.Location = New System.Drawing.Point(19, 8) - Me.lblCreator.Margin = New System.Windows.Forms.Padding(3, 5, 3, 5) - Me.lblCreator.Name = "lblCreator" - Me.lblCreator.Size = New System.Drawing.Size(75, 22) - Me.lblCreator.TabIndex = 24 - Me.lblCreator.Text = "Creator" - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance5.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance5 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtReviseDate, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtReviser, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtCreateDate, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtCreator, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS687.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS687.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorDef.resx b/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorDef.vb b/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorDef.vb deleted file mode 100644 index 87fdf9f..0000000 --- a/SRC/MESWin/SYS2/SYSENT21687/frmSubcontractorDef.vb +++ /dev/null @@ -1,458 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents Label1 As Label - - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents txtbox As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.Label1 = New System.Windows.Forms.Label() - Me.txtbox = New System.Windows.Forms.RichTextBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 323) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 402) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 402) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 402) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.Label1) - Me.gbxSubcontractorData.Controls.Add(Me.txtbox) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 307) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'Label1 - ' - Me.Label1.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Label1.Location = New System.Drawing.Point(58, 162) - Me.Label1.Name = "Label1" - Me.Label1.Size = New System.Drawing.Size(64, 14) - Me.Label1.TabIndex = 15 - Me.Label1.Text = "testTXT" - Me.Label1.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtbox - ' - Me.txtbox.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtbox.Location = New System.Drawing.Point(128, 159) - Me.txtbox.Name = "txtbox" - Me.txtbox.Size = New System.Drawing.Size(334, 67) - Me.txtbox.TabIndex = 14 - Me.txtbox.Text = "" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 26) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 26) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 447) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - txtbox.Text = EditDataRow.Item("Test21687").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConfirm.Click - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtbox_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter, txtbox.Enter - txtbox.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - strParameter = strParameter & CombineXMLParameter("test21687", "Test21687", "String", CInput(txtbox.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS687.wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS687.wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - - Private Sub txtbox_TextChanged(sender As Object, e As EventArgs) Handles txtbox.TextChanged - btnApplyEnabled = True - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS2/新建 文本文档.txt b/SRC/MESWin/SYS2/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/ET_Subcontractor.sln b/SRC/MESWin/SYS3/ET_Subcontractor_21676/ET_Subcontractor.sln deleted file mode 100644 index 9d2004a..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/ET_Subcontractor.sln +++ /dev/null @@ -1,31 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.34407.143 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor_21676", "ET_Subcontractor_21676.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {E2B8A98D-2A89-4F3A-84D9-5910CE795ED7} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Application.Designer.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Application.myapp b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Resources.Designer.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Resources.Designer.vb deleted file mode 100644 index 6d51f55..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21676.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Resources.resx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Settings.Designer.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Settings.Designer.vb deleted file mode 100644 index ef91bf4..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21676.My.MySettings - Get - Return Global.ET_Subcontractor_21676.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Settings.settings b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/licenses.licx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor.resx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor.vb deleted file mode 100644 index dbb69ad..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor.vb +++ /dev/null @@ -1,1133 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo_21676 As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(1002, 616) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(1002, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(1002, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(1002, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(1002, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(1002, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(984, 378) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(1002, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(1002, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(1002, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(1002, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(1002, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(984, 256) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1098, 655) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo_21676", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo_21676", SubcontractorNo_21676) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo_21676", SubcontractorNo_21676) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo_21676").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo_21676", SubcontractorNo_21676) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo_21676").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo_21676") - .Header.Caption = "SubcontractorNo_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo_21676") - .Header.Caption = "SubcontractorNo_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo_21676" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo_21676 As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", SubcontractorNo_21676, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - Private Sub iugDetail_Load(sender As Object, e As EventArgs) Handles iugDetail.Load - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef.resx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef.vb deleted file mode 100644 index c489735..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef_21676.resx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef_21676.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef_21676.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef_21676.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef_21676.vb deleted file mode 100644 index 1cf01db..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorContDef_21676.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef_21676 - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo_21676 As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo_21676").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName_21676").ToString - txtTelNo.Text = EditDataRow.Item("TelNo_21676").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo_21676").ToString - txtTitle.Text = EditDataRow.Item("Title_21676").ToString - txtAddress.Text = EditDataRow.Item("Address_21676").ToString - txtEMail.Text = EditDataRow.Item("EMail_21676").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description_21676").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo_21676 - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo_21676%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname_21676", "ContactorName_21676", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno_21676", "TelNo_21676", "String_21676", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno_21676", "FaxNo_21676", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title_21676", "Title_21676", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address_21676", "Address_21676", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email_21676", "EMail_21676", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description_21676", "Description_21676", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef.resx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef.vb deleted file mode 100644 index ff97a9a..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef.vb +++ /dev/null @@ -1,421 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef_21676.resx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef_21676.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef_21676.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef_21676.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef_21676.vb deleted file mode 100644 index 52abcc8..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractorDef_21676.vb +++ /dev/null @@ -1,421 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef_21676 - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef_21676" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo_21676").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName_21676").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description_21676").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%subcontractorno_21676%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName_21676%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno_21676", "SubcontractorNo_21676", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname_21676", "SubcontractorName_21676", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description_21676", "Description_21676", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor_21676.resx b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor_21676.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor_21676.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor_21676.vb b/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor_21676.vb deleted file mode 100644 index cbb9c8e..0000000 --- a/SRC/MESWin/SYS3/ET_Subcontractor_21676/frmSubcontractor_21676.vb +++ /dev/null @@ -1,1137 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor_21676 - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT_21676 As New wsENT_21676.wsENT_21676 '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor_21676 As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont_21676 As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo_21676 As String 'for Gird to Focus - Dim ContactorName_21676 As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(1002, 616) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(1002, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(1002, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(1002, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(1002, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(1002, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(984, 378) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(1002, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(1002, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(1002, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(1002, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(1002, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(984, 256) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor_21676 - ' - Me.ClientSize = New System.Drawing.Size(1098, 655) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor_21676" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT_21676.Url = LocalizeWebService(wsENT_21676.Url.ToString) - ' 2016 YF, wsENT_21676.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo_21676", "SubcontractorName_21676"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT_21676 Is Nothing Then wsENT_21676.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor_21676).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor_21676).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor_21676).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor_21676).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor_21676).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef_21676 - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo_21676", SubcontractorNo_21676) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor_21676).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef_21676 - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo_21676", SubcontractorNo_21676) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo_21676").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT_21676.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT_21676.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor_21676).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef_21676 - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo_21676", SubcontractorNo_21676) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo_21676").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT_21676.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT_21676.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef_21676 - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo_21676 = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName_21676", ContactorName_21676) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont_21676).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'" _ - & " And ContactorName_21676 = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName_21676").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef_21676 - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo_21676 = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName_21676", ContactorName_21676) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName_21676", "ContactorName_21676", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName_21676").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT_21676.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT_21676.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont_21676).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'" _ - & " And ContactorName_21676 = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName_21676").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef_21676 - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo_21676 = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName_21676 = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName_21676", ContactorName_21676) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont_21676).Select("SubcontractorNo_21676 = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString, "'", "''") & "'" _ - & " And ContactorName_21676 = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName_21676").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo_21676") - .Header.Caption = "SubcontractorNo_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName_21676") - .Header.Caption = "SubcontractorName_21676" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description_21676") - .Header.Caption = "Description_21676" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo_21676") - .Header.Caption = "SubcontractorNo_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName_21676") - .Header.Caption = "ContactorName_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo_21676") - .Header.Caption = "TelNo_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo_21676") - .Header.Caption = "FaxNo_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title_21676") - .Header.Caption = "Title_21676" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address_21676") - .Header.Caption = "Address_21676" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail_21676") - .Header.Caption = "EMail_21676" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description_21676") - .Header.Caption = "Description_21676" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor_21676)) Then - dsENT.Tables.Remove(tblENTSubcontractor_21676) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT_21676.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT_21676.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件.wsENT_21676 - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor_21676 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor_21676).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor_21676).DefaultView.Sort = "SubcontractorNo_21676" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor_21676).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo_21676 As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont_21676)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont_21676) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo_21676", "SubcontractorNo_21676", "String", SubcontractorNo_21676, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT_21676.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT_21676.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT_21676.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont_21676 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont_21676).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo_21676").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - Private Sub iugDetail_Load(sender As Object, e As EventArgs) Handles iugDetail.Load - - End Sub - - Private Sub iugSubcontractor_Load(sender As Object, e As EventArgs) Handles iugSubcontractor.Load - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS3/ET_Subcontractor_21676/iMES.snk b/SRC/MESWin/SYS3/ET_Subcontractor_21676/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS3/ET_Subcontractor_21676/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.vbproj b/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.vbproj deleted file mode 100644 index c69a3b6..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.vbproj +++ /dev/null @@ -1,195 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_TESTDATA21676 - ET_TESTDATA21676 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_TESTDATA21676.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_TESTDATA21676.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmTESTDATA21676.vb - - - frmTESTDATA21676ContDef.vb - - - frmTESTDATA21676Def.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Application.Designer.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Application.myapp b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Resources.Designer.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Resources.Designer.vb deleted file mode 100644 index 53530c2..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_TESTDATA21676.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Resources.resx b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Settings.Designer.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Settings.Designer.vb deleted file mode 100644 index 784ed03..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_TESTDATA21676.My.MySettings - Get - Return Global.ET_TESTDATA21676.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Settings.settings b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/licenses.licx b/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676.resx b/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676.vb deleted file mode 100644 index 3f9ecb3..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676.vb +++ /dev/null @@ -1,1130 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmTESTDATA21676 - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(1002, 616) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(1002, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(1002, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(1002, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(1002, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(1002, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(984, 378) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(1002, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(1002, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(1002, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(1002, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(1002, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(984, 256) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1098, 655) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmTESTDATA21676Def - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmTESTDATA21676Def - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsTEST_21676.DelTESTDATA_21676", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmTESTDATA21676Def - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsTEST_21676.ApproveTESTDATA_21676", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmTESTDATA21676ContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTESTDATA21676ContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTESTDATA21676ContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) LoadSubcontractor - OutXml = InvokeSrv("SXS.wsTEST_21676.LoadTESTDATA_21676", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("TESTDATA21676").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("TESTDATA21676").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("TESTDATA21676").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsTEST_21676.LoadTESTDATA_21676Cont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - Private Sub iugDetail_Load(sender As Object, e As EventArgs) Handles iugDetail.Load - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676ContDef.resx b/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676ContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676ContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676ContDef.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676ContDef.vb deleted file mode 100644 index 83386d1..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676ContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTESTDATA21676ContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsTEST_21676.AddTESTDATA_21676", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsTEST_21676.EditTESTDATA_21676", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676Def.resx b/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676Def.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676Def.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676Def.vb b/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676Def.vb deleted file mode 100644 index cde340b..0000000 --- a/SRC/MESWin/SYS3/ET_TESTDATA21676/frmTESTDATA21676Def.vb +++ /dev/null @@ -1,421 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTESTDATA21676Def - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("wsTEST_21676.AddTESTDATA_21676", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("wsTEST_21676.EditTESTDATA_21676", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS3/ET_TESTDATA21676/iMES.snk b/SRC/MESWin/SYS3/ET_TESTDATA21676/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS3/ET_TESTDATA21676/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS3/新建 文本文档.txt b/SRC/MESWin/SYS3/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/App.config b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/App.config deleted file mode 100644 index 61d0069..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/ET_Demo.sln b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/ET_Demo.sln deleted file mode 100644 index cfdcadb..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/ET_Demo.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32630.194 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Demo", "ET_Demo.vbproj", "{735A5B4F-8D51-408F-9411-235CDB01F9F3}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {735A5B4F-8D51-408F-9411-235CDB01F9F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {735A5B4F-8D51-408F-9411-235CDB01F9F3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {735A5B4F-8D51-408F-9411-235CDB01F9F3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {735A5B4F-8D51-408F-9411-235CDB01F9F3}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {05370154-7301-4A5A-B360-EAF02EF9EFDA} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/ET_Demo.vbproj b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/ET_Demo.vbproj deleted file mode 100644 index 7d56649..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/ET_Demo.vbproj +++ /dev/null @@ -1,120 +0,0 @@ - - - - - Debug - AnyCPU - {735A5B4F-8D51-408F-9411-235CDB01F9F3} - WinExe - ET_Demo.My.MyApplication - ET_Demo - ET_Demo - 512 - WindowsForms - v4.6.2 - true - true - - - AnyCPU - true - full - true - true - bin\Debug\ - ET_Demo.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - - - AnyCPU - pdbonly - false - true - true - bin\Release\ - ET_Demo.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - - - On - - - Binary - - - Off - - - On - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Form - - - Form1.vb - Form - - - - True - Application.myapp - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Application.Designer.vb deleted file mode 100644 index deffe98..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Application.Designer.vb +++ /dev/null @@ -1,38 +0,0 @@ -'------------------------------------------------------------------------------ -' -' This code was generated by a tool. -' Runtime Version:4.0.30319.42000 -' -' Changes to this file may cause incorrect behavior and will be lost if -' the code is regenerated. -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - 'NOTE: This file is auto-generated; do not modify it directly. To make changes, - ' or if you encounter build errors in this file, go to the Project Designer - ' (go to Project Properties or double-click the My Project node in - ' Solution Explorer), and make changes on the Application tab. - ' - Partial Friend Class MyApplication - - _ - Public Sub New() - MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) - Me.IsSingleInstance = false - Me.EnableVisualStyles = true - Me.SaveMySettingsOnExit = true - Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses - End Sub - - _ - Protected Overrides Sub OnCreateMainForm() - Me.MainForm = Global.ET_Demo.frmDemo - End Sub - End Class -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Application.myapp b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Application.myapp deleted file mode 100644 index 1243847..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Application.myapp +++ /dev/null @@ -1,11 +0,0 @@ - - - true - Form1 - false - 0 - true - 0 - 0 - true - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/AssemblyInfo.vb deleted file mode 100644 index fd8a417..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 有关程序集的一般信息由以下 -' 控制。更改这些特性值可修改 -' 与程序集关联的信息。 - -'查看程序集特性的值 - - - - - - - - - - -'如果此项目向 COM 公开,则下列 GUID 用于 typelib 的 ID - - -' 程序集的版本信息由下列四个值组成: -' -' 主版本 -' 次版本 -' 生成号 -' 修订号 -' -'可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值 -'通过使用 "*",如下所示: -' - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Resources.Designer.vb deleted file mode 100644 index 24dbe56..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Resources.Designer.vb +++ /dev/null @@ -1,62 +0,0 @@ -'------------------------------------------------------------------------------ -' -' This code was generated by a tool. -' Runtime Version:4.0.30319.42000 -' -' Changes to this file may cause incorrect behavior and will be lost if -' the code is regenerated. -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My.Resources - - 'This class was auto-generated by the StronglyTypedResourceBuilder - 'class via a tool like ResGen or Visual Studio. - 'To add or remove a member, edit your .ResX file then rerun ResGen - 'with the /str option, or rebuild your VS project. - ''' - ''' A strongly-typed resource class, for looking up localized strings, etc. - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' Returns the cached ResourceManager instance used by this class. - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Demo.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' Overrides the current thread's CurrentUICulture property for all - ''' resource lookups using this strongly typed resource class. - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set(ByVal value As Global.System.Globalization.CultureInfo) - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Resources.resx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Settings.Designer.vb deleted file mode 100644 index 551e93e..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' This code was generated by a tool. -' Runtime Version:4.0.30319.42000 -' -' Changes to this file may cause incorrect behavior and will be lost if -' the code is regenerated. -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) - -#Region "My.Settings Auto-Save Functionality" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Demo.My.MySettings - Get - Return Global.ET_Demo.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Settings.settings b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.Designer.vb deleted file mode 100644 index ee5dcb7..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.Designer.vb +++ /dev/null @@ -1,236 +0,0 @@ - _ -Partial Class frmDemo - ' Inherits System.Windows.Forms.Form - Inherits COM_Kit.frmBasisTemplat - 'Form 重写 Dispose,以清理组件列表。 - _ - Protected Overrides Sub Dispose(ByVal disposing As Boolean) - Try - If disposing AndAlso components IsNot Nothing Then - components.Dispose() - End If - Finally - MyBase.Dispose(disposing) - End Try - End Sub - - 'Windows 窗体设计器所必需的 - Private components As System.ComponentModel.IContainer - - '注意: 以下过程是 Windows 窗体设计器所必需的 - '可以使用 Windows 窗体设计器修改它。 - '不要使用代码编辑器修改它。 - _ - Private Sub InitializeComponent() - Me.iugBasis = New iMESUltraGrid.iMESUltraGridControl() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.SuspendLayout() - ' - 'iugBasis - ' - Me.iugBasis.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugBasis.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugBasis.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugBasis.Identity = "iMES" - Me.iugBasis.IdentityForm = "" - Me.iugBasis.LayOutFilePath = "" - Me.iugBasis.Location = New System.Drawing.Point(12, 53) - Me.iugBasis.Name = "iugBasis" - Me.iugBasis.PrintFitWidthToPages = 0 - Me.iugBasis.PrintLandscape = True - Me.iugBasis.PrintPageFooter = "" - Me.iugBasis.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugBasis.PrintPageFooterHeight = 20 - Me.iugBasis.PrintPageHeader = "" - Me.iugBasis.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugBasis.PrintPageHeaderHeight = 20 - Me.iugBasis.PrintZoom = 1.0R - Me.iugBasis.Size = New System.Drawing.Size(791, 200) - Me.iugBasis.TabIndex = 41 - Me.iugBasis.UserNo = "iMES" - ' - 'iugDetail - ' - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "iMES" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 260) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(791, 291) - Me.iugDetail.TabIndex = 42 - Me.iugDetail.UserNo = "iMES" - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(827, 523) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 48 - Me.btnClose.Text = "Close (&X)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(827, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 53 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(827, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 47 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(827, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 46 - Me.btnDCopy.Text = "Copy" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(827, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 52 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(827, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 45 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(827, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 44 - Me.btnDEdit.Text = "EDIT" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(827, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 49 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(827, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 43 - Me.btnDAdd.Text = "ADD" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(827, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 51 - Me.btnDel.Text = "Del(&D)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(827, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 50 - Me.btnEdit.Text = "Edit(&E)" - ' - 'frmDemo - ' - Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 15.0!) - Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(927, 562) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.btnEdit) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.iugBasis) - Me.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4) - Me.Name = "frmDemo" - Me.Text = "Demo" - Me.Controls.SetChildIndex(Me.iugBasis, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - - Friend WithEvents iugBasis As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnApprove As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnAdd As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEdit As Infragistics.Win.Misc.UltraButton -End Class diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.resx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.vb deleted file mode 100644 index 4d5c94c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Demo/frmDemo.vb +++ /dev/null @@ -1,14 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmDemo - - Private Sub frmDemo_Load(sender As Object, e As EventArgs) Handles MyBase.Load - - End Sub - - Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click - - End Sub -End Class diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.sln b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.vbproj b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.vbproj deleted file mode 100644 index 0c339dc..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.vbproj +++ /dev/null @@ -1,205 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor - ET_Subcontractor - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form1.vb - - - Form - - - Form - - - Form - - - Form - - - Form - - - - True - Application.myapp - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmBusiness21670.vb - - - frmSubcontractor.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/Form1.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/Form1.Designer.vb deleted file mode 100644 index c29cf72..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/Form1.Designer.vb +++ /dev/null @@ -1,32 +0,0 @@ - -Partial Class Form1 - - - Inherits COM_Kit.frmBasisTemplat - - 'Form 重写 Dispose,以清理组件列表。 - - Protected Overrides Sub Dispose(ByVal disposing As Boolean) - Try - If disposing AndAlso components IsNot Nothing Then - components.Dispose() - End If - Finally - MyBase.Dispose(disposing) - End Try - End Sub - - 'Windows 窗体设计器所必需的 - Private components As System.ComponentModel.IContainer - - '注意: 以下过程是 Windows 窗体设计器所必需的 - '可以使用 Windows 窗体设计器修改它。 - '不要使用代码编辑器修改它。 - - Private Sub InitializeComponent() - components = New System.ComponentModel.Container - Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(800, 450) - Me.Text = "Form1" - End Sub -End Class diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/Form1.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/Form1.vb deleted file mode 100644 index 10d55d4..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/Form1.vb +++ /dev/null @@ -1,3 +0,0 @@ -Public Class Form1 - -End Class \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index 755cff8..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Resources.resx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Settings.settings b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/licenses.licx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmBusiness21670.resx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmBusiness21670.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmBusiness21670.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmBusiness21670.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmBusiness21670.vb deleted file mode 100644 index cbad98c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmBusiness21670.vb +++ /dev/null @@ -1,1129 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor1 - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractor.resx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractor.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractor.vb deleted file mode 100644 index 64a05ce..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractor.vb +++ /dev/null @@ -1,1129 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 269) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.vb deleted file mode 100644 index c489735..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.vb deleted file mode 100644 index ff97a9a..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/frmSubcontractorDef.vb +++ /dev/null @@ -1,421 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/iMES.snk b/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/ENT/ET_Subcontractor/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AUT.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AUT.png deleted file mode 100644 index a0b4091..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AUT.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTMeasureData.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTMeasureData.xls deleted file mode 100644 index 471b5c5..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTMeasureData.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTPareto.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTPareto.xls deleted file mode 100644 index 251060d..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTPareto.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTVarMonthReport.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTVarMonthReport.xls deleted file mode 100644 index f781fe3..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/AutoRPTVarMonthReport.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DEFAULT.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DEFAULT.png deleted file mode 100644 index b566b9f..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DEFAULT.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DT.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DT.png deleted file mode 100644 index 38f7231..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DT.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionDown.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionDown.png deleted file mode 100644 index 8f89533..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionDown.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionLeft.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionLeft.png deleted file mode 100644 index 80ea854..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionLeft.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionRight.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionRight.png deleted file mode 100644 index cc26c41..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionRight.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionUp.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionUp.png deleted file mode 100644 index 1f2c2ab..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/DirectionUp.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/EMS.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/EMS.png deleted file mode 100644 index 80b96c7..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/EMS.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ENT.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ENT.png deleted file mode 100644 index fa35ea8..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ENT.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/EQP.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/EQP.png deleted file mode 100644 index c317f14..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/EQP.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/FINIAL WEEKLY REPORT.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/FINIAL WEEKLY REPORT.xls deleted file mode 100644 index e4a86f2..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/FINIAL WEEKLY REPORT.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/IEW.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/IEW.png deleted file mode 100644 index 4268fb0..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/IEW.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/INV.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/INV.png deleted file mode 100644 index b3a8a61..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/INV.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ISU.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ISU.png deleted file mode 100644 index 1993304..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ISU.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-AttributesQCItem.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-AttributesQCItem.xls deleted file mode 100644 index 0ddf7e0..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-AttributesQCItem.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-Equipment1.csv b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-Equipment1.csv deleted file mode 100644 index d13f678..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-Equipment1.csv +++ /dev/null @@ -1,17 +0,0 @@ -Lot No.,80501,,,,,,,,,,,,,, -Type,CEBHM13-X10-1,,,,,,,,,,,,,, -Date,2007/3/8 AM 11:29:11,,,,,,,,,,,,,, -Q'ty,,,,,,,,,,,,,,, - ,Min,Max,,,,,,,,,,,,, -Vf2(V),,,,,,,,,,,,,,, -Iv(mcd),,,,,,,,,,,,,,, -Wd(nm),,,,,,,,,,,,,,, -Calibrate File,blue(450~475)-06.03.23.cal,,,,,,,,,,,,,, -Condition,If1(uA)=10.0\If2(mA)=20.0,,,,,,,,,,,,,, -Condition,Ir(uA)=0.5\Vr(V)=5.0\If4(mA)=1.0,,,,,,,,,,,,,, -QCItemNo.,IPQC-ԤO,Vf2(V),Vr(V),Ir(uA),Iv(mcd),fd(nm),fp(nm),Gf(nm),CIE-x,CIE-y,Vf4(V),PeakData,Vf3(V),Vscr(V),Vth(V) -1,2.38,3.17,10,0,49.47,469.9,465.3,21.2,0.13,0.0632,2.27,2130,0,0,0 -2,2.38,3.17,10,0,50.58,469.7,467.2,20.3,0.1307,0.0616,2.27,2350,0,0,0 -3,2.38,3.12,10,0,48.93,470.4,468.2,20.1,0.1289,0.0656,2.27,2228.8,0,0,0 -4,2.38,3.12,10,0,48.95,470.4,468.2,20.1,0.1289,0.0657,2.27,2218.6,0,0,0 -5,2.34,3.16,10,0,50.27,469.7,465.3,21.4,0.1305,0.0621,2.22,2196.6,0,0,0 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-Equipment2.txt b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-Equipment2.txt deleted file mode 100644 index 4f9d025..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-Equipment2.txt +++ /dev/null @@ -1,29 +0,0 @@ -Printer Report -Date:03/07/2007 -Time:14:22:19 -Method :7 -Sample : -Lot : -Operator : -Note : - 1 009.4c - 2 009.6c - 3 010.0c - 4 010.0 - 5 010.0c - 6 009.8c - 7 009.9c - 8 009.6c - 9 009.9c - 10 009.1c - 11 009.7 - 12 009.3c - 13 010.0c - 14 009.9c - 15 009.6c - 16 010.3c - 17 009.8 - 18 010.0c - 19 009.5 - 20 010.1c - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-QCChar.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-QCChar.xls deleted file mode 100644 index f6ec43e..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-QCChar.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-SPCData.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-SPCData.xls deleted file mode 100644 index d44a766..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-SPCData.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-VariablesQCItem.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-VariablesQCItem.xls deleted file mode 100644 index e345d80..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/ImportSample-VariablesQCItem.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/MSA.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/MSA.png deleted file mode 100644 index 51a87c7..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/MSA.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/MTL.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/MTL.png deleted file mode 100644 index 01ce547..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/MTL.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/OE.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/OE.png deleted file mode 100644 index 4b61ef0..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/OE.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/OP.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/OP.png deleted file mode 100644 index a3d8f6c..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/OP.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PM.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PM.png deleted file mode 100644 index 7bbc6d5..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PM.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PRD.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PRD.png deleted file mode 100644 index 975164b..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PRD.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PRS.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PRS.png deleted file mode 100644 index cca6bd8..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/PRS.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/QC.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/QC.png deleted file mode 100644 index 4434746..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/QC.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/RPT.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/RPT.png deleted file mode 100644 index dc0400e..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/RPT.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SMD.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SMD.png deleted file mode 100644 index 3c3d88e..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SMD.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPC.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPC.png deleted file mode 100644 index 40edf2a..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPC.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_2003_Standard.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_2003_Standard.xls deleted file mode 100644 index b27df0a..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_2003_Standard.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD.xls deleted file mode 100644 index ca1cc0b..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD02.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD02.xls deleted file mode 100644 index ddf4bd4..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD02.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD02_2003.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD02_2003.xls deleted file mode 100644 index 02056c1..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD02_2003.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD_190111.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD_190111.xls deleted file mode 100644 index f5851ee..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD_190111.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD_190111H.xlsm b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD_190111H.xlsm deleted file mode 100644 index ae66fc3..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCExport_STD_190111H.xlsm and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCReport.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCReport.xls deleted file mode 100644 index 7f45579..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SPCReport.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SYS.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SYS.png deleted file mode 100644 index 63e3dbb..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/SYS.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/USR.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/USR.png deleted file mode 100644 index d3c0d1c..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/USR.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/WIP.png b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/WIP.png deleted file mode 100644 index a390d74..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/WIP.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/WIPReport.xls b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/WIPReport.xls deleted file mode 100644 index 3a9694e..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/WIPReport.xls and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.en.resources91 b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.en.resources91 deleted file mode 100644 index 6c05a97..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.en.resources91 and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.zh-chs.resources91 b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.zh-chs.resources91 deleted file mode 100644 index 6c05a97..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.zh-chs.resources91 and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.zh-cht.resources91 b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.zh-cht.resources91 deleted file mode 100644 index 6c05a97..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/mesresource.zh-cht.resources91 and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.en.resources b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.en.resources deleted file mode 100644 index 19fb658..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.en.resources and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.zh-chs.resources b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.zh-chs.resources deleted file mode 100644 index 1c99d89..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.zh-chs.resources and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.zh-cht.resources b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.zh-cht.resources deleted file mode 100644 index 1709fdc..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_action.zh-cht.resources and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.en.resources b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.en.resources deleted file mode 100644 index 614b483..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.en.resources and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.zh-chs.resources b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.zh-chs.resources deleted file mode 100644 index 336b894..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.zh-chs.resources and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.zh-cht.resources b/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.zh-cht.resources deleted file mode 100644 index 5b51a68..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Resources/msg_name.zh-cht.resources and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS1/新建 文本文档.txt b/SRC/MESWin/SYS4/21670ll/MESWin/SYS1/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS2/新建 文本文档.txt b/SRC/MESWin/SYS4/21670ll/MESWin/SYS2/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS3/新建 文本文档.txt b/SRC/MESWin/SYS4/21670ll/MESWin/SYS3/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.sln b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.vbproj b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.vbproj deleted file mode 100644 index 8059f21..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.vbproj +++ /dev/null @@ -1,194 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor_21670 - ET_Subcontractor_21670 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor_21670.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor_21670.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmSubcontractor.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Application.myapp b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Resources.Designer.vb deleted file mode 100644 index 718820f..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21670.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Resources.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Settings.Designer.vb deleted file mode 100644 index 59fb44f..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21670.My.MySettings - Get - Return Global.ET_Subcontractor_21670.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Settings.settings b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/licenses.licx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractor.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractor.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractor.vb deleted file mode 100644 index af66c78..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractor.vb +++ /dev/null @@ -1,1137 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor_21670 As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont_21670 As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 269) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor_21670).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor_21670).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor_21670).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor_21670).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor_21670).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor_21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor_21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont_21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont_21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont_21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor_21670 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor_21670)) Then - dsENT.Tables.Remove(tblENTSubcontractor_21670) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor_21670 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor_21670).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor_21670).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor_21670).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont_21670聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont_21670)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont_21670) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont_21670 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont_21670).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - Private Sub iugDetail_Load(sender As Object, e As EventArgs) Handles iugDetail.Load - - End Sub - - Private Sub iugSubcontractor_Load(sender As Object, e As EventArgs) Handles iugSubcontractor.Load - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorContDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorContDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorContDef.vb deleted file mode 100644 index cb67e7c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorContDef.vb +++ /dev/null @@ -1,660 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 26) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 26) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 26) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 26) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 26) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 26) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 26) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Private Sub btnConfirm_Click_1(sender As Object, e As EventArgs) Handles btnConfirm.Click - - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorDef.vb deleted file mode 100644 index 4736fa5..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/frmSubcontractorDef.vb +++ /dev/null @@ -1,460 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents txtWZ216670 As TextBox - Friend WithEvents Label1 As Label - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtWZ216670 = New System.Windows.Forms.TextBox() - Me.Label1 = New System.Windows.Forms.Label() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.Label1) - Me.gbxSubcontractorData.Controls.Add(Me.txtWZ216670) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 26) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 26) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'txtWZ216670 - ' - Me.txtWZ216670.Location = New System.Drawing.Point(362, 25) - Me.txtWZ216670.Name = "txtWZ216670" - Me.txtWZ216670.Size = New System.Drawing.Size(100, 25) - Me.txtWZ216670.TabIndex = 14 - ' - 'Label1 - ' - Me.Label1.AutoSize = True - Me.Label1.Location = New System.Drawing.Point(297, 24) - Me.Label1.Name = "Label1" - Me.Label1.Size = New System.Drawing.Size(66, 17) - Me.Label1.TabIndex = 15 - Me.Label1.Text = "WZ21670" - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - strParameter = strParameter & CombineXMLParameter("wz21670", "WZ21670", "String", CInput(txtWZ216670.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - - Private Sub btnConfirm_Click_1(sender As Object, e As EventArgs) Handles btnConfirm.Click - - End Sub - - Private Sub txtSubcontractorNo_ValueChanged(sender As Object, e As EventArgs) Handles txtSubcontractorNo.ValueChanged - - End Sub - - Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles txtWZ216670.TextChanged - - End Sub - - Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click - - End Sub - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/iMES.snk b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.sln b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.vbproj b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.vbproj deleted file mode 100644 index 2069bd0..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.vbproj +++ /dev/null @@ -1,194 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor_21670_1 - ET_Subcontractor_21670_1 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor_21670_1.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor_21670_1.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmSubcontractor.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.sln b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj deleted file mode 100644 index 0f2302d..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj +++ /dev/null @@ -1,206 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor_21670_1 - ET_Subcontractor_21670_1 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor_21670_1.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor_21670_1.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form1.vb - - - Form - - - Form - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmBusiness21670.vb - - - frmSubcontractor.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj.user b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj.user deleted file mode 100644 index 7273a11..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj.user +++ /dev/null @@ -1,6 +0,0 @@ - - - - D:\iMES\MES_Env\607.4\DefaultSite\MESws_STD\bin\ - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/Form1.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/Form1.Designer.vb deleted file mode 100644 index c29cf72..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/Form1.Designer.vb +++ /dev/null @@ -1,32 +0,0 @@ - -Partial Class Form1 - - - Inherits COM_Kit.frmBasisTemplat - - 'Form 重写 Dispose,以清理组件列表。 - - Protected Overrides Sub Dispose(ByVal disposing As Boolean) - Try - If disposing AndAlso components IsNot Nothing Then - components.Dispose() - End If - Finally - MyBase.Dispose(disposing) - End Try - End Sub - - 'Windows 窗体设计器所必需的 - Private components As System.ComponentModel.IContainer - - '注意: 以下过程是 Windows 窗体设计器所必需的 - '可以使用 Windows 窗体设计器修改它。 - '不要使用代码编辑器修改它。 - - Private Sub InitializeComponent() - components = New System.ComponentModel.Container - Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(800, 450) - Me.Text = "Form1" - End Sub -End Class diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/Form1.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/Form1.vb deleted file mode 100644 index 10d55d4..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/Form1.vb +++ /dev/null @@ -1,3 +0,0 @@ -Public Class Form1 - -End Class \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Application.myapp b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index 755cff8..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Resources.Designer.vb deleted file mode 100644 index af2b746..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21670_1.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Resources.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Settings.Designer.vb deleted file mode 100644 index 1c9fffa..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21670_1.My.MySettings - Get - Return Global.ET_Subcontractor_21670_1.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Settings.settings b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/licenses.licx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmBusiness21670.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmBusiness21670.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmBusiness21670.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmBusiness21670.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmBusiness21670.vb deleted file mode 100644 index cbad98c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmBusiness21670.vb +++ /dev/null @@ -1,1129 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor1 - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractor.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractor.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractor.vb deleted file mode 100644 index 64a05ce..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractor.vb +++ /dev/null @@ -1,1129 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 269) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorContDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorContDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorContDef.vb deleted file mode 100644 index c489735..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorDef.vb deleted file mode 100644 index ff97a9a..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/frmSubcontractorDef.vb +++ /dev/null @@ -1,421 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/iMES.snk b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/ET_Subcontractor/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Application.myapp b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Resources.Designer.vb deleted file mode 100644 index af2b746..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21670_1.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Resources.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Settings.Designer.vb deleted file mode 100644 index 1c9fffa..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21670_1.My.MySettings - Get - Return Global.ET_Subcontractor_21670_1.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Settings.settings b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/licenses.licx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractor.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractor.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractor.vb deleted file mode 100644 index 9978384..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractor.vb +++ /dev/null @@ -1,1137 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor21670 As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont21670 As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 269) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor21670).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor21670).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor21670).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor21670).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor21670).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont21670).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor21670 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor21670)) Then - dsENT.Tables.Remove(tblENTSubcontractor21670) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor21670 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor21670).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor21670).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor21670).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont21670聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont21670)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont21670) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont21670 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont21670).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - Private Sub iugDetail_Load(sender As Object, e As EventArgs) Handles iugDetail.Load - - End Sub - - Private Sub iugSubcontractor_Load(sender As Object, e As EventArgs) Handles iugSubcontractor.Load - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorContDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorContDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorContDef.vb deleted file mode 100644 index 1910010..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorContDef.vb +++ /dev/null @@ -1,660 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef21670 - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 26) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 26) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 26) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 26) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 26) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 26) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 26) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Private Sub btnConfirm_Click_1(sender As Object, e As EventArgs) Handles btnConfirm.Click - - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorDef.resx b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorDef.vb b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorDef.vb deleted file mode 100644 index c738f71..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/frmSubcontractorDef.vb +++ /dev/null @@ -1,460 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef21670 - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents txtWZ216670 As TextBox - Friend WithEvents Label1 As Label - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtWZ216670 = New System.Windows.Forms.TextBox() - Me.Label1 = New System.Windows.Forms.Label() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.Label1) - Me.gbxSubcontractorData.Controls.Add(Me.txtWZ216670) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 26) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 26) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'txtWZ216670 - ' - Me.txtWZ216670.Location = New System.Drawing.Point(362, 25) - Me.txtWZ216670.Name = "txtWZ216670" - Me.txtWZ216670.Size = New System.Drawing.Size(100, 25) - Me.txtWZ216670.TabIndex = 14 - ' - 'Label1 - ' - Me.Label1.AutoSize = True - Me.Label1.Location = New System.Drawing.Point(297, 24) - Me.Label1.Name = "Label1" - Me.Label1.Size = New System.Drawing.Size(66, 17) - Me.Label1.TabIndex = 15 - Me.Label1.Text = "WZ21670" - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - strParameter = strParameter & CombineXMLParameter("wz21670", "WZ21670", "String", CInput(txtWZ216670.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - - Private Sub btnConfirm_Click_1(sender As Object, e As EventArgs) Handles btnConfirm.Click - - End Sub - - Private Sub txtSubcontractorNo_ValueChanged(sender As Object, e As EventArgs) Handles txtSubcontractorNo.ValueChanged - - End Sub - - Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles txtWZ216670.TextChanged - - End Sub - - Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click - - End Sub - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/iMES.snk b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/21670_1/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/新建 文本文档.txt b/SRC/MESWin/SYS4/21670ll/MESWin/SYS4/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS5/新建 文本文档.txt b/SRC/MESWin/SYS4/21670ll/MESWin/SYS5/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/SYS6/新建 文本文档.txt b/SRC/MESWin/SYS4/21670ll/MESWin/SYS6/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/MDI_Panel.vb b/SRC/MESWin/SYS4/21670ll/MESWin/Test/MDI_Panel.vb deleted file mode 100644 index e57dab1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/MDI_Panel.vb +++ /dev/null @@ -1,1016 +0,0 @@ -Imports iMESMainMenu -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinToolbars -Public Class MDI_Panel - - Inherits System.Windows.Forms.Form - - '//Data - Dim dsData As New DataSet - Dim ModuleNo As String - Dim strUserPriv As String - - '//其他共用變數 - Dim i As Integer - Dim blnShow As Boolean - Dim imlMDI As New ImageList - - '// MainMenu & ToolBar變數 - Dim utbMDI As Infragistics.Win.UltraWinToolbars.UltraToolbar = New UltraToolbar("ToolBar") - Dim utbMDIMenu As Infragistics.Win.UltraWinToolbars.UltraToolbar = New UltraToolbar("MainMenu") - Dim OptionSet1 As Infragistics.Win.UltraWinToolbars.OptionSet = New Infragistics.Win.UltraWinToolbars.OptionSet("LanguageMode") - Dim btlMDI As ButtonTool - Dim popMDI As PopupMenuTool - Dim sbtMDI As StateButtonTool - - -#Region " Windows Form 設計工具產生的程式碼 " - - Public Sub New() - MyBase.New() - - '此呼叫為 Windows Form 設計工具的必要項。 - InitializeComponent() - - '在 InitializeComponent() 呼叫之後加入所有的初始設定 - - End Sub - - 'Form 覆寫 Dispose 以清除元件清單。 - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - '為 Windows Form 設計工具的必要項 - Private components As System.ComponentModel.IContainer - - '注意: 以下為 Windows Form 設計工具所需的程序 - '您可以使用 Windows Form 設計工具進行修改。 - '請勿使用程式碼編輯器來修改這些程序。 - Friend WithEvents UltraToolbarsManager1 As Infragistics.Win.UltraWinToolbars.UltraToolbarsManager - Friend WithEvents _MDIENT_Panel_Toolbars_Dock_Area_Left As Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea - Friend WithEvents _MDIENT_Panel_Toolbars_Dock_Area_Right As Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea - Friend WithEvents _MDIENT_Panel_Toolbars_Dock_Area_Top As Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea - Friend WithEvents _MDIENT_Panel_Toolbars_Dock_Area_Bottom As Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea - Friend WithEvents UltraDockManager1 As Infragistics.Win.UltraWinDock.UltraDockManager - Friend WithEvents _MDIENT_PanelUnpinnedTabAreaLeft As Infragistics.Win.UltraWinDock.UnpinnedTabArea - Friend WithEvents _MDIENT_PanelUnpinnedTabAreaRight As Infragistics.Win.UltraWinDock.UnpinnedTabArea - Friend WithEvents _MDIENT_PanelUnpinnedTabAreaTop As Infragistics.Win.UltraWinDock.UnpinnedTabArea - Friend WithEvents _MDIENT_PanelUnpinnedTabAreaBottom As Infragistics.Win.UltraWinDock.UnpinnedTabArea - Friend WithEvents _MDIENT_PanelAutoHideControl As Infragistics.Win.UltraWinDock.AutoHideControl - Friend WithEvents uebMenu As Infragistics.Win.UltraWinExplorerBar.UltraExplorerBar - Friend WithEvents WindowDockingArea1 As Infragistics.Win.UltraWinDock.WindowDockingArea - Friend WithEvents DockableWindow1 As Infragistics.Win.UltraWinDock.DockableWindow - Private Sub InitializeComponent() - Me.components = New System.ComponentModel.Container() - Dim DockAreaPane2 As Infragistics.Win.UltraWinDock.DockAreaPane = New Infragistics.Win.UltraWinDock.DockAreaPane(Infragistics.Win.UltraWinDock.DockedLocation.DockedLeft, New System.Guid("8666bbed-9885-4c68-819e-c049f9eac535")) - Dim DockableControlPane2 As Infragistics.Win.UltraWinDock.DockableControlPane = New Infragistics.Win.UltraWinDock.DockableControlPane(New System.Guid("5a475b0e-96d9-4cd0-973b-da8cba709615"), New System.Guid("00000000-0000-0000-0000-000000000000"), -1, New System.Guid("8666bbed-9885-4c68-819e-c049f9eac535"), -1) - Me.uebMenu = New Infragistics.Win.UltraWinExplorerBar.UltraExplorerBar() - Me.UltraToolbarsManager1 = New Infragistics.Win.UltraWinToolbars.UltraToolbarsManager(Me.components) - Me._MDIENT_Panel_Toolbars_Dock_Area_Left = New Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea() - Me._MDIENT_Panel_Toolbars_Dock_Area_Right = New Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea() - Me._MDIENT_Panel_Toolbars_Dock_Area_Top = New Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea() - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom = New Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea() - Me.UltraDockManager1 = New Infragistics.Win.UltraWinDock.UltraDockManager(Me.components) - Me._MDIENT_PanelUnpinnedTabAreaLeft = New Infragistics.Win.UltraWinDock.UnpinnedTabArea() - Me._MDIENT_PanelUnpinnedTabAreaRight = New Infragistics.Win.UltraWinDock.UnpinnedTabArea() - Me._MDIENT_PanelUnpinnedTabAreaTop = New Infragistics.Win.UltraWinDock.UnpinnedTabArea() - Me._MDIENT_PanelUnpinnedTabAreaBottom = New Infragistics.Win.UltraWinDock.UnpinnedTabArea() - Me._MDIENT_PanelAutoHideControl = New Infragistics.Win.UltraWinDock.AutoHideControl() - Me.DockableWindow1 = New Infragistics.Win.UltraWinDock.DockableWindow() - Me.WindowDockingArea1 = New Infragistics.Win.UltraWinDock.WindowDockingArea() - CType(Me.uebMenu, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.UltraToolbarsManager1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.UltraDockManager1, System.ComponentModel.ISupportInitialize).BeginInit() - Me._MDIENT_PanelAutoHideControl.SuspendLayout() - Me.DockableWindow1.SuspendLayout() - Me.SuspendLayout() - ' - 'uebMenu - ' - Me.uebMenu.Location = New System.Drawing.Point(0, 18) - Me.uebMenu.Name = "uebMenu" - Me.uebMenu.Size = New System.Drawing.Size(300, 424) - Me.uebMenu.TabIndex = 10 - ' - 'UltraToolbarsManager1 - ' - Me.UltraToolbarsManager1.DesignerFlags = 1 - Me.UltraToolbarsManager1.DockWithinContainer = Me - Me.UltraToolbarsManager1.DockWithinContainerBaseType = GetType(System.Windows.Forms.Form) - ' - '_MDIENT_Panel_Toolbars_Dock_Area_Left - ' - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.BackColor = System.Drawing.SystemColors.Control - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Left - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.ForeColor = System.Drawing.SystemColors.ControlText - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.Location = New System.Drawing.Point(0, 0) - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.Name = "_MDIENT_Panel_Toolbars_Dock_Area_Left" - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.Size = New System.Drawing.Size(0, 442) - Me._MDIENT_Panel_Toolbars_Dock_Area_Left.ToolbarsManager = Me.UltraToolbarsManager1 - ' - '_MDIENT_Panel_Toolbars_Dock_Area_Right - ' - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.BackColor = System.Drawing.SystemColors.Control - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Right - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.ForeColor = System.Drawing.SystemColors.ControlText - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.Location = New System.Drawing.Point(624, 0) - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.Name = "_MDIENT_Panel_Toolbars_Dock_Area_Right" - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.Size = New System.Drawing.Size(0, 442) - Me._MDIENT_Panel_Toolbars_Dock_Area_Right.ToolbarsManager = Me.UltraToolbarsManager1 - ' - '_MDIENT_Panel_Toolbars_Dock_Area_Top - ' - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.BackColor = System.Drawing.SystemColors.Control - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Top - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.ForeColor = System.Drawing.SystemColors.ControlText - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.Location = New System.Drawing.Point(0, 0) - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.Name = "_MDIENT_Panel_Toolbars_Dock_Area_Top" - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.Size = New System.Drawing.Size(624, 0) - Me._MDIENT_Panel_Toolbars_Dock_Area_Top.ToolbarsManager = Me.UltraToolbarsManager1 - ' - '_MDIENT_Panel_Toolbars_Dock_Area_Bottom - ' - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.BackColor = System.Drawing.SystemColors.Control - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Bottom - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.ForeColor = System.Drawing.SystemColors.ControlText - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.Location = New System.Drawing.Point(0, 442) - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.Name = "_MDIENT_Panel_Toolbars_Dock_Area_Bottom" - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.Size = New System.Drawing.Size(624, 0) - Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom.ToolbarsManager = Me.UltraToolbarsManager1 - ' - 'UltraDockManager1 - ' - DockableControlPane2.Control = Me.uebMenu - DockableControlPane2.FlyoutSize = New System.Drawing.Size(239, -1) - DockableControlPane2.Key = "WIPModule" - DockableControlPane2.OriginalControlBounds = New System.Drawing.Rectangle(208, 112, 175, 230) - DockableControlPane2.Pinned = False - DockableControlPane2.Size = New System.Drawing.Size(100, 100) - DockableControlPane2.Text = "WIP" - DockAreaPane2.Panes.AddRange(New Infragistics.Win.UltraWinDock.DockablePaneBase() {DockableControlPane2}) - DockAreaPane2.Size = New System.Drawing.Size(239, 294) - Me.UltraDockManager1.DockAreas.AddRange(New Infragistics.Win.UltraWinDock.DockAreaPane() {DockAreaPane2}) - Me.UltraDockManager1.HostControl = Me - Me.UltraDockManager1.ShowCloseButton = False - ' - '_MDIENT_PanelUnpinnedTabAreaLeft - ' - Me._MDIENT_PanelUnpinnedTabAreaLeft.Dock = System.Windows.Forms.DockStyle.Left - Me._MDIENT_PanelUnpinnedTabAreaLeft.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte)) - Me._MDIENT_PanelUnpinnedTabAreaLeft.Location = New System.Drawing.Point(0, 0) - Me._MDIENT_PanelUnpinnedTabAreaLeft.Name = "_MDIENT_PanelUnpinnedTabAreaLeft" - Me._MDIENT_PanelUnpinnedTabAreaLeft.Owner = Me.UltraDockManager1 - Me._MDIENT_PanelUnpinnedTabAreaLeft.Size = New System.Drawing.Size(21, 442) - Me._MDIENT_PanelUnpinnedTabAreaLeft.TabIndex = 5 - ' - '_MDIENT_PanelUnpinnedTabAreaRight - ' - Me._MDIENT_PanelUnpinnedTabAreaRight.Dock = System.Windows.Forms.DockStyle.Right - Me._MDIENT_PanelUnpinnedTabAreaRight.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte)) - Me._MDIENT_PanelUnpinnedTabAreaRight.Location = New System.Drawing.Point(624, 0) - Me._MDIENT_PanelUnpinnedTabAreaRight.Name = "_MDIENT_PanelUnpinnedTabAreaRight" - Me._MDIENT_PanelUnpinnedTabAreaRight.Owner = Me.UltraDockManager1 - Me._MDIENT_PanelUnpinnedTabAreaRight.Size = New System.Drawing.Size(0, 442) - Me._MDIENT_PanelUnpinnedTabAreaRight.TabIndex = 6 - ' - '_MDIENT_PanelUnpinnedTabAreaTop - ' - Me._MDIENT_PanelUnpinnedTabAreaTop.Dock = System.Windows.Forms.DockStyle.Top - Me._MDIENT_PanelUnpinnedTabAreaTop.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte)) - Me._MDIENT_PanelUnpinnedTabAreaTop.Location = New System.Drawing.Point(21, 0) - Me._MDIENT_PanelUnpinnedTabAreaTop.Name = "_MDIENT_PanelUnpinnedTabAreaTop" - Me._MDIENT_PanelUnpinnedTabAreaTop.Owner = Me.UltraDockManager1 - Me._MDIENT_PanelUnpinnedTabAreaTop.Size = New System.Drawing.Size(603, 0) - Me._MDIENT_PanelUnpinnedTabAreaTop.TabIndex = 7 - ' - '_MDIENT_PanelUnpinnedTabAreaBottom - ' - Me._MDIENT_PanelUnpinnedTabAreaBottom.Dock = System.Windows.Forms.DockStyle.Bottom - Me._MDIENT_PanelUnpinnedTabAreaBottom.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte)) - Me._MDIENT_PanelUnpinnedTabAreaBottom.Location = New System.Drawing.Point(21, 442) - Me._MDIENT_PanelUnpinnedTabAreaBottom.Name = "_MDIENT_PanelUnpinnedTabAreaBottom" - Me._MDIENT_PanelUnpinnedTabAreaBottom.Owner = Me.UltraDockManager1 - Me._MDIENT_PanelUnpinnedTabAreaBottom.Size = New System.Drawing.Size(603, 0) - Me._MDIENT_PanelUnpinnedTabAreaBottom.TabIndex = 8 - ' - '_MDIENT_PanelAutoHideControl - ' - Me._MDIENT_PanelAutoHideControl.Controls.Add(Me.DockableWindow1) - Me._MDIENT_PanelAutoHideControl.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte)) - Me._MDIENT_PanelAutoHideControl.Location = New System.Drawing.Point(21, 0) - Me._MDIENT_PanelAutoHideControl.Name = "_MDIENT_PanelAutoHideControl" - Me._MDIENT_PanelAutoHideControl.Owner = Me.UltraDockManager1 - Me._MDIENT_PanelAutoHideControl.Size = New System.Drawing.Size(14, 442) - Me._MDIENT_PanelAutoHideControl.TabIndex = 9 - ' - 'DockableWindow1 - ' - Me.DockableWindow1.Controls.Add(Me.uebMenu) - Me.DockableWindow1.Location = New System.Drawing.Point(0, 0) - Me.DockableWindow1.Name = "DockableWindow1" - Me.DockableWindow1.Owner = Me.UltraDockManager1 - Me.DockableWindow1.Size = New System.Drawing.Size(239, 442) - Me.DockableWindow1.TabIndex = 17 - ' - 'WindowDockingArea1 - ' - Me.WindowDockingArea1.Dock = System.Windows.Forms.DockStyle.Left - Me.WindowDockingArea1.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte)) - Me.WindowDockingArea1.Location = New System.Drawing.Point(21, 0) - Me.WindowDockingArea1.Name = "WindowDockingArea1" - Me.WindowDockingArea1.Owner = Me.UltraDockManager1 - Me.WindowDockingArea1.Size = New System.Drawing.Size(244, 294) - Me.WindowDockingArea1.TabIndex = 11 - ' - 'MDI_Panel - ' - Me.AutoScaleBaseSize = New System.Drawing.Size(5, 14) - Me.ClientSize = New System.Drawing.Size(624, 442) - Me.Controls.Add(Me._MDIENT_PanelAutoHideControl) - Me.Controls.Add(Me.WindowDockingArea1) - Me.Controls.Add(Me._MDIENT_PanelUnpinnedTabAreaTop) - Me.Controls.Add(Me._MDIENT_PanelUnpinnedTabAreaBottom) - Me.Controls.Add(Me._MDIENT_PanelUnpinnedTabAreaLeft) - Me.Controls.Add(Me._MDIENT_PanelUnpinnedTabAreaRight) - Me.Controls.Add(Me._MDIENT_Panel_Toolbars_Dock_Area_Left) - Me.Controls.Add(Me._MDIENT_Panel_Toolbars_Dock_Area_Right) - Me.Controls.Add(Me._MDIENT_Panel_Toolbars_Dock_Area_Bottom) - Me.Controls.Add(Me._MDIENT_Panel_Toolbars_Dock_Area_Top) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte)) - Me.IsMdiContainer = True - Me.Name = "MDI_Panel" - Me.Text = "Test" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - CType(Me.uebMenu, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.UltraToolbarsManager1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.UltraDockManager1, System.ComponentModel.ISupportInitialize).EndInit() - Me._MDIENT_PanelAutoHideControl.ResumeLayout(False) - Me.DockableWindow1.ResumeLayout(False) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub MDIENT_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ''---掛載Online Help---- - Dim clsHelp As New clsOnlineHelp - clsHelp.AddEventToForm(Me) - - 'set BackColor - Call setMDIBackColor(Me) - - ModuleNo = "SYS" - - ' 2016/05/09 YF, 產生選單 - GenerateMenu() - - '3.Get EnterpriseNo----------------------------------------------------------------------------------------------------------- - Call funGetEnterpriseNo() - - '4.版本檢查 - Call ChkVersion() - - 'Me.Text = Me.Text & " - " & GetClientVersion() 'Gary Lu 20120718:標題加上版本編號 - - '5.Execute Change Resource----------------------------------------------------------------------------------------------------- - 'Call ExeChangeResource(Me, gLanguageMode) - - '6.Set iMESExceptionManager LanguageMode--------------------------------------------------------------------------------------- - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - Cursor.Current = Cursors.Default - - End Sub - -#Region " UltraWinToolbars Menu & ToolBar Function " - - Private Function funCreateUltraPopupMenuToolbar(ByRef ParentMenuItem As iMESMenuItem) As PopupMenuTool - - - 'PopupMenuTool - popMDI = New PopupMenuTool(ParentMenuItem.Name) - popMDI.SharedProps.Tag = ParentMenuItem.Name - popMDI.SharedProps.ToolTipText = ParentMenuItem.Name - UltraToolbarsManager1.Tools.Add(popMDI) - - Return popMDI - - End Function - - Private Function funCreateUltraButtonMenuToolbar(ByRef ParentMenuItem As iMESMenuItem) - - 'Button Tool - btlMDI = New ButtonTool(ParentMenuItem.Name) - btlMDI.SharedProps.Tag = ParentMenuItem.Name - btlMDI.SharedProps.ToolTipText = ParentMenuItem.Name - UltraToolbarsManager1.Tools.Add(btlMDI) - - utbMDIMenu.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {btlMDI}) - - End Function - - Private Sub funCreateUltraMenuItemToolbar(ByRef tmppopMDI As PopupMenuTool, ByRef ParentMenuItem As iMESMenuItem, Optional ByVal btlEnabled As Boolean = True) - - If ParentMenuItem.Name.ToUpper = "EN" Or ParentMenuItem.Name.ToUpper = "ZH-CHT" Or - ParentMenuItem.Name.ToUpper = "ZH-CHS" Or ParentMenuItem.Name.ToUpper = "JP" Or - ParentMenuItem.Name.ToUpper = "KOR" Or ParentMenuItem.Name.ToUpper = "THAI" Or - ParentMenuItem.Name.ToUpper = "VIET" Then - - funCreateUltraStatButtonToolbar(tmppopMDI, ParentMenuItem, , "LanguageMode") - - ElseIf ParentMenuItem.Checkable = True Then - - funCreateUltraStatButtonToolbar(tmppopMDI, ParentMenuItem, btlEnabled) - - Else - - '產生UltraToolBar Button - btlMDI = New ButtonTool(ParentMenuItem.Name) - btlMDI.SharedProps.Tag = ParentMenuItem.Name - btlMDI.SharedProps.ToolTipText = ParentMenuItem.Name - btlMDI.SharedProps.Enabled = btlEnabled - - If Not ParentMenuItem.Icon Is Nothing Then - 'Image - imlMDI.Images.Add(ParentMenuItem.Icon) - - btlMDI.SharedProps.AppearancesSmall.Appearance.Image = imlMDI.Images.Count - 1 - - End If - - - btlMDI.SharedProps.Shortcut = ParentMenuItem.Shortcut - - UltraToolbarsManager1.Tools.Add(btlMDI) - tmppopMDI.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {btlMDI}) - - End If - - - End Sub - - Private Sub funCreateUltraStatButtonToolbar(ByRef tmppopMDI As PopupMenuTool, ByRef ParentMenuItem As iMESMenuItem, Optional ByVal btlEnabled As Boolean = True, Optional ByVal tmpOptionSetKey As String = "") - - '產生UltraToolBar Button - sbtMDI = New StateButtonTool(ParentMenuItem.Name) - sbtMDI.MenuDisplayStyle = Infragistics.Win.UltraWinToolbars.StateButtonMenuDisplayStyle.DisplayCheckmark - sbtMDI.SharedProps.Tag = ParentMenuItem.Name - sbtMDI.SharedProps.ToolTipText = ParentMenuItem.Name - sbtMDI.SharedProps.Enabled = btlEnabled - sbtMDI.OptionSetKey = tmpOptionSetKey - - If gLanguageMode.ToUpper = ParentMenuItem.Name.ToUpper Or ParentMenuItem.Checked = True Then - sbtMDI.Checked = True - End If - - - If Not ParentMenuItem.Icon Is Nothing Then - 'Image - imlMDI.Images.Add(ParentMenuItem.Icon) - - sbtMDI.SharedProps.AppearancesSmall.Appearance.Image = imlMDI.Images.Count - 1 - - End If - - sbtMDI.SharedProps.Shortcut = ParentMenuItem.Shortcut - - UltraToolbarsManager1.Tools.Add(sbtMDI) - tmppopMDI.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {sbtMDI}) - - End Sub - - Private Sub funCreateUltraToolbar(ByRef ParentMenuItem As iMESMenuItem) - - '產生UltraToolBar Button - If Not ParentMenuItem.Icon Is Nothing Then - 'Image - imlMDI.Images.Add(ParentMenuItem.Icon) - 'Button - btlMDI = New ButtonTool(ParentMenuItem.Name) - btlMDI.SharedProps.Tag = ParentMenuItem.Name - btlMDI.SharedProps.ToolTipText = ParentMenuItem.Name - btlMDI.SharedProps.AppearancesSmall.Appearance.Image = imlMDI.Images.Count - 1 - utbMDI.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {btlMDI}) - End If - - End Sub - -#End Region - - -#Region " UltraWinExplorerBar & UltraWinToolbars Events " - - - Private Sub uebRPTMenu_ItemClick(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinExplorerBar.ItemEventArgs) Handles uebMenu.ItemClick - ExecutingFunction(e.Item.Key) - End Sub - - Private Sub uebRPTMenu_ItemDoubleClick(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinExplorerBar.ItemEventArgs) Handles uebMenu.ItemDoubleClick - ExecutingFunction(e.Item.Key) - End Sub - - Private Sub UltraToolbarsManager1_ToolClick(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinToolbars.ToolClickEventArgs) Handles UltraToolbarsManager1.ToolClick - - Dim strOptionSetKey As String = "" - - If (e.Tool.GetType Is GetType(StateButtonTool)) Then - strOptionSetKey = CType(e.Tool, StateButtonTool).OptionSetKey - End If - - ExecutingFunction(e.Tool.Key, strOptionSetKey) - - End Sub - - Protected Sub ExecutingFunction(ByVal FunctionKey As String, Optional OptionSetKey As String = "") - Dim strFormName As String - Dim TempChild As Form - Dim CurrentForm As Form - Cursor.Current = Cursors.WaitCursor - Try - - ' 2016/05/09 YF, 重新產生選單 - If OptionSetKey = "MODULE" Then - ModuleNo = FunctionKey.Replace("Module", "") - GenerateMenu() - Exit Sub - End If - - Select Case FunctionKey.ToUpper - Case "EXIT" - 'End - Me.Close() - Case "CASCADE" - Me.LayoutMdi(MdiLayout.Cascade) - Case "VERTICAL" - Me.LayoutMdi(MdiLayout.TileVertical) - Case "HORIZONTAL" - Me.LayoutMdi(MdiLayout.TileHorizontal) - - 'Change Language Mode - Case "zh-CHT".ToUpper - gLanguageMode = "zh-CHT" - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - CurrentForm = Form.ActiveForm - - If Not CurrentForm Is Nothing Then - Call ExeChangeResource(CurrentForm, gLanguageMode) - End If - - '變更畫面上的表單(僅限MDI Child Form) - - For Each TempChild In Me.MdiChildren - If Not (TempChild Is CurrentForm) Then - Call ExeChangeResource(TempChild, gLanguageMode) - End If - Next - - '變更其他語系的Checked為False - 'Call funChangeChecked(mnuMenuItem) - - Case "zh-CHS".ToUpper - gLanguageMode = "zh-CHS" - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - CurrentForm = Form.ActiveForm - - If Not CurrentForm Is Nothing Then - Call ExeChangeResource(CurrentForm, gLanguageMode) - End If - - '變更畫面上的表單(僅限MDI Child Form) - - For Each TempChild In Me.MdiChildren - If Not (TempChild Is CurrentForm) Then - Call ExeChangeResource(TempChild, gLanguageMode) - End If - Next - - '變更其他語系的Checked為False - 'Call funChangeChecked(mnuMenuItem) - - Case "en".ToUpper - gLanguageMode = "en" - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - CurrentForm = Form.ActiveForm - - If Not CurrentForm Is Nothing Then - Call ExeChangeResource(CurrentForm, gLanguageMode) - End If - - '變更畫面上的表單(僅限MDI Child Form) - For Each TempChild In Me.MdiChildren - If Not (TempChild Is CurrentForm) Then - Call ExeChangeResource(TempChild, gLanguageMode) - End If - Next - - '變更其他語系的Checked為False - 'Call funChangeChecked(mnuMenuItem) - - Case "jp".ToUpper - gLanguageMode = "jp" - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - CurrentForm = Form.ActiveForm - - If Not CurrentForm Is Nothing Then - Call ExeChangeResource(CurrentForm, gLanguageMode) - End If - - '變更畫面上的表單(僅限MDI Child Form) - For Each TempChild In Me.MdiChildren - If Not (TempChild Is CurrentForm) Then - Call ExeChangeResource(TempChild, gLanguageMode) - End If - Next - - '變更其他語系的Checked為False - 'Call funChangeChecked(mnuMenuItem) - - Case "kor".ToUpper 'Korea(韓國語系) - gLanguageMode = "kor" - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - CurrentForm = Form.ActiveForm - - If Not CurrentForm Is Nothing Then - Call ExeChangeResource(CurrentForm, gLanguageMode) - End If - - '變更畫面上的表單(僅限MDI Child Form) - For Each TempChild In Me.MdiChildren - If Not (TempChild Is CurrentForm) Then - Call ExeChangeResource(TempChild, gLanguageMode) - End If - Next - - '變更其他語系的Checked為False - 'Call funChangeChecked(mnuMenuItem) - - Case "thai".ToUpper 'Thailand(泰國語系) - gLanguageMode = "thai" - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - CurrentForm = Form.ActiveForm - - If Not CurrentForm Is Nothing Then - Call ExeChangeResource(CurrentForm, gLanguageMode) - End If - - '變更畫面上的表單(僅限MDI Child Form) - For Each TempChild In Me.MdiChildren - If Not (TempChild Is CurrentForm) Then - Call ExeChangeResource(TempChild, gLanguageMode) - End If - Next - - '變更其他語系的Checked為False - 'Call funChangeChecked(mnuMenuItem) - - Case "viet".ToUpper 'VietNam(越南語系) - gLanguageMode = "viet" - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - CurrentForm = Form.ActiveForm - - If Not CurrentForm Is Nothing Then - Call ExeChangeResource(CurrentForm, gLanguageMode) - End If - - '變更畫面上的表單(僅限MDI Child Form) - For Each TempChild In Me.MdiChildren - If Not (TempChild Is CurrentForm) Then - Call ExeChangeResource(TempChild, gLanguageMode) - End If - Next - - '變更其他語系的Checked為False - 'Call funChangeChecked(mnuMenuItem) - - Case "ABOUTME" - strFormName = "frmAboutMe" - blnShow = False - For i = 0 To Me.MdiChildren.Length - 1 - If Me.MdiChildren(i).Name = strFormName Then - Me.MdiChildren(i).Focus() - blnShow = True - Exit For - End If - Next - - If blnShow = False Then '目前沒有顯示 - - Dim mainAssembly As System.Reflection.Assembly = LoadAssembly("COM_AboutMe.dll") - - If (mainAssembly Is Nothing) Then - Exit Sub - End If - - Dim objForm As Form = mainAssembly.CreateInstance(mainAssembly.GetName.Name & "." & strFormName) - - If objForm Is Nothing Then 'Form不存在 - MsgBox("Form : " & strFormName & " is not exist!!", MsgBoxStyle.Exclamation) - Exit Sub - End If - - objForm.MdiParent = MDI_Panel.ActiveForm - objForm.AutoScaleMode = Windows.Forms.AutoScaleMode.None - objForm.Show() - - End If - - Case Else - - Dim strExecutionFile As String = dsData.Tables(strUserPriv).Select("FunctionNo='" & FunctionKey & "'")(0)("ExecutionFile") - strFormName = dsData.Tables(strUserPriv).Select("FunctionNo='" & FunctionKey & "'")(0)("FormName") - - If (Not Application.OpenForms.Item(strFormName) Is Nothing) AndAlso (strFormName <> "frmRPT_Script") Then - If Application.OpenForms.Item(strFormName).WindowState <> FormWindowState.Normal Then Application.OpenForms.Item(strFormName).WindowState = FormWindowState.Normal - Application.OpenForms.Item(strFormName).Focus() - Exit Sub - End If - - Dim mainAssembly As System.Reflection.Assembly = LoadAssembly(strExecutionFile) - - If (mainAssembly Is Nothing) Then - Exit Sub - End If - - 'Show Form - 'Dim mainAssembly As System.Reflection.Assembly = System.Reflection.Assembly.GetExecutingAssembly - 'Dim objForm As Form = mainAssembly.CreateInstance(mainAssembly.EntryPoint.ReflectedType.Namespace & "." & strFormName) - Dim objForm As Form = mainAssembly.CreateInstance(mainAssembly.GetName.Name & "." & strFormName) - - If objForm Is Nothing Then 'Form不存在 - MsgBox("Form : " & strFormName & " is not exist!!", MsgBoxStyle.Exclamation) - Exit Sub - End If - - objForm.MdiParent = MDI_Panel.ActiveForm - - '設定值予公用變數 - Dim myfieldinfo() As System.Reflection.FieldInfo - Dim myType As Type = objForm.GetType - Dim i As Integer - myfieldinfo = myType.GetFields() - For i = 0 To myfieldinfo.Length - 1 - If myfieldinfo(i).Name.ToUpper = "PrivFunNo".ToUpper Then - myfieldinfo(i).SetValue(objForm, FunctionKey) - End If - Next i - objForm.AutoScaleMode = Windows.Forms.AutoScaleMode.None - objForm.Show() - - End Select - - Catch ex As Exception - MsgBox("This Function can not be executed. " & ex.Message, MsgBoxStyle.Exclamation, "Warning") - 'ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - Cursor.Current = Cursors.Default - End Sub - -#End Region - - Private Sub funLoadUserPriv() - - If (Not dsData.Tables(strUserPriv) Is Nothing) Then - dsData.Tables.Remove(strUserPriv) - End If - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim InXml, OutXml, strIdentity, strParameter As String '呼叫WS的字串參數 - Dim XmlData, XmlSchema As String '儲存取回之資料及資料結構 - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("userno", "UserNo", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("moduleno", "ModuleNo", "String", ModuleNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - OutXml = InvokeSrv("wsUSR.LoadUserPriv", InXml) - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - strUserPriv = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loaduserpriv").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loaduserpriv").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsData.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - Else - MsgBox(GetExceptionSysMsg(XmlDoc) & Chr(13) & GetExceptionMesMsg(XmlDoc), MsgBoxStyle.Exclamation) - Exit Sub - End If - - Catch e1 As Exception - MsgBox("Unexpected Error. Load User's Priv Failed," & e1.Message, MsgBoxStyle.Exclamation) - Finally - XmlDoc = Nothing - tmpStringReader = Nothing - - End Try - - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Public Sub funGetEnterpriseNo() - - Dim XmlDoc As New XmlDocument - Dim tmpStringReader As System.IO.StringReader - Dim InXml, OutXml, strIdentity, strParameter, XmlData, XmlSchema, strPara As String - Dim dsTemp As New DataSet - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("parameterno", "ParameterNo", "String", "EnterpriseNo", "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - - OutXml = InvokeSrv("wsSYS.LoadParameter", InXml) - - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - - strPara = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadparameter").Item(0).SelectNodes("name").Item(0).InnerXml - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadparameter").Item(0).SelectNodes("schema").Item(0).InnerXml - - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsTemp.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadparameter").Item(0).SelectNodes("value").Item(0).InnerXml - - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsTemp.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - If dsTemp.Tables(strPara).Rows.Count > 0 Then - gEnterpriseNo = dsTemp.Tables(strPara).Rows(0)("ParameterValue").ToString.ToUpper - End If - - Else - MsgBox(GetExceptionSysMsg(XmlDoc) & Chr(13) & GetExceptionMesMsg(XmlDoc), MsgBoxStyle.Exclamation) - End If - - Catch ex As Exception - MsgBox("Unexpected Error. GetEnterpriseNo failed, " & ex.Message, MsgBoxStyle.Exclamation) - Finally - XmlDoc = Nothing - tmpStringReader = Nothing - dsTemp = Nothing - End Try - - End Sub - - ' 2016/05/09 YF, 產生模組選單 - Private Sub GenerateModuleItems() - - Dim aryModule() As String = {"AUT", "DT", "EMS", "ENT", "EQP", "IEW", "INV", "ISU", "MSA", "MTL", "OE", "OP", "PM", "PRD", "PRS", "QC", "RPT", "SMD", "SPC", "SYS", "USR", "WIP"} - Dim popModule As PopupMenuTool - Dim sbt As StateButtonTool - - Try - - popModule = New PopupMenuTool("MODULE") - popModule.SharedProps.Tag = "MODULE" - popModule.SharedProps.ToolTipText = "MODULE" - UltraToolbarsManager1.Tools.Add(popModule) - - '產生UltraToolBar Button - For Each m As String In aryModule - - sbt = New StateButtonTool(m & "Module") - sbt.MenuDisplayStyle = Infragistics.Win.UltraWinToolbars.StateButtonMenuDisplayStyle.DisplayCheckmark - sbt.CustomizedCaption = m - sbt.SharedProps.Tag = m - sbt.SharedProps.ToolTipText = m - sbt.SharedProps.Enabled = True - sbt.OptionSetKey = "MODULE" - - If ModuleNo = m Then - sbt.Checked = True - End If - - UltraToolbarsManager1.Tools.Add(sbt) - popModule.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {sbt}) - - Next - - Me.utbMDIMenu.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {popModule}) - - Me.utbMDIMenu.Tools.Item("MODULE").CustomizedIsFirstInGroup = DefaultableBoolean.True - - Catch ex As Exception - MsgBox("GenerateModuleMenu failed, " & ex.Message, MsgBoxStyle.Exclamation) - End Try - - End Sub - - Private Sub GenerateMenu() - - Try - - ' 2016/05/09 YF, 清空選單 - RemoveObject() - - '取出User Privileges - Call funLoadUserPriv() - - '1.Create MainMenu------------------------------------------------------------------------------------------------------------- - Dim strFileName As String - strFileName = GetMainMenuFileName() - - '檢查檔案是否存在 - If Dir(strFileName) = "" Then 'File not exist - MsgBox(strFileName & vbCrLf & "is not exist,Load MDI Form failed!!", MsgBoxStyle.Exclamation) - Exit Sub - End If - - '將處理 MenuItem 被點選的函數以 EventHandler Delegation 傳給 mnuMainMenu - Dim mnuMainMenu As New iMESMainMenu.iMESMainMenuControl(strFileName, Nothing) - - 'Add ExplorerBar MainMenu By carl 2007.08.14 - Dim j As Integer - Dim tempMenuSplit As Integer = defInteger - Dim panelmenu As MainMenu = New MainMenu(mnuMainMenu.CreateMainMenu(ModuleNo)) - Dim tmpMenuItem1 As iMESMenuItem - Dim tmpPopMenu As PopupMenuTool - UltraDockManager1.ControlPanes(0).Pinned = False - UltraDockManager1.ShowCloseButton = False - - uebMenu.GroupSettings.AllowDrag = DefaultableBoolean.False - uebMenu.GroupSettings.AllowEdit = DefaultableBoolean.False - uebMenu.GroupSettings.AllowItemDrop = DefaultableBoolean.False - uebMenu.ItemSettings.AllowDragCopy = UltraWinExplorerBar.ItemDragStyle.None - uebMenu.ItemSettings.AllowDragMove = UltraWinExplorerBar.ItemDragStyle.None - uebMenu.ItemSettings.AllowEdit = DefaultableBoolean.False - uebMenu.ShowDefaultContextMenu = False - - uebMenu.ItemSettings.UseDefaultImage = Infragistics.Win.DefaultableBoolean.False - uebMenu.ItemSettings.MaxLines = 2 - - If Not dsData.Tables(strUserPriv) Is Nothing Then '沒有任何權限,所有Privilege MenuItem都不可使用 - - For i = 0 To panelmenu.MenuItems.Count - 1 - tmpMenuItem1 = CType(panelmenu.MenuItems(i), iMESMenuItem) - - If i <= panelmenu.MenuItems.Count - 4 Then - uebMenu.Groups.Add(tmpMenuItem1.Text.ToUpper) - uebMenu.Groups(i).Expanded = True - End If - - If tmpMenuItem1.Name.ToUpper = "EXIT" Then - - funCreateUltraButtonMenuToolbar(tmpMenuItem1) - - Else - - tmpPopMenu = funCreateUltraPopupMenuToolbar(tmpMenuItem1) - - For j = 0 To tmpMenuItem1.MenuItems.Count - 1 - If CType(tmpMenuItem1.MenuItems(j), iMESMenuItem).MenuType = iMESMenuItem.mesMenuType.MenuPrivilege Then - If dsData.Tables(strUserPriv).Select("FunctionNo='" & tmpMenuItem1.MenuItems(j).Text.ToUpper & "'").Length > 0 Then - funCreateUltraMenuItemToolbar(tmpPopMenu, CType(tmpMenuItem1.MenuItems(j), iMESMenuItem)) - - uebMenu.Groups(i).Items.Add(tmpMenuItem1.MenuItems(j).Text) - - funCreateUltraToolbar(CType(tmpMenuItem1.MenuItems(j), iMESMenuItem)) - - If tempMenuSplit = j Then - tmpPopMenu.Tools(tmpMenuItem1.MenuItems(j).Text).InstanceProps.IsFirstInGroup = True - End If - - Else - funCreateUltraMenuItemToolbar(tmpPopMenu, CType(tmpMenuItem1.MenuItems(j), iMESMenuItem), False) - - If tempMenuSplit = j Then - tmpPopMenu.Tools(tmpMenuItem1.MenuItems(j).Text).InstanceProps.IsFirstInGroup = True - End If - - End If - - ElseIf CType(tmpMenuItem1.MenuItems(j), iMESMenuItem).MenuType = iMESMenuItem.mesMenuType.MenuString Then - - - funCreateUltraMenuItemToolbar(tmpPopMenu, CType(tmpMenuItem1.MenuItems(j), iMESMenuItem)) - - If tempMenuSplit = j Then - tmpPopMenu.Tools(tmpMenuItem1.MenuItems(j).Text).InstanceProps.IsFirstInGroup = True - End If - - ElseIf CType(tmpMenuItem1.MenuItems(j), iMESMenuItem).MenuType = iMESMenuItem.mesMenuType.MenuSplit Then - - tempMenuSplit = j + 1 - - End If - - Next - - utbMDIMenu.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {tmpPopMenu}) - - End If - - Next - - End If - - 'Add UltraToolBar----------------------------------------------------------------------------------------------------------------- - If utbMDI.Tools.Count > 0 Then - imlMDI.ImageSize = New Size(24, 24) - utbMDI.Text = "Toolbar" - utbMDI.Settings.ToolDisplayStyle = ToolDisplayStyle.ImageAndText - utbMDI.Settings.CaptionPlacement = TextPlacement.Default - utbMDI.IsMainMenuBar = False - utbMDI.DockedPosition = DockedPosition.Top - UltraToolbarsManager1.Style = ToolbarStyle.Office2003 - UltraToolbarsManager1.ImageListSmall = imlMDI - UltraToolbarsManager1.Toolbars.Add(utbMDI) - End If - - 'Add Menu UltraToolBar----------------------------------------------------------------------------------------------------------------- - If utbMDIMenu.Tools.Count > 0 Then - imlMDI.ImageSize = New Size(24, 24) - utbMDIMenu.Text = "MainMenu" - utbMDIMenu.Settings.ToolDisplayStyle = ToolDisplayStyle.ImageAndText - utbMDIMenu.Settings.CaptionPlacement = TextPlacement.Default - utbMDIMenu.IsMainMenuBar = True - utbMDIMenu.DockedPosition = DockedPosition.Top - UltraToolbarsManager1.OptionSets.Add(OptionSet1) - UltraToolbarsManager1.Style = ToolbarStyle.Office2003 - UltraToolbarsManager1.ImageListSmall = imlMDI - UltraToolbarsManager1.Toolbars.Add(utbMDIMenu) - UltraToolbarsManager1.Toolbars("MainMenu").ToolbarsManager.ToolbarSettings.ToolSpacing = 5 - End If - - ' 2016/05/09 YF, 產生模組選單 - GenerateModuleItems() - - Catch ex As Exception - MsgBox("GenerateMenuItem failed, " & ex.Message, MsgBoxStyle.Exclamation) - Finally - Me.Text = "Test" - ExeChangeResource(Me, gLanguageMode) - End Try - - End Sub - - Private Sub RemoveObject() - - uebMenu.Groups.Clear() - utbMDIMenu.Tools.Clear() - utbMDI.Tools.Clear() - UltraToolbarsManager1.Toolbars.Clear() - UltraToolbarsManager1.Tools.Clear() - UltraToolbarsManager1.OptionSets.Clear() - Me.UltraDockManager1.DockAreas(0).Panes.Item(0).Text = ModuleNo - Me.UltraDockManager1.DockAreas(0).Panes.Item(0).Key = ModuleNo & "Module" - - For i As Integer = Application.OpenForms.Count - 1 To 0 Step -1 - - If (Application.OpenForms.Item(i).Name <> "MDI_Panel") Then - Application.OpenForms.Item(i).Close() - End If - - Next - - End Sub - -End Class diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Application.myapp b/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/AssemblyInfo.vb deleted file mode 100644 index d43ca3b..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Resources.Designer.vb deleted file mode 100644 index 3995654..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Resources.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 這段程式碼是由工具產生的。 -' 執行階段版本:4.0.30319.42000 -' -' 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, -' 變更將會遺失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '這個類別是自動產生的,是利用 StronglyTypedResourceBuilder - '類別透過 ResGen 或 Visual Studio 這類工具。 - '若要加入或移除成員,請編輯您的 .ResX 檔,然後重新執行 ResGen - '(利用 /str 選項),或重建您的 VS 專案。 - ''' - ''' 用於查詢當地語系化字串等的強類型資源類別。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 傳回這個類別使用的快取的 ResourceManager 執行個體。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("Test.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 覆寫目前執行緒的 CurrentUICulture 屬性,對象是所有 - ''' 使用這個強類型資源類別的資源查閱。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - - ''' - ''' 查詢類型 System.Byte[] 的當地語系化資源。 - ''' - Friend ReadOnly Property iMES() As Byte() - Get - Dim obj As Object = ResourceManager.GetObject("iMES", resourceCulture) - Return CType(obj,Byte()) - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Resources.resx b/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Resources.resx deleted file mode 100644 index c14f0b3..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/Resources.resx +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - ..\resources\imes.isl;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/licenses.licx b/SRC/MESWin/SYS4/21670ll/MESWin/Test/My Project/licenses.licx deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/Resources/iMES.isl b/SRC/MESWin/SYS4/21670ll/MESWin/Test/Resources/iMES.isl deleted file mode 100644 index 0679a67..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/Resources/iMES.isl +++ /dev/null @@ -1,4303 +0,0 @@ - - - - 2015-02-05T03:06:30 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA3gMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADgElEQVRoQ+2XzWsTQRjGq/Qk1YOgFz3qHyLFi4LeRAri0YMHTx68eCseBMFL8W+waGPRIoixYkUrUmgVaZKaNJ/bbNpNm48mjUle531lttPpZGcm0IvMAw+Tncy7s89vZ2eTkVwuB7aOx+PWnpyctPax52k4bmEcP0wNQWi328auVCoUykYcQqPRMDaOx4u0EQ9mIxzvIDgIDgLJQWByEJgcBCYHgclBYHIQmBwEphACBjN1sVikULbGULbmoY7aI6urq2BrVUidVSF1tv0zNIzpDxSGspHneRTKRhyCatkPMo7Hi7QRD2YjHO8gmEDodrtQKBSgWq3SsQmErb0eXF/YgGe/a3RsAiFfrcHVj0V4+qtCxyYQ5HlMIKhqIiEggFKpRPsAgkDpIOAkE199GGEnv7ZQpj4dBARwY6FENVfmi9Sng6CaRwdhUM1ACP1+nwLj9/gGQSCoKAidXh9uf/Npsxmf92Cj9a8mCkK11oCJzyWqufS+AOmgRv1REAbNEwUhqiaEgL8BMGyz2aTjIAggkUhAOp2G3d1d6kOJEJa39+DyR3bst4DNAY8T23DiRQYuzuXhU6VFY1AihEVvG8bjBZjLBlCrs7ArPtVceJOFd/kghCNCMJ1HhGBTE0Iol8t019fW1sD3fUgmk5BKpaDV2i9AiRDuLm0S2fOvc3B/eQtOzazD2dksfNls0/dcIoQ7ix7VnJtdh3vfN+DkywycebUOH/LVEIAMwXQeEYJNzYHHAQPi3cc+BMBXhSj5cbi1WIbR6Qw9Z6djWXjr7a8aLhEC+iZb/qPTbHKsmclALLO/ArhFCCiTeUQIKNOaAxB6vR79KsRVgI8D7guyZAjNPz14+DOAMXZHnyR3oNU9XCND8Hfq8GCpDGNseT764cNmrX4AAFqGYDKPDMG05tDGiME7nY4SAEqGgMKTp+od2nxUkiGgMfiKv0Mbo9jPLUNA6eaRIaBMag5B0EkFQScVBJ1VEHRSQdAphIDBTI1vCwxlawxlax7qqE3/Im2tCqmzKqTOuLurLnqQcfwwNQTBRhyCjTgEG8ViMbpIG+FbYJiaEAK/y1Hm4zgEOoHGKBGCaoxslAhBNUY2HzdMjYOAn8VwOvNxDgJrHQTWOgisdRBY6yCw1kFg7X8LwVQiBFOJEEwlQjAVBhqmhiDYGkPZGiFgMFNPTU2Fd+xonYa/RnTXOFz4kRIAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - - - - 249, 249, 249 - MiddleCenter - - - - - White - Segoe UI, 9pt - 75, 75, 75 - MiddleLeft - MiddleLeft - - - - - White - Segoe UI, 8.25pt - 75, 75, 75 - - - - - White - Segoe UI, 9pt - 75, 75, 75 - - - - - 75, 75, 75 - White - 0, 170, 222 - White - Silver - Left - Long - False - False - - - - - White - Segoe UI, 9pt - 75, 75, 75 - - - - - White - Flat - Segoe UI, 9pt - 75, 75, 75 - - - - - White - None - Microsoft Sans Serif, 12pt - 0, 170, 222 - MiddleCenter - - - - - 0, 170, 222 - White - None - Gainsboro - Flat - Segoe UI, 9.75pt, style=Bold - MiddleCenter - AlwaysUnderline - 133, 133, 133 - MiddleCenter - 179, 230, 245 - - - - - White - FixedSingle - Segoe UI, 9pt - 75, 75, 75 - - - - - True - White - FixedSingle - Segoe UI, 9pt - 75, 75, 75 - Nonclickable - LargeIcon - - - - - White - 75, 75, 75 - True - True - 0, 170, 222 - White - 191, 191, 191 - - - - - White - None - Segoe UI, 8.25pt - 75, 75, 75 - - - - - White - None - - - - - White - White - 75, 75, 75 - Segoe UI, 9pt - White - White - True - White - True - White - 75, 75, 75 - - - - - White - Segoe UI, 9pt - 75, 75, 75 - MiddleCenter - MiddleLeft - - - - - White - None - 75, 75, 75 - - - - - White - None - 75, 75, 75 - - - - - 133, 133, 133 - None - - - - - Segoe UI, 9pt - True - - - - - White - FixedSingle - Segoe UI, 9pt - 75, 75, 75 - Left - - - - - White - - - - - White - None - False - Segoe UI, 9pt - 75, 75, 75 - False - False - True - 25 - False - True - True - - - - - White - Segoe UI, 8.25pt - 75, 75, 75 - - - - - - True - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA7QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADj0lEQVRoQ+2YzWsTQRiHq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OKteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXuf3ym4n2012JuBtHvgddjNvZt9nZycfI8lkknQTDAa1Mzk5qZ0jz2N0VCMYP0wNS2g2m8opFArclA5ra2vcVK1WU04gEOCL1OH2t8JQNUaCkWAkMEaCwEgQGAkCI0FgJAiMBIGRIHAkoDHVZDIZloDGVBMKhVgCGlPN1NQUf6/HRarmwtvUUDUj6+vrpBtI0A0k6GaYH0PD1LAEHXK5HDelgy3Ba9n3C8bjInWwG9MB440EFQntdpvS6TSVy2U+VpFQ3O/QtcUteva7wscqElLlCl1ZyNDTXwU+VpHgnkdFglfNQAkQkM1meR+ACOAnAZNMhCwaEW9+dTHP5/wkQMD1xSzXXJ7P8Dk/CV7z+EnoV9NXQrfb5YbxOj5BIAQMktDqdOnWV4s3m/H5HG01/tUMklCu1Gjic5ZrLn5IU6xU4fODJPSbZ5CEQTWOBHwHQLP1ep2PS6UShcNhisVitLe3x+eALGFlZ58uLYhjq0FiDnoc3qFjL+J0fi5FnwoNHgNkCUu5HRoPpmkuUaJKVTS7anHNuTcJep8qOXJkCarzyBJ0ahwJ+Xye7/rGxgZZlkWRSISi0Sg1GgcFQJZwd3mbzZ59naT7K0U6MbNJp2cT9GW7ya/byBLuLOW45szsJt37vkXHX8bp1KtN+pgqOwLcElTnkSXo1PQ8DmgQdx/nIMBeFTLux+HmUp5Gp+P8nJ0MJOhd7mDV2MgSkBti+Y9Oi8lRMxOnQPxgBdiRJQCVeWQJQLWmR0Kn0+FvhVgFeBywL7hxS6j/6dDDnyUaE3f0SWSXGu3DNW4J1m6VHiznaUwsz0c/LNquVHsEIG4JKvO4JajWHNoY0Xir1fIUANwSAN48Wm3x5uOFWwKCxletXd4Y5fN23BKA3zxuCUCl5pAEP7wk+OElwS9eEvzwkuCHIwGNqQafFmhKN2hKN3ZT/zv8K1I3Xk36xatJv2B397rofsH4YWpYgg7FYpGb0sGWoAPG4yJ1sBvTAeMdCfKd7hcgS8BHj1+ALMFrjDtAluA1xh0gS/Aa4w4wEgRGgsBIEBgJAiNBYCQIjASBkSDokaCKLEEVWYIqsgRVZAmqOBLQmGrwxyua0g2a0o3d1P9NjP4C33z6NGMDUeMAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAAvQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADX0lEQVRoQ+2Xz2sTQRTHq/Qk1YOgFz3qHyLFi4LeRAri0YMHTx68eCseBMGbf4NFW4sWQYwtVrRFCq0iTVKT5kezzabdtPnRpDHJc97IbCfTyc68gEVhPvA97HReZt9nZyfN0OrqKlATi8XIGR8fJ+fY8xQcJwTnD1LDJTSbTesICRSEhFqtZh2cjzdJQTRGAec7CU6Ck8BxEhhOAsNJYDgJDCeB4SQwnARGKIEabIoabIoa0dTfzj8tgfpjCDNIDZdAQUigICTotn2/4Hy8QQqiKQpOAsNKQrvdhnw+D+VymV/bSNje78D1+U149rPCr20k5MoVuDq3AU9/lPi1jQR1HRsJuppICSigUCjwxlEEYpKAi4x98WGIffi1+SIfM0lAATfmC7zmyuwGHzNJ0K1jktCvpq+EbrcLnufxprPZLBeCRElodbpwe9Hnh9PorAebjT81URLKlRqMfSrwmkvv85AKKnw8SkK/daIkRNWEEvB/AGy2Xq/z6yAIIB6PQyqVgr29PT6GyBKWd/bh8pwHMb8BbA14HN+BEy/ScHEmBx9LDT4HkSUseDswGsvDTCaASpU1u+LzmgtvMvAuF4RyZAm268gSKDWhhGKxyBtcW1sD3/chkUhAMpmERuOgAJEl3F3a4mbPv87C/eVtODW5DmenM/B5q8n/LpAl3FnweM256XW493UTTr5Mw5lX6/AhVw4FqBJs15ElUGp6Xgfc/vj0cQwFiF0hI0tAbi0UYXgizd+z01MZeOsd7BqBLAFzk23/4Qm2ONZMpmEqfbADRGQJiM06sgTEtqZHQqfTgVKpxHcBvg54LqioEuq/OvDwewAj7Ik+SexCo324RpXg71bhwVIRRtj2fPTNh61KtUcARpVgs44qwbbm0MGIjbdaLa0ARJWA4Icnqy1++OhQJWCw8RV/lx+M8riIKgExraNKQGxqDkkwoZNgQifBFJ0EEzoJJkIJ1GBT1GBT1ODBJhqzzSA1Q/i1SI2uSVN0TZpypBIoCAkUhAQKOB9vkIJoikKPBPGUoyLmCQn41WMKIkvQzVGDyBJ0c9QgsgTdHDWIk8BwEhhOAsNJYDgJDCeB4SQw/hsJ/EYNEfMGqQkl2CJLsEWWYIsswRZZgi2hBGqwKWqwKWqO5rdDCn4DepjAZpDd1xAAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIscWKqUqhVWyT1KT5biZN0uajSWOS432PJL2ZTjL3DggK94EXOpM5uXOeuXNn0pFEIkG6CQQC2vH5fNo59DRKhzWC473UsIRGo6GcfD7PTemwurrKTVWrVeX4/X4+SR1ufsl7qjESjAQjgTESBEaCwEgQGAkCI0FgJAiMBEFPAhpTTTqdZgloTDXBYJAloDHVTE5O8ns9TlI1514nPdWMrK2tkW4gQTeQoBsvP4a81LAEHbLZLDelSiQS4dmAppym/aBgNuAkdcCV9VLz1yXkcrn/X0Kr1aJUKkWlUom3VSQU9tp0ZWGTnvws87aKhGSpTJfm0/T4R563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcXsjxPjcJEHB1IcM1F+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDt34bPFiMz6Xpc36n5phEkrlKk18zHDN+XcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnd3eR+QJSxv79GFebFt1UmMQQ9D23TkWYzOzibpQ77OxwBZwmJ2m8YDKZqNF6lcqZJvxeKaM6/i9DZZ7MmRJaiOI0vQqelJwAKGv9fX18myLAqHw7yy1+v7BUCWcHtpi82efpmgu8sFOja9QSdn4vRpq8Gfd5El3FrMcs2pmQ2683WTjj6P0YkXG/Q+WeoJsEtQHUeWoFPTdzugQVx97IOA7qyQsd8O1xdzNDoV4/vsuD9Ob7L7s6aL/Xa4Jqb/6JR4PqNmOkb+2P4M6MZ+O6iMI0sAqjV9EtrtNr8VYhbgdsC6YMcuofarTfe/F2lMXNFH4R2qtw7W2CVYOxW6t5SjMTE9H3yzaKtc6ROA2CWojGOXoFpzYGFE481m01EAsEsA+PJIpcmLjxNOCyMaX7F2eGGU93fjtDC6jWOXAFRqDkhww0mCG04S3OIkwQ0nCW70JKAx1eBpAQloTDX//A8oPBZ1Awm6gQTdoCFcWdXgeC81LEGHQqHATemA2YCmdMBswEnqgCvrpaYnQb7SgwJkCXj0uAXIEpyOsQfIEpyOsQfIEpyOsQcYCQIjQWAkCIwEgZEgMBIERoLASBD0SVBFlqCKLEEVWYIqsgRVehLQmGrwj1dIQGOq+bd/QCXpN3LrT59/MUO0AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAASAIAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAB6klEQVRoQ+2ZQUsCQRTHLTpFdOjQqWv0QaJr3YPo0q1z126ego7SZygqiahOS5GQFQRCICVlrqCuumFlmaa93hvMJtlwZmFDdt8P/gd33+C+3+7MOhgCFxiGoZ1wOKyd/8K1BB2SyaRoqlqtKicajbZHew9LQFgCwhIQloCwBIQlICwBYQkIS0BYAuJaAjWmmng8LiRQY6qJRCLtb/Me1xJ00894Ph1SqZR4GvoZzyVYlhVMCXa9BXOxAmzcPYvPgZNAAubjRQht3sNszBLHAiWh0fqExYsiDKCA6eM8FGpNcdzXEhKVOsyc5MEo1gD7h7WbCgxvp2HyIAunpZqoIXwtYfmqLO76xL4JKwkbRncfYHwvA2fld3H+G99Ph4VzC4a20mINGItm4Cj/1j7zg+8lvH60YPX6EUZ20rB++wS1Js6LLgKxMFLjqZeGWBidCISEXvhWAjWmGtpA9TMh0zRBNyRBN7SL1A29eQY1QvVuxggJOti2LZrSgZ4GakoH2k7TReqwdFlyNaYjQb7Tf4WQJdBrsVcIWYJTTXcIWYJTTXcIWYJTTXcIloCwBIQlICwBYQkIS0BYAsISkF8SVJElqCJLUEWWoIosQZWOBGpMNblcTkigxlTj9h8o+l1PF6maqcOsizFZ+AIGcQg8msEiNgAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADm0lEQVRoQ+2YzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXud5Jel0u8nOrAgq88AD2ck+mX1/87G7GUokEqTrQCCgbZ/Pp+0Dj6N0UMM430uGITQaDWXn83kuSkfLy8tcVLVaVbbf7+eL1NH1T3lPGQPBQDAQWAaCkIEgZCAIGQhCBoKQgSBkIAj1IKAwVafTaYaAwlQdDAYZAgpT9fj4OD/X4yJVfeZl0lNmaGVlhXQNCLoGBF17eRnykmEIOspms1yUqiKRCM8GFOU07fsZswEXqSOMrJfMH4eQy+X+fQitVotSqRSVSiU+VoFQ2GnTpbl1evS9zMcqEJKlMl2YTdPDb3k+VoFg70cFglNmIAQAyGQyvA8ABOQGAZ2MBS0aEhdzcS7HbW4QAODyXIYz52fS3OYGwakfNwj9Mn0hdDodLhjf4w4CINAgCM12h659tHizGZ3J0nr9V2YQhFK5SmPvM5w5+yZF0WKZ2wdB6NfPIAiDMj0IeAZAsbVajY+LxSKFQiGKRqO0vb3NbZAMYXFzh87NimOrTqIPuh/apENPYnR6Oknv8nU+B5IhzGc3aTSQoul4kcqVKvmWLM6cehGn18liD44MQbUfGYJOpgcBGxg+r66ukmVZFA6HeWev13cDkAzh5sIGkz35PEG3Fwt0ZHKNjk/F6cNGg7/vSoZwYz7LmRNTa3Tr8zodfhqjY8/W6G2y1ANgh6DajwxBJ7NnOaBAjD7aAKA7K2TZl8PV+RwNT8R4nR31x+lVdnfWdGVfDlfE9B+eEPdnZCZj5I/tzoCu7ctBpR8ZAqSa2QOh3W7zUyFmAZYD9gW77BBqP9p092uRRsSIPghvUb21P2OHYG1V6M5CjkbE9Lz3xaKNcmUPANgOQaUfOwTVzL6NEYU3m01HAJAdAoQfj1SavPk4yWljROFL1hZvjHJ7104bo1s/dgiQSmYfBDc5QXCTEwQ3O0FwkxMEN/UgoDBV424BCChM1X/9CxRui7oGBF0Dgq5REEZW1dgAvWQYgo4KhQIXpSPMBhSlI8wGXKSOUJCXTA+CPNL9DMkQ+AdcDMkQnM6xG5IhOJ1jd/c8LxkDAZ+7xdkLdjJkIAgZCEIGgpCBIGQgCBkIQv81BFXJEFQlQ1CVDEFVKMhLhiGgMFXjj1dAQGGq/p0XqO6oqVo/E6WfdBY2E/BzX6AAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA6wMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADjUlEQVRoQ+2XT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532zapM2fJo1JXud5ZdPpdpOdWRAU5gcPdDfzdvb97exsMpRKpUg3oVBIO4FAQDuHnsbpsEYw3k8NS2g2m8opFovclA7Ly8vcVK1WU04wGOSL1OHml6KvGiPBSDASGCNBYCQIjASBkSAwEgRGgsBIEPQkoDHVZLNZloDGVBMOh1kCGlPN+Pg4f6/HRarm3Ou0r5qhlZUV0g0k6AYSdOPnx5CfGpagQz6f56ZUicVivBrQlNuy7xesBlykDrizfmr+uoRCofD/S2i325TJZKhcLvOxioTN3Q5dmVunJz8rfKwiIV2u0KXZLD3+UeRjFQnOeVQkuNUMlAABuVyO9wGIAF4SMMlY2KIhcTGX5wp8zksCBFydy3HNxZksn/OS4DaPl4R+NX0ldLtdbhif4w0CIWCQhFanSzc+W7zZjM7kab3xp2aQhHKlRmMfc1xz/l2G4qUKnx8kod88gyQMqulJwHcANFuv1/m4VCpRJBKheDxOOzs7fA7IEha3dunCrDi2GiTmoIeRLTryLEFnp9P0odjgMUCWMJ/fotFQhqaTJapUaxRYsrjmzKskvU2XenJkCarzyBJ0anoSsIHh79XVVbIsi6LRKO/sjcZeAZAl3F7YYLOnX6bo7uImHZtco5NTSfq00eTPbWQJt+bzXHNqao3ufF2no88TdOLFGr1Pl3sCnBJU55El6NTsexzQIO4+zkGAvSpknI/D9fkCDU8k+Dk7HkzSm/zeqrFxPg7XxPIfnhDvZ9RMJiiY2FsBdpyPg8o8sgSgWrNPQqfT4W+FWAV4HLAvOHFKqP/q0P3vJRoRd/RRdJsa7YM1TgnWdpXuLRRoRCzPB98s2qhU9wlAnBJU5nFKUK05sDGi8Var5SoAOCUA/PNYtcWbjxtuGyMaX7K2eWOUz9tx2xi95nFKACo1ByR44SbBCzcJXnGT4IWbBC96EtCYavC2gAQ0ppp//gcUXou6gQTdQIJu0BDurGow3k8NS9DBlqADVgOa0gGrARepA+6sn5qeBPsuD4o9zpaAV49XgCzBbYwzQJbgNsYZIEtwG+MMMBIERoLASBAYCQIjQWAkCIwEgZEg2CdBFVmCKrIEVWQJqsgSVOlJ0A0koDHV/Ns/oNL0G0NuTL0rh9nUAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADm0lEQVRoQ+2YzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXud5Jel0u8nOrAgq88AD2ck+mX1/87G7GUokEqTrQCCgbZ/Pp+0Dj6N0UMM430uGITQaDWXn83kuSkfLy8tcVLVaVbbf7+eL1NH1T3lPGQPBQDAQWAaCkIEgZCAIGQhCBoKQgSBkIAj1IKAwVafTaYaAwlQdDAYZAgpT9fj4OD/X4yJVfeZl0lNmaGVlhXQNCLoGBF17eRnykmEIOspms1yUqiKRCM8GFOU07fsZswEXqSOMrJfMH4eQy+X+fQitVotSqRSVSiU+VoFQ2GnTpbl1evS9zMcqEJKlMl2YTdPDb3k+VoFg70cFglNmIAQAyGQyvA8ABOQGAZ2MBS0aEhdzcS7HbW4QAODyXIYz52fS3OYGwakfNwj9Mn0hdDodLhjf4w4CINAgCM12h659tHizGZ3J0nr9V2YQhFK5SmPvM5w5+yZF0WKZ2wdB6NfPIAiDMj0IeAZAsbVajY+LxSKFQiGKRqO0vb3NbZAMYXFzh87NimOrTqIPuh/apENPYnR6Oknv8nU+B5IhzGc3aTSQoul4kcqVKvmWLM6cehGn18liD44MQbUfGYJOpgcBGxg+r66ukmVZFA6HeWev13cDkAzh5sIGkz35PEG3Fwt0ZHKNjk/F6cNGg7/vSoZwYz7LmRNTa3Tr8zodfhqjY8/W6G2y1ANgh6DajwxBJ7NnOaBAjD7aAKA7K2TZl8PV+RwNT8R4nR31x+lVdnfWdGVfDlfE9B+eEPdnZCZj5I/tzoCu7ctBpR8ZAqSa2QOh3W7zUyFmAZYD9gW77BBqP9p092uRRsSIPghvUb21P2OHYG1V6M5CjkbE9Lz3xaKNcmUPANgOQaUfOwTVzL6NEYU3m01HAJAdAoQfj1SavPk4yWljROFL1hZvjHJ7104bo1s/dgiQSmYfBDc5QXCTEwQ3O0FwkxMEN/UgoDBV424BCChM1X/9CxRui7oGBF0Dgq5REEZW1dgAvWQYgo4KhQIXpSPMBhSlI8wGXKSOUJCXTA+CPNL9DMkQ+AdcDMkQnM6xG5IhOJ1jd/c8LxkDAZ+7xdkLdjJkIAgZCEIGgpCBIGQgCBkIQv81BFXJEFQlQ1CVDEFVKMhLhiGgMFXjj1dAQGGq/p0XqO6oqVo/E6WfdBY2E/BzX6AAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - - VisualStudio2008Vista - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAArQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADT0lEQVRoQ+2ZzWsTURTFq3Ql1YWgG10q/h1S3CjoTqQgbgQXLly5cOMuuBAEN8W/waKNRasgxooVU5VCq9gmqUnzOc2knbT5aNKY5PrOlUyn00nmvQFB5R040HmZ0zf3N+/dmbRDmUyGVB2JRJQdCoWUfeBxkg4qGOcHyTCEZrMp7VKpxEWpaGlpiYuq1WrSDofDfJEquv65FCijIWgIGgJLQxDSEIQ0BCENQUhDENIQhDQEIRsCCpN1Pp9nCChM1tFolCGgMFmPj4/zez0uUtZnXmYDZYaWl5dJ1YCgakBQdZAvQ0EyDEFFhmFwUbJKJBK8GlCU17LvZ6wGXKSKcGeDZP44hGKx+O9DaLfblMvlqFwu87EMhI2dDl2aXaNHPyp8LAMhW67QhXd5evi9xMcyENzzyEDwygyEAACFQoH7AEBAfhAwyVjUpCFxMRdnizzmBwEALs8WOHN+Js9jfhC85vGD0C/TF0K32+WC8TmeIAACDYLQ6nTp2ieTm83ojEFrjd+ZQRDKlRqNfShw5uybHCWtCo8PgtBvnkEQBmVsCHgHQLH1ep2PLcuiWCxGyWSStre3eQxyQljY3KFz78Sx2SAxB92PbdKhJyk6PZ2l96UGnwM5IcwZmzQaydF02qJKtUahRZMzp16k6XXWsuE4IcjO44SgkrEhoIHh55WVFTJNk+LxOHf2RmM3ADkh3JxfZ7Inn2fo9sIGHZlcpeNTafq43uTPe3JCuDFncObE1Crd+rJGh5+m6NizVXqbLdsA3BBk53FCUMns2Q4oEHcfYwDQWxVOubfD1bkiDU+keJ8dDafplbG7anpyb4crYvkPT4jnMzKTKQqndldAz+7tIDOPEwIkm9kDodPp8FshVgG2A/qCW24I9Z8duvvNohFxRx/Et6jR3p9xQzC3qnRnvkgjYnne+2rSeqW6BwDshiAzjxuCbGZfY0ThrVbLEwDkhgDhlyeqLW4+XvJqjCh80dzixugc79mrMfrN44YAyWT2QfCTFwQ/eUHwsxcEP3lB8JMNAYXJGk8LQEBhsv7rv0DhsahqQFA1IKgaBeHOyhrnB8novyeIjIagIWgILA1BSEMQ0hCENAQhDUFIQxDSEIRsCChM1v/ff6Cy9AsSMSlLu0Av/QAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+gMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADnElEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqItcWKqUqhVWyT1KT5biZN0uajaWOS432PTHo7nWTuHSio3AdeyEzm5M555s6dJAPJZJJ0MzU1pZ1AIKCdQ09jdFgjON5PDUvY3t5WTqFQ4KZ0WFpa4qZqtZpygsEgn6QON78UfNUYCUaCkcAYCQIjQWAkCIwEgZEgMBIERoKgKwGNqSaTybAENKaaUCjEEtCYakZHR/l7PU5SNedep3zVDCwvL5NuIEE3kKAbPz+G/NSwBB1yuRw3pUo0GuXZgKbcpn2vYDbgJHXAlfVTc+AS8vn8vy+h1WpROp2mcrnM2yoSijttujK7Rk9+VnhbRUKqXKFLMxl6/KPA2yoSnOOoSHCr6SsBArLZLK8DEAG8JGCQkZBFA+JkLs/meZ+XBAi4OpvlmovTGd7nJcFtHC8JvWp6Suh0Otww3scTBEJAPwnNdodufLZ4sRmeztFa409NPwnlSo1GPma55vy7NMVKFd7fT0KvcfpJ6FfTlYDvAGi2Xq/zdqlUonA4TLFYjLa2tngfkCUsbOzQhRmxbTVIjEEPwxt05Fmczk6m6EOhwccAWcJcboOGp9I0mShRpVqjwKLFNWdeJehtqtSVI0tQHUeWoFPTlYAFDK9XVlbIsiyKRCK8sjcauwVAlnB7fp3Nnn6ZpLsLRTo2vkonJxL0aX2b37eRJdyay3HNqYlVuvN1jY4+j9OJF6v0PlXuCnBKUB1HlqBTs+d2QIO4+tgHAfaskHHeDtfn8jQ4Fuf77HgwQW9yu7PGxnk7XBPTf3BMPJ9RMx6nYHx3Bthx3g4q48gSgGrNHgntdpu/FWIW4HbAuuDEKaH+q033v5doSFzRR5FNarT21zglWJtVujefpyExPR98s2i9Ut0jAHFKUBnHKUG1Zt/CiMabzaarAOCUAPDh0WqTFx833BZGNL5obfLCKO+347Yweo3jlABUavZJ8MJNghduErziJsELNwledCWgMdXgaQEJaEw1f/0PKDwWdQMJuoEE3aAhXFnVYAH0U8MSdCgWi9yUDpgNaEoHzAacpA5oyE9NV4J8pXsFyBL4AzwCZAluxzgDZAluxzhjH+enxkjAa7s5Z8NuAUaCwEgQGAkCI0FgJAiMBMF/LUEVWYIqsgRVIME+UVXk5lTpSkBjqsEfr5CAxlTj9weU3dTBJka/AW4uNg3p+taQAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - Far - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA7AAAAAKJUE5HDQoaCgAAAA1JSERSAAAAFAAAABQIBgAAAI2JHQ0AAAAEZ0FNQQAAsY8L/GEFAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAH5JREFUOE+tzMEJwDAQA0G3kP47SFMp5WKbEwizryiPwWY5NKrqVxgTGBMYExgTGBMY3XU/Na1XZubbBaPrQY3u/3njMDofangnGF0PanT/6U4wOh9qM/PtgtH1oEb3/7xxGJ0PNbwTjK4HNbr/dCcYExgTGBMYExgTGL+r8QL1YYgBA3bF7AAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA4AAAAAKJUE5HDQoaCgAAAA1JSERSAAAAFAAAABQIBgAAAI2JHQ0AAAAEZ0FNQQAAsY8L/GEFAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHJJREFUOE+tzMEJgEAQBMFLwfwzMClDWc/HQCP9cnwULM2wa2Z+pbGhsaGxobGhsaGRjvOKyW270Eh4FroLjcRHud8b0kh4Fjv79qGR+Ci37UIj4VnoLjQSH+V+b0gj4Vns7NuHxobGhsaGxobGhsbvZt1vy4gBqcW4UgAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - TopOnBorder - BottomToTop - - - - - HighlightEntireItem - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA9QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADl0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPm53Mk9n3tzOzm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxnA4pym/a9jNmAi9QR7qyfzIFDKBQK/z6EVqtFmUyGyuUyn6tAWN9p05WZVXrys8LnKhDS5Qpdms7S4x9FPleB4BxHBYJbpi8EAMjlcrwPAATkBQGDjIQtGhAXc3mmwG1eEADg6kyOMxenstzmBcFtHC8IvTI9IXQ6HS4Y3+MJAiBQPwjNdodufLZ4sxmeytNq40+mH4RypUYjH3OcOf8uQ/FShdv7Qeg1Tj8I/TJdCHgHQLH1ep3PS6USRSIRisfjtLW1xW2QDGF+Y4cuTItzq0FiDHoY2aAjzxJ0djJNH4oN7gPJEGbzGzQcytBkskSVao0CCxZnzrxK0tt0qQtHhqA6jgxBJ9OFgA0Mn5eXl8myLIpGo7yzNxq7AUiGcHtujcmefpmiu/PrdGx8hU5OJOnT2jZ/b0uGcGs2z5lTEyt05+sqHX2eoBMvVuh9utwF4ISgOo4MQSezZzmgQNx9tAGAPStkOZfD9dkCDY4leJ0dDybpTX531thyLodrYvoPjonnMzLjCQomdmeAbedyUBlHhgCpZvZAaLfb/FaIWYDlgH3BKSeE+q823f9eoiFxRx9FN6nR2p9xQrA2q3RvrkBDYno++GbRWqW6BwDshKAyjhOCambfxojCm82mKwDICQHCj8eqTd583OS2MaLwBWuTN0a53bbbxug1jhMCpJLZB8FLbhC85AbBy24QvOQGwUtdCChM1XhaAAIKU/Vf/wcKj0VdA4KuAUHXKAh3VtXYAP1kGIKObAg6wmxAUTrCbMBF6ggF+cl0Idh3uZ/tfjYE/gEPQzIEtz5OQzIEtz5O2/38ZAwEfJaL87Ldz0AQRwNBHA0EcTQQxNFAEEcDQRz/WwiqkiGoSoagKhmCqlCQnwxD0DUgoDBV+/0DZd+xg3WcfgND/TMv156b9wAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+AMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADmklEQVRoQ+2YzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXud5Jel0u8nOLBRU5oEHspN9Mvv+5mN3M5RIJEjXgUBA2z6fT9uHnkbpsIZxvpcMQ2g0GsrO5/NclI6Wl5e5qGq1qmy/388XqaObX/KeMgaCgWAgsAwEIQNByEAQMhCEDAQhA0HIQBDqQUBhqk6n0wwBhak6GAwyBBSm6vHxcX6ux0Wq+tzrpKfM0MrKCukaEHQNCLr28jLkJcMQdJTNZrkoVUUiEZ4NKMpp2vczZgMuUkcYWS+ZA4eQy+X+fQitVotSqRSVSiU+VoFQ2GnTlbl1evKzzMcqEJKlMl2aTdPjH3k+VoFg70cFglNmIAQAyGQyvA8ABOQGAZ2MBS0aEhdzeS7HbW4QAODqXIYzF2fS3OYGwakfNwj9Mn0hdDodLhjf4w4CINAgCM12h258tnizGZ3J0nr9T2YQhFK5SmMfM5w5/y5F0WKZ2wdB6NfPIAiDMj0IeAZAsbVajY+LxSKFQiGKRqO0vb3NbZAMYXFzhy7MimOrTqIPehjapCPPYnR2Okkf8nU+B5IhzGc3aTSQoul4kcqVKvmWLM6ceRWnt8liD44MQbUfGYJOpgcBGxg+r66ukmVZFA6HeWev13cDkAzh9sIGkz39MkF3Fwt0bHKNTk7F6dNGg7/vSoZwaz7LmVNTa3Tn6zodfR6jEy/W6H2y1ANgh6DajwxBJ7NnOaBAjD7aAKA7K2TZl8P1+RwNT8R4nR33x+lNdnfWdGVfDtfE9B+eEPdnZCZj5I/tzoCu7ctBpR8ZAqSa2QOh3W7zUyFmAZYD9gW77BBqv9p0/3uRRsSIPgpvUb21P2OHYG1V6N5CjkbE9HzwzaKNcmUPANgOQaUfOwTVzL6NEYU3m01HAJAdAoQfj1SavPk4yWljROFL1hZvjHJ7104bo1s/dgiQSmYfBDc5QXCTEwQ3O0FwkxMEN/UgoDBV424BCChM1X/9CxRui7oGBF0Dgq5REEZW1dgAvWQYgo4KhQIXpSPMBhSlI8wGXKSOUJCXTA+CPNL9DMkQ+AdcDMkQnM6xG5IhOJ1jd/c8LxkDAZ+7xdkLdjJkIAgZCEIGgpCBIGQgCBkIQv81BFXJEFQlQ1CVDEFVKMhLhiGgMFXjj1dAQGGq9voC1R2xg3WUfgNzejYRjgB1CAAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPk93Mk9n3N7Ozm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxXA4pyW/a9jNWAi9QRZtZP5sAhFAqFfx9Cq9WiTCZD5XKZj1UgrO+06crMKj35WeFjFQjpcoUuTWfp8Y8iH6tAcI6jAsEt0xcCAORyOd4HAALygoBBRsIWDYiLuTxT4HNeEADg6kyOMxensnzOC4LbOF4QemV6Quh0OlwwvscTBECgfhCa7Q7d+GzxZjM8lafVxp9MPwjlSo1GPuY4c/5dhuKlCp/vB6HXOP0g9Mt0IeAdAMXW63U+LpVKFIlEKB6P09bWFp+DZAjzGzt0YVocWw0SY9DDyAYdeZags5Np+lBscB9IhjCb36DhUIYmkyWqVGsUWLA4c+ZVkt6mS104MgTVcWQIOpkuBGxg+Ly8vEyWZVE0GuWdvdHYDUAyhNtza0z29MsU3Z1fp2PjK3RyIkmf1rb5e1syhFuzec6cmlihO19X6ejzBJ14sULv0+UuACcE1XFkCDqZPbcDCsTs4xwA2KtClvN2uD5boMGxBN9nx4NJepPfXTW2nLfDNbH8B8fE8xmZ8QQFE7srwLbzdlAZR4YAqWb2QGi32/xWiFWA2wH7glNOCPVfbbr/vURDYkYfRTep0dqfcUKwNqt0b65AQ2J5Pvhm0VqlugcA7ISgMo4Tgmpm38aIwpvNpisAyAkBwo/Hqk3efNzktjGi8AVrkzdG+bxtt43RaxwnBEglsw+Cl9wgeMkNgpfdIHjJDYKXuhBQmKrxtAAEFKbqv/4PFB6LugYEXQOCrlEQZlbV2AD9ZBiCjmwIOrIh6Aj9cZE6QkF+Ml0I9iz3s93PhsA/4GFIhuDWx2lIhuDWx2m7n5+MgYDPcnFetvsZCKI1EERrIIjWQBCtgSBaA0G0/y0EVckQVCVDUJUMQVUoyE+GIegaRekaRenanrGDdZx+AwQBIVZs5053AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPk93Mk9n3N7Ozm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxXA4pyW/a9jNWAi9QRZtZP5sAhFAqFfx9Cq9WiTCZD5XKZj1UgrO+06crMKj35WeFjFQjpcoUuTWfp8Y8iH6tAcI6jAsEt0xcCAORyOd4HAALygoBBRsIWDYiLuTxT4HNeEADg6kyOMxensnzOC4LbOF4QemV6Quh0OlwwvscTBECgfhCa7Q7d+GzxZjM8lafVxp9MPwjlSo1GPuY4c/5dhuKlCp/vB6HXOP0g9Mt0IeAdAMXW63U+LpVKFIlEKB6P09bWFp+DZAjzGzt0YVocWw0SY9DDyAYdeZags5Np+lBscB9IhjCb36DhUIYmkyWqVGsUWLA4c+ZVkt6mS104MgTVcWQIOpkuBGxg+Ly8vEyWZVE0GuWdvdHYDUAyhNtza0z29MsU3Z1fp2PjK3RyIkmf1rb5e1syhFuzec6cmlihO19X6ejzBJ14sULv0+UuACcE1XFkCDqZPbcDCsTs4xwA2KtClvN2uD5boMGxBN9nx4NJepPfXTW2nLfDNbH8B8fE8xmZ8QQFE7srwLbzdlAZR4YAqWb2QGi32/xWiFWA2wH7glNOCPVfbbr/vURDYkYfRTep0dqfcUKwNqt0b65AQ2J5Pvhm0VqlugcA7ISgMo4Tgmpm38aIwpvNpisAyAkBwo/Hqk3efNzktjGi8AVrkzdG+bxtt43RaxwnBEglsw+Cl9wgeMkNgpfdIHjJDYKXuhBQmKrxtAAEFKbqv/4PFB6LugYEXQOCrlEQZlbV2AD9ZBiCjmwIOrIh6Aj9cZE6QkF+Ml0I9iz3s93PhsA/4GFIhuDWx2lIhuDWx2m7n5+MgYDPcnFetvsZCKI1EERrIIjWQBCtgSBaA0G0/y0EVckQVCVDUJUMQVUoyE+GIegaRekaRenanrGDdZx+AwQBIVZs5053AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - Office2013RadioButtonGlyphInfo - - -1 - 0, 170, 222 - Solid - 0, 170, 222 - White - 135, 135, 135 - None - Transparent - 0 - 0, 170, 222 - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA9QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADl0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPk93Mk9n3N7Ozm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxXA4pyW/a9jNWAi9QRZtZP5sAhFAqFfx9Cq9WiTCZD5XKZj1UgrO+06crMKj35WeFjFQjpcoUuTWfp8Y8iH6tAcI6jAsEt0xcCAORyOd4HAALygoBBRsIWDYiLuTxT4HNeEADg6kyOMxensnzOC4LbOF4QemV6Quh0OlwwvscTBECgfhCa7Q7d+GzxZjM8lafVxp9MPwjlSo1GPuY4c/5dhuKlCp/vB6HXOP0g9Mt0IeAdAMXW63U+LpVKFIlEKB6P09bWFp+DZAjzGzt0YVocWw0SY9DDyAYdeZags5Np+lBscB9IhjCb36DhUIYmkyWqVGsUWLA4c+ZVkt6mS104MgTVcWQIOpkuBGxg+Ly8vEyWZVE0GuWdvdHYDUAyhNtza0z29MsU3Z1fp2PjK3RyIkmf1rb5e1syhFuzec6cmlihO19X6ejzBJ14sULv0+UuACcE1XFkCDqZPbcDCsTs4xwA2KtClvN2uD5boMGxBN9nx4NJepPfXTW2nLfDNbH8B8fE8xmZ8QQFE7srwLbzdlAZR4YAqWb2QGi32/xWiFWA2wH7glNOCPVfbbr/vURDYkYfRTep0dqfcUKwNqt0b65AQ2J5Pvhm0VqlugcA7ISgMo4Tgmpm38aIwpvNpisAyAkBwo/Hqk3efNzktjGi8AVrkzdG+bxtt43RaxwnBEglsw+Cl9wgeMkNgpfdIHjJDYKXuhBQmKrxtAAEFKbqv/4PFB6LugYEXQOCrlEQZlbV6O8nwxB0ZEPQEVYDitIR+uMidYSngJ9MF4I9y/1s97Mh8A94GJIhuPVxGpIhuPVx2u7nJ2Mg4LNcnJftfgaCaA0E0RoIojUQRGsgiNZAEO1/C0FVMgRVyRBUJUNQFQryk2EIugYEFKZq+w+Uru0ZO1jH6Tc1kyfofk37EgAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - RectangularSolid - None - TopOnBorder - BottomToTop - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA6gMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADjElEQVRoQ+2YT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePFWPAiCNz+DRVuLVkGMLVaaqhRaxTZJTZr/zaZJ2vxp0pjkdZ5Xsp1sN9mZBaHC/OCB7nbezr6/nZ1NOpRIJEg3gUBAO+Pj49o58jxKRzWC8X5qWEKj0VBOPp/npnRYXV3lpqrVqnIwHhepw+2veV81RoKRYCQwRoLASBAYCQIjQWAkCIwEgZEgsCWgMdWk02mWgMZUEwwGuSnd4HM9LlI1F94mfdUMra2tkW4gQTduTXrFz5chPzUsQYdsNstNqRKJRHg1oCm3Zd8vGI+L1AF31k/NP5eQy+X+fwmtVotSqRSVSiU+VpFQ2GvTtflNevarzMcqEpKlMl2ZS9PTn3k+VpHgnEdFglvNQAkQkMlkeB+ACOAlAZOMBS0aEhdzdT7H57wkQMD1+QzXXJ5N8zkvCW7zeEnoV9NXQqfT4Ybxe7xBIAQMktBsd+jWF4s3m9HZLG3W/9YMklAqV2nsc4ZrLn5IUbRY5vODJPSbZ5CEQTW2BHwGQLO1Wo2Pi8UihUIhikajtLu7y+eALGF5e48uzYljq05iDnoc2qZjL2J0fiZJn/J1HgNkCYvZbRoNpGgmXqRyRTS7YnHNuTdxep8s2nJkCarzyBJ0amwJ2MDw8/r6OlmWReFwmHf2en2/AMgS7i5tsdmzrxN0f7lAJyY36PR0nBa2Gvz7LrKEO4tZrjkzvUH3vm3S8ZcxOvVqgz4mS7YApwTVeWQJOjU9jwMaxN3HOQjorgoZ5+NwczFHwxMxfs5OTsXpXXZ/1XRxPg43xPIfnhDvZ9RMxmgqtr8CupElAJV5ZAlAtaZHQrvd5k+FWAV4HLAvOHFKqP1u08MfRRoRd/RJeIfqrYM1TgnWToUeLOVoRCzPR98t2ipXegQgTgkq8zglqNYc2BjReLPZdBUAnBIA/nik0uTNxw23jRGNr1g7vDHK57txSgBe8zglAJWaAxK8cJPghZsEr7hJ8MJNghe2BDSmGrwtIAGNqebQf4HCa1E3kKAbtya9goZwZ1WD8X5qWIIOhUKBm9IBqwFN6YDxuEgdcGf91NgS5DvdL0CWgFePV4AswW2MM0CW4DbGGSBLcBvjDDASBEaCwEgQGAkCI0FgJAiMBIGRIOiRoIosQRVZgiqyBFVkCarYEtCYavCPV0hAY6o53F+gkvQHK6ctxANB/y4AAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - White - - - - - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+wMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADnUlEQVRoQ+2XT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532zapE3TJo1JXud5ZdPJdpOdWSiozAMPyW7mycz725nZ3YFUKkW6DoVC2g4EAto+9DROhzWM9n4yDKFeryu7WCxyUTpaXFzkoqrVqrKDwSAPUkc3vxR9ZQwEA8FAYBkIQgaCkIEgZCAIGQhCBoKQgSDUgYDCVJ3NZhkCClN1OBxmCChM1aOjo/xcj0Gq+tzrtK/MwNLSEukaEHQNCLr28zLkJ8MQdJTP57koVcViMZ4NKMpt2vcyZgMGqSNcWT+ZA4dQKBT+fQjNZpMymQyVy2U+VoGwvtuiKzOr9ORnhY9VIKTLFbo0naXHP4p8rALB2Y8KBLdMXwgAkMvleB8ACMgLAjoZCVs0IAZzeabA57wgAMDVmRxnLk5l+ZwXBLd+vCD0yvSE0G63uWD8jjsIgED9IDRabbrx2eLNZngqT6u1P5l+EMqVKo18zHHm/LsMxUsVPt8PQq9++kHol+lAwDMAit3e3ubjUqlEkUiE4vE47ezs8DlIhjC/sUsXpsWxVSPRBz2MbNCRZwk6O5mmD8Uat4FkCLP5DRoOZWgyWaLKVpUCCxZnzrxK0tt0qQNHhqDajwxBJ9OBgA0M35eXl8myLIpGo7yz12p7AUiGcHtujcmefpmiu/PrdGx8hU5OJOnTWp1/tyVDuDWb58ypiRW683WVjj5P0IkXK/Q+Xe4AcEJQ7UeGoJPpWg4oEFcf5wDAnhWynMvh+myBBscSvM6OB5P0Jr83a2w5l8M1Mf0Hx8T9GZnxBAUTezPAtnM5qPQjQ4BUM10QWq0WPxViFmA5YF9wyglh+1eL7n8v0ZC4oo+im1Rr7s84IVibW3RvrkBDYno++GbRWmWrCwDshKDSjxOCambfxojCG42GKwDICQHCn8e2Grz5uMltY0ThC9Ymb4zyedtuG6NXP04IkEpmHwQvuUHwkhsEL7tB8JIbBC91IKAwVeNuAQgoTNV//QsUbou6BgRdA4KuURCurI79ZBiCjmwIOsJsQFE6wmzAAHVkF6WjLgj2Ve5nu50NAbceL0MyBLc2TkMyBLc2TkMyBLc2TkMGgpCBIPTPQOCBethu5ydjIOC7XJyX7XYGgvg0EMSngSA+/1sIqpIhqEqGoCoZgqpkCKrqQNA1IKAwVft9gbKLOljH6TcHdzOr6BQ8HAAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAArQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADT0lEQVRoQ+2ZzWsTURTFq3Ql1YWgG10q/h1S3CjoTqQgbgQXLly5cOMuuBAEN8W/waKNRasgxooVU5VCq9gmqUnzOc2knbT5aNKY5PrOlUyn00nmvQFB5R040HmZ0zf3N+/dmbRDmUyGVB2JRJQdCoWUfeBxkg4qGOcHyTCEZrMp7VKpxEWpaGlpiYuq1WrSDofDfJEquv65FCijIWgIGgJLQxDSEIQ0BCENQUhDENIQhDQEIRsCCpN1Pp9nCChM1tFolCGgMFmPj4/zez0uUtZnXmYDZYaWl5dJ1YCgakBQdZAvQ0EyDEFFhmFwUbJKJBK8GlCU17LvZ6wGXKSKcGeDZP44hGKx+O9DaLfblMvlqFwu87EMhI2dDl2aXaNHPyp8LAMhW67QhXd5evi9xMcyENzzyEDwygyEAACFQoH7AEBAfhAwyVjUpCFxMRdnizzmBwEALs8WOHN+Js9jfhC85vGD0C/TF0K32+WC8TmeIAACDYLQ6nTp2ieTm83ojEFrjd+ZQRDKlRqNfShw5uybHCWtCo8PgtBvnkEQBmVsCHgHQLH1ep2PLcuiWCxGyWSStre3eQxyQljY3KFz78Sx2SAxB92PbdKhJyk6PZ2l96UGnwM5IcwZmzQaydF02qJKtUahRZMzp16k6XXWsuE4IcjO44SgkrEhoIHh55WVFTJNk+LxOHf2RmM3ADkh3JxfZ7Inn2fo9sIGHZlcpeNTafq43uTPe3JCuDFncObE1Crd+rJGh5+m6NizVXqbLdsA3BBk53FCUMns2Q4oEHcfYwDQWxVOubfD1bkiDU+keJ8dDafplbG7anpyb4crYvkPT4jnMzKTKQqndldAz+7tIDOPEwIkm9kDodPp8FshVgG2A/qCW24I9Z8duvvNohFxRx/Et6jR3p9xQzC3qnRnvkgjYnne+2rSeqW6BwDshiAzjxuCbGZfY0ThrVbLEwDkhgDhlyeqLW4+XvJqjCh80dzixugc79mrMfrN44YAyWT2QfCTFwQ/eUHwsxcEP3lB8JMNAYXJGk8LQEBhsv7rv0DhsahqQFA1IKgaBeHOyhrnB8novyeIjIagIWgILA1BSEMQ0hCENAQhDUFIQxDSEIRsCChM1v/ff6Cy9AsSMSlLu0Av/QAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - Office2013RadioButtonGlyphInfo - - - - - - - - - 0, 170, 222 - Gray - Gray - Gray - - - - - - - - - Flat - True - - - - - Flat - True - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIscWKqUqhVWyT1KT5biZN0uajSWOS432PJL2ZTjL3DggK94EXOpM5uXOeuXNn0pFEIkG6CQQC2vH5fNo59DRKhzWC473UsIRGo6GcfD7PTemwurrKTVWrVeX4/X4+SR1ufsl7qjESjAQjgTESBEaCwEgQGAkCI0FgJAiMBEFPAhpTTTqdZgloTDXBYJAloDHVTE5O8ns9TlI1514nPdWMrK2tkW4gQTeQoBsvP4a81LAEHbLZLDelSiQS4dmAppym/aBgNuAkdcCV9VLz1yXkcrn/X0Kr1aJUKkWlUom3VSQU9tp0ZWGTnvws87aKhGSpTJfm0/T4R563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcXsjxPjcJEHB1IcM1F+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDt34bPFiMz6Xpc36n5phEkrlKk18zHDN+XcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnd3eR+QJSxv79GFebFt1UmMQQ9D23TkWYzOzibpQ77OxwBZwmJ2m8YDKZqNF6lcqZJvxeKaM6/i9DZZ7MmRJaiOI0vQqelJwAKGv9fX18myLAqHw7yy1+v7BUCWcHtpi82efpmgu8sFOja9QSdn4vRpq8Gfd5El3FrMcs2pmQ2683WTjj6P0YkXG/Q+WeoJsEtQHUeWoFPTdzugQVx97IOA7qyQsd8O1xdzNDoV4/vsuD9Ob7L7s6aL/Xa4Jqb/6JR4PqNmOkb+2P4M6MZ+O6iMI0sAqjV9EtrtNr8VYhbgdsC6YMcuofarTfe/F2lMXNFH4R2qtw7W2CVYOxW6t5SjMTE9H3yzaKtc6ROA2CWojGOXoFpzYGFE481m01EAsEsA+PJIpcmLjxNOCyMaX7F2eGGU93fjtDC6jWOXAFRqDkhww0mCG04S3OIkwQ0nCW70JKAx1eBpAQloTDX//A8oPBZ1Awm6gQTdoCFcWdXgeC81LEGHQqHATemA2YCmdMBswEnqgCvrpaYnQb7SgwJkCXj0uAXIEpyOsQfIEpyOsQfIEpyOsQcYCQIjQWAkCIwEgZEgMBIERoLASBD0SVBFlqCKLEEVWYIqsgRVehLQmGrwj1dIQGOq+bd/QCXpN3LrT59/MUO0AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIscWKqUqhVWyT1KT5biZN0uajSWOS432PJL2ZTjL3DggK94EXOpM5uXOeuXNn0pFEIkG6CQQC2vH5fNo59DRKhzWC473UsIRGo6GcfD7PTemwurrKTVWrVeX4/X4+SR1ufsl7qjESjAQjgTESBEaCwEgQGAkCI0FgJAiMBEFPAhpTTTqdZgloTDXBYJAloDHVTE5O8ns9TlI1514nPdWMrK2tkW4gQTeQoBsvP4a81LAEHbLZLDelSiQS4dmAppym/aBgNuAkdcCV9VLz1yXkcrn/X0Kr1aJUKkWlUom3VSQU9tp0ZWGTnvws87aKhGSpTJfm0/T4R563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcXsjxPjcJEHB1IcM1F+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDt34bPFiMz6Xpc36n5phEkrlKk18zHDN+XcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnd3eR+QJSxv79GFebFt1UmMQQ9D23TkWYzOzibpQ77OxwBZwmJ2m8YDKZqNF6lcqZJvxeKaM6/i9DZZ7MmRJaiOI0vQqelJwAKGv9fX18myLAqHw7yy1+v7BUCWcHtpi82efpmgu8sFOja9QSdn4vRpq8Gfd5El3FrMcs2pmQ2683WTjj6P0YkXG/Q+WeoJsEtQHUeWoFPTdzugQVx97IOA7qyQsd8O1xdzNDoV4/vsuD9Ob7L7s6aL/Xa4Jqb/6JR4PqNmOkb+2P4M6MZ+O6iMI0sAqjV9EtrtNr8VYhbgdsC6YMcuofarTfe/F2lMXNFH4R2qtw7W2CVYOxW6t5SjMTE9H3yzaKtc6ROA2CWojGOXoFpzYGFE481m01EAsEsA+PJIpcmLjxNOCyMaX7F2eGGU93fjtDC6jWOXAFRqDkhww0mCG04S3OIkwQ0nCW70JKAx1eBpAQloTDX//A8oPBZ1Awm6gQTdoCFcWdXgeC81LEGHQqHATemA2YCmdMBswEnqgCvrpaYnQb7SgwJkCXj0uAXIEpyOsQfIEpyOsQfIEpyOsQcYCQIjQWAkCIwEgZEgMBIERoLASBD0SVBFlqCKLEEVWYIqsgRVehLQmGrwj1dIQGOq+bd/QCXpN3LrT59/MUO0AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA7AMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADjklEQVRoQ+2XT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532zapM2fJo1JXud5ZdPJdpOdiRQU5gcPdDfzdvb97exsMpRIJEg3gUBAOz6fTzuHnkbpsEYwfpAallCv15WTz+e5KR2Wl5e5qUqlohy/388XqcPNL/mBaowEI8FIYIwEgZEgMBIERoLASBAYCQIjQdCRgMZUk06nWQIaU00wGGQJaEw14+Pj/L0eF6mac6+TA9UMrayskG4gQTeQoJtBfgwNUsMSdMhms9yUKpFIhFcDmnJb9r2C1YCL1AF3dpCaA5eQy+X+fwnNZpNSqRQVi0U+VpGwuduiK3Pr9ORniY9VJCSLJbo0m6bHP/J8rCLBOY+KBLeavhIgIJPJ8D4AEcBLAiYZC1o0JC7m8lyOz3lJgICrcxmuuTiT5nNeEtzm8ZLQq6anhHa7zQ3jc7xBIAT0k9BotenGZ4s3m9GZLK3X/tT0k1AsVWjsY4Zrzr9LUbRQ4vP9JPSap5+EfjUdCfgOgGar1SofFwoFCoVCFI1GaWdnh88BWcLi1i5dmBXHVo3EHPQwtEVHnsXo7HSSPuRrPAbIEuazWzQaSNF0vEClcoV8SxbXnHkVp7fJQkeOLEF1HlmCTk1HAjYw/L26ukqWZVE4HOadvVbbKwCyhNsLG2z29MsE3V3cpGOTa3RyKk6fNur8uY0s4dZ8lmtOTa3Rna/rdPR5jE68WKP3yWJHgFOC6jyyBJ2arscBDeLu4xwE2KtCxvk4XJ/P0fBEjJ+z4/44vcnurRob5+NwTSz/4QnxfkbNZIz8sb0VYMf5OKjMI0sAqjVdElqtFn8rxCrA44B9wYlTQvVXi+5/L9CIuKOPwttUa+6vcUqwtst0byFHI2J5Pvhm0Uap3CUAcUpQmccpQbVm38aIxhuNhqsA4JQA8M8j5QZvPm64bYxofMna5o1RPm/HbWP0mscpAajU7JPghZsEL9wkeMVNghduErzoSEBjqsHbAhLQmGr++R9QeC3qBhJ0Awm6QUO4s6rB+EFqWIIOtgQdsBrQlA5YDbhIHWwBOnRJsO9yv9jjbAl49XgFyBLcxjgDZAluY5wBsgS3Mc4AI0FgJAiMBIGRIDASBEaCwEgQGAmCLgmqyBJUkSWoIktQRZagSkeCbiABjanmb35AHXyi9BvrVTNhLiUFpAAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAArQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADT0lEQVRoQ+2ZzWsTURTFq3Ql1YWgG10q/h1S3CjoTqQgbgQXLly5cOMuuBAEN8W/waKNRasgxooVU5VCq9gmqUnzOc2knbT5aNKY5PrOlUyn00nmvQFB5R040HmZ0zf3N+/dmbRDmUyGVB2JRJQdCoWUfeBxkg4qGOcHyTCEZrMp7VKpxEWpaGlpiYuq1WrSDofDfJEquv65FCijIWgIGgJLQxDSEIQ0BCENQUhDENIQhDQEIRsCCpN1Pp9nCChM1tFolCGgMFmPj4/zez0uUtZnXmYDZYaWl5dJ1YCgakBQdZAvQ0EyDEFFhmFwUbJKJBK8GlCU17LvZ6wGXKSKcGeDZP44hGKx+O9DaLfblMvlqFwu87EMhI2dDl2aXaNHPyp8LAMhW67QhXd5evi9xMcyENzzyEDwygyEAACFQoH7AEBAfhAwyVjUpCFxMRdnizzmBwEALs8WOHN+Js9jfhC85vGD0C/TF0K32+WC8TmeIAACDYLQ6nTp2ieTm83ojEFrjd+ZQRDKlRqNfShw5uybHCWtCo8PgtBvnkEQBmVsCHgHQLH1ep2PLcuiWCxGyWSStre3eQxyQljY3KFz78Sx2SAxB92PbdKhJyk6PZ2l96UGnwM5IcwZmzQaydF02qJKtUahRZMzp16k6XXWsuE4IcjO44SgkrEhoIHh55WVFTJNk+LxOHf2RmM3ADkh3JxfZ7Inn2fo9sIGHZlcpeNTafq43uTPe3JCuDFncObE1Crd+rJGh5+m6NizVXqbLdsA3BBk53FCUMns2Q4oEHcfYwDQWxVOubfD1bkiDU+keJ8dDafplbG7anpyb4crYvkPT4jnMzKTKQqndldAz+7tIDOPEwIkm9kDodPp8FshVgG2A/qCW24I9Z8duvvNohFxRx/Et6jR3p9xQzC3qnRnvkgjYnne+2rSeqW6BwDshiAzjxuCbGZfY0ThrVbLEwDkhgDhlyeqLW4+XvJqjCh80dzixugc79mrMfrN44YAyWT2QfCTFwQ/eUHwsxcEP3lB8JMNAYXJGk8LQEBhsv7rv0DhsahqQFA1IKgaBeHOyhrnB8novyeIjIagIWgILA1BSEMQ0hCENAQhDUFIQxDSEIRsCChM1v/ff6Cy9AsSMSlLu0Av/QAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA/QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADn0lEQVRoQ+2YT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532yapM2fJo1JXud5Jel0u8nOrBQU5gcPdLfzdvb97exs0qFEIkG6CQQC2vH5fNo59DRKhzWC8V5qWEKj0VBOPp/npnRYXl7mpqrVqnL8fj9fpA43v+Q91RgJRoKRwBgJAiNBYCQIjASBkSAwEgRGgqAnAY2pJp1OswQ0pppgMMgS0JhqxsfH+XM9LlI1514nPdUMrayskG4gQTeQoBsvX4a81LAEHbLZLDelSiQS4dWAppyWfb9gNeAidcCd9VJz4BJyudz/L6HValEqlaJSqcTHKhIKO226MrdOT36W+VhFQrJUpkuzaXr8I8/HKhLs86hIcKoZKAECMpkM7wMQAdwkYJKxoEVD4mIuz+X4nJsECLg6l+GaizNpPucmwWkeNwn9avpK6HQ63DB+jzcIhIBBEprtDt34bPFmMzqTpfX6n5pBEkrlKo19zHDN+XcpihbLfH6QhH7zDJIwqKYnAZ8B0GytVuPjYrFIoVCIotEobW9v8zkgS1jc3KELs+LYqpOYgx6GNunIsxidnU7Sh3ydxwBZwnx2k0YDKZqOF6lcqZJvyeKaM6/i9DZZ7MmRJajOI0vQqelJwAaGn1dXV8myLAqHw7yz1+u7BUCWcHthg82efpmgu4sFOja5Rien4vRpo8G/7yJLuDWf5ZpTU2t05+s6HX0eoxMv1uh9stQTYJegOo8sQadmz+OABnH3cQ4CuqtCxv44XJ/P0fBEjJ+z4/44vcnurpou9sfhmlj+wxPi/YyayRj5Y7sroBv746AyjywBqNbskdBut/lTIVYBHgfsC3bsEmq/2nT/e5FGxB19FN6iemt/jV2CtVWhews5GhHL88E3izbKlT0CELsElXnsElRr9m2MaLzZbDoKAHYJAH88Umny5uOE08aIxpesLd4Y5fPdOG2MbvPYJQCVmn0S3HCS4IaTBLc4SXDDSYIbPQloTDV4W0ACGlPNP/8FCq9F3UCCbiBBN2gId1Y1GO+lhiXoUCgUuCkdsBrQlA5YDbhIHboCdNgjQb7T/QJkCXj1uAXIEpzG2ANkCU5j7AGyBKcx9gAjQWAkCIwEgZEgMBIERoLASBD88xJwgcBpjD0A473U9CSoIktQRZagiixBFVmCKj0JaEw1+McrJKAx1fzNF6iDT5R+AxOLNj+SFfOFAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - 191, 191, 191 - White - 191, 191, 191 - Office2010 - 191, 191, 191 - - - - - Standard - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8wMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADlUlEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIsWLFVKXQKrZJatJ8N5MmafPRpDHJ8b5Hkt5MJ5l7BxSF+8ALncmc3DnP3Lkz6UgikSDdBAIB7fh8Pu0ceBylgxrB8V5qWEKj0VBOPp/npnRYWVnhpqrVqnL8fj+fpA7XP+c91RgJRoKRwBgJAiNBYCQIjASBkSAwEgRGgqAnAY2pJp1OswQ0pppgMMgS0JhqJicn+b0eJ6maMy+TnmpGVldXSTeQoBtI0I2XH0NealiCDtlslptSJRKJ8GxAU07TflAwG3CSOuDKeqn54xJyudz/L6HValEqlaJSqcTbKhIKu226NL9Bj36UeVtFQrJUpgvv0vTwe563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcnM/xPjcJEHB5PsM15+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDl37ZPFiMz6XpY3675phEkrlKk18yHDN2TcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnZ2eB+QJSxt7dK5d2LbqpMYg+6HtujQkxidnk3S+3ydjwGyhIXsFo0HUjQbL1K5UiXfssU1p17E6XWy2JMjS1AdR5agU9OTgAUMf6+trZFlWRQOh3llr9f3CoAs4ebiJps9+TxBt5cKdGR6nY7PxOnjZoM/7yJLuLGQ5ZoTM+t068sGHX4ao2PP1ultstQTYJegOo4sQaem73ZAg7j62AcB3VkhY78dri7kaHQqxvfZUX+cXmX3Zk0X++1wRUz/0SnxfEbNdIz8sb0Z0I39dlAZR5YAVGv6JLTbbX4rxCzA7YB1wY5dQu1nm+5+K9KYuKIPwttUb+2vsUuwtit0ZzFHY2J63vtq0Wa50icAsUtQGccuQbVm38KIxpvNpqMAYJcA8OWRSpMXHyecFkY0vmxt88Io7+/GaWF0G8cuAajU7JPghpMEN5wkuMVJghtOEtzoSUBjqsHTAhLQmGr++R9QeCzqBhJ0Awm6QUO4sqrB8V5qWIIOhUKBm9KhK0EHzAacpA64sl5qehLkKz0oQJaAR49bgCzB6Rh7gCzB6Rh7gCzB6Rh7gJEgMBIERoLASBAYCQIjQWAkCIwEQZ8EVWQJqsgSVJElqCJLUKUnAY2pBv94RVO6gQQ0ppq/9wMqSb8AWg1JD6G7pzMAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - False - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA2wAAAAKJUE5HDQoaCgAAAA1JSERSAAAACgAAAAoIBgAAAI0yz70AAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M1cbXjNgAAAFVJREFUKFNj+P//Pxi3trZeAGIBGB8dwxlARf+B+AEQGyArgGE4A6oQhD8AcQCyIhDGphCGC4hVCMILqKqwASaHSyHIMwnIikAYXSFIEcHgwRPg/xkAphkSTK5IMV8AAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA6AAAAAKJUE5HDQoaCgAAAA1JSERSAAAACgAAAAoIBgAAAI0yz70AAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M1cbXjNgAAAGJJREFUKFNj+P//P1EYqyA2zMCw6t4FIP5PAF8AKRQA4g9Iguj4ARALQIxddc8AiLEpBokZgNXA3bDqXgKSAhgOgMvDGFDFDUiKClDkkDlggVX3FoAwhji6AC6MVRAT/2cAAJhQETR6tnZYAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - Never - None - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/Test.sln b/SRC/MESWin/SYS4/21670ll/MESWin/Test/Test.sln deleted file mode 100644 index dbab07c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/Test.sln +++ /dev/null @@ -1,22 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/Test.vbproj b/SRC/MESWin/SYS4/21670ll/MESWin/Test/Test.vbproj deleted file mode 100644 index dc4d40c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/Test.vbproj +++ /dev/null @@ -1,195 +0,0 @@ - - - - - Debug - AnyCPU - {C4A48E3F-38E4-4E88-A47D-FA5510686E57} - WinExe - Test - Test - 512 - WindowsFormsWithCustomSubMain - v4.6.2 - - - - - - - - - - - - On - - - Binary - - - Off - - - On - - - Sub Main - - - true - true - true - ..\..\MESClient\ - Test.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - bin\x86\Release\ - Test.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinDock.v19.1.dll - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinExplorerBar.v19.1.dll - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinToolbars.v19.1.dll - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - - - ..\..\MESClient\COM_ChkPassword.dll - - - ..\..\MESClient\COM_Kit.dll - - - ..\..\MES_C_DLL\iMESException.dll - - - ..\..\MES_C_DLL\iMESExceptionManager.dll - - - ..\..\MES_C_DLL\iMESMainMenu.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Form - - - - - True - Application.myapp - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - MDI_Panel.vb - - - - VbMyResourcesResXFileCodeGenerator - My.Resources - Designer - Resources.Designer.vb - - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/app.config b/SRC/MESWin/SYS4/21670ll/MESWin/Test/app.config deleted file mode 100644 index 48769a1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/app.config +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/iMES.snk b/SRC/MESWin/SYS4/21670ll/MESWin/Test/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/Test/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/Test/modTest.vb b/SRC/MESWin/SYS4/21670ll/MESWin/Test/modTest.vb deleted file mode 100644 index c16b586..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/Test/modTest.vb +++ /dev/null @@ -1,183 +0,0 @@ -Imports System.Deployment.Application -Imports System.IO -Imports System.Reflection -Imports iMESExceptionManager - -Module modTest - - Public Const defInteger As Integer = -999 '宣告整數使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defString As String = "Null" '宣告字串使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defDateTime As Date = #12/31/1900# '宣告日期使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defSingle As Single = -999 '宣告單精準數使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defDouble As Double = -999 '宣告雙精準數使用的常數,用以辨識參數是否有傳入Function中。 - Public Const strAddTagLabel As String = "extrabase" 'Add by py for Combine Addition XML doc - Public Const strAddTagName As String = "ExtraBase" 'Add by py for Combine Addition XML doc - Public Const defWinErrCode As String = "0000-899999" - Public Const defNullDate As Date = #12/31/1910# '宣告日期使用的常數,用以辨識參數是否要變更為Null。 - Public Const defNullInteger As Integer = -9999 '宣告數值使用的常數,用以辨識參數是否要變更為Null。 - - Sub Main() - Dim WinFormInfo As System.Windows.Forms.SystemInformation - - '***************************************************************************************************************** - - Dim ArgumentStr() As String = Split(Microsoft.VisualBasic.Command()) '取得傳給此執行檔的參數(應用程式路徑,UserID,Password) - Dim i As Integer - Dim App_Path As String = "" - - 'Modify By Peter 2005/06/21 Add /WSH - For i = LBound(ArgumentStr) To UBound(ArgumentStr) - If InStr(UCase(ArgumentStr(i)), "/DIR:") > 0 Then - App_Path = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/UID:") > 0 Then - gUserNo = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/UNA:") > 0 Then - gUserName = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/LVL:") > 0 Then - gUserLevel = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/LAN:") > 0 Then - gLanguageMode = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/WSH:") > 0 Then - gMESWebServiceHost = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/CSH:") > 0 Then - gCUSWebServiceHost = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/ENV:") > 0 Then - gSettingMode = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/SSH:") > 0 Then - gSFCWebServiceHost = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/ESH:") > 0 Then - gERPWebServiceHost = Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length) - ElseIf InStr(UCase(ArgumentStr(i)), "/SSL:") > 0 Then - gEnableSSL = IIf(Mid(Trim(ArgumentStr(i)), 6, Trim(ArgumentStr(i)).Length).ToUpper = "TRUE", True, False) - End If - Next - - '***************************************************************************************************************** - If App_Path = "" Then - gAppPath = Application.StartupPath - Else - gAppPath = App_Path - End If - - If gUserNo = "" And gUserName = "" Then - - Using obj As New frmCOMChkPassword - obj.ShowDialog() - End Using - - Else - gReturnKeyValue = gUserNo - End If - - '用來做為是否可以進入系統的判斷 - If gReturnKeyValue <> "" Then - '取得電腦名稱 - gComputerName = WinFormInfo.ComputerName - - iMESExceptionManager.ExceptionManager.LanguageMode = gLanguageMode - - ' 2014/12/26 YF, Coding時套用Pro5 Style - Infragistics.Win.AppStyling.StyleManager.Load(New MemoryStream(Global.Test.My.Resources.Resources.iMES)) - gEnableStyle = True - - '進入之系統 - Dim fMain As New MDI_Panel - fMain.ShowDialog() - - End If - - End Sub - - Public Function LoadAssembly(ByVal pFileName As String) As Assembly - - Dim mainAssembly As System.Reflection.Assembly - Dim myfieldinfo() As System.Reflection.FieldInfo - Dim strAppBase As String = AppDomain.CurrentDomain.BaseDirectory - Dim strFilePath As String - Dim strNamespace As String - - Try - - '判斷是否使用ClickOnce - If ApplicationDeployment.IsNetworkDeployed Then - 'ClickOnce架構下將strAppBase改指回Smart Client - Dim tempUri As System.Uri = ApplicationDeployment.CurrentDeployment.UpdateLocation - strAppBase = tempUri.ToString.Replace("/ClickOnce/MESSeries.application", "") - End If - - strFilePath = strAppBase & "/" & pFileName - - '檢查檔案是否存在 - If (Not funCheckFileExist(strFilePath)) Then - Throw New iMESException.MESException("0000-202115", strFilePath) - End If - - mainAssembly = Assembly.LoadFrom(strFilePath) - - 'strNamespace = mainAssembly.GetExportedTypes(0).Namespace - - '設定值予Module Public變數 - 'myfieldinfo = mainAssembly.GetType(strNamespace & ".modWIN").GetFields() - - 'For i As Integer = 0 To myfieldinfo.Length - 1 - ' If myfieldinfo(i).Name.ToUpper = "gUserNo".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gUserNo) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gUserName".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gUserName) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gComputerName".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gComputerName) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gUserLevel".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gUserLevel) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gLanguageMode".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gLanguageMode) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gAppPath".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gAppPath) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gMESWebServiceHost".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gMESWebServiceHost) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gCUSWebServiceHost".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gCUSWebServiceHost) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gSFCWebServiceHost".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gSFCWebServiceHost) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gERPWebServiceHost".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gERPWebServiceHost) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gSettingMode".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gSettingMode) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gEnterpriseNo".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gEnterpriseNo) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gEnableSSL".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gEnableSSL) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gConfigFile".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gConfigFile) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gEnableStyle".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), True) - ' ElseIf myfieldinfo(i).Name.ToUpper = "gSYSmode".ToUpper Then - ' myfieldinfo(i).SetValue(myfieldinfo(i), gSYSmode) - ' End If - 'Next - - Catch ex As Exception - mainAssembly = Nothing - ExceptionManager.iMESShowDialog(defWinErrCode, "Load Assembly Fail!" & vbCrLf & ex.Message, ex.StackTrace) - End Try - - Return mainAssembly - - End Function - - '檢查檔案是否存在 - Private Function funCheckFileExist(ByVal strFilePath As String) As Boolean - - 'Network架構下 - If ApplicationDeployment.IsNetworkDeployed OrElse - Application.ExecutablePath.ToLower.StartsWith("http") Then - '暫不檢查 - ElseIf IO.File.Exists(strFilePath) = False Then - '檔案架構下 - Return False - End If - - Return True - - End Function - -End Module diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionDown.png b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionDown.png deleted file mode 100644 index 8f89533..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionDown.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionLeft.png b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionLeft.png deleted file mode 100644 index 80ea854..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionLeft.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionRight.png b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionRight.png deleted file mode 100644 index cc26c41..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionRight.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionUp.png b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionUp.png deleted file mode 100644 index 1f2c2ab..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/DirectionUp.png and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/Export16x16.ico b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/Export16x16.ico deleted file mode 100644 index 07fe93e..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/Export16x16.ico and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/MakeVersion.targets b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/MakeVersion.targets deleted file mode 100644 index f07a58c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/MakeVersion.targets +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - $([System.DateTime]::Now.ToString("yy").Substring(1, 1)) - $([System.DateTime]::Now.ToString("MM")) - $([System.DateTime]::Now.ToString("dd")) - - <Assembly: Reflection.AssemblyFileVersion("6.0.5.$(Year)$(Month)$(Date)")> - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/MakeVersion_CS.targets b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/MakeVersion_CS.targets deleted file mode 100644 index c5267d8..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/MakeVersion_CS.targets +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - $([System.DateTime]::Now.ToString("yy").Substring(1, 1)) - $([System.DateTime]::Now.ToString("MM")) - $([System.DateTime]::Now.ToString("dd")) - - [assembly: System.Reflection.AssemblyFileVersion("6.0.5.$(Year)$(Month)$(Date)")] - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/Save16x16.ico b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/Save16x16.ico deleted file mode 100644 index 90af81e..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/Save16x16.ico and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/arERF_General.resx b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/arERF_General.resx deleted file mode 100644 index f7c09a6..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/arERF_General.resx +++ /dev/null @@ -1,411 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - #,##0.0000 - - - - - /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAICAgICAgICAgIDAgICBAUEAgIEBQYFBQUFBQYHBgYGBgYG - BwcICAkICAcKCgsLCgoODg4ODg4ODg4ODg4ODg7/2wBDAQMDAwYFBgsHBwsODAoMDhEQEBAQEREODg4O - Dg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wAARCAA+ANEDAREAAhEBAxEB/8QA - HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh - MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW - V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG - x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF - BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV - YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE - hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq - 8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9/KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA - oAKACgAoAKACgAoAKACgAoAxdf1mx8N6HrXiHUmKadoNrNeX7qMkRQRmRyB34WtcNh3WqRpx+KTSXq3Z - GGJxCo05VJbRTb9Ernwl8Ov23ZPGPxI0nwpq3gyLS9D8T3qWOjXsUzPPFJO4jg85du1txIBxjbnPOK/S - 828Ofq2ElWjUvKEeaSa0aSu7dvLe5+a5V4ifWcWqMqdozlZO+qbdlfv57WP0Hr8vP1E8Z+IXxs8HfD+Q - aXK8uv8Aiebi28MWI8yclum/HCfjz6A18tnnFuFy98jvOr0hHV/Pt+fkfWZBwZi8yXtFaFJbzlpH5d/y - 7tHkT+IP2ofiA27w/wCHbD4ZaRL/AKme+x5+P9sSrI/5QivlnjeIsw/hU44eP974vndN/wDkqPrVgOGM - t0r1JYma6R2+Vml/5OxP+FHfHXUP32q/Hm+tJv7lpLdbPyWSAfpU/wCp+c1NZ46Sfk5fo4/kP/XXJKel - PARa/vKN/wAVInT4R/tEaJ82g/G7+0WX7o1HzX/9GrdVrHhjPaH8LG83+O7/ADUyJcV8P1/42B5f8Fl/ - 6S4G3Z+Mf2ifCJC+Lvh5Z+ONOj/1mpaPKqz/AF8rOW+gjH1rrp5pnuE/3jDqsu8Hr93X5RRw1cp4fxv+ - 7YmVGXaovd+/p85P0PVPCXxW8IeL7j+zba4uNG8QqMz+F9SiNrep/wBs3+9/wEmvpMr4lw2MlyJuFT+S - a5ZL5P8AQ+XzbhfF4Jc8kp0+k4Pmg/mtvnY9Or6A+eCgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgA - oAztR06z1awvtK1G3S7sNSheC9tX+68cqlHU+xBNVTqypyUo6NO69VsZVaSnFxlqmrfJ7nxJ8P8A9nP4 - AeEPiPp/iDTviNBr2pabdB/DvhSa+tGaO6Dfu8iMh5GRvuj1Azmv0XNOLc0xODdOVFxTXvSUZarr5JNb - +R+eZXwpleGxaqRqqTT92LlHR9NtW10/U+pfE/izweBd6De/EbTPC16uFvwt7aw3cakZwPNY+WT67c46 - YOCPzurkuKxNL93Goov7UYvbydmvn+T1P0OhnWFw1S9R03JfZk1a/mrpv0276aOx4O8FeCfDVql74U0u - zH29fM/txD581wsnzbzcsWdw3X72K8jA5FhsA2qcOWXVv4n3vJ6/ez2Mw4gxWYJe1qOUeiWkUunLFe79 - x3MkkcMbyyuI4owS7k4AA7mvUSueW3Y5G0+IPgO/uYLKx8baDfXt0wS1tIr63kkdj0Corkk+1dtTLMTC - LlKnNJdXF2/I4YZphpu0akW305lf8wu/iD4DsLmeyvvG2g2N7asUurSa+t45EYdQyM4IPtRTyzEzjzRp - zafVRdvyCeaYaDtKpFNdOZX/ADH2HjzwPqt5DYaX4z0PUb+4/wCPeygvYJZXOP4UVyTx6UVcsxNOPNKn - NLu00vyHSzLD1HyxqQb7KSb/ADK/i+bwAY4LXxzc6FHG5zZx6nJAvzdjH5xGDx2rgnk315WdL2iX93mt - +Gh3087eAd1V9m3/AHuW/wCOq8ipoPjP4fylNL0b4g6RrD52W1p/acF1KD02hvMaRj/vEmulZHicPHWn - U5f7ylovVq/3s5ZZ3hsRLSdPm/uuKu/ROy+SR6JWB0hQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQA - UAfhh8Nv+Tm/DP8A2N3/ALdmv6Szf/kTz/68/wDtp/N+Uf8AI4h/19/9uNj9pDSpNX+P3xZht/mu7NVu - 4IR/ELa0gkl/75hDufpXNwjXVPK6Dez0++TS++Vl8zo4soupmldLda/dFN/dG7+R9v8A7EnxI/4Sn4c3 - Hgu/n36v4Dk8uAHq1lOS0J/4CwZPoBX5x4jZR9Xxft18NT/0pb/erP7z9G8PM3+sYT2D+Kn+T2+7Vfcd - H+2J8Sf+EG+E95o1lN5euePWOm2eDyLfGbt/p5f7v6uK4+Aco+t45Tl8NP3n6/Z/HX5HXx5m31XBOEfi - qe6vT7X4afM/Nf4K6TJpnxe+Ck8+RNrOqWl1HF6RfajEmR2LGNm+hBHWv2DiGup4DEpfZhJfPlu/zS9b - n5Fw9QcMdhm/tTi/ley/Jv0seq3Uvwouv2kviR4e+K3hmfVNN13xBPBp+t29xPE9rK8xUb44nAdCSM8Z - Xrz0rw4LGxyijUwc1GUaabi0nzK3RvZ/g/I9ubwUs2rU8XBuMqjSkm1Z36pbr8V5n6BeEf2Yvg74G8Ra - X4r8N+H7mz1vSGZrG5a8uJApZSh+V3IPDV+WY/jLH4ui6NSScZb6JfofqOB4PwGFqqtTi1KO2rf6n5q+ - MdbEf7XU2r+JdRVbDSPGlt9svZ2/dxWdrfIBuz0VIl+gAr9gwGH/AOEJRpLWVB2S6ylF/i2z8hx+Itnv - NVekayu3soqS/BJHvfxy/ZK/4SbVrPxb8CLWyvtP1synW9JhuYEtYZBgh7di+AHycovAxxgEAfLcN8c/ - V4OjmDd425W0+Zrs9OnfqfT8R8Ee3mq2XpWle6TVl5rXr26H3B8FtE8U+Gvhf4O0HxqS3ibSLUwalmUT - HCSMIh5ikhsR7RX5zxBiaFfGVKlD4JO60t0V9PW5+i8P4etRwdOnX+OKs9b9dNfSx8zfEbwl8ZNW8e+F - PBFh+0F9u10X8PiG00M6NbWQstPhmaL7QJkbF4YScfZ2PzjJbAAr7HKsdl9PCzrywdocrg5c8pc0mk+W - 32L/AM622R8hmuBx88TChHF3lzKaXJFcsU2r3+3y/wAr36lP4n+EPjZ4N1fwR428R/tFl9E0Sa5gn8Rr - oVsjWcl6qQRKunW5YXxmY4wwzGMsOarJsfl2JhVoU8H70knb2kveUbt++/gtv/e2ZGc4HMMNOlWqYv3Y - trm5Fo5WS9xfHfz+HdH2V4M0rxNoug2uneLvFn/Cba7E0huvEP2SKx8xWYlB5EJKrtHHv1r8/wAwr0at - Vyo0/Zx/lu5W+b1PvsBQq06SjWnzy/mso3+S0Pz6bWfB4+IXx3hu/iz4ptda0S41BPAHh3+0bnypJ47O - Y3QKhSm1Z8hBkYxjmv1T6vX+q4VxoU3CSjzy5VonKPL53tvvc/L/AKxQ+tYpOvNSi5ci5nZtRd/Kyltt - ax80WvjXWnm8FrN8Ur8R6hDMfEBOv6oBGwiBQTn7MTCSeAIxICeCQOa+xnl9O1S1FaNcv7uGuutve107 - 8vz2Pj4ZhUvTvWeqfN+8npppfTTXtf5bn6y/AO4hu/hL4Sng1htfSRbn/ibm5mu/MIupg37+4jikbacr - 8yjGMDivwziiNsdUTjy7aWUbaLom0vkz9v4ZlfA02nzb63b6vq0m/uPhPxnq/hG++NsVj4hj+L3iTwxq - H2+51Pwhdtc7zOJSYhYQxPG32VMHHzZAHWv0zL6GIjlt6f1aM1ZKS5dra87aa5n+Z+bZhXoSzC1T6zKD - u3F8299ORJp8q/Lqe8fE7xV44Fp8aJPDHia38d/D260zUodTuIJoobrwzqNnbcxfLtLpIRgYywOT2Jb5 - jJsFhubDe1g6dZTi1dNxrRb362a+63qrfS5xjcRy4l0pqpRcJJ2aToyS26XT+++vR3+o/htI8vw78BTS - u0ks2i6e0sjHJJNtGSSfevjM2SWKqpfzy/8ASmfZ5U74Wk3/ACR/JHyBea/8WZ/2ifG9smlW/g928MGL - +3ftMd4thp6XTmLVRbsNsr5AzD+tfexwuBWVUnzOf729rOPNLlV6d+i/vHwc8VjnmtVWUP3dua6lyxu7 - VLbN/wB08Z/4Wfqf/C2ftn/DW6/Y/wDhHfL/AOE8/wCEcj8jf9tz9g/s/Gzdj975+M4+XOK9/wDsWH1G - 39n6+1+D2jv8Px8/bpy7dT5/+2ZfXr/X9PZ/H7NW+L4eTa/Xm+R+jnw11BtU8D+H9Qk8aR/EJrqJm/4T - KO3S0W7/AHjfMII/lTb93HtzX5Jm9L2eIlH2fsrP4b83L/28977/ADP1nKavtMPGXtPa/wB63LfXt07f - I9Brzz0woAKACgAoA/DD4bf8nN+Gf+xu/wDbs1/SWb/8ief/AF5/9tP5vyj/AJHEP+vv/tx6F8Tbk2n7 - Zly3lrNHPr+mQXUDdJIbiK3hljPsyMyn615OTQvw8v8Ar3J+jTbT+TVz1c4nbiB/44r1TSTXzTsReDby - 4/Zj/adn0fUZnj8N/ajp+oXDHh9MvdrQTE8/6vKO2O6kdaeYU1n2TKa+O3Mv8cd189UvVMWXzeRZw4S+ - C9n/AIJbP5aN+jRc+O+s6h8fv2jrLwLoEvmadpt0uh6VKvzKPLYm9ucDspDZI/hUVnwzQjk+UPEVPia5 - 38/hj+XzZfEmIlnGbLD0/hT5F8vif5/JGZEkVt+2HoOk2sXkWHhvxHYaVpduP4bbTvLtYh/3zECffJrd - 3eQSk9505SfrK8n+LMUks+jFbRqRivSNkvwR578WbGHVP2ifGmmXG4W+oeJ5IJypwdslztOOvODXrZHU - dPKqcluqSf3I8rPKanmtSL2dRr72fqL8O/2Wfhr8MPFVj4x8NT6y+r6ekqQLdXCSR4mQxt8qxKeh9a/F - s241xmPo+wqqHK7bKz0d+5+zZVwZhMBWVam5cyvu77q3Y8G+IWv/ALKPxK+KF14R8U+GtWsvHTaq2jXv - iWAC0RriKX7NmWQT7WG5cBmQnGK+lyrDZ5gcEq1KcXS5eZRers1zaK1/kna581mmJyTG4x0asJKrzcrl - srp21d7P1avY8G/aM+C8H7O194T1z4eeLdctY/ED3C/PP5dxBJb+WRsltxFkHzD2yMdTmvp+EuIXncal - PFU4Plt0une/R37HzPFfD6yZwnh6k1zX62atbqrdz9BP2Y/F+v8Ajf4MeFNe8TXp1PWCbmC41B/vyiCd - 40Z8dW2qMnv1PNflnGOApYTMJ06StHR27XSbt8z9R4Px1XFYCE6rvLVX72bSOa/aW/s3QbHwz8TLHxNp - Xhzx/wDDud7rw5BeSrH/AGhbyDbdWGM7m81emOntuJHZwfzVpTwsoSnRqq0rK/K18Muys/6exx8X8tKM - MUpxjWpO8bu3Mn8Ue7uv6V7nmng/4iaV+0b8TdCm8R3Fr4Q8NfD94bzQvh3fTot9qGqsm5Lhozt3RwA/ - IF5PBPDED18flM8kwclSvUnVupTivdjDtfo5df8AgHk4DNoZ1i4upaEKdmoN+9Kf81uy6f8ABPvSvzY/ - Sj8a/Htr4T+HnxQ8eaBAs1xZaVq8l1/Z73B+0ywvo07zAXEiSkFnlwGZTgkEg1+/ZZOvjcFSqPeULXt7 - qftUlomtktk18j8DzOFDB4yrTW0Z3tf3mvZNvVp7t7tP5lHRXm1e/wDCcWjD4n2t54beW28Pabb+IRe3 - lrEpslvE09INNjKf6Lc5ITspyCBWmISpwm6nsGp2cm6fLFv3uVzbqO/vLr301MsPepKCh7dON1FKpeSX - u8yhamre7Lp210P0Q/Zku9WvPA3iH+1PEmp+Ko7TxFqdtpOr6jcSXNy1rBII4g8knP8ACTx69ulflHGU - IRxMeWEYXpxbUUkrtXdkj9V4PnOWGlzTlK1SSTk7uydlds+WfHPgDx/4g+OkWveLdTudE8X3ulanqngq - y0Yi7l0+LSWBsYogSgmeU7yy5AYt/CSQPtMtzTC0ct9nRipU1OMZufuqTn8Te9ktLPpbqfGZjleKq5l7 - Ss3Go4SlFR1cVD4UtuZvW60vfobfxC1XX7vw78SvF+l/s++JNEvvEvh6Ww8ZeLdRu4dMRolQlruXTgWE - ki47fNjgH1wyqhSjVo0ZYunJQqc0YpOet/hU+i/DqdGa1qsqVatHCzi503GUpSUNLfE4dX+PQ+wvglP4 - huPhX4Hk8Safa6berp1strDbyGRWtxEvkOT/AHmTBI7GvgOI40ljavsm2uZ76a3d16J7H3nDzqvBU/ap - J8q27W0+dj5hsPhvrHin9pvxFa/EbxZdahf6f4bF7ot1o5bTBDFJdPBBGTGdzlFZm+ZvvHB3Dr9nUziG - HyaDw1NJOpZqXv3aim3rpq1b07M+Op5RPEZxJYmbbVO65fcsrtJaauy19e55jrfxK1C00y//AGabvWdA - vtauLxNHg+MbTQC2GkSDLG5fJxdKuYiCeeRncMt7GHyiMprNEpqPLzexs786/lX8l/eX+Wi8evm8oweV - txcubl9rdW5H/M/5re7/AMHV/pH4V8P6X4X8N6F4d0QY0jRbWK2045BzHGoCsSOpPU+9fkeMxM69WVSf - xSbb9WfreDw0KFKNOHwxSS9EdJXOdIUAFABQAUAfmp4R/Zol0f4x6R4y/wCEw88Weu/b/wCz/se3P78v - s3+ecemdv4V+wY/i32mXSo8m9PlvfyttY/JsDwa6WPVf2m072t53te50njr9nuTXfj+/xBHir7ODq+n3 - n9lfY93/AB7iD5fN88ddnXbx6Vx5ZxP7LKvq/J9iSvfvfpbzOrMeFXWzP6xz29+Ltbtbrfy7HW/tRfA3 - Tvilr3hrVrbWP7C1qwtZIL+YW/n+bBv3Q5HmR42tv9evtXn8FcRTwFKcXHmi3da2s+vR+R38YcNRzCpC - alytKz0vdX06rbUxv2af2f8ATPhr44vfEeoa5/b2qfYnh0UfZvIWHeR5rf62Q7iox9C3rXTxjxNPG4ZU - 4x5Y813re/boupzcJcKxwOIdSUueXLZaWt3e71tp95lf8M9yf8NEf8LF/wCEp+X/AISL+0v7J+yf9Nt+ - zzfP/Xb+Fb/6z/8ACT9W5P8Al3y3v5b2t+pj/qm/7U+s8/8Ay85rW872vf8AQ4n4j/sw3viL4leLfFNp - 44k0251XVJru2hSzJeJmk3Da4uFJKnocCvRyjjCNHBU6Uqd0oJfFvp6Hn5rwXKvi51VVs5Sb+HbXvc9I - 8C/Bz416P4y8M6rrXxq8Z61pFhewy6jpN19u8meNWy0cm+8ZcEcHKke1ePmue5dUw84Qw9KMnF2a5bp9 - 1aNz1su4fzCnXhKeJqSipJtPms12d5M5z41/syeE/F/jXXvEPh7Xb3QdR1aYzaxbmFZ7c3DHMrRjfGw3 - HJbJPzZxxxXZw3xdXw+GjTqRUopWWtny9OjXp5HJxBwZRxOIlUpycZSd3pdX621T1/Ml8T/s/wDjDxN4 - M8CeHviF8Q59V0jwzPOdHnFltvvs8iRjy2kadgQNo2kgkdDnjE4LibD0cRVnhqSUppX1926vqly+evT8 - S8ZwrXr0KVPEVeaMG7e7rZ20vd9tL6/gfaHwy8L+HPBfgfw/4a8JxzJommxsLdpjmZnZy8jSkAAuzkk4 - GPTivzrOcXVxGJlUrfG+222lvkffZRgqWFw8aVH4V3387+dzw6H4L6L4M8W6747u/h1oni37fdy3p1Bp - ZZJ7UMxcbIrotCNmfl2KD7gYx9P/AKwTxVCOHVacLRStZJS+cddfNnz8OHaOGryr+yjK7bvdtr0UtNOl - kavjrwx4c+Nwa3j+HGmay9sBG3inUj9nmhzyFVrdhPgZ6bse1ZZZiauU6yrSjf7MdU//AAL3fw+ZvmWB - o5np7KMv70tGvu1/H5HrXwx8Ff8ACvfBml+FfNEx04yEzh5JN3mOX5aXLHAO0Z7Cvns5zH67iHW2v6dF - b/gns5Tl6wdBUl0/X1PE/HWg+FLy/wDidp958O7HULnxR5QvdZJlDSmKAMC7CQMpAXA8ornHOa+nyytV - UaElWaUL6aaXlbTSz/7ev5HhZhg6EnVjKkm57vXWy9br5W8yh4l8P+FfF+gXGg2GkxeB/tOpm9n1rT96 - FikSR7pGt9shMnmBeM9Oela4OvWwtVVJS9r7trS9W9L6aWf3meLwVDEU/ZxXJeV7x06Ja211ul8j2n4O - 6JYeGvAemeHtP0uLSIdFlngktoy7KziVi0mZGZvmJycnr7Yr5niGu62KlUlLm5kn02ttppoe7keGjh8M - qcVyqN1+O/fUi1i00Vvib4b8TT2NvNc6XpV6kevb5i8UWcyIFSTyiOOcoW9CKvDup9SnTTes17ulm+j1 - V/xSFWpU/rUarSvGD110XXrb8B3jjWPCninwP4q0b7db30eq2M0L2Ls8Zk3oRt/gbn2NGWYWvh8VTnZq - 0lrv/mgzCpRxGHnC6fNFq21ztPCEFtaeFfDllaBVt7Gxt4Y0U5CiOJV25OTx05rzMfJutNvdyb+9ndgo - KNKKWySX4HyzP8AdPvPEfxJ0owwvfeMoVuv7Te5vhsiN2ZTBlZsgE9QBj8OK+4jxQ40aM9bU3a1o6vlt - fY+QlwvTdWsus9b3lte9t9jorLQfCmjeGrv4Uf8ACpNF828dVbRUKNZzuV4nkmkJl3gdCxL+jCuWpXq1 - aqxv1idl1+0vJJaW/DyOqng6FOk8J7COvT7L823rf8T2D4WeB4Ph34L07wtBa2tmlk8z+TbvLKg86Rnx - unLOcZxya+dzvMfruIdW7d7b2T006aHtZPlywdBUkkrX2v1d+p6XXlHqhQAUAFABQB5vaaSE1aK42/dm - 3frXsVMRenbyPNhRtO/mWrzShLr32nH/AC1Ri30xUU69qNvIqdK9S4n9lDVtY+03I+QtuIP91ego9v7K - lZB7Lnndi3mk/YdYGoW64y/mAfX7w/GiniOenyv0CdHlnzIT+zVOvJdgfemEgP15o9v+5t5B7L95cq3m - lqdVmuduf32/9c1pSr/u7eRFSl71zuIdQhnfy0WQN6kV5UqTR3xqJmHPo+iwXpvJA7XJkMpXqM9emK6Y - 4mo48q22MJUYXv1Kmtp/bPkRxwPiDJ6c8/TPpW2FfsrtkV/3h0Gi2ZsdPht2GCuSR9TXHianPO50UIcs - bFbWLH+1ZLWxm/48c+Zdjs+Dwn51eHq+zTl16f5irU+fR7EU+mRWl9b6rp8Yim4ju4U6SR/Qd17U4VnK - LhLbdeT/AOCTKlZ8yOmrkOk83l0Waa+up7iJZZTLukk2jYcRlBkHPGPWvXWJSgku363PNdBttvv+hXGi - S7rbCohPJKWkA6YYYxjPI74rT6ytf/kmT7B6f5I7PQtP+wWkib2d7mV5ZCyhTljzkCvLxNXnl6Kx3UIc - qOUn0SKPVGlsZHs4Jd2/aDlN/wDrNnpnFehHEtwtLV/5bXOOVBKWmi/q9jY1HSoryO9S4srXZ5RS1Z0U - ylgPv7u1c1GvytWb317ehtVpXTul+vqbulWUOn2FtbQRrEiqNyj+8Rya5a9Rzk2zopwUVZHORaO1nrM9 - xp90R5sX7wyfvD1JIGT6812yr81JKS69NDmVG07p/qVW0a1OnSWH9nzteSN57X5A3+b/AH85z7VosQ+f - murbW6W7EOircttd7+fc7W08428JuBifaPM+vevMna+mx3R2LdSUFABQAUAFAFAW6iUP3zWrkZ2FkgUy - O/dqSkNolghWNSR/F1pTdxxQ6aFZVGf4elKLCSK6QLujPdelW5CsP+zoZS5HOann0C2pcqCyg1uhk3Ed - TWnPoRylg5GNny1CLJF+6M80gI2iBxlmODxTuKwhiGQdzZXpRcLEwGOM5pDGeX9/n7/WncViL7LHxwOK - rnZNiwqhFwOgqGWN2fPvzyKdxWEMasWyMk8UXCxIBgAelIZF5Ee4ttwTVcxPKN8oZ37m6dc0rjsTgYGM - 5pDFoA//2Q== - - - - - AAEAAAD/////AQAAAAAAAAAEAQAAABZTeXN0ZW0uSU8uTWVtb3J5U3RyZWFtCgAAAAdfYnVmZmVyB19v - cmlnaW4JX3Bvc2l0aW9uB19sZW5ndGgJX2NhcGFjaXR5C19leHBhbmRhYmxlCV93cml0YWJsZQpfZXhw - b3NhYmxlB19pc09wZW4dTWFyc2hhbEJ5UmVmT2JqZWN0K19faWRlbnRpdHkHAAAAAAAAAAACAggICAgB - AQEBCQIAAAAAAAAAAAAAAMAeAADAHgAAAQEBAQoPAgAAAMAeAAACALseAAD/2P/gABBKRklGAAEBAQBg - AGAAAP/bAEMAAgICAgICAgICAgMCAgIEBQQCAgQFBgUFBQUFBgcGBgYGBgYHBwgICQgIBwoKCwsKCg4O - Dg4ODg4ODg4ODg4ODv/bAEMBAwMDBgUGCwcHCw4MCgwOERAQEBAREQ4ODg4ODg4ODg4ODg4ODg4ODg4O - Dg4ODg4ODg4ODg4ODg4ODg4ODg4ODv/AABEIAD4A0QMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAA - AAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgj - QrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2 - d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj - 5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIE - BAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYn - KCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqi - o6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEA - AhEDEQA/AP38oAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC - gDF1/WbHw3oeteIdSYpp2g2s15fuoyRFBGZHIHfha1w2HdapGnH4pNJerdkYYnEKjTlUltFNv0SufCXw - 6/bdk8Y/EjSfCmreDItL0PxPepY6NexTM88Uk7iODzl27W3EgHGNuc84r9Lzbw5+rYSVaNS8oR5pJrRp - K7t28t7n5rlXiJ9Zxaoyp2jOVk76pt2V+/ntY/Qevy8/UTxn4hfGzwd8P5Bpcry6/wCJ5uLbwxYjzJyW - 6b8cJ+PPoDXy2ecW4XL3yO86vSEdX8+35+R9ZkHBmLzJe0VoUlvOWkfl3/Lu0eRP4g/ah+IDbvD/AIds - PhlpEv8AqZ77Hn4/2xKsj/lCK+WeN4izD+FTjh4/3vi+d03/AOSo+tWA4Yy3SvUliZrpHb5WaX/k7E/4 - Ud8ddQ/far8eb60m/uWkt1s/JZIB+lT/AKn5zU1njpJ+Tl+jj+Q/9dckp6U8BFr+8o3/ABUidPhH+0Ro - nzaD8bv7RZfujUfNf/0at1WseGM9ofwsbzf47v8ANTIlxXw/X/jYHl/wWX/pLgbdn4x/aJ8IkL4u+Hln - 4406P/Walo8qrP8AXys5b6CMfWuunmme4T/eMOqy7wev3dflFHDVynh/G/7tiZUZdqi937+nzk/Q9U8J - fFbwh4vuP7Ntri40bxCozP4X1KI2t6n/AGzf73/ASa+kyviXDYyXIm4VP5Jrlkvk/wBD5fNuF8XglzyS - nT6Tg+aD+a2+dj06voD54KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDO1HTrPVrC+0rUbdLuw1 - KF4L21f7rxyqUdT7EE1VOrKnJSjo07r1WxlVpKcXGWqat8nufEnw/wD2c/gB4Q+I+n+INO+I0Gvalpt0 - H8O+FJr60Zo7oN+7yIyHkZG+6PUDOa/Rc04tzTE4N05UXFNe9JRlquvkk1v5H55lfCmV4bFqpGqpNP3Y - uUdH021bXT9T6l8T+LPB4F3oN78RtM8LXq4W/C3trDdxqRnA81j5ZPrtzjpg4I/O6uS4rE0v3caii/tR - i9vJ2a+f5PU/Q6GdYXDVL1HTcl9mTVr+aum/Tbvpo7Hg7wV4J8NWqXvhTS7Mfb18z+3EPnzXCyfNvNyx - Z3DdfvYryMDkWGwDapw5ZdW/ife8nr97PYzDiDFZgl7Wo5R6JaRS6csV7v3HcySRwxvLK4jijBLuTgAD - ua9RK55bdjkbT4g+A7+5gsrHxtoN9e3TBLW0ivreSR2PQKiuST7V21MsxMIuUqc0l1cXb8jhhmmGm7Rq - RbfTmV/zC7+IPgOwuZ7K+8baDY3tqxS6tJr63jkRh1DIzgg+1FPLMTOPNGnNp9VF2/IJ5phoO0qkU105 - lf8AMfYePPA+q3kNhpfjPQ9Rv7j/AI97KC9gllc4/hRXJPHpRVyzE0480qc0u7TS/IdLMsPUfLGpBvsp - Jv8AMr+L5vABjgtfHNzoUcbnNnHqckC/N2MfnEYPHauCeTfXlZ0vaJf3ea34aHfTzt4B3VX2bf8Ae5b/ - AI6ryKmg+M/h/KU0vRviDpGsPnZbWn9pwXUoPTaG8xpGP+8Sa6VkeJw8dadTl/vKWi9Wr/ezllneGxEt - J0+b+64q79E7L5JHolYHSFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQB+GHw2/5Ob8M/wDY3f8A - t2a/pLN/+RPP/rz/AO2n835R/wAjiH/X3/242P2kNKk1f4/fFmG3+a7s1W7ghH8QtrSCSX/vmEO5+lc3 - CNdU8roN7PT75NL75WXzOjiyi6maV0t1r90U390bv5H2/wDsSfEj/hKfhzceC7+ffq/gOTy4AerWU5LQ - n/gLBk+gFfnHiNlH1fF+3Xw1P/Slv96s/vP0bw8zf6xhPYP4qf5Pb7tV9x0f7YnxJ/4Qb4T3mjWU3l65 - 49Y6bZ4PIt8Zu3+nl/u/q4rj4Byj63jlOXw0/efr9n8dfkdfHmbfVcE4R+Kp7q9Ptfhp8z81/grpMmmf - F74KTz5E2s6paXUcXpF9qMSZHYsY2b6EEda/YOIa6ngMSl9mEl8+W7/NL1ufkXD1Bwx2Gb+1OL+V7L8m - /Sx6rdS/Ci6/aS+JHh74reGZ9U03XfEE8Gn63b3E8T2srzFRvjicB0JIzxlevPSvDgsbHKKNTBzUZRpp - uLSfMrdG9n+D8j25vBSzatTxcG4yqNKSbVnfqluvxXmfoF4R/Zi+DvgbxFpfivw34fubPW9IZmsblry4 - kCllKH5Xcg8NX5Zj+Msfi6Lo1JJxlvol+h+o4Hg/AYWqq1OLUo7at/qfmr4x1sR/tdTav4l1FVsNI8aW - 32y9nb93FZ2t8gG7PRUiX6ACv2DAYf8A4QlGktZUHZLrKUX+LbPyHH4i2e81V6RrK7eyipL8Eke9/HL9 - kr/hJtWs/FvwItbK+0/WzKdb0mG5gS1hkGCHt2L4AfJyi8DHGAQB8tw3xz9Xg6OYN3jblbT5muz06d+p - 9PxHwR7earZelaV7pNWXmtevbofcHwW0TxT4a+F/g7QfGpLeJtItTBqWZRMcJIwiHmKSGxHtFfnPEGJo - V8ZUqUPgk7rS3RX09bn6Lw/h61HB06df44qz1v1019LHzN8RvCXxk1bx74U8EWH7QX27XRfw+IbTQzo1 - tZCy0+GZovtAmRsXhhJx9nY/OMlsACvscqx2X08LOvLB2hyuDlzylzSaT5bfYv8AzrbZHyGa4HHzxMKE - cXeXMppckVyxTavf7fL/ACvfqU/if4Q+Nng3V/BHjbxH+0WX0TRJrmCfxGuhWyNZyXqpBEq6dblhfGZj - jDDMYyw5qsmx+XYmFWhTwfvSSdvaS95Ru377+C2/97ZkZzgcww06Vapi/di2ubkWjlZL3F8d/P4d0fZX - gzSvE2i6Da6d4u8Wf8JtrsTSG68Q/ZIrHzFZiUHkQkqu0ce/Wvz/ADCvRq1XKjT9nH+W7lb5vU++wFCr - TpKNafPL+ayjf5LQ/PptZ8Hj4hfHeG7+LPim11rRLjUE8AeHf7RufKknjs5jdAqFKbVnyEGRjGOa/VPq - 9f6rhXGhTcJKPPLlWico8vne2+9z8v8ArFD61ik681KLlyLmdm1F38rKW21rHzRa+NdaebwWs3xSvxHq - EMx8QE6/qgEbCIFBOfsxMJJ4AjEgJ4JA5r7GeX07VLUVo1y/u4a66297XTvy/PY+PhmFS9O9Z6p837ye - mml9NNe1/lufrL8A7iG7+EvhKeDWG19JFuf+Jubma78wi6mDfv7iOKRtpyvzKMYwOK/DOKI2x1ROPLtp - ZRtouibS+TP2/hmV8DTafNvrdvq+rSb+4+E/Ger+Eb742xWPiGP4veJPDGofb7nU/CF21zvM4lJiFhDE - 8bfZUwcfNkAda/TMvoYiOW3p/VozVkpLl2trztprmf5n5tmFehLMLVPrMoO7cXzb305Emnyr8up7x8Tv - FXjgWnxok8MeJrfx38PbrTNSh1O4gmihuvDOo2dtzF8u0ukhGBjLA5PYlvmMmwWG5sN7WDp1lOLV03Gt - FvfrZr7reqt9LnGNxHLiXSmqlFwknZpOjJLbpdP7769Hf6j+G0jy/DvwFNK7SSzaLp7SyMckk20ZJJ96 - +MzZJYqql/PL/wBKZ9nlTvhaTf8AJH8kfIF5r/xZn/aJ8b2yaVb+D3bwwYv7d+0x3i2GnpdOYtVFuw2y - vkDMP6197HC4FZVSfM5/vb2s480uVXp36L+8fBzxWOea1VZQ/d25rqXLG7tUts3/AHTxn/hZ+p/8LZ+2 - f8Nbr9j/AOEd8v8A4Tz/AIRyPyN/23P2D+z8bN2P3vn4zj5c4r3/AOxYfUbf2fr7X4PaO/w/Hz9unLt1 - Pn/7Zl9ev9f09n8fs1b4vh5Nr9eb5H6OfDXUG1TwP4f1CTxpH8Qmuomb/hMo7dLRbv8AeN8wgj+VNv3c - e3Nfkmb0vZ4iUfZ+ys/hvzcv/bz3vv8AM/Wcpq+0w8Ze09r/AHrct9e3Tt8j0GvPPTCgAoAKACgD8MPh - t/yc34Z/7G7/ANuzX9JZv/yJ5/8AXn/20/m/KP8AkcQ/6+/+3HoXxNuTaftmXLeWs0c+v6ZBdQN0khuI - reGWM+zIzKfrXk5NC/Dy/wCvcn6NNtP5NXPVziduIH/jivVNJNfNOxF4NvLj9mP9p2fR9RmePw39qOn6 - hcMeH0y92tBMTz/q8o7Y7qR1p5hTWfZMpr47cy/xx3Xz1S9UxZfN5FnDhL4L2f8Agls/lo36NFz476zq - Hx+/aOsvAugS+Zp2m3S6HpUq/Mo8tib25wOykNkj+FRWfDNCOT5Q8RU+Jrnfz+GP5fNl8SYiWcZssPT+ - FPkXy+J/n8kZkSRW37Yeg6TaxeRYeG/EdhpWl24/httO8u1iH/fMQJ98mt3d5BKT3nTlJ+sryf4sxSSz - 6MVtGpGK9I2S/BHnvxZsYdU/aJ8aaZcbhb6h4nkgnKnB2yXO04684NetkdR08qpyW6pJ/cjys8pqea1I - vZ1GvvZ+ovw7/ZZ+Gvww8VWPjHw1PrL6vp6SpAt1cJJHiZDG3yrEp6H1r8WzbjXGY+j7CqocrtsrPR37 - n7NlXBmEwFZVqblzK+7vurdjwb4ha/8Aso/Er4oXXhHxT4a1ay8dNqraNe+JYALRGuIpfs2ZZBPtYblw - GZCcYr6XKsNnmBwSrUpxdLl5lF6uzXNorX+SdrnzWaYnJMbjHRqwkqvNyuWyunbV3s/Vq9jwb9oz4Lwf - s7X3hPXPh54t1y1j8QPcL88/l3EElv5ZGyW3EWQfMPbIx1Oa+n4S4hedxqU8VTg+W3S6d79HfsfM8V8P - rJnCeHqTXNfrZq1uqt3P0E/Zj8X6/wCN/gx4U17xNenU9YJuYLjUH+/KIJ3jRnx1baoye/U81+WcY4Cl - hMwnTpK0dHbtdJu3zP1Hg/HVcVgITqu8tVfvZtI5r9pb+zdBsfDPxMsfE2leHPH/AMO53uvDkF5Ksf8A - aFvINt1YYzubzV6Y6e24kdnB/NWlPCyhKdGqrSsr8rXwy7Kz/p7HHxfy0owxSnGNak7xu7cyfxR7u6/p - XueaeD/iJpX7RvxN0KbxHcWvhDw18P3hvNC+Hd9Oi32oaqybkuGjO3dHAD8gXk8E8MQPXx+UzyTByVK9 - SdW6lOK92MO1+jl1/wCAeTgM2hnWLi6loQp2ag370p/zW7Lp/wAE+9K/Nj9KPxr8e2vhP4efFDx5oECz - XFlpWryXX9nvcH7TLC+jTvMBcSJKQWeXAZlOCQSDX79lk6+NwVKo95Qte3up+1SWia2S2TXyPwPM4UMH - jKtNbRne1/ea9k29Wnu3u0/mUdFebV7/AMJxaMPifa3nht5bbw9ptv4hF7eWsSmyW8TT0g02Mp/otzkh - OynIIFaYhKnCbqewanZybp8sW/e5XNuo7+8uvfTUyw96koKHt043UUql5Je7zKFqat7sunbXQ/RD9mS7 - 1a88DeIf7U8San4qjtPEWp22k6vqNxJc3LWsEgjiDySc/wAJPHr26V+UcZQhHEx5YRhenFtRSSu1d2SP - 1Xg+c5YaXNOUrVJJOTu7J2V2z5Z8c+APH/iD46Ra94t1O50Txfe6VqeqeCrLRiLuXT4tJYGxiiBKCZ5T - vLLkBi38JJA+0y3NMLRy32dGKlTU4xm5+6pOfxN72S0s+lup8ZmOV4qrmXtKzcajhKUVHVxUPhS25m9b - rS9+ht/ELVdfu/DvxK8X6X+z74k0S+8S+HpbDxl4t1G7h0xGiVCWu5dOBYSSLjt82OAfXDKqFKNWjRli - 6clCpzRik563+FT6L8Op0ZrWqypVq0cLOLnTcZSlJQ0t8Th1f49D7C+CU/iG4+FfgeTxJp9rpt6unWy2 - sNvIZFa3ES+Q5P8AeZMEjsa+A4jjSWNq+yba5nvprd3XonsfecPOq8FT9qknyrbtbT52PmGw+G+seKf2 - m/EVr8RvFl1qF/p/hsXui3WjltMEMUl08EEZMZ3OUVmb5m+8cHcOv2dTOIYfJoPDU0k6lmpe/dqKbeum - rVvTsz46nlE8RnEliZttU7rl9yyu0lpq7LX17nmOt/ErULTTL/8AZpu9Z0C+1q4vE0eD4xtNALYaRIMs - bl8nF0q5iIJ55Gdwy3sYfKIyms0Smo8vN7Gzvzr+VfyX95f5aLx6+byjB5W3Fy5uX2t1bkf8z/mt7v8A - wdX+kfhXw/pfhfw3oXh3RBjSNFtYrbTjkHMcagKxI6k9T71+R4zEzr1ZVJ/FJtv1Z+t4PDQoUo04fDFJ - L0R0lc50hQAUAFABQB+anhH9miXR/jHpHjL/AITDzxZ679v/ALP+x7c/vy+zf55x6Z2/hX7Bj+LfaZdK - jyb0+W9/K21j8mwPBrpY9V/abTva3ne17nSeOv2e5Nd+P7/EEeKvs4Or6fef2V9j3f8AHuIPl83zx12d - dvHpXHlnE/ssq+r8n2JK9+9+lvM6sx4VdbM/rHPb34u1u1ut/Lsdb+1F8DdO+KWveGtWttY/sLWrC1kg - v5hb+f5sG/dDkeZHja2/16+1efwVxFPAUpxceaLd1raz69H5Hfxhw1HMKkJqXK0rPS91fTqttTG/Zp/Z - /wBM+Gvji98R6hrn9vap9ieHRR9m8hYd5Hmt/rZDuKjH0LetdPGPE08bhlTjHljzXet79ui6nNwlwrHA - 4h1JS55ctlpa3d7vW2n3mV/wz3J/w0R/wsX/AISn5f8AhIv7S/sn7J/0237PN8/9dv4Vv/rP/wAJP1bk - /wCXfLe/lva36mP+qb/tT6zz/wDLzmtbzva9/wBDifiP+zDe+IviV4t8U2njiTTbnVdUmu7aFLMl4maT - cNri4UkqehwK9HKOMI0cFTpSp3Sgl8W+noefmvBcq+LnVVWzlJv4dte9z0jwL8HPjXo/jLwzqutfGrxn - rWkWF7DLqOk3X27yZ41bLRyb7xlwRwcqR7V4+a57l1TDzhDD0oycXZrlun3Vo3PWy7h/MKdeEp4mpKKk - m0+azXZ3kznPjX+zJ4T8X+Nde8Q+HtdvdB1HVpjNrFuYVntzcMcytGN8bDcclsk/NnHHFdnDfF1fD4aN - OpFSilZa2fL06NenkcnEHBlHE4iVSnJxlJ3el1frbVPX8yXxP+z/AOMPE3gzwJ4e+IXxDn1XSPDM850e - cWW2++zyJGPLaRp2BA2jaSCR0OeMTguJsPRxFWeGpJSmlfX3bq+qXL569PxLxnCtevQpU8RV5owbt7ut - nbS9320vr+B9ofDLwv4c8F+B/D/hrwnHMmiabGwt2mOZmdnLyNKQAC7OSTgY9OK/Os5xdXEYmVSt8b7b - baW+R99lGCpYXDxpUfhXffzv53PDofgvovgzxbrvju7+HWieLft93LenUGllkntQzFxsiui0I2Z+XYoP - uBjH0/8ArBPFUI4dVpwtFK1klL5x1182fPw4do4avKv7KMrtu922vRS006WRq+OvDHhz43BreP4caZrL - 2wEbeKdSP2eaHPIVWt2E+Bnpux7VllmJq5TrKtKN/sx1T/8AAvd/D5m+ZYGjmensoy/vS0a+7X8fketf - DHwV/wAK98GaX4V80THTjITOHkk3eY5flpcscA7RnsK+eznMfruIdba/p0Vv+CezlOXrB0FSXT9fU8T8 - daD4UvL/AOJ2n3nw7sdQufFHlC91kmUNKYoAwLsJAykBcDyiucc5r6fLK1VRoSVZpQvpppeVtNLP/t6/ - keFmGDoSdWMqSbnu9dbL1uvlbzKHiXw/4V8X6BcaDYaTF4H+06mb2fWtP3oWKRJHuka32yEyeYF4z056 - Vrg69bC1VUlL2vu2tL1b0vppZ/eZ4vBUMRT9nFcl5XvHTolrbXW6XyPafg7olh4a8B6Z4e0/S4tIh0WW - eCS2jLsrOJWLSZkZm+YnJyevtivmeIa7rYqVSUubmSfTa22mmh7uR4aOHwypxXKo3X4799SLWLTRW+Jv - hvxNPY281zpelXqR69vmLxRZzIgVJPKI45yhb0Iq8O6n1KdNN6zXu6Wb6PVX/FIValT+tRqtK8YPXXRd - etvwHeONY8KeKfA/irRvt1vfR6rYzQvYuzxmTehG3+BufY0ZZha+HxVOdmrSWu/+aDMKlHEYecLp80Wr - bXO08IQW1p4V8OWVoFW3sbG3hjRTkKI4lXbk5PHTmvMx8m60293Jv72d2Cgo0opbJJfgfLM/wB0+88R/ - EnSjDC994yhW6/tN7m+GyI3ZlMGVmyAT1AGPw4r7iPFDjRoz1tTdrWjq+W19j5CXC9N1ay6z1veW1723 - 2OistB8KaN4au/hR/wAKk0Xzbx1VtFQo1nO5XieSaQmXeB0LEv6MK5alerVqrG/WJ2XX7S8klpb8PI6q - eDoU6TwnsI69Psvzbet/xPYPhZ4Hg+HfgvTvC0Fra2aWTzP5Nu8sqDzpGfG6cs5xnHJr53O8x+u4h1bt - 3tvZPTTpoe1k+XLB0FSSStfa/V36npdeUeqFABQAUAFAHm9ppITVorjb92bd+texUxF6dvI82FG07+Za - vNKEuvfacf8ALVGLfTFRTr2o28ip0r1Lif2UNW1j7Tcj5C24g/3V6Cj2/sqVkHsued2LeaT9h1gahbrj - L+YB9fvD8aKeI56fK/QJ0eWfMhP7NU68l2B96YSA/Xmj2/7m3kHsv3lyreaWp1Wa525/fb/1zWlKv+7t - 5EVKXvXO4h1CGd/LRZA3qRXlSpNHfGomYc+j6LBem8kDtcmQyleoz16YrpjiajjyrbYwlRhe/Uqa2n9s - +RHHA+IMnpzz9M+lbYV+yu2RX/eHQaLZmx0+G3YYK5JH1NceJqc87nRQhyxsVtYsf7VktbGb/jxz5l2O - z4PCfnV4er7NOXXp/mKtT59HsRT6ZFaX1vqunxiKbiO7hTpJH9B3XtThWcouEtt15P8A4JMqVnzI6auQ - 6TzeXRZpr66nuIlllMu6STaNhxGUGQc8Y9a9dYlKCS7frc810G22+/6FcaJLutsKiE8kpaQDphhjGM8j - vitPrK1/+SZPsHp/kjs9C0/7BaSJvZ3uZXlkLKFOWPOQK8vE1eeXorHdQhyo5SfRIo9UaWxkezgl3b9o - OU3/AOs2emcV6EcS3C0tX/ltc45UEpaaL+r2NjUdKivI71LiytdnlFLVnRTKWA+/u7VzUa/K1ZvfXt6G - 1WldO6X6+pu6VZQ6fYW1tBGsSKo3KP7xHJrlr1HOTbOinBRVkc5Fo7Wesz3Gn3RHmxfvDJ+8PUkgZPrz - XbKvzUkpLr00OZUbTun+pVbRrU6dJYf2fO15I3ntfkDf5v8AfznPtWixD5+a6ttbpbsQ6Kty213v59zt - bTzjbwm4GJ9o8z6968ydr6bHdHYt1JQUAFABQAUAUBbqJQ/fNauRnYWSBTI792pKQ2iWCFY1JH8XWlN3 - HFDpoVlUZ/h6UosJIrpAu6M916VbkKw/7OhlLkc5qefQLalyoLKDW6GTcR1Nac+hHKWDkY2fLUIskX7o - zzSAjaIHGWY4PFO4rCGIZB3NlelFwsTAY4zmkMZ5f3+fv9adxWIvssfHA4qudk2LCqEXA6CoZY3Z8+/P - Ip3FYQxqxbIyTxRcLEgGAB6UhkXkR7i23BNVzE8o3yhnfubp1zSuOxOBgYzmkMWgD//ZCw== - - - - - - - - - - True - - - font-family: Arial; font-style: normal; font-variant: inherit; font-weight: normal; font-size: 10pt; font-size-adjust: inherit; font-stretch: inherit; color: rgb(0,0,0); background-repeat: inherit; background-attachment: inherit; opacity: inherit; word-spacing: inherit; letter-spacing: inherit; text-decoration: none; vertical-align: inherit; text-transform: inherit; text-align: inherit; text-indent: inherit; unicode-bidi: inherit; line-height: inherit; white-space: inherit; ddo-char-set: 0; - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/arERF_General.vb b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/arERF_General.vb deleted file mode 100644 index 11bede1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/arERF_General.vb +++ /dev/null @@ -1,1313 +0,0 @@ -Imports GrapeCity.ActiveReports.Document -Imports GrapeCity.ActiveReports.Document.Section -Imports GrapeCity.ActiveReports.SectionReportModel -Imports GrapeCity.ActiveReports.Controls -Imports GrapeCity.ActiveReports -Imports System - - - -Public Class arERF_General - - Inherits GrapeCity.ActiveReports.SectionReport - - Public Sub New() - MyBase.New() - InitializeComponent() - End Sub - - '//Public Variables - Public ERFNo, LotNo, CustomerNo, OPNo, ProductNo, RuleNo, MClassNo, HoldDescription, Creator As String - Public CreateDate As DateTime - -#Region "ActiveReports Designer generated code" - Private WithEvents PageHeader As GrapeCity.ActiveReports.SectionReportModel.PageHeader = Nothing - Private WithEvents GroupHeader1 As GrapeCity.ActiveReports.SectionReportModel.GroupHeader = Nothing - Private WithEvents Detail As GrapeCity.ActiveReports.SectionReportModel.Detail = Nothing - Private WithEvents GroupFooter1 As GrapeCity.ActiveReports.SectionReportModel.GroupFooter = Nothing - Private WithEvents PageFooter As GrapeCity.ActiveReports.SectionReportModel.PageFooter = Nothing - Private Picture1 As GrapeCity.ActiveReports.SectionReportModel.Picture = Nothing - Private Shape1 As GrapeCity.ActiveReports.SectionReportModel.Shape = Nothing - Private lblERFReport As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtDate As GrapeCity.ActiveReports.SectionReportModel.TextBox = Nothing - Private lblPrintDate As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblERFNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtERFNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private Line2 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line5 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private lblCustomerNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblLotNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblProductNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtLotNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtCustomerNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtProductNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private Barcode1 As GrapeCity.ActiveReports.SectionReportModel.Barcode = Nothing - Private lblOPNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtOPNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblRuleNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtRuleNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblMClassNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtMClassNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblHoldDescription As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblCreator As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private txtCreator As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblCreateDate As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private Line27 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line28 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line29 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line30 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line31 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line32 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private txtCreateDate As GrapeCity.ActiveReports.SectionReportModel.TextBox = Nothing - Private txtHoldDescription As GrapeCity.ActiveReports.SectionReportModel.TextBox = Nothing - Private lblHoldItemNo As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblQty As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private lblHoldDisposition As GrapeCity.ActiveReports.SectionReportModel.Label = Nothing - Private Line33 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line34 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Line35 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private txtHoldItemNo As GrapeCity.ActiveReports.SectionReportModel.TextBox = Nothing - Private txtQty As GrapeCity.ActiveReports.SectionReportModel.TextBox = Nothing - Private txtHoldDisposition As GrapeCity.ActiveReports.SectionReportModel.TextBox = Nothing - Private Line36 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Friend WithEvents Line1 As GrapeCity.ActiveReports.SectionReportModel.Line - Friend WithEvents Label1 As GrapeCity.ActiveReports.SectionReportModel.Label - Friend WithEvents Label2 As GrapeCity.ActiveReports.SectionReportModel.Label - Friend WithEvents Label3 As GrapeCity.ActiveReports.SectionReportModel.Label - Friend WithEvents Label4 As GrapeCity.ActiveReports.SectionReportModel.Label - Friend WithEvents Label5 As GrapeCity.ActiveReports.SectionReportModel.Label - Private Line37 As GrapeCity.ActiveReports.SectionReportModel.Line = Nothing - Private Sub InitializeComponent() - Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(arERF_General)) - Me.Detail = New GrapeCity.ActiveReports.SectionReportModel.Detail - Me.txtHoldDisposition = New GrapeCity.ActiveReports.SectionReportModel.TextBox - Me.txtHoldItemNo = New GrapeCity.ActiveReports.SectionReportModel.TextBox - Me.txtQty = New GrapeCity.ActiveReports.SectionReportModel.TextBox - Me.Line36 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line37 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line1 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.PageHeader = New GrapeCity.ActiveReports.SectionReportModel.PageHeader - Me.Picture1 = New GrapeCity.ActiveReports.SectionReportModel.Picture - Me.Shape1 = New GrapeCity.ActiveReports.SectionReportModel.Shape - Me.Line29 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.txtCreateDate = New GrapeCity.ActiveReports.SectionReportModel.TextBox - Me.lblERFReport = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtDate = New GrapeCity.ActiveReports.SectionReportModel.TextBox - Me.lblPrintDate = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblERFNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtERFNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Line2 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line5 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.lblCustomerNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblLotNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblProductNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtLotNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtCustomerNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtProductNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Barcode1 = New GrapeCity.ActiveReports.SectionReportModel.Barcode - Me.lblOPNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtOPNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblRuleNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtRuleNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblMClassNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtMClassNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblHoldDescription = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblCreator = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.txtCreator = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblCreateDate = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Line27 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line28 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line30 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line31 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line32 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.txtHoldDescription = New GrapeCity.ActiveReports.SectionReportModel.TextBox - Me.Label1 = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Label2 = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Label3 = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Label4 = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Label5 = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.PageFooter = New GrapeCity.ActiveReports.SectionReportModel.PageFooter - Me.GroupHeader1 = New GrapeCity.ActiveReports.SectionReportModel.GroupHeader - Me.lblHoldItemNo = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblQty = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.lblHoldDisposition = New GrapeCity.ActiveReports.SectionReportModel.Label - Me.Line33 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line34 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.Line35 = New GrapeCity.ActiveReports.SectionReportModel.Line - Me.GroupFooter1 = New GrapeCity.ActiveReports.SectionReportModel.GroupFooter - CType(Me.txtHoldDisposition, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtHoldItemNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtQty, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.Picture1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtCreateDate, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblERFReport, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtDate, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblPrintDate, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblERFNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtERFNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblCustomerNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblLotNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblProductNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtLotNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtCustomerNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtProductNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblOPNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtOPNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblRuleNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtRuleNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblMClassNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtMClassNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblHoldDescription, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblCreator, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtCreator, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblCreateDate, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtHoldDescription, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.Label1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.Label2, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.Label3, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.Label4, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.Label5, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblHoldItemNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblQty, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.lblHoldDisposition, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me, System.ComponentModel.ISupportInitialize).BeginInit() - ' - 'Detail - ' - Me.Detail.ColumnSpacing = 0.0! - Me.Detail.Controls.AddRange(New GrapeCity.ActiveReports.SectionReportModel.ARControl() {Me.txtHoldDisposition, Me.txtHoldItemNo, Me.txtQty, Me.Line36, Me.Line37, Me.Line1}) - Me.Detail.Height = 0.3333333! - Me.Detail.KeepTogether = True - Me.Detail.Name = "Detail" - ' - 'txtHoldDisposition - ' - Me.txtHoldDisposition.Border.BottomColor = System.Drawing.Color.Black - Me.txtHoldDisposition.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDisposition.Border.LeftColor = System.Drawing.Color.Black - Me.txtHoldDisposition.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDisposition.Border.RightColor = System.Drawing.Color.Black - Me.txtHoldDisposition.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDisposition.Border.TopColor = System.Drawing.Color.Black - Me.txtHoldDisposition.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDisposition.DataField = "HoldDisposition" - Me.txtHoldDisposition.Height = 0.1968504! - Me.txtHoldDisposition.Left = 2.386811! - Me.txtHoldDisposition.Name = "txtHoldDisposition" - Me.txtHoldDisposition.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtHoldDisposition.Text = Nothing - Me.txtHoldDisposition.Top = 0.0492126! - Me.txtHoldDisposition.Width = 5.364173! - ' - 'txtHoldItemNo - ' - Me.txtHoldItemNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtHoldItemNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldItemNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtHoldItemNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldItemNo.Border.RightColor = System.Drawing.Color.Black - Me.txtHoldItemNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldItemNo.Border.TopColor = System.Drawing.Color.Black - Me.txtHoldItemNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldItemNo.DataField = "HoldItemNo" - Me.txtHoldItemNo.Height = 0.1968504! - Me.txtHoldItemNo.Left = 0.1476378! - Me.txtHoldItemNo.Name = "txtHoldItemNo" - Me.txtHoldItemNo.Style = "font-size: 9.75pt; font-family: 新細明體; " - Me.txtHoldItemNo.Text = Nothing - Me.txtHoldItemNo.Top = 0.0492126! - Me.txtHoldItemNo.Width = 1.353346! - ' - 'txtQty - ' - Me.txtQty.Border.BottomColor = System.Drawing.Color.Black - Me.txtQty.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtQty.Border.LeftColor = System.Drawing.Color.Black - Me.txtQty.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtQty.Border.RightColor = System.Drawing.Color.Black - Me.txtQty.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtQty.Border.TopColor = System.Drawing.Color.Black - Me.txtQty.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtQty.DataField = "Qty" - Me.txtQty.Height = 0.2! - Me.txtQty.Left = 1.572917! - Me.txtQty.Name = "txtQty" - Me.txtQty.OutputFormat = resources.GetString("txtQty.OutputFormat") - Me.txtQty.Style = "font-size: 9.75pt; font-family: 新細明體; " - Me.txtQty.Text = Nothing - Me.txtQty.Top = 0.05298557! - Me.txtQty.Width = 0.75! - ' - 'Line36 - ' - Me.Line36.AnchorBottom = True - Me.Line36.Border.BottomColor = System.Drawing.Color.Black - Me.Line36.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line36.Border.LeftColor = System.Drawing.Color.Black - Me.Line36.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line36.Border.RightColor = System.Drawing.Color.Black - Me.Line36.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line36.Border.TopColor = System.Drawing.Color.Black - Me.Line36.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line36.Height = 0.31! - Me.Line36.Left = 0.0625! - Me.Line36.LineWeight = 1.0! - Me.Line36.Name = "Line36" - Me.Line36.Top = 0.0! - Me.Line36.Width = 0.0003187731! - Me.Line36.X1 = 0.0625! - Me.Line36.X2 = 0.06281877! - Me.Line36.Y1 = 0.0! - Me.Line36.Y2 = 0.31! - ' - 'Line37 - ' - Me.Line37.AnchorBottom = True - Me.Line37.Border.BottomColor = System.Drawing.Color.Black - Me.Line37.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line37.Border.LeftColor = System.Drawing.Color.Black - Me.Line37.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line37.Border.RightColor = System.Drawing.Color.Black - Me.Line37.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line37.Border.TopColor = System.Drawing.Color.Black - Me.Line37.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line37.Height = 0.31! - Me.Line37.Left = 7.8125! - Me.Line37.LineWeight = 1.0! - Me.Line37.Name = "Line37" - Me.Line37.Top = 0.0! - Me.Line37.Width = 0.0003190041! - Me.Line37.X1 = 7.8125! - Me.Line37.X2 = 7.812819! - Me.Line37.Y1 = 0.0! - Me.Line37.Y2 = 0.31! - ' - 'Line1 - ' - Me.Line1.Border.BottomColor = System.Drawing.Color.Black - Me.Line1.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line1.Border.LeftColor = System.Drawing.Color.Black - Me.Line1.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line1.Border.RightColor = System.Drawing.Color.Black - Me.Line1.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line1.Border.TopColor = System.Drawing.Color.Black - Me.Line1.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line1.Height = 0.0004101098! - Me.Line1.Left = 0.05856299! - Me.Line1.LineWeight = 1.0! - Me.Line1.Name = "Line1" - Me.Line1.Top = 0.3198819! - Me.Line1.Width = 7.756398! - Me.Line1.X1 = 0.05856299! - Me.Line1.X2 = 7.814961! - Me.Line1.Y1 = 0.3198819! - Me.Line1.Y2 = 0.320292! - ' - 'PageHeader - ' - Me.PageHeader.CanShrink = True - Me.PageHeader.Controls.AddRange(New GrapeCity.ActiveReports.SectionReportModel.ARControl() {Me.Picture1, Me.Shape1, Me.Line29, Me.txtCreateDate, Me.lblERFReport, Me.txtDate, Me.lblPrintDate, Me.lblERFNo, Me.txtERFNo, Me.Line2, Me.Line5, Me.lblCustomerNo, Me.lblLotNo, Me.lblProductNo, Me.txtLotNo, Me.txtCustomerNo, Me.txtProductNo, Me.Barcode1, Me.lblOPNo, Me.txtOPNo, Me.lblRuleNo, Me.txtRuleNo, Me.lblMClassNo, Me.txtMClassNo, Me.lblHoldDescription, Me.lblCreator, Me.txtCreator, Me.lblCreateDate, Me.Line27, Me.Line28, Me.Line30, Me.Line31, Me.Line32, Me.txtHoldDescription, Me.Label1, Me.Label2, Me.Label3, Me.Label4, Me.Label5}) - Me.PageHeader.Height = 2.760417! - Me.PageHeader.Name = "PageHeader" - ' - 'Picture1 - ' - Me.Picture1.Border.BottomColor = System.Drawing.Color.Black - Me.Picture1.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Picture1.Border.LeftColor = System.Drawing.Color.Black - Me.Picture1.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Picture1.Border.RightColor = System.Drawing.Color.Black - Me.Picture1.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Picture1.Border.TopColor = System.Drawing.Color.Black - Me.Picture1.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Picture1.Height = 0.5! - Me.Picture1.Image = CType(resources.GetObject("Picture1.Image"), System.Drawing.Image) - Me.Picture1.ImageData = CType(resources.GetObject("Picture1.ImageData"), System.IO.Stream) - Me.Picture1.Left = 0.0! - Me.Picture1.LineColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer)) - Me.Picture1.LineWeight = 0.0! - Me.Picture1.Name = "Picture1" - Me.Picture1.SizeMode = GrapeCity.ActiveReports.SectionReportModel.SizeModes.Zoom - Me.Picture1.Top = 0.0! - Me.Picture1.Width = 1.6875! - ' - 'Shape1 - ' - Me.Shape1.Border.BottomColor = System.Drawing.Color.Black - Me.Shape1.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Shape1.Border.LeftColor = System.Drawing.Color.Black - Me.Shape1.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Shape1.Border.RightColor = System.Drawing.Color.Black - Me.Shape1.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Shape1.Border.TopColor = System.Drawing.Color.Black - Me.Shape1.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Shape1.Height = 2.25! - Me.Shape1.Left = 0.0625! - Me.Shape1.Name = "Shape1" - Me.Shape1.RoundingRadius = New GrapeCity.ActiveReports.Controls.CornersRadius(9.999999!) - Me.Shape1.Top = 0.5! - Me.Shape1.Width = 7.75! - ' - 'Line29 - ' - Me.Line29.Border.BottomColor = System.Drawing.Color.Black - Me.Line29.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line29.Border.LeftColor = System.Drawing.Color.Black - Me.Line29.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line29.Border.RightColor = System.Drawing.Color.Black - Me.Line29.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line29.Border.TopColor = System.Drawing.Color.Black - Me.Line29.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line29.Height = 0.0001250505! - Me.Line29.Left = 0.0625! - Me.Line29.LineWeight = 1.0! - Me.Line29.Name = "Line29" - Me.Line29.Top = 1.6875! - Me.Line29.Width = 7.75! - Me.Line29.X1 = 7.8125! - Me.Line29.X2 = 0.0625! - Me.Line29.Y1 = 1.6875! - Me.Line29.Y2 = 1.687625! - ' - 'txtCreateDate - ' - Me.txtCreateDate.Border.BottomColor = System.Drawing.Color.Black - Me.txtCreateDate.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreateDate.Border.LeftColor = System.Drawing.Color.Black - Me.txtCreateDate.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreateDate.Border.RightColor = System.Drawing.Color.Black - Me.txtCreateDate.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreateDate.Border.TopColor = System.Drawing.Color.Black - Me.txtCreateDate.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreateDate.Height = 0.2! - Me.txtCreateDate.Left = 6.484375! - Me.txtCreateDate.Name = "txtCreateDate" - Me.txtCreateDate.OutputFormat = resources.GetString("txtCreateDate.OutputFormat") - Me.txtCreateDate.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtCreateDate.Text = Nothing - Me.txtCreateDate.Top = 1.453125! - Me.txtCreateDate.Width = 1.328125! - ' - 'lblERFReport - ' - Me.lblERFReport.Border.BottomColor = System.Drawing.Color.Black - Me.lblERFReport.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFReport.Border.LeftColor = System.Drawing.Color.Black - Me.lblERFReport.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFReport.Border.RightColor = System.Drawing.Color.Black - Me.lblERFReport.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFReport.Border.TopColor = System.Drawing.Color.Black - Me.lblERFReport.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFReport.Height = 0.4429134! - Me.lblERFReport.HyperLink = "" - Me.lblERFReport.Left = 3.198819! - Me.lblERFReport.Name = "lblERFReport" - Me.lblERFReport.Style = "text-decoration: none; ddo-char-set: 0; font-weight: bold; font-style: normal; fo" & _ - "nt-size: 24pt; font-family: Times New Roman; " - Me.lblERFReport.Text = "ERF Report" - Me.lblERFReport.Top = 0.0! - Me.lblERFReport.Width = 2.26378! - ' - 'txtDate - ' - Me.txtDate.Border.BottomColor = System.Drawing.Color.Black - Me.txtDate.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtDate.Border.LeftColor = System.Drawing.Color.Black - Me.txtDate.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtDate.Border.RightColor = System.Drawing.Color.Black - Me.txtDate.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtDate.Border.TopColor = System.Drawing.Color.Black - Me.txtDate.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtDate.Height = 0.2! - Me.txtDate.Left = 6.5! - Me.txtDate.Name = "txtDate" - Me.txtDate.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.txtDate.Text = Nothing - Me.txtDate.Top = 0.25! - Me.txtDate.Width = 1.25! - ' - 'lblPrintDate - ' - Me.lblPrintDate.Border.BottomColor = System.Drawing.Color.Black - Me.lblPrintDate.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblPrintDate.Border.LeftColor = System.Drawing.Color.Black - Me.lblPrintDate.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblPrintDate.Border.RightColor = System.Drawing.Color.Black - Me.lblPrintDate.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblPrintDate.Border.TopColor = System.Drawing.Color.Black - Me.lblPrintDate.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblPrintDate.Height = 0.2! - Me.lblPrintDate.HyperLink = "" - Me.lblPrintDate.Left = 5.75! - Me.lblPrintDate.Name = "lblPrintDate" - Me.lblPrintDate.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblPrintDate.Text = "Print Date" - Me.lblPrintDate.Top = 0.25! - Me.lblPrintDate.Width = 0.75! - ' - 'lblERFNo - ' - Me.lblERFNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblERFNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblERFNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFNo.Border.RightColor = System.Drawing.Color.Black - Me.lblERFNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFNo.Border.TopColor = System.Drawing.Color.Black - Me.lblERFNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblERFNo.Height = 0.2! - Me.lblERFNo.HyperLink = "" - Me.lblERFNo.Left = 0.125! - Me.lblERFNo.Name = "lblERFNo" - Me.lblERFNo.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblERFNo.Text = "ERF No" - Me.lblERFNo.Top = 0.5625! - Me.lblERFNo.Width = 0.875! - ' - 'txtERFNo - ' - Me.txtERFNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtERFNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtERFNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtERFNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtERFNo.Border.RightColor = System.Drawing.Color.Black - Me.txtERFNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtERFNo.Border.TopColor = System.Drawing.Color.Black - Me.txtERFNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtERFNo.Height = 0.2! - Me.txtERFNo.HyperLink = "" - Me.txtERFNo.Left = 1.0625! - Me.txtERFNo.Name = "txtERFNo" - Me.txtERFNo.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtERFNo.Text = "" - Me.txtERFNo.Top = 0.5625! - Me.txtERFNo.Width = 1.6875! - ' - 'Line2 - ' - Me.Line2.Border.BottomColor = System.Drawing.Color.Black - Me.Line2.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line2.Border.LeftColor = System.Drawing.Color.Black - Me.Line2.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line2.Border.RightColor = System.Drawing.Color.Black - Me.Line2.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line2.Border.TopColor = System.Drawing.Color.Black - Me.Line2.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line2.Height = 0.91! - Me.Line2.Left = 2.866! - Me.Line2.LineWeight = 1.0! - Me.Line2.Name = "Line2" - Me.Line2.Top = 0.5! - Me.Line2.Width = 0.0003190041! - Me.Line2.X1 = 2.866319! - Me.Line2.X2 = 2.866! - Me.Line2.Y1 = 0.5! - Me.Line2.Y2 = 1.41! - ' - 'Line5 - ' - Me.Line5.Border.BottomColor = System.Drawing.Color.Black - Me.Line5.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line5.Border.LeftColor = System.Drawing.Color.Black - Me.Line5.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line5.Border.RightColor = System.Drawing.Color.Black - Me.Line5.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line5.Border.TopColor = System.Drawing.Color.Black - Me.Line5.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line5.Height = 0.0! - Me.Line5.Left = 0.0625! - Me.Line5.LineWeight = 1.0! - Me.Line5.Name = "Line5" - Me.Line5.Top = 0.8125! - Me.Line5.Width = 5.54! - Me.Line5.X1 = 5.6025! - Me.Line5.X2 = 0.0625! - Me.Line5.Y1 = 0.8125! - Me.Line5.Y2 = 0.8125! - ' - 'lblCustomerNo - ' - Me.lblCustomerNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblCustomerNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCustomerNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblCustomerNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCustomerNo.Border.RightColor = System.Drawing.Color.Black - Me.lblCustomerNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCustomerNo.Border.TopColor = System.Drawing.Color.Black - Me.lblCustomerNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCustomerNo.Height = 0.2! - Me.lblCustomerNo.HyperLink = "" - Me.lblCustomerNo.Left = 0.125! - Me.lblCustomerNo.Name = "lblCustomerNo" - Me.lblCustomerNo.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblCustomerNo.Text = "Customer No" - Me.lblCustomerNo.Top = 0.859375! - Me.lblCustomerNo.Width = 0.875! - ' - 'lblLotNo - ' - Me.lblLotNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblLotNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblLotNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblLotNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblLotNo.Border.RightColor = System.Drawing.Color.Black - Me.lblLotNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblLotNo.Border.TopColor = System.Drawing.Color.Black - Me.lblLotNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblLotNo.Height = 0.2! - Me.lblLotNo.HyperLink = "" - Me.lblLotNo.Left = 2.9375! - Me.lblLotNo.Name = "lblLotNo" - Me.lblLotNo.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblLotNo.Text = "Lot No" - Me.lblLotNo.Top = 0.5625! - Me.lblLotNo.Width = 0.75! - ' - 'lblProductNo - ' - Me.lblProductNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblProductNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblProductNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblProductNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblProductNo.Border.RightColor = System.Drawing.Color.Black - Me.lblProductNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblProductNo.Border.TopColor = System.Drawing.Color.Black - Me.lblProductNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblProductNo.Height = 0.2! - Me.lblProductNo.HyperLink = "" - Me.lblProductNo.Left = 2.9375! - Me.lblProductNo.Name = "lblProductNo" - Me.lblProductNo.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblProductNo.Text = "Product No" - Me.lblProductNo.Top = 0.859375! - Me.lblProductNo.Width = 0.75! - ' - 'txtLotNo - ' - Me.txtLotNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtLotNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtLotNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtLotNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtLotNo.Border.RightColor = System.Drawing.Color.Black - Me.txtLotNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtLotNo.Border.TopColor = System.Drawing.Color.Black - Me.txtLotNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtLotNo.Height = 0.1875! - Me.txtLotNo.HyperLink = "" - Me.txtLotNo.Left = 3.75! - Me.txtLotNo.Name = "txtLotNo" - Me.txtLotNo.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtLotNo.Text = "" - Me.txtLotNo.Top = 0.5625! - Me.txtLotNo.Width = 1.8125! - ' - 'txtCustomerNo - ' - Me.txtCustomerNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtCustomerNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCustomerNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtCustomerNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCustomerNo.Border.RightColor = System.Drawing.Color.Black - Me.txtCustomerNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCustomerNo.Border.TopColor = System.Drawing.Color.Black - Me.txtCustomerNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCustomerNo.Height = 0.2! - Me.txtCustomerNo.HyperLink = "" - Me.txtCustomerNo.Left = 1.0625! - Me.txtCustomerNo.Name = "txtCustomerNo" - Me.txtCustomerNo.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtCustomerNo.Text = "" - Me.txtCustomerNo.Top = 0.875! - Me.txtCustomerNo.Width = 1.6875! - ' - 'txtProductNo - ' - Me.txtProductNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtProductNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtProductNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtProductNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtProductNo.Border.RightColor = System.Drawing.Color.Black - Me.txtProductNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtProductNo.Border.TopColor = System.Drawing.Color.Black - Me.txtProductNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtProductNo.Height = 0.1875! - Me.txtProductNo.HyperLink = "" - Me.txtProductNo.Left = 3.75! - Me.txtProductNo.Name = "txtProductNo" - Me.txtProductNo.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtProductNo.Text = "" - Me.txtProductNo.Top = 0.859375! - Me.txtProductNo.Width = 1.8125! - ' - 'Barcode1 - ' - Me.Barcode1.Border.BottomColor = System.Drawing.Color.Black - Me.Barcode1.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Barcode1.Border.LeftColor = System.Drawing.Color.Black - Me.Barcode1.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Barcode1.Border.RightColor = System.Drawing.Color.Black - Me.Barcode1.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Barcode1.Border.TopColor = System.Drawing.Color.Black - Me.Barcode1.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Barcode1.CaptionPosition = GrapeCity.ActiveReports.SectionReportModel.BarCodeCaptionPosition.Below - Me.Barcode1.Font = New System.Drawing.Font("Courier New", 8.0!) - Me.Barcode1.Height = 0.4375! - Me.Barcode1.Left = 5.6875! - Me.Barcode1.Name = "Barcode1" - Me.Barcode1.Text = "Barcode1" - Me.Barcode1.Top = 0.59375! - Me.Barcode1.Width = 2.0625! - ' - 'lblOPNo - ' - Me.lblOPNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblOPNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblOPNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblOPNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblOPNo.Border.RightColor = System.Drawing.Color.Black - Me.lblOPNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblOPNo.Border.TopColor = System.Drawing.Color.Black - Me.lblOPNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblOPNo.Height = 0.2! - Me.lblOPNo.HyperLink = "" - Me.lblOPNo.Left = 2.9375! - Me.lblOPNo.Name = "lblOPNo" - Me.lblOPNo.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblOPNo.Text = "OP No" - Me.lblOPNo.Top = 1.1875! - Me.lblOPNo.Width = 0.75! - ' - 'txtOPNo - ' - Me.txtOPNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtOPNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtOPNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtOPNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtOPNo.Border.RightColor = System.Drawing.Color.Black - Me.txtOPNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtOPNo.Border.TopColor = System.Drawing.Color.Black - Me.txtOPNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtOPNo.Height = 0.1875! - Me.txtOPNo.HyperLink = "" - Me.txtOPNo.Left = 3.75! - Me.txtOPNo.Name = "txtOPNo" - Me.txtOPNo.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtOPNo.Text = "" - Me.txtOPNo.Top = 1.1875! - Me.txtOPNo.Width = 1.8125! - ' - 'lblRuleNo - ' - Me.lblRuleNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblRuleNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblRuleNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblRuleNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblRuleNo.Border.RightColor = System.Drawing.Color.Black - Me.lblRuleNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblRuleNo.Border.TopColor = System.Drawing.Color.Black - Me.lblRuleNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblRuleNo.Height = 0.2! - Me.lblRuleNo.HyperLink = "" - Me.lblRuleNo.Left = 0.125! - Me.lblRuleNo.Name = "lblRuleNo" - Me.lblRuleNo.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblRuleNo.Text = "Rule No" - Me.lblRuleNo.Top = 1.453125! - Me.lblRuleNo.Width = 0.75! - ' - 'txtRuleNo - ' - Me.txtRuleNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtRuleNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtRuleNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtRuleNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtRuleNo.Border.RightColor = System.Drawing.Color.Black - Me.txtRuleNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtRuleNo.Border.TopColor = System.Drawing.Color.Black - Me.txtRuleNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtRuleNo.Height = 0.2! - Me.txtRuleNo.HyperLink = "" - Me.txtRuleNo.Left = 1.0625! - Me.txtRuleNo.Name = "txtRuleNo" - Me.txtRuleNo.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtRuleNo.Text = "" - Me.txtRuleNo.Top = 1.453125! - Me.txtRuleNo.Width = 1.6875! - ' - 'lblMClassNo - ' - Me.lblMClassNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblMClassNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblMClassNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblMClassNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblMClassNo.Border.RightColor = System.Drawing.Color.Black - Me.lblMClassNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblMClassNo.Border.TopColor = System.Drawing.Color.Black - Me.lblMClassNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblMClassNo.Height = 0.2! - Me.lblMClassNo.HyperLink = "" - Me.lblMClassNo.Left = 0.125! - Me.lblMClassNo.Name = "lblMClassNo" - Me.lblMClassNo.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblMClassNo.Text = "MClass No" - Me.lblMClassNo.Top = 1.15625! - Me.lblMClassNo.Width = 0.75! - ' - 'txtMClassNo - ' - Me.txtMClassNo.Border.BottomColor = System.Drawing.Color.Black - Me.txtMClassNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtMClassNo.Border.LeftColor = System.Drawing.Color.Black - Me.txtMClassNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtMClassNo.Border.RightColor = System.Drawing.Color.Black - Me.txtMClassNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtMClassNo.Border.TopColor = System.Drawing.Color.Black - Me.txtMClassNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtMClassNo.Height = 0.2! - Me.txtMClassNo.HyperLink = "" - Me.txtMClassNo.Left = 1.0625! - Me.txtMClassNo.Name = "txtMClassNo" - Me.txtMClassNo.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtMClassNo.Text = "" - Me.txtMClassNo.Top = 1.15625! - Me.txtMClassNo.Width = 1.6875! - ' - 'lblHoldDescription - ' - Me.lblHoldDescription.Border.BottomColor = System.Drawing.Color.Black - Me.lblHoldDescription.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDescription.Border.LeftColor = System.Drawing.Color.Black - Me.lblHoldDescription.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDescription.Border.RightColor = System.Drawing.Color.Black - Me.lblHoldDescription.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDescription.Border.TopColor = System.Drawing.Color.Black - Me.lblHoldDescription.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDescription.Height = 0.2! - Me.lblHoldDescription.HyperLink = "" - Me.lblHoldDescription.Left = 0.1230315! - Me.lblHoldDescription.Name = "lblHoldDescription" - Me.lblHoldDescription.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblHoldDescription.Text = "Hold Description" - Me.lblHoldDescription.Top = 1.747047! - Me.lblHoldDescription.Width = 1.125! - ' - 'lblCreator - ' - Me.lblCreator.Border.BottomColor = System.Drawing.Color.Black - Me.lblCreator.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreator.Border.LeftColor = System.Drawing.Color.Black - Me.lblCreator.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreator.Border.RightColor = System.Drawing.Color.Black - Me.lblCreator.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreator.Border.TopColor = System.Drawing.Color.Black - Me.lblCreator.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreator.Height = 0.2! - Me.lblCreator.HyperLink = "" - Me.lblCreator.Left = 5.65625! - Me.lblCreator.Name = "lblCreator" - Me.lblCreator.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblCreator.Text = "Creator" - Me.lblCreator.Top = 1.1875! - Me.lblCreator.Width = 0.8125! - ' - 'txtCreator - ' - Me.txtCreator.Border.BottomColor = System.Drawing.Color.Black - Me.txtCreator.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreator.Border.LeftColor = System.Drawing.Color.Black - Me.txtCreator.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreator.Border.RightColor = System.Drawing.Color.Black - Me.txtCreator.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreator.Border.TopColor = System.Drawing.Color.Black - Me.txtCreator.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtCreator.Height = 0.1875! - Me.txtCreator.HyperLink = "" - Me.txtCreator.Left = 6.484375! - Me.txtCreator.Name = "txtCreator" - Me.txtCreator.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtCreator.Text = "" - Me.txtCreator.Top = 1.1875! - Me.txtCreator.Width = 1.3125! - ' - 'lblCreateDate - ' - Me.lblCreateDate.Border.BottomColor = System.Drawing.Color.Black - Me.lblCreateDate.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreateDate.Border.LeftColor = System.Drawing.Color.Black - Me.lblCreateDate.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreateDate.Border.RightColor = System.Drawing.Color.Black - Me.lblCreateDate.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreateDate.Border.TopColor = System.Drawing.Color.Black - Me.lblCreateDate.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblCreateDate.Height = 0.2! - Me.lblCreateDate.HyperLink = "" - Me.lblCreateDate.Left = 5.65625! - Me.lblCreateDate.Name = "lblCreateDate" - Me.lblCreateDate.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.lblCreateDate.Text = "Create Date" - Me.lblCreateDate.Top = 1.453125! - Me.lblCreateDate.Width = 0.8125! - ' - 'Line27 - ' - Me.Line27.Border.BottomColor = System.Drawing.Color.Black - Me.Line27.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line27.Border.LeftColor = System.Drawing.Color.Black - Me.Line27.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line27.Border.RightColor = System.Drawing.Color.Black - Me.Line27.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line27.Border.TopColor = System.Drawing.Color.Black - Me.Line27.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line27.Height = 0.0001250505! - Me.Line27.Left = 0.0625! - Me.Line27.LineWeight = 1.0! - Me.Line27.Name = "Line27" - Me.Line27.Top = 1.124875! - Me.Line27.Width = 7.75! - Me.Line27.X1 = 7.8125! - Me.Line27.X2 = 0.0625! - Me.Line27.Y1 = 1.125! - Me.Line27.Y2 = 1.124875! - ' - 'Line28 - ' - Me.Line28.Border.BottomColor = System.Drawing.Color.Black - Me.Line28.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line28.Border.LeftColor = System.Drawing.Color.Black - Me.Line28.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line28.Border.RightColor = System.Drawing.Color.Black - Me.Line28.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line28.Border.TopColor = System.Drawing.Color.Black - Me.Line28.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line28.Height = 0.0001250505! - Me.Line28.Left = 0.0625! - Me.Line28.LineWeight = 1.0! - Me.Line28.Name = "Line28" - Me.Line28.Top = 1.40625! - Me.Line28.Width = 7.75! - Me.Line28.X1 = 7.8125! - Me.Line28.X2 = 0.0625! - Me.Line28.Y1 = 1.40625! - Me.Line28.Y2 = 1.406375! - ' - 'Line30 - ' - Me.Line30.Border.BottomColor = System.Drawing.Color.Black - Me.Line30.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line30.Border.LeftColor = System.Drawing.Color.Black - Me.Line30.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line30.Border.RightColor = System.Drawing.Color.Black - Me.Line30.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line30.Border.TopColor = System.Drawing.Color.Black - Me.Line30.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line30.Height = 1.180556! - Me.Line30.Left = 5.600695! - Me.Line30.LineWeight = 1.0! - Me.Line30.Name = "Line30" - Me.Line30.Top = 0.5069444! - Me.Line30.Width = 0.0003180504! - Me.Line30.X1 = 5.600695! - Me.Line30.X2 = 5.601013! - Me.Line30.Y1 = 0.5069444! - Me.Line30.Y2 = 1.6875! - ' - 'Line31 - ' - Me.Line31.Border.BottomColor = System.Drawing.Color.Black - Me.Line31.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line31.Border.LeftColor = System.Drawing.Color.Black - Me.Line31.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line31.Border.RightColor = System.Drawing.Color.Black - Me.Line31.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line31.Border.TopColor = System.Drawing.Color.Black - Me.Line31.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line31.Height = 0.91! - Me.Line31.Left = 3.71875! - Me.Line31.LineWeight = 1.0! - Me.Line31.Name = "Line31" - Me.Line31.Top = 0.5! - Me.Line31.Width = 0.0003190041! - Me.Line31.X1 = 3.71875! - Me.Line31.X2 = 3.719069! - Me.Line31.Y1 = 0.5! - Me.Line31.Y2 = 1.41! - ' - 'Line32 - ' - Me.Line32.Border.BottomColor = System.Drawing.Color.Black - Me.Line32.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line32.Border.LeftColor = System.Drawing.Color.Black - Me.Line32.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line32.Border.RightColor = System.Drawing.Color.Black - Me.Line32.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line32.Border.TopColor = System.Drawing.Color.Black - Me.Line32.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line32.Height = 1.180556! - Me.Line32.Left = 1.03125! - Me.Line32.LineWeight = 1.0! - Me.Line32.Name = "Line32" - Me.Line32.Top = 0.5069444! - Me.Line32.Width = 0.0003190041! - Me.Line32.X1 = 1.03125! - Me.Line32.X2 = 1.031569! - Me.Line32.Y1 = 0.5069444! - Me.Line32.Y2 = 1.6875! - ' - 'txtHoldDescription - ' - Me.txtHoldDescription.Border.BottomColor = System.Drawing.Color.Black - Me.txtHoldDescription.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDescription.Border.LeftColor = System.Drawing.Color.Black - Me.txtHoldDescription.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDescription.Border.RightColor = System.Drawing.Color.Black - Me.txtHoldDescription.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDescription.Border.TopColor = System.Drawing.Color.Black - Me.txtHoldDescription.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.txtHoldDescription.CanGrow = False - Me.txtHoldDescription.Height = 0.9375! - Me.txtHoldDescription.Left = 1.304134! - Me.txtHoldDescription.Name = "txtHoldDescription" - Me.txtHoldDescription.OutputFormat = resources.GetString("txtHoldDescription.OutputFormat") - Me.txtHoldDescription.Style = "ddo-char-set: 136; font-size: 9.75pt; font-family: 新細明體; " - Me.txtHoldDescription.Text = Nothing - Me.txtHoldDescription.Top = 1.747047! - Me.txtHoldDescription.Width = 6.4375! - ' - 'Label1 - ' - Me.Label1.Border.BottomColor = System.Drawing.Color.Black - Me.Label1.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label1.Border.LeftColor = System.Drawing.Color.Black - Me.Label1.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label1.Border.RightColor = System.Drawing.Color.Black - Me.Label1.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label1.Border.TopColor = System.Drawing.Color.Black - Me.Label1.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label1.Height = 0.2! - Me.Label1.HyperLink = "" - Me.Label1.Left = 1.058071! - Me.Label1.Name = "Label1" - Me.Label1.Style = "font-size: 9.75pt; font-family: 新細明體; " - Me.Label1.Text = "" - Me.Label1.Top = 0.5659449! - Me.Label1.Width = 1.6875! - ' - 'Label2 - ' - Me.Label2.Border.BottomColor = System.Drawing.Color.Black - Me.Label2.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label2.Border.LeftColor = System.Drawing.Color.Black - Me.Label2.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label2.Border.RightColor = System.Drawing.Color.Black - Me.Label2.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label2.Border.TopColor = System.Drawing.Color.Black - Me.Label2.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label2.Height = 0.2! - Me.Label2.HyperLink = "" - Me.Label2.Left = 1.058071! - Me.Label2.Name = "Label2" - Me.Label2.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.Label2.Text = "" - Me.Label2.Top = 0.8858268! - Me.Label2.Width = 1.6875! - ' - 'Label3 - ' - Me.Label3.Border.BottomColor = System.Drawing.Color.Black - Me.Label3.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label3.Border.LeftColor = System.Drawing.Color.Black - Me.Label3.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label3.Border.RightColor = System.Drawing.Color.Black - Me.Label3.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label3.Border.TopColor = System.Drawing.Color.Black - Me.Label3.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label3.Height = 0.2! - Me.Label3.HyperLink = "" - Me.Label3.Left = 1.058071! - Me.Label3.Name = "Label3" - Me.Label3.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.Label3.Text = "" - Me.Label3.Top = 1.156496! - Me.Label3.Width = 1.6875! - ' - 'Label4 - ' - Me.Label4.Border.BottomColor = System.Drawing.Color.Black - Me.Label4.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label4.Border.LeftColor = System.Drawing.Color.Black - Me.Label4.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label4.Border.RightColor = System.Drawing.Color.Black - Me.Label4.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label4.Border.TopColor = System.Drawing.Color.Black - Me.Label4.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label4.Height = 0.2! - Me.Label4.HyperLink = "" - Me.Label4.Left = 1.058071! - Me.Label4.Name = "Label4" - Me.Label4.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.Label4.Text = "" - Me.Label4.Top = 1.451772! - Me.Label4.Width = 1.6875! - ' - 'Label5 - ' - Me.Label5.Border.BottomColor = System.Drawing.Color.Black - Me.Label5.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label5.Border.LeftColor = System.Drawing.Color.Black - Me.Label5.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label5.Border.RightColor = System.Drawing.Color.Black - Me.Label5.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label5.Border.TopColor = System.Drawing.Color.Black - Me.Label5.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Label5.Height = 0.1875! - Me.Label5.HyperLink = "" - Me.Label5.Left = 3.740157! - Me.Label5.Name = "Label5" - Me.Label5.Style = "font-size: 9.75pt; font-family: Times New Roman; " - Me.Label5.Text = "" - Me.Label5.Top = 1.181102! - Me.Label5.Width = 1.8125! - ' - 'PageFooter - ' - Me.PageFooter.Height = 0.1451389! - Me.PageFooter.Name = "PageFooter" - Me.PageFooter.Visible = False - ' - 'GroupHeader1 - ' - Me.GroupHeader1.Controls.AddRange(New GrapeCity.ActiveReports.SectionReportModel.ARControl() {Me.lblHoldItemNo, Me.lblQty, Me.lblHoldDisposition, Me.Line33, Me.Line34, Me.Line35}) - Me.GroupHeader1.Height = 0.21875! - Me.GroupHeader1.Name = "GroupHeader1" - ' - 'lblHoldItemNo - ' - Me.lblHoldItemNo.Border.BottomColor = System.Drawing.Color.Black - Me.lblHoldItemNo.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldItemNo.Border.LeftColor = System.Drawing.Color.Black - Me.lblHoldItemNo.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldItemNo.Border.RightColor = System.Drawing.Color.Black - Me.lblHoldItemNo.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldItemNo.Border.TopColor = System.Drawing.Color.Black - Me.lblHoldItemNo.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldItemNo.Height = 0.2! - Me.lblHoldItemNo.HyperLink = "" - Me.lblHoldItemNo.Left = 0.0625! - Me.lblHoldItemNo.Name = "lblHoldItemNo" - Me.lblHoldItemNo.Style = "color: White; text-align: center; background-color: Blue; " - Me.lblHoldItemNo.Text = "HoldItem No" - Me.lblHoldItemNo.Top = 0.0! - Me.lblHoldItemNo.Width = 1.5! - ' - 'lblQty - ' - Me.lblQty.Border.BottomColor = System.Drawing.Color.Black - Me.lblQty.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblQty.Border.LeftColor = System.Drawing.Color.Black - Me.lblQty.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblQty.Border.RightColor = System.Drawing.Color.Black - Me.lblQty.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblQty.Border.TopColor = System.Drawing.Color.Black - Me.lblQty.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblQty.Height = 0.2! - Me.lblQty.HyperLink = "" - Me.lblQty.Left = 1.5625! - Me.lblQty.Name = "lblQty" - Me.lblQty.Style = "color: White; text-align: center; background-color: Blue; font-size: 9.75pt; " - Me.lblQty.Text = "Qty" - Me.lblQty.Top = 0.0! - Me.lblQty.Width = 0.75! - ' - 'lblHoldDisposition - ' - Me.lblHoldDisposition.Border.BottomColor = System.Drawing.Color.Black - Me.lblHoldDisposition.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDisposition.Border.LeftColor = System.Drawing.Color.Black - Me.lblHoldDisposition.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDisposition.Border.RightColor = System.Drawing.Color.Black - Me.lblHoldDisposition.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDisposition.Border.TopColor = System.Drawing.Color.Black - Me.lblHoldDisposition.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.lblHoldDisposition.Height = 0.2! - Me.lblHoldDisposition.HyperLink = "" - Me.lblHoldDisposition.Left = 2.3125! - Me.lblHoldDisposition.Name = "lblHoldDisposition" - Me.lblHoldDisposition.Style = "color: White; text-align: center; background-color: Blue; font-size: 9.75pt; " - Me.lblHoldDisposition.Text = "Hold Disposition" - Me.lblHoldDisposition.Top = 0.0! - Me.lblHoldDisposition.Width = 5.5! - ' - 'Line33 - ' - Me.Line33.Border.BottomColor = System.Drawing.Color.Black - Me.Line33.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line33.Border.LeftColor = System.Drawing.Color.Black - Me.Line33.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line33.Border.RightColor = System.Drawing.Color.Black - Me.Line33.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line33.Border.TopColor = System.Drawing.Color.Black - Me.Line33.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line33.Height = 0.0! - Me.Line33.Left = 0.0625! - Me.Line33.LineWeight = 1.0! - Me.Line33.Name = "Line33" - Me.Line33.Top = 0.203125! - Me.Line33.Width = 7.75! - Me.Line33.X1 = 0.0625! - Me.Line33.X2 = 7.8125! - Me.Line33.Y1 = 0.203125! - Me.Line33.Y2 = 0.203125! - ' - 'Line34 - ' - Me.Line34.Border.BottomColor = System.Drawing.Color.Black - Me.Line34.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line34.Border.LeftColor = System.Drawing.Color.Black - Me.Line34.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line34.Border.RightColor = System.Drawing.Color.Black - Me.Line34.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line34.Border.TopColor = System.Drawing.Color.Black - Me.Line34.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line34.Height = 0.2! - Me.Line34.Left = 0.0625! - Me.Line34.LineWeight = 1.0! - Me.Line34.Name = "Line34" - Me.Line34.Top = 0.0! - Me.Line34.Width = 0.0003187731! - Me.Line34.X1 = 0.0625! - Me.Line34.X2 = 0.06281877! - Me.Line34.Y1 = 0.0! - Me.Line34.Y2 = 0.2! - ' - 'Line35 - ' - Me.Line35.Border.BottomColor = System.Drawing.Color.Black - Me.Line35.Border.BottomStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line35.Border.LeftColor = System.Drawing.Color.Black - Me.Line35.Border.LeftStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line35.Border.RightColor = System.Drawing.Color.Black - Me.Line35.Border.RightStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line35.Border.TopColor = System.Drawing.Color.Black - Me.Line35.Border.TopStyle = GrapeCity.ActiveReports.BorderLineStyle.None - Me.Line35.Height = 0.2! - Me.Line35.Left = 7.812181! - Me.Line35.LineWeight = 1.0! - Me.Line35.Name = "Line35" - Me.Line35.Top = 0.0! - Me.Line35.Width = 0.0003190041! - Me.Line35.X1 = 7.812181! - Me.Line35.X2 = 7.8125! - Me.Line35.Y1 = 0.0! - Me.Line35.Y2 = 0.2! - ' - 'GroupFooter1 - ' - Me.GroupFooter1.Height = 0.01041667! - Me.GroupFooter1.Name = "GroupFooter1" - ' - 'arERF_General - ' - Me.MasterReport = False - Me.PageSettings.Margins.Left = 0.0! - Me.PageSettings.Margins.Right = 0.0! - Me.PageSettings.PaperHeight = 11.69! - Me.PageSettings.PaperWidth = 8.27! - Me.PrintWidth = 7.885417! - Me.Sections.Add(Me.PageHeader) - Me.Sections.Add(Me.GroupHeader1) - Me.Sections.Add(Me.Detail) - Me.Sections.Add(Me.GroupFooter1) - Me.Sections.Add(Me.PageFooter) - Me.StyleSheet.Add(New DDCssLib.StyleSheetRule(resources.GetString("$this.StyleSheet"), "Normal")) - Me.StyleSheet.Add(New DDCssLib.StyleSheetRule("font-family: inherit; font-style: inherit; font-variant: inherit; font-weight: bo" & _ - "ld; font-size: 16pt; font-size-adjust: inherit; font-stretch: inherit; ", "Heading1", "Normal")) - Me.StyleSheet.Add(New DDCssLib.StyleSheetRule("font-family: Times New Roman; font-style: italic; font-variant: inherit; font-wei" & _ - "ght: bold; font-size: 14pt; font-size-adjust: inherit; font-stretch: inherit; ", "Heading2", "Normal")) - Me.StyleSheet.Add(New DDCssLib.StyleSheetRule("font-family: inherit; font-style: inherit; font-variant: inherit; font-weight: bo" & _ - "ld; font-size: 13pt; font-size-adjust: inherit; font-stretch: inherit; ", "Heading3", "Normal")) - CType(Me.txtHoldDisposition, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtHoldItemNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtQty, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.Picture1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtCreateDate, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblERFReport, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtDate, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblPrintDate, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblERFNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtERFNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblCustomerNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblLotNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblProductNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtLotNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtCustomerNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtProductNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblOPNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtOPNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblRuleNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtRuleNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblMClassNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtMClassNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblHoldDescription, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblCreator, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtCreator, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblCreateDate, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtHoldDescription, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.Label1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.Label2, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.Label3, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.Label4, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.Label5, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblHoldItemNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblQty, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.lblHoldDisposition, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me, System.ComponentModel.ISupportInitialize).EndInit() - - End Sub - -#End Region - - Private Sub arERF_General_ReportStart(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.ReportStart - 'steve,100401,在end user電腦上沒設定任何一台印表機時,Active report預設page size設成A4會有錯誤,預設Page size改成default時,在條碼機的特殊格式大小也會有錯,故加入下列指令 - Me.Document.Printer.PrinterName = "" - - Me.txtDate.Text = Now.ToShortDateString - Me.txtERFNo.Text = ERFNo - Me.Barcode1.Text = ERFNo - Me.txtLotNo.Text = LotNo - Me.txtCustomerNo.Text = CustomerNo - Me.txtOPNo.Text = OPNo - Me.txtProductNo.Text = ProductNo - Me.txtRuleNo.Text = RuleNo - Me.txtMClassNo.Text = MClassNo - Me.txtHoldDescription.Text = HoldDescription - Me.txtCreator.Text = Creator - Me.txtCreateDate.Text = Format(CreateDate, "yyyy/MM/dd HH:mm") - - Me.PageSettings.Margins.Left = 0.2 - Me.PageSettings.Margins.Top = 0.3 - Me.PageSettings.Margins.Bottom = 0.2 - Me.PageSettings.Orientation = PageOrientation.Landscape - Me.PageSettings.Orientation = PageOrientation.Portrait - - End Sub - - Private Sub Detail_Format(ByVal sender As Object, ByVal e As System.EventArgs) Handles Detail.Format - - 'If Me.intRow Mod 5 = 0 Then - ' Me.Detail.BackColor = Color.LightGray - 'Else - ' Me.Detail.BackColor = Color.White - 'End If - - 'Me.intRow = Me.intRow + 1 - - End Sub - - - - - - Private Sub PageHeader_Format(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PageHeader.Format - - End Sub -End Class diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.isl b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.isl deleted file mode 100644 index 0679a67..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.isl +++ /dev/null @@ -1,4303 +0,0 @@ - - - - 2015-02-05T03:06:30 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA3gMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADgElEQVRoQ+2XzWsTQRjGq/Qk1YOgFz3qHyLFi4LeRAri0YMHTx68eCseBMFL8W+waGPRIoixYkUrUmgVaZKaNJ/bbNpNm48mjUle531lttPpZGcm0IvMAw+Tncy7s89vZ2eTkVwuB7aOx+PWnpyctPax52k4bmEcP0wNQWi328auVCoUykYcQqPRMDaOx4u0EQ9mIxzvIDgIDgLJQWByEJgcBCYHgclBYHIQmBwEphACBjN1sVikULbGULbmoY7aI6urq2BrVUidVSF1tv0zNIzpDxSGspHneRTKRhyCatkPMo7Hi7QRD2YjHO8gmEDodrtQKBSgWq3SsQmErb0eXF/YgGe/a3RsAiFfrcHVj0V4+qtCxyYQ5HlMIKhqIiEggFKpRPsAgkDpIOAkE199GGEnv7ZQpj4dBARwY6FENVfmi9Sng6CaRwdhUM1ACP1+nwLj9/gGQSCoKAidXh9uf/Npsxmf92Cj9a8mCkK11oCJzyWqufS+AOmgRv1REAbNEwUhqiaEgL8BMGyz2aTjIAggkUhAOp2G3d1d6kOJEJa39+DyR3bst4DNAY8T23DiRQYuzuXhU6VFY1AihEVvG8bjBZjLBlCrs7ArPtVceJOFd/kghCNCMJ1HhGBTE0Iol8t019fW1sD3fUgmk5BKpaDV2i9AiRDuLm0S2fOvc3B/eQtOzazD2dksfNls0/dcIoQ7ix7VnJtdh3vfN+DkywycebUOH/LVEIAMwXQeEYJNzYHHAQPi3cc+BMBXhSj5cbi1WIbR6Qw9Z6djWXjr7a8aLhEC+iZb/qPTbHKsmclALLO/ArhFCCiTeUQIKNOaAxB6vR79KsRVgI8D7guyZAjNPz14+DOAMXZHnyR3oNU9XCND8Hfq8GCpDGNseT764cNmrX4AAFqGYDKPDMG05tDGiME7nY4SAEqGgMKTp+od2nxUkiGgMfiKv0Mbo9jPLUNA6eaRIaBMag5B0EkFQScVBJ1VEHRSQdAphIDBTI1vCwxlawxlax7qqE3/Im2tCqmzKqTOuLurLnqQcfwwNQTBRhyCjTgEG8ViMbpIG+FbYJiaEAK/y1Hm4zgEOoHGKBGCaoxslAhBNUY2HzdMjYOAn8VwOvNxDgJrHQTWOgisdRBY6yCw1kFg7X8LwVQiBFOJEEwlQjAVBhqmhiDYGkPZGiFgMFNPTU2Fd+xonYa/RnTXOFz4kRIAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - - - - 249, 249, 249 - MiddleCenter - - - - - White - Segoe UI, 9pt - 75, 75, 75 - MiddleLeft - MiddleLeft - - - - - White - Segoe UI, 8.25pt - 75, 75, 75 - - - - - White - Segoe UI, 9pt - 75, 75, 75 - - - - - 75, 75, 75 - White - 0, 170, 222 - White - Silver - Left - Long - False - False - - - - - White - Segoe UI, 9pt - 75, 75, 75 - - - - - White - Flat - Segoe UI, 9pt - 75, 75, 75 - - - - - White - None - Microsoft Sans Serif, 12pt - 0, 170, 222 - MiddleCenter - - - - - 0, 170, 222 - White - None - Gainsboro - Flat - Segoe UI, 9.75pt, style=Bold - MiddleCenter - AlwaysUnderline - 133, 133, 133 - MiddleCenter - 179, 230, 245 - - - - - White - FixedSingle - Segoe UI, 9pt - 75, 75, 75 - - - - - True - White - FixedSingle - Segoe UI, 9pt - 75, 75, 75 - Nonclickable - LargeIcon - - - - - White - 75, 75, 75 - True - True - 0, 170, 222 - White - 191, 191, 191 - - - - - White - None - Segoe UI, 8.25pt - 75, 75, 75 - - - - - White - None - - - - - White - White - 75, 75, 75 - Segoe UI, 9pt - White - White - True - White - True - White - 75, 75, 75 - - - - - White - Segoe UI, 9pt - 75, 75, 75 - MiddleCenter - MiddleLeft - - - - - White - None - 75, 75, 75 - - - - - White - None - 75, 75, 75 - - - - - 133, 133, 133 - None - - - - - Segoe UI, 9pt - True - - - - - White - FixedSingle - Segoe UI, 9pt - 75, 75, 75 - Left - - - - - White - - - - - White - None - False - Segoe UI, 9pt - 75, 75, 75 - False - False - True - 25 - False - True - True - - - - - White - Segoe UI, 8.25pt - 75, 75, 75 - - - - - - True - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA7QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADj0lEQVRoQ+2YzWsTQRiHq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OKteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXuf3ym4n2012JuBtHvgddjNvZt9nZycfI8lkknQTDAa1Mzk5qZ0jz2N0VCMYP0wNS2g2m8opFArclA5ra2vcVK1WU04gEOCL1OH2t8JQNUaCkWAkMEaCwEgQGAkCI0FgJAiMBIGRIHAkoDHVZDIZloDGVBMKhVgCGlPN1NQUf6/HRarmwtvUUDUj6+vrpBtI0A0k6GaYH0PD1LAEHXK5HDelgy3Ba9n3C8bjInWwG9MB440EFQntdpvS6TSVy2U+VpFQ3O/QtcUteva7wscqElLlCl1ZyNDTXwU+VpHgnkdFglfNQAkQkM1meR+ACOAnAZNMhCwaEW9+dTHP5/wkQMD1xSzXXJ7P8Dk/CV7z+EnoV9NXQrfb5YbxOj5BIAQMktDqdOnWV4s3m/H5HG01/tUMklCu1Gjic5ZrLn5IU6xU4fODJPSbZ5CEQTWOBHwHQLP1ep2PS6UShcNhisVitLe3x+eALGFlZ58uLYhjq0FiDnoc3qFjL+J0fi5FnwoNHgNkCUu5HRoPpmkuUaJKVTS7anHNuTcJep8qOXJkCarzyBJ0ahwJ+Xye7/rGxgZZlkWRSISi0Sg1GgcFQJZwd3mbzZ59naT7K0U6MbNJp2cT9GW7ya/byBLuLOW45szsJt37vkXHX8bp1KtN+pgqOwLcElTnkSXo1PQ8DmgQdx/nIMBeFTLux+HmUp5Gp+P8nJ0MJOhd7mDV2MgSkBti+Y9Oi8lRMxOnQPxgBdiRJQCVeWQJQLWmR0Kn0+FvhVgFeBywL7hxS6j/6dDDnyUaE3f0SWSXGu3DNW4J1m6VHiznaUwsz0c/LNquVHsEIG4JKvO4JajWHNoY0Xir1fIUANwSAN48Wm3x5uOFWwKCxletXd4Y5fN23BKA3zxuCUCl5pAEP7wk+OElwS9eEvzwkuCHIwGNqQafFmhKN2hKN3ZT/zv8K1I3Xk36xatJv2B397rofsH4YWpYgg7FYpGb0sGWoAPG4yJ1sBvTAeMdCfKd7hcgS8BHj1+ALMFrjDtAluA1xh0gS/Aa4w4wEgRGgsBIEBgJAiNBYCQIjASBkSDokaCKLEEVWYIqsgRVZAmqOBLQmGrwxyua0g2a0o3d1P9NjP4C33z6NGMDUeMAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAAvQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADX0lEQVRoQ+2Xz2sTQRTHq/Qk1YOgFz3qHyLFi4LeRAri0YMHTx68eCseBMGbf4NFW4sWQYwtVrRFCq0iTVKT5kezzabdtPnRpDHJc97IbCfTyc68gEVhPvA97HReZt9nZyfN0OrqKlATi8XIGR8fJ+fY8xQcJwTnD1LDJTSbTesICRSEhFqtZh2cjzdJQTRGAec7CU6Ck8BxEhhOAsNJYDgJDCeB4SQwnARGKIEabIoabIoa0dTfzj8tgfpjCDNIDZdAQUigICTotn2/4Hy8QQqiKQpOAsNKQrvdhnw+D+VymV/bSNje78D1+U149rPCr20k5MoVuDq3AU9/lPi1jQR1HRsJuppICSigUCjwxlEEYpKAi4x98WGIffi1+SIfM0lAATfmC7zmyuwGHzNJ0K1jktCvpq+EbrcLnufxprPZLBeCRElodbpwe9Hnh9PorAebjT81URLKlRqMfSrwmkvv85AKKnw8SkK/daIkRNWEEvB/AGy2Xq/z6yAIIB6PQyqVgr29PT6GyBKWd/bh8pwHMb8BbA14HN+BEy/ScHEmBx9LDT4HkSUseDswGsvDTCaASpU1u+LzmgtvMvAuF4RyZAm268gSKDWhhGKxyBtcW1sD3/chkUhAMpmERuOgAJEl3F3a4mbPv87C/eVtODW5DmenM/B5q8n/LpAl3FnweM256XW493UTTr5Mw5lX6/AhVw4FqBJs15ElUGp6Xgfc/vj0cQwFiF0hI0tAbi0UYXgizd+z01MZeOsd7BqBLAFzk23/4Qm2ONZMpmEqfbADRGQJiM06sgTEtqZHQqfTgVKpxHcBvg54LqioEuq/OvDwewAj7Ik+SexCo324RpXg71bhwVIRRtj2fPTNh61KtUcARpVgs44qwbbm0MGIjbdaLa0ARJWA4Icnqy1++OhQJWCw8RV/lx+M8riIKgExraNKQGxqDkkwoZNgQifBFJ0EEzoJJkIJ1GBT1GBT1ODBJhqzzSA1Q/i1SI2uSVN0TZpypBIoCAkUhAQKOB9vkIJoikKPBPGUoyLmCQn41WMKIkvQzVGDyBJ0c9QgsgTdHDWIk8BwEhhOAsNJYDgJDCeB4SQw/hsJ/EYNEfMGqQkl2CJLsEWWYIsswRZZgi2hBGqwKWqwKWqO5rdDCn4DepjAZpDd1xAAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIscWKqUqhVWyT1KT5biZN0uajSWOS432PJL2ZTjL3DggK94EXOpM5uXOeuXNn0pFEIkG6CQQC2vH5fNo59DRKhzWC473UsIRGo6GcfD7PTemwurrKTVWrVeX4/X4+SR1ufsl7qjESjAQjgTESBEaCwEgQGAkCI0FgJAiMBEFPAhpTTTqdZgloTDXBYJAloDHVTE5O8ns9TlI1514nPdWMrK2tkW4gQTeQoBsvP4a81LAEHbLZLDelSiQS4dmAppym/aBgNuAkdcCV9VLz1yXkcrn/X0Kr1aJUKkWlUom3VSQU9tp0ZWGTnvws87aKhGSpTJfm0/T4R563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcXsjxPjcJEHB1IcM1F+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDt34bPFiMz6Xpc36n5phEkrlKk18zHDN+XcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnd3eR+QJSxv79GFebFt1UmMQQ9D23TkWYzOzibpQ77OxwBZwmJ2m8YDKZqNF6lcqZJvxeKaM6/i9DZZ7MmRJaiOI0vQqelJwAKGv9fX18myLAqHw7yy1+v7BUCWcHtpi82efpmgu8sFOja9QSdn4vRpq8Gfd5El3FrMcs2pmQ2683WTjj6P0YkXG/Q+WeoJsEtQHUeWoFPTdzugQVx97IOA7qyQsd8O1xdzNDoV4/vsuD9Ob7L7s6aL/Xa4Jqb/6JR4PqNmOkb+2P4M6MZ+O6iMI0sAqjV9EtrtNr8VYhbgdsC6YMcuofarTfe/F2lMXNFH4R2qtw7W2CVYOxW6t5SjMTE9H3yzaKtc6ROA2CWojGOXoFpzYGFE481m01EAsEsA+PJIpcmLjxNOCyMaX7F2eGGU93fjtDC6jWOXAFRqDkhww0mCG04S3OIkwQ0nCW70JKAx1eBpAQloTDX//A8oPBZ1Awm6gQTdoCFcWdXgeC81LEGHQqHATemA2YCmdMBswEnqgCvrpaYnQb7SgwJkCXj0uAXIEpyOsQfIEpyOsQfIEpyOsQcYCQIjQWAkCIwEgZEgMBIERoLASBD0SVBFlqCKLEEVWYIqsgRVehLQmGrwj1dIQGOq+bd/QCXpN3LrT59/MUO0AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAASAIAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAB6klEQVRoQ+2ZQUsCQRTHLTpFdOjQqWv0QaJr3YPo0q1z126ego7SZygqiahOS5GQFQRCICVlrqCuumFlmaa93hvMJtlwZmFDdt8P/gd33+C+3+7MOhgCFxiGoZ1wOKyd/8K1BB2SyaRoqlqtKicajbZHew9LQFgCwhIQloCwBIQlICwBYQkIS0BYAuJaAjWmmng8LiRQY6qJRCLtb/Me1xJ00894Ph1SqZR4GvoZzyVYlhVMCXa9BXOxAmzcPYvPgZNAAubjRQht3sNszBLHAiWh0fqExYsiDKCA6eM8FGpNcdzXEhKVOsyc5MEo1gD7h7WbCgxvp2HyIAunpZqoIXwtYfmqLO76xL4JKwkbRncfYHwvA2fld3H+G99Ph4VzC4a20mINGItm4Cj/1j7zg+8lvH60YPX6EUZ20rB++wS1Js6LLgKxMFLjqZeGWBidCISEXvhWAjWmGtpA9TMh0zRBNyRBN7SL1A29eQY1QvVuxggJOti2LZrSgZ4GakoH2k7TReqwdFlyNaYjQb7Tf4WQJdBrsVcIWYJTTXcIWYJTTXcIWYJTTXcIloCwBIQlICwBYQkIS0BYAsISkF8SVJElqCJLUEWWoIosQZWOBGpMNblcTkigxlTj9h8o+l1PF6maqcOsizFZ+AIGcQg8msEiNgAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADm0lEQVRoQ+2YzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXud5Jel0u8nOrAgq88AD2ck+mX1/87G7GUokEqTrQCCgbZ/Pp+0Dj6N0UMM430uGITQaDWXn83kuSkfLy8tcVLVaVbbf7+eL1NH1T3lPGQPBQDAQWAaCkIEgZCAIGQhCBoKQgSBkIAj1IKAwVafTaYaAwlQdDAYZAgpT9fj4OD/X4yJVfeZl0lNmaGVlhXQNCLoGBF17eRnykmEIOspms1yUqiKRCM8GFOU07fsZswEXqSOMrJfMH4eQy+X+fQitVotSqRSVSiU+VoFQ2GnTpbl1evS9zMcqEJKlMl2YTdPDb3k+VoFg70cFglNmIAQAyGQyvA8ABOQGAZ2MBS0aEhdzcS7HbW4QAODyXIYz52fS3OYGwakfNwj9Mn0hdDodLhjf4w4CINAgCM12h659tHizGZ3J0nr9V2YQhFK5SmPvM5w5+yZF0WKZ2wdB6NfPIAiDMj0IeAZAsbVajY+LxSKFQiGKRqO0vb3NbZAMYXFzh87NimOrTqIPuh/apENPYnR6Oknv8nU+B5IhzGc3aTSQoul4kcqVKvmWLM6cehGn18liD44MQbUfGYJOpgcBGxg+r66ukmVZFA6HeWev13cDkAzh5sIGkz35PEG3Fwt0ZHKNjk/F6cNGg7/vSoZwYz7LmRNTa3Tr8zodfhqjY8/W6G2y1ANgh6DajwxBJ7NnOaBAjD7aAKA7K2TZl8PV+RwNT8R4nR31x+lVdnfWdGVfDlfE9B+eEPdnZCZj5I/tzoCu7ctBpR8ZAqSa2QOh3W7zUyFmAZYD9gW77BBqP9p092uRRsSIPghvUb21P2OHYG1V6M5CjkbE9Lz3xaKNcmUPANgOQaUfOwTVzL6NEYU3m01HAJAdAoQfj1SavPk4yWljROFL1hZvjHJ7104bo1s/dgiQSmYfBDc5QXCTEwQ3O0FwkxMEN/UgoDBV424BCChM1X/9CxRui7oGBF0Dgq5REEZW1dgAvWQYgo4KhQIXpSPMBhSlI8wGXKSOUJCXTA+CPNL9DMkQ+AdcDMkQnM6xG5IhOJ1jd/c8LxkDAZ+7xdkLdjJkIAgZCEIGgpCBIGQgCBkIQv81BFXJEFQlQ1CVDEFVKMhLhiGgMFXjj1dAQGGq/p0XqO6oqVo/E6WfdBY2E/BzX6AAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA6wMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADjUlEQVRoQ+2XT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532zapM2fJo1JXud5ZdPpdpOdWRAU5gcPdDfzdvb97exsMpRKpUg3oVBIO4FAQDuHnsbpsEYw3k8NS2g2m8opFovclA7Ly8vcVK1WU04wGOSL1OHml6KvGiPBSDASGCNBYCQIjASBkSAwEgRGgsBIEPQkoDHVZLNZloDGVBMOh1kCGlPN+Pg4f6/HRarm3Ou0r5qhlZUV0g0k6AYSdOPnx5CfGpagQz6f56ZUicVivBrQlNuy7xesBlykDrizfmr+uoRCofD/S2i325TJZKhcLvOxioTN3Q5dmVunJz8rfKwiIV2u0KXZLD3+UeRjFQnOeVQkuNUMlAABuVyO9wGIAF4SMMlY2KIhcTGX5wp8zksCBFydy3HNxZksn/OS4DaPl4R+NX0ldLtdbhif4w0CIWCQhFanSzc+W7zZjM7kab3xp2aQhHKlRmMfc1xz/l2G4qUKnx8kod88gyQMqulJwHcANFuv1/m4VCpRJBKheDxOOzs7fA7IEha3dunCrDi2GiTmoIeRLTryLEFnp9P0odjgMUCWMJ/fotFQhqaTJapUaxRYsrjmzKskvU2XenJkCarzyBJ0anoSsIHh79XVVbIsi6LRKO/sjcZeAZAl3F7YYLOnX6bo7uImHZtco5NTSfq00eTPbWQJt+bzXHNqao3ufF2no88TdOLFGr1Pl3sCnBJU55El6NTsexzQIO4+zkGAvSpknI/D9fkCDU8k+Dk7HkzSm/zeqrFxPg7XxPIfnhDvZ9RMJiiY2FsBdpyPg8o8sgSgWrNPQqfT4W+FWAV4HLAvOHFKqP/q0P3vJRoRd/RRdJsa7YM1TgnWdpXuLRRoRCzPB98s2qhU9wlAnBJU5nFKUK05sDGi8Var5SoAOCUA/PNYtcWbjxtuGyMaX7K2eWOUz9tx2xi95nFKACo1ByR44SbBCzcJXnGT4IWbBC96EtCYavC2gAQ0ppp//gcUXou6gQTdQIJu0BDurGow3k8NS9DBlqADVgOa0gGrARepA+6sn5qeBPsuD4o9zpaAV49XgCzBbYwzQJbgNsYZIEtwG+MMMBIERoLASBAYCQIjQWAkCIwEgZEg2CdBFVmCKrIEVWQJqsgSVOlJ0A0koDHV/Ns/oNL0G0NuTL0rh9nUAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADm0lEQVRoQ+2YzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXud5Jel0u8nOrAgq88AD2ck+mX1/87G7GUokEqTrQCCgbZ/Pp+0Dj6N0UMM430uGITQaDWXn83kuSkfLy8tcVLVaVbbf7+eL1NH1T3lPGQPBQDAQWAaCkIEgZCAIGQhCBoKQgSBkIAj1IKAwVafTaYaAwlQdDAYZAgpT9fj4OD/X4yJVfeZl0lNmaGVlhXQNCLoGBF17eRnykmEIOspms1yUqiKRCM8GFOU07fsZswEXqSOMrJfMH4eQy+X+fQitVotSqRSVSiU+VoFQ2GnTpbl1evS9zMcqEJKlMl2YTdPDb3k+VoFg70cFglNmIAQAyGQyvA8ABOQGAZ2MBS0aEhdzcS7HbW4QAODyXIYz52fS3OYGwakfNwj9Mn0hdDodLhjf4w4CINAgCM12h659tHizGZ3J0nr9V2YQhFK5SmPvM5w5+yZF0WKZ2wdB6NfPIAiDMj0IeAZAsbVajY+LxSKFQiGKRqO0vb3NbZAMYXFzh87NimOrTqIPuh/apENPYnR6Oknv8nU+B5IhzGc3aTSQoul4kcqVKvmWLM6cehGn18liD44MQbUfGYJOpgcBGxg+r66ukmVZFA6HeWev13cDkAzh5sIGkz35PEG3Fwt0ZHKNjk/F6cNGg7/vSoZwYz7LmRNTa3Tr8zodfhqjY8/W6G2y1ANgh6DajwxBJ7NnOaBAjD7aAKA7K2TZl8PV+RwNT8R4nR31x+lVdnfWdGVfDlfE9B+eEPdnZCZj5I/tzoCu7ctBpR8ZAqSa2QOh3W7zUyFmAZYD9gW77BBqP9p092uRRsSIPghvUb21P2OHYG1V6M5CjkbE9Lz3xaKNcmUPANgOQaUfOwTVzL6NEYU3m01HAJAdAoQfj1SavPk4yWljROFL1hZvjHJ7104bo1s/dgiQSmYfBDc5QXCTEwQ3O0FwkxMEN/UgoDBV424BCChM1X/9CxRui7oGBF0Dgq5REEZW1dgAvWQYgo4KhQIXpSPMBhSlI8wGXKSOUJCXTA+CPNL9DMkQ+AdcDMkQnM6xG5IhOJ1jd/c8LxkDAZ+7xdkLdjJkIAgZCEIGgpCBIGQgCBkIQv81BFXJEFQlQ1CVDEFVKMhLhiGgMFXjj1dAQGGq/p0XqO6oqVo/E6WfdBY2E/BzX6AAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - - VisualStudio2008Vista - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAArQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADT0lEQVRoQ+2ZzWsTURTFq3Ql1YWgG10q/h1S3CjoTqQgbgQXLly5cOMuuBAEN8W/waKNRasgxooVU5VCq9gmqUnzOc2knbT5aNKY5PrOlUyn00nmvQFB5R040HmZ0zf3N+/dmbRDmUyGVB2JRJQdCoWUfeBxkg4qGOcHyTCEZrMp7VKpxEWpaGlpiYuq1WrSDofDfJEquv65FCijIWgIGgJLQxDSEIQ0BCENQUhDENIQhDQEIRsCCpN1Pp9nCChM1tFolCGgMFmPj4/zez0uUtZnXmYDZYaWl5dJ1YCgakBQdZAvQ0EyDEFFhmFwUbJKJBK8GlCU17LvZ6wGXKSKcGeDZP44hGKx+O9DaLfblMvlqFwu87EMhI2dDl2aXaNHPyp8LAMhW67QhXd5evi9xMcyENzzyEDwygyEAACFQoH7AEBAfhAwyVjUpCFxMRdnizzmBwEALs8WOHN+Js9jfhC85vGD0C/TF0K32+WC8TmeIAACDYLQ6nTp2ieTm83ojEFrjd+ZQRDKlRqNfShw5uybHCWtCo8PgtBvnkEQBmVsCHgHQLH1ep2PLcuiWCxGyWSStre3eQxyQljY3KFz78Sx2SAxB92PbdKhJyk6PZ2l96UGnwM5IcwZmzQaydF02qJKtUahRZMzp16k6XXWsuE4IcjO44SgkrEhoIHh55WVFTJNk+LxOHf2RmM3ADkh3JxfZ7Inn2fo9sIGHZlcpeNTafq43uTPe3JCuDFncObE1Crd+rJGh5+m6NizVXqbLdsA3BBk53FCUMns2Q4oEHcfYwDQWxVOubfD1bkiDU+keJ8dDafplbG7anpyb4crYvkPT4jnMzKTKQqndldAz+7tIDOPEwIkm9kDodPp8FshVgG2A/qCW24I9Z8duvvNohFxRx/Et6jR3p9xQzC3qnRnvkgjYnne+2rSeqW6BwDshiAzjxuCbGZfY0ThrVbLEwDkhgDhlyeqLW4+XvJqjCh80dzixugc79mrMfrN44YAyWT2QfCTFwQ/eUHwsxcEP3lB8JMNAYXJGk8LQEBhsv7rv0DhsahqQFA1IKgaBeHOyhrnB8novyeIjIagIWgILA1BSEMQ0hCENAQhDUFIQxDSEIRsCChM1v/ff6Cy9AsSMSlLu0Av/QAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+gMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADnElEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqItcWKqUqhVWyT1KT5biZN0uajaWOS432PTHo7nWTuHSio3AdeyEzm5M555s6dJAPJZJJ0MzU1pZ1AIKCdQ09jdFgjON5PDUvY3t5WTqFQ4KZ0WFpa4qZqtZpygsEgn6QON78UfNUYCUaCkcAYCQIjQWAkCIwEgZEgMBIERoKgKwGNqSaTybAENKaaUCjEEtCYakZHR/l7PU5SNedep3zVDCwvL5NuIEE3kKAbPz+G/NSwBB1yuRw3pUo0GuXZgKbcpn2vYDbgJHXAlfVTc+AS8vn8vy+h1WpROp2mcrnM2yoSijttujK7Rk9+VnhbRUKqXKFLMxl6/KPA2yoSnOOoSHCr6SsBArLZLK8DEAG8JGCQkZBFA+JkLs/meZ+XBAi4OpvlmovTGd7nJcFtHC8JvWp6Suh0Otww3scTBEJAPwnNdodufLZ4sRmeztFa409NPwnlSo1GPma55vy7NMVKFd7fT0KvcfpJ6FfTlYDvAGi2Xq/zdqlUonA4TLFYjLa2tngfkCUsbOzQhRmxbTVIjEEPwxt05Fmczk6m6EOhwccAWcJcboOGp9I0mShRpVqjwKLFNWdeJehtqtSVI0tQHUeWoFPTlYAFDK9XVlbIsiyKRCK8sjcauwVAlnB7fp3Nnn6ZpLsLRTo2vkonJxL0aX2b37eRJdyay3HNqYlVuvN1jY4+j9OJF6v0PlXuCnBKUB1HlqBTs+d2QIO4+tgHAfaskHHeDtfn8jQ4Fuf77HgwQW9yu7PGxnk7XBPTf3BMPJ9RMx6nYHx3Bthx3g4q48gSgGrNHgntdpu/FWIW4HbAuuDEKaH+q033v5doSFzRR5FNarT21zglWJtVujefpyExPR98s2i9Ut0jAHFKUBnHKUG1Zt/CiMabzaarAOCUAPDh0WqTFx833BZGNL5obfLCKO+347Yweo3jlABUavZJ8MJNghduErziJsELNwledCWgMdXgaQEJaEw1f/0PKDwWdQMJuoEE3aAhXFnVYAH0U8MSdCgWi9yUDpgNaEoHzAacpA5oyE9NV4J8pXsFyBL4AzwCZAluxzgDZAluxzhjH+enxkjAa7s5Z8NuAUaCwEgQGAkCI0FgJAiMBMF/LUEVWYIqsgRVIME+UVXk5lTpSkBjqsEfr5CAxlTj9weU3dTBJka/AW4uNg3p+taQAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - Far - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA7AAAAAKJUE5HDQoaCgAAAA1JSERSAAAAFAAAABQIBgAAAI2JHQ0AAAAEZ0FNQQAAsY8L/GEFAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAH5JREFUOE+tzMEJwDAQA0G3kP47SFMp5WKbEwizryiPwWY5NKrqVxgTGBMYExgTGBMY3XU/Na1XZubbBaPrQY3u/3njMDofangnGF0PanT/6U4wOh9qM/PtgtH1oEb3/7xxGJ0PNbwTjK4HNbr/dCcYExgTGBMYExgTGL+r8QL1YYgBA3bF7AAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA4AAAAAKJUE5HDQoaCgAAAA1JSERSAAAAFAAAABQIBgAAAI2JHQ0AAAAEZ0FNQQAAsY8L/GEFAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHJJREFUOE+tzMEJgEAQBMFLwfwzMClDWc/HQCP9cnwULM2wa2Z+pbGhsaGxobGhsaGRjvOKyW270Eh4FroLjcRHud8b0kh4Fjv79qGR+Ci37UIj4VnoLjQSH+V+b0gj4Vns7NuHxobGhsaGxobGhsbvZt1vy4gBqcW4UgAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - TopOnBorder - BottomToTop - - - - - HighlightEntireItem - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA9QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADl0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPm53Mk9n3tzOzm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxnA4pym/a9jNmAi9QR7qyfzIFDKBQK/z6EVqtFmUyGyuUyn6tAWN9p05WZVXrys8LnKhDS5Qpdms7S4x9FPleB4BxHBYJbpi8EAMjlcrwPAATkBQGDjIQtGhAXc3mmwG1eEADg6kyOMxenstzmBcFtHC8IvTI9IXQ6HS4Y3+MJAiBQPwjNdodufLZ4sxmeytNq40+mH4RypUYjH3OcOf8uQ/FShdv7Qeg1Tj8I/TJdCHgHQLH1ep3PS6USRSIRisfjtLW1xW2QDGF+Y4cuTItzq0FiDHoY2aAjzxJ0djJNH4oN7gPJEGbzGzQcytBkskSVao0CCxZnzrxK0tt0qQtHhqA6jgxBJ9OFgA0Mn5eXl8myLIpGo7yzNxq7AUiGcHtujcmefpmiu/PrdGx8hU5OJOnT2jZ/b0uGcGs2z5lTEyt05+sqHX2eoBMvVuh9utwF4ISgOo4MQSezZzmgQNx9tAGAPStkOZfD9dkCDY4leJ0dDybpTX531thyLodrYvoPjonnMzLjCQomdmeAbedyUBlHhgCpZvZAaLfb/FaIWYDlgH3BKSeE+q823f9eoiFxRx9FN6nR2p9xQrA2q3RvrkBDYno++GbRWqW6BwDshKAyjhOCambfxojCm82mKwDICQHCj8eqTd583OS2MaLwBWuTN0a53bbbxug1jhMCpJLZB8FLbhC85AbBy24QvOQGwUtdCChM1XhaAAIKU/Vf/wcKj0VdA4KuAUHXKAh3VtXYAP1kGIKObAg6wmxAUTrCbMBF6ggF+cl0Idh3uZ/tfjYE/gEPQzIEtz5OQzIEtz5O2/38ZAwEfJaL87Ldz0AQRwNBHA0EcTQQxNFAEEcDQRz/WwiqkiGoSoagKhmCqlCQnwxD0DUgoDBV+/0DZd+xg3WcfgND/TMv156b9wAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+AMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADmklEQVRoQ+2YzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9k0SZuPJo1JXud5Jel0u8nOLBRU5oEHspN9Mvv+5mN3M5RIJEjXgUBA2z6fT9uHnkbpsIZxvpcMQ2g0GsrO5/NclI6Wl5e5qGq1qmy/388XqaObX/KeMgaCgWAgsAwEIQNByEAQMhCEDAQhA0HIQBDqQUBhqk6n0wwBhak6GAwyBBSm6vHxcX6ux0Wq+tzrpKfM0MrKCukaEHQNCLr28jLkJcMQdJTNZrkoVUUiEZ4NKMpp2vczZgMuUkcYWS+ZA4eQy+X+fQitVotSqRSVSiU+VoFQ2GnTlbl1evKzzMcqEJKlMl2aTdPjH3k+VoFg70cFglNmIAQAyGQyvA8ABOQGAZ2MBS0aEhdzeS7HbW4QAODqXIYzF2fS3OYGwakfNwj9Mn0hdDodLhjf4w4CINAgCM12h258tnizGZ3J0nr9T2YQhFK5SmMfM5w5/y5F0WKZ2wdB6NfPIAiDMj0IeAZAsbVajY+LxSKFQiGKRqO0vb3NbZAMYXFzhy7MimOrTqIPehjapCPPYnR2Okkf8nU+B5IhzGc3aTSQoul4kcqVKvmWLM6ceRWnt8liD44MQbUfGYJOpgcBGxg+r66ukmVZFA6HeWev13cDkAzh9sIGkz39MkF3Fwt0bHKNTk7F6dNGg7/vSoZwaz7LmVNTa3Tn6zodfR6jEy/W6H2y1ANgh6DajwxBJ7NnOaBAjD7aAKA7K2TZl8P1+RwNT8R4nR33x+lNdnfWdGVfDtfE9B+eEPdnZCZj5I/tzoCu7ctBpR8ZAqSa2QOh3W7zUyFmAZYD9gW77BBqv9p0/3uRRsSIPgpvUb21P2OHYG1V6N5CjkbE9HzwzaKNcmUPANgOQaUfOwTVzL6NEYU3m01HAJAdAoQfj1SavPk4yWljROFL1hZvjHJ7104bo1s/dgiQSmYfBDc5QXCTEwQ3O0FwkxMEN/UgoDBV424BCChM1X/9CxRui7oGBF0Dgq5REEZW1dgAvWQYgo4KhQIXpSPMBhSlI8wGXKSOUJCXTA+CPNL9DMkQ+AdcDMkQnM6xG5IhOJ1jd/c8LxkDAZ+7xdkLdjJkIAgZCEIGgpCBIGQgCBkIQv81BFXJEFQlQ1CVDEFVKMhLhiGgMFXjj1dAQGGq9voC1R2xg3WUfgNzejYRjgB1CAAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPk93Mk9n3N7Ozm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxXA4pyW/a9jNWAi9QRZtZP5sAhFAqFfx9Cq9WiTCZD5XKZj1UgrO+06crMKj35WeFjFQjpcoUuTWfp8Y8iH6tAcI6jAsEt0xcCAORyOd4HAALygoBBRsIWDYiLuTxT4HNeEADg6kyOMxensnzOC4LbOF4QemV6Quh0OlwwvscTBECgfhCa7Q7d+GzxZjM8lafVxp9MPwjlSo1GPuY4c/5dhuKlCp/vB6HXOP0g9Mt0IeAdAMXW63U+LpVKFIlEKB6P09bWFp+DZAjzGzt0YVocWw0SY9DDyAYdeZags5Np+lBscB9IhjCb36DhUIYmkyWqVGsUWLA4c+ZVkt6mS104MgTVcWQIOpkuBGxg+Ly8vEyWZVE0GuWdvdHYDUAyhNtza0z29MsU3Z1fp2PjK3RyIkmf1rb5e1syhFuzec6cmlihO19X6ejzBJ14sULv0+UuACcE1XFkCDqZPbcDCsTs4xwA2KtClvN2uD5boMGxBN9nx4NJepPfXTW2nLfDNbH8B8fE8xmZ8QQFE7srwLbzdlAZR4YAqWb2QGi32/xWiFWA2wH7glNOCPVfbbr/vURDYkYfRTep0dqfcUKwNqt0b65AQ2J5Pvhm0VqlugcA7ISgMo4Tgmpm38aIwpvNpisAyAkBwo/Hqk3efNzktjGi8AVrkzdG+bxtt43RaxwnBEglsw+Cl9wgeMkNgpfdIHjJDYKXuhBQmKrxtAAEFKbqv/4PFB6LugYEXQOCrlEQZlbV2AD9ZBiCjmwIOrIh6Aj9cZE6QkF+Ml0I9iz3s93PhsA/4GFIhuDWx2lIhuDWx2m7n5+MgYDPcnFetvsZCKI1EERrIIjWQBCtgSBaA0G0/y0EVckQVCVDUJUMQVUoyE+GIegaRekaRenanrGDdZx+AwQBIVZs5053AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPk93Mk9n3N7Ozm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxXA4pyW/a9jNWAi9QRZtZP5sAhFAqFfx9Cq9WiTCZD5XKZj1UgrO+06crMKj35WeFjFQjpcoUuTWfp8Y8iH6tAcI6jAsEt0xcCAORyOd4HAALygoBBRsIWDYiLuTxT4HNeEADg6kyOMxensnzOC4LbOF4QemV6Quh0OlwwvscTBECgfhCa7Q7d+GzxZjM8lafVxp9MPwjlSo1GPuY4c/5dhuKlCp/vB6HXOP0g9Mt0IeAdAMXW63U+LpVKFIlEKB6P09bWFp+DZAjzGzt0YVocWw0SY9DDyAYdeZags5Np+lBscB9IhjCb36DhUIYmkyWqVGsUWLA4c+ZVkt6mS104MgTVcWQIOpkuBGxg+Ly8vEyWZVE0GuWdvdHYDUAyhNtza0z29MsU3Z1fp2PjK3RyIkmf1rb5e1syhFuzec6cmlihO19X6ejzBJ14sULv0+UuACcE1XFkCDqZPbcDCsTs4xwA2KtClvN2uD5boMGxBN9nx4NJepPfXTW2nLfDNbH8B8fE8xmZ8QQFE7srwLbzdlAZR4YAqWb2QGi32/xWiFWA2wH7glNOCPVfbbr/vURDYkYfRTep0dqfcUKwNqt0b65AQ2J5Pvhm0VqlugcA7ISgMo4Tgmpm38aIwpvNpisAyAkBwo/Hqk3efNzktjGi8AVrkzdG+bxtt43RaxwnBEglsw+Cl9wgeMkNgpfdIHjJDYKXuhBQmKrxtAAEFKbqv/4PFB6LugYEXQOCrlEQZlbV2AD9ZBiCjmwIOrIh6Aj9cZE6QkF+Ml0I9iz3s93PhsA/4GFIhuDWx2lIhuDWx2m7n5+MgYDPcnFetvsZCKI1EERrIIjWQBCtgSBaA0G0/y0EVckQVCVDUJUMQVUoyE+GIegaRekaRenanrGDdZx+AwQBIVZs5053AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - Office2013RadioButtonGlyphInfo - - -1 - 0, 170, 222 - Solid - 0, 170, 222 - White - 135, 135, 135 - None - Transparent - 0 - 0, 170, 222 - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA9QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADl0lEQVRoQ+2XzWsTQRjGq/Qk1YOgFz0q/h1SvCjoTaQgXgQPHjx58OIteBAEL8W/waKNRasgxhYrpiqFVrFNUpPmu9m0SZuPpo1JXud5ZdPpdpOdWSiozAMPk93Mk9n3N7Ozm4FUKkW6DoVC2g4EAto+9DROhzWM/n4yDGF7e1vZxWKRi9LR4uIiF1Wr1ZQdDAb5InV080vRV8ZAMBAMBJaBIGQgCBkIQgaCkIEgZCAIGQhCXQgoTNXZbJYhoDBVh8NhhoDCVD06Osrv9bhIVZ97nfaVGVhaWiJdA4KuAUHXfv4M+ckwBB3l83kuSlWxWIxXA4pyW/a9jNWAi9QRZtZP5sAhFAqFfx9Cq9WiTCZD5XKZj1UgrO+06crMKj35WeFjFQjpcoUuTWfp8Y8iH6tAcI6jAsEt0xcCAORyOd4HAALygoBBRsIWDYiLuTxT4HNeEADg6kyOMxensnzOC4LbOF4QemV6Quh0OlwwvscTBECgfhCa7Q7d+GzxZjM8lafVxp9MPwjlSo1GPuY4c/5dhuKlCp/vB6HXOP0g9Mt0IeAdAMXW63U+LpVKFIlEKB6P09bWFp+DZAjzGzt0YVocWw0SY9DDyAYdeZags5Np+lBscB9IhjCb36DhUIYmkyWqVGsUWLA4c+ZVkt6mS104MgTVcWQIOpkuBGxg+Ly8vEyWZVE0GuWdvdHYDUAyhNtza0z29MsU3Z1fp2PjK3RyIkmf1rb5e1syhFuzec6cmlihO19X6ejzBJ14sULv0+UuACcE1XFkCDqZPbcDCsTs4xwA2KtClvN2uD5boMGxBN9nx4NJepPfXTW2nLfDNbH8B8fE8xmZ8QQFE7srwLbzdlAZR4YAqWb2QGi32/xWiFWA2wH7glNOCPVfbbr/vURDYkYfRTep0dqfcUKwNqt0b65AQ2J5Pvhm0VqlugcA7ISgMo4Tgmpm38aIwpvNpisAyAkBwo/Hqk3efNzktjGi8AVrkzdG+bxtt43RaxwnBEglsw+Cl9wgeMkNgpfdIHjJDYKXuhBQmKrxtAAEFKbqv/4PFB6LugYEXQOCrlEQZlbV6O8nwxB0ZEPQEVYDitIR+uMidYSngJ9MF4I9y/1s97Mh8A94GJIhuPVxGpIhuPVx2u7nJ2Mg4LNcnJftfgaCaA0E0RoIojUQRGsgiNZAEO1/C0FVMgRVyRBUJUNQFQryk2EIugYEFKZq+w+Uru0ZO1jH6Tc1kyfofk37EgAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - RectangularSolid - None - TopOnBorder - BottomToTop - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA6gMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADjElEQVRoQ+2YT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePFWPAiCNz+DRVuLVkGMLVaaqhRaxTZJTZr/zaZJ2vxp0pjkdZ5Xsp1sN9mZBaHC/OCB7nbezr6/nZ1NOpRIJEg3gUBAO+Pj49o58jxKRzWC8X5qWEKj0VBOPp/npnRYXV3lpqrVqnIwHhepw+2veV81RoKRYCQwRoLASBAYCQIjQWAkCIwEgZEgsCWgMdWk02mWgMZUEwwGuSnd4HM9LlI1F94mfdUMra2tkW4gQTduTXrFz5chPzUsQYdsNstNqRKJRHg1oCm3Zd8vGI+L1AF31k/NP5eQy+X+fwmtVotSqRSVSiU+VpFQ2GvTtflNevarzMcqEpKlMl2ZS9PTn3k+VpHgnEdFglvNQAkQkMlkeB+ACOAlAZOMBS0aEhdzdT7H57wkQMD1+QzXXJ5N8zkvCW7zeEnoV9NXQqfT4Ybxe7xBIAQMktBsd+jWF4s3m9HZLG3W/9YMklAqV2nsc4ZrLn5IUbRY5vODJPSbZ5CEQTW2BHwGQLO1Wo2Pi8UihUIhikajtLu7y+eALGF5e48uzYljq05iDnoc2qZjL2J0fiZJn/J1HgNkCYvZbRoNpGgmXqRyRTS7YnHNuTdxep8s2nJkCarzyBJ0amwJ2MDw8/r6OlmWReFwmHf2en2/AMgS7i5tsdmzrxN0f7lAJyY36PR0nBa2Gvz7LrKEO4tZrjkzvUH3vm3S8ZcxOvVqgz4mS7YApwTVeWQJOjU9jwMaxN3HOQjorgoZ5+NwczFHwxMxfs5OTsXpXXZ/1XRxPg43xPIfnhDvZ9RMxmgqtr8CupElAJV5ZAlAtaZHQrvd5k+FWAV4HLAvOHFKqP1u08MfRRoRd/RJeIfqrYM1TgnWToUeLOVoRCzPR98t2ipXegQgTgkq8zglqNYc2BjReLPZdBUAnBIA/nik0uTNxw23jRGNr1g7vDHK57txSgBe8zglAJWaAxK8cJPghZsEr7hJ8MJNghe2BDSmGrwtIAGNqebQf4HCa1E3kKAbtya9goZwZ1WD8X5qWIIOhUKBm9IBqwFN6YDxuEgdcGf91NgS5DvdL0CWgFePV4AswW2MM0CW4DbGGSBLcBvjDDASBEaCwEgQGAkCI0FgJAiMBIGRIOiRoIosQRVZgiqyBFVkCarYEtCYavCPV0hAY6o53F+gkvQHK6ctxANB/y4AAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - White - - - - - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA+wMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADnUlEQVRoQ+2XT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532zapE3TJo1JXud5ZdPJdpOdWSiozAMPyW7mycz725nZ3YFUKkW6DoVC2g4EAto+9DROhzWM9n4yDKFeryu7WCxyUTpaXFzkoqrVqrKDwSAPUkc3vxR9ZQwEA8FAYBkIQgaCkIEgZCAIGQhCBoKQgSDUgYDCVJ3NZhkCClN1OBxmCChM1aOjo/xcj0Gq+tzrtK/MwNLSEukaEHQNCLr28zLkJ8MQdJTP57koVcViMZ4NKMpt2vcyZgMGqSNcWT+ZA4dQKBT+fQjNZpMymQyVy2U+VoGwvtuiKzOr9ORnhY9VIKTLFbo0naXHP4p8rALB2Y8KBLdMXwgAkMvleB8ACMgLAjoZCVs0IAZzeabA57wgAMDVmRxnLk5l+ZwXBLd+vCD0yvSE0G63uWD8jjsIgED9IDRabbrx2eLNZngqT6u1P5l+EMqVKo18zHHm/LsMxUsVPt8PQq9++kHol+lAwDMAit3e3ubjUqlEkUiE4vE47ezs8DlIhjC/sUsXpsWxVSPRBz2MbNCRZwk6O5mmD8Uat4FkCLP5DRoOZWgyWaLKVpUCCxZnzrxK0tt0qQNHhqDajwxBJ9OBgA0M35eXl8myLIpGo7yz12p7AUiGcHtujcmefpmiu/PrdGx8hU5OJOnTWp1/tyVDuDWb58ypiRW683WVjj5P0IkXK/Q+Xe4AcEJQ7UeGoJPpWg4oEFcf5wDAnhWynMvh+myBBscSvM6OB5P0Jr83a2w5l8M1Mf0Hx8T9GZnxBAUTezPAtnM5qPQjQ4BUM10QWq0WPxViFmA5YF9wyglh+1eL7n8v0ZC4oo+im1Rr7s84IVibW3RvrkBDYno++GbRWmWrCwDshKDSjxOCambfxojCG42GKwDICQHCn8e2Grz5uMltY0ThC9Ymb4zyedtuG6NXP04IkEpmHwQvuUHwkhsEL7tB8JIbBC91IKAwVeNuAQgoTNV//QsUbou6BgRdA4KuURCurI79ZBiCjmwIOsJsQFE6wmzAAHVkF6WjLgj2Ve5nu50NAbceL0MyBLc2TkMyBLc2TkMyBLc2TkMGgpCBIPTPQOCBethu5ydjIOC7XJyX7XYGgvg0EMSngSA+/1sIqpIhqEqGoCoZgqpkCKrqQNA1IKAwVft9gbKLOljH6TcHdzOr6BQ8HAAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAArQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADT0lEQVRoQ+2ZzWsTURTFq3Ql1YWgG10q/h1S3CjoTqQgbgQXLly5cOMuuBAEN8W/waKNRasgxooVU5VCq9gmqUnzOc2knbT5aNKY5PrOlUyn00nmvQFB5R040HmZ0zf3N+/dmbRDmUyGVB2JRJQdCoWUfeBxkg4qGOcHyTCEZrMp7VKpxEWpaGlpiYuq1WrSDofDfJEquv65FCijIWgIGgJLQxDSEIQ0BCENQUhDENIQhDQEIRsCCpN1Pp9nCChM1tFolCGgMFmPj4/zez0uUtZnXmYDZYaWl5dJ1YCgakBQdZAvQ0EyDEFFhmFwUbJKJBK8GlCU17LvZ6wGXKSKcGeDZP44hGKx+O9DaLfblMvlqFwu87EMhI2dDl2aXaNHPyp8LAMhW67QhXd5evi9xMcyENzzyEDwygyEAACFQoH7AEBAfhAwyVjUpCFxMRdnizzmBwEALs8WOHN+Js9jfhC85vGD0C/TF0K32+WC8TmeIAACDYLQ6nTp2ieTm83ojEFrjd+ZQRDKlRqNfShw5uybHCWtCo8PgtBvnkEQBmVsCHgHQLH1ep2PLcuiWCxGyWSStre3eQxyQljY3KFz78Sx2SAxB92PbdKhJyk6PZ2l96UGnwM5IcwZmzQaydF02qJKtUahRZMzp16k6XXWsuE4IcjO44SgkrEhoIHh55WVFTJNk+LxOHf2RmM3ADkh3JxfZ7Inn2fo9sIGHZlcpeNTafq43uTPe3JCuDFncObE1Crd+rJGh5+m6NizVXqbLdsA3BBk53FCUMns2Q4oEHcfYwDQWxVOubfD1bkiDU+keJ8dDafplbG7anpyb4crYvkPT4jnMzKTKQqndldAz+7tIDOPEwIkm9kDodPp8FshVgG2A/qCW24I9Z8duvvNohFxRx/Et6jR3p9xQzC3qnRnvkgjYnne+2rSeqW6BwDshiAzjxuCbGZfY0ThrVbLEwDkhgDhlyeqLW4+XvJqjCh80dzixugc79mrMfrN44YAyWT2QfCTFwQ/eUHwsxcEP3lB8JMNAYXJGk8LQEBhsv7rv0DhsahqQFA1IKgaBeHOyhrnB8novyeIjIagIWgILA1BSEMQ0hCENAQhDUFIQxDSEIRsCChM1v/ff6Cy9AsSMSlLu0Av/QAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - Office2013RadioButtonGlyphInfo - - - - - - - - - 0, 170, 222 - Gray - Gray - Gray - - - - - - - - - Flat - True - - - - - Flat - True - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIscWKqUqhVWyT1KT5biZN0uajSWOS432PJL2ZTjL3DggK94EXOpM5uXOeuXNn0pFEIkG6CQQC2vH5fNo59DRKhzWC473UsIRGo6GcfD7PTemwurrKTVWrVeX4/X4+SR1ufsl7qjESjAQjgTESBEaCwEgQGAkCI0FgJAiMBEFPAhpTTTqdZgloTDXBYJAloDHVTE5O8ns9TlI1514nPdWMrK2tkW4gQTeQoBsvP4a81LAEHbLZLDelSiQS4dmAppym/aBgNuAkdcCV9VLz1yXkcrn/X0Kr1aJUKkWlUom3VSQU9tp0ZWGTnvws87aKhGSpTJfm0/T4R563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcXsjxPjcJEHB1IcM1F+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDt34bPFiMz6Xpc36n5phEkrlKk18zHDN+XcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnd3eR+QJSxv79GFebFt1UmMQQ9D23TkWYzOzibpQ77OxwBZwmJ2m8YDKZqNF6lcqZJvxeKaM6/i9DZZ7MmRJaiOI0vQqelJwAKGv9fX18myLAqHw7yy1+v7BUCWcHtpi82efpmgu8sFOja9QSdn4vRpq8Gfd5El3FrMcs2pmQ2683WTjj6P0YkXG/Q+WeoJsEtQHUeWoFPTdzugQVx97IOA7qyQsd8O1xdzNDoV4/vsuD9Ob7L7s6aL/Xa4Jqb/6JR4PqNmOkb+2P4M6MZ+O6iMI0sAqjV9EtrtNr8VYhbgdsC6YMcuofarTfe/F2lMXNFH4R2qtw7W2CVYOxW6t5SjMTE9H3yzaKtc6ROA2CWojGOXoFpzYGFE481m01EAsEsA+PJIpcmLjxNOCyMaX7F2eGGU93fjtDC6jWOXAFRqDkhww0mCG04S3OIkwQ0nCW70JKAx1eBpAQloTDX//A8oPBZ1Awm6gQTdoCFcWdXgeC81LEGHQqHATemA2YCmdMBswEnqgCvrpaYnQb7SgwJkCXj0uAXIEpyOsQfIEpyOsQfIEpyOsQcYCQIjQWAkCIwEgZEgMBIERoLASBD0SVBFlqCKLEEVWYIqsgRVehLQmGrwj1dIQGOq+bd/QCXpN3LrT59/MUO0AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADk0lEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIscWKqUqhVWyT1KT5biZN0uajSWOS432PJL2ZTjL3DggK94EXOpM5uXOeuXNn0pFEIkG6CQQC2vH5fNo59DRKhzWC473UsIRGo6GcfD7PTemwurrKTVWrVeX4/X4+SR1ufsl7qjESjAQjgTESBEaCwEgQGAkCI0FgJAiMBEFPAhpTTTqdZgloTDXBYJAloDHVTE5O8ns9TlI1514nPdWMrK2tkW4gQTeQoBsvP4a81LAEHbLZLDelSiQS4dmAppym/aBgNuAkdcCV9VLz1yXkcrn/X0Kr1aJUKkWlUom3VSQU9tp0ZWGTnvws87aKhGSpTJfm0/T4R563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcXsjxPjcJEHB1IcM1F+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDt34bPFiMz6Xpc36n5phEkrlKk18zHDN+XcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnd3eR+QJSxv79GFebFt1UmMQQ9D23TkWYzOzibpQ77OxwBZwmJ2m8YDKZqNF6lcqZJvxeKaM6/i9DZZ7MmRJaiOI0vQqelJwAKGv9fX18myLAqHw7yy1+v7BUCWcHtpi82efpmgu8sFOja9QSdn4vRpq8Gfd5El3FrMcs2pmQ2683WTjj6P0YkXG/Q+WeoJsEtQHUeWoFPTdzugQVx97IOA7qyQsd8O1xdzNDoV4/vsuD9Ob7L7s6aL/Xa4Jqb/6JR4PqNmOkb+2P4M6MZ+O6iMI0sAqjV9EtrtNr8VYhbgdsC6YMcuofarTfe/F2lMXNFH4R2qtw7W2CVYOxW6t5SjMTE9H3yzaKtc6ROA2CWojGOXoFpzYGFE481m01EAsEsA+PJIpcmLjxNOCyMaX7F2eGGU93fjtDC6jWOXAFRqDkhww0mCG04S3OIkwQ0nCW70JKAx1eBpAQloTDX//A8oPBZ1Awm6gQTdoCFcWdXgeC81LEGHQqHATemA2YCmdMBswEnqgCvrpaYnQb7SgwJkCXj0uAXIEpyOsQfIEpyOsQfIEpyOsQcYCQIjQWAkCIwEgZEgMBIERoLASBD0SVBFlqCKLEEVWYIqsgRVehLQmGrwj1dIQGOq+bd/QCXpN3LrT59/MUO0AAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA7AMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADjklEQVRoQ+2XT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532zapM2fJo1JXud5ZdPJdpOdiRQU5gcPdDfzdvb97exsMpRIJEg3gUBAOz6fTzuHnkbpsEYwfpAallCv15WTz+e5KR2Wl5e5qUqlohy/388XqcPNL/mBaowEI8FIYIwEgZEgMBIERoLASBAYCQIjQdCRgMZUk06nWQIaU00wGGQJaEw14+Pj/L0eF6mac6+TA9UMrayskG4gQTeQoJtBfgwNUsMSdMhms9yUKpFIhFcDmnJb9r2C1YCL1AF3dpCaA5eQy+X+fwnNZpNSqRQVi0U+VpGwuduiK3Pr9ORniY9VJCSLJbo0m6bHP/J8rCLBOY+KBLeavhIgIJPJ8D4AEcBLAiYZC1o0JC7m8lyOz3lJgICrcxmuuTiT5nNeEtzm8ZLQq6anhHa7zQ3jc7xBIAT0k9BotenGZ4s3m9GZLK3X/tT0k1AsVWjsY4Zrzr9LUbRQ4vP9JPSap5+EfjUdCfgOgGar1SofFwoFCoVCFI1GaWdnh88BWcLi1i5dmBXHVo3EHPQwtEVHnsXo7HSSPuRrPAbIEuazWzQaSNF0vEClcoV8SxbXnHkVp7fJQkeOLEF1HlmCTk1HAjYw/L26ukqWZVE4HOadvVbbKwCyhNsLG2z29MsE3V3cpGOTa3RyKk6fNur8uY0s4dZ8lmtOTa3Rna/rdPR5jE68WKP3yWJHgFOC6jyyBJ2arscBDeLu4xwE2KtCxvk4XJ/P0fBEjJ+z4/44vcnurRob5+NwTSz/4QnxfkbNZIz8sb0VYMf5OKjMI0sAqjVdElqtFn8rxCrA44B9wYlTQvVXi+5/L9CIuKOPwttUa+6vcUqwtst0byFHI2J5Pvhm0Uap3CUAcUpQmccpQbVm38aIxhuNhqsA4JQA8M8j5QZvPm64bYxofMna5o1RPm/HbWP0mscpAajU7JPghZsEL9wkeMVNghduErzoSEBjqsHbAhLQmGr++R9QeC3qBhJ0Awm6QUO4s6rB+EFqWIIOtgQdsBrQlA5YDbhIHWwBOnRJsO9yv9jjbAl49XgFyBLcxjgDZAluY5wBsgS3Mc4AI0FgJAiMBIGRIDASBEaCwEgQGAmCLgmqyBJUkSWoIktQRZagSkeCbiABjanmb35AHXyi9BvrVTNhLiUFpAAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAArQMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADT0lEQVRoQ+2ZzWsTURTFq3Ql1YWgG10q/h1S3CjoTqQgbgQXLly5cOMuuBAEN8W/waKNRasgxooVU5VCq9gmqUnzOc2knbT5aNKY5PrOlUyn00nmvQFB5R040HmZ0zf3N+/dmbRDmUyGVB2JRJQdCoWUfeBxkg4qGOcHyTCEZrMp7VKpxEWpaGlpiYuq1WrSDofDfJEquv65FCijIWgIGgJLQxDSEIQ0BCENQUhDENIQhDQEIRsCCpN1Pp9nCChM1tFolCGgMFmPj4/zez0uUtZnXmYDZYaWl5dJ1YCgakBQdZAvQ0EyDEFFhmFwUbJKJBK8GlCU17LvZ6wGXKSKcGeDZP44hGKx+O9DaLfblMvlqFwu87EMhI2dDl2aXaNHPyp8LAMhW67QhXd5evi9xMcyENzzyEDwygyEAACFQoH7AEBAfhAwyVjUpCFxMRdnizzmBwEALs8WOHN+Js9jfhC85vGD0C/TF0K32+WC8TmeIAACDYLQ6nTp2ieTm83ojEFrjd+ZQRDKlRqNfShw5uybHCWtCo8PgtBvnkEQBmVsCHgHQLH1ep2PLcuiWCxGyWSStre3eQxyQljY3KFz78Sx2SAxB92PbdKhJyk6PZ2l96UGnwM5IcwZmzQaydF02qJKtUahRZMzp16k6XXWsuE4IcjO44SgkrEhoIHh55WVFTJNk+LxOHf2RmM3ADkh3JxfZ7Inn2fo9sIGHZlcpeNTafq43uTPe3JCuDFncObE1Crd+rJGh5+m6NizVXqbLdsA3BBk53FCUMns2Q4oEHcfYwDQWxVOubfD1bkiDU+keJ8dDafplbG7anpyb4crYvkPT4jnMzKTKQqndldAz+7tIDOPEwIkm9kDodPp8FshVgG2A/qCW24I9Z8duvvNohFxRx/Et6jR3p9xQzC3qnRnvkgjYnne+2rSeqW6BwDshiAzjxuCbGZfY0ThrVbLEwDkhgDhlyeqLW4+XvJqjCh80dzixugc79mrMfrN44YAyWT2QfCTFwQ/eUHwsxcEP3lB8JMNAYXJGk8LQEBhsv7rv0DhsahqQFA1IKgaBeHOyhrnB8novyeIjIagIWgILA1BSEMQ0hCENAQhDUFIQxDSEIRsCChM1v/ff6Cy9AsSMSlLu0Av/QAAAABJRU5ErkJgggsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA/QMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADn0lEQVRoQ+2YT2sTQRjGq/Qk1YOgFz0qfg4pXhT0JlIQL4IHD548ePEWPAiCl+JnsGhj0SqIscWKqUqhVWyT1KT532yapM2fJo1JXud5Jel0u8nOrBQU5gcPdLfzdvb97exs0qFEIkG6CQQC2vH5fNo59DRKhzWC8V5qWEKj0VBOPp/npnRYXl7mpqrVqnL8fj9fpA43v+Q91RgJRoKRwBgJAiNBYCQIjASBkSAwEgRGgqAnAY2pJp1OswQ0pppgMMgS0JhqxsfH+XM9LlI1514nPdUMrayskG4gQTeQoBsvX4a81LAEHbLZLDelSiQS4dWAppyWfb9gNeAidcCd9VJz4BJyudz/L6HValEqlaJSqcTHKhIKO226MrdOT36W+VhFQrJUpkuzaXr8I8/HKhLs86hIcKoZKAECMpkM7wMQAdwkYJKxoEVD4mIuz+X4nJsECLg6l+GaizNpPucmwWkeNwn9avpK6HQ63DB+jzcIhIBBEprtDt34bPFmMzqTpfX6n5pBEkrlKo19zHDN+XcpihbLfH6QhH7zDJIwqKYnAZ8B0GytVuPjYrFIoVCIotEobW9v8zkgS1jc3KELs+LYqpOYgx6GNunIsxidnU7Sh3ydxwBZwnx2k0YDKZqOF6lcqZJvyeKaM6/i9DZZ7MmRJajOI0vQqelJwAaGn1dXV8myLAqHw7yz1+u7BUCWcHthg82efpmgu4sFOja5Rien4vRpo8G/7yJLuDWf5ZpTU2t05+s6HX0eoxMv1uh9stQTYJegOo8sQadmz+OABnH3cQ4CuqtCxv44XJ/P0fBEjJ+z4/44vcnurpou9sfhmlj+wxPi/YyayRj5Y7sroBv746AyjywBqNbskdBut/lTIVYBHgfsC3bsEmq/2nT/e5FGxB19FN6iemt/jV2CtVWhews5GhHL88E3izbKlT0CELsElXnsElRr9m2MaLzZbDoKAHYJAH88Umny5uOE08aIxpesLd4Y5fPdOG2MbvPYJQCVmn0S3HCS4IaTBLc4SXDDSYIbPQloTDV4W0ACGlPNP/8FCq9F3UCCbiBBN2gId1Y1GO+lhiXoUCgUuCkdsBrQlA5YDbhIHboCdNgjQb7T/QJkCXj1uAXIEpzG2ANkCU5j7AGyBKcx9gAjQWAkCIwEgZEgMBIERoLASBD88xJwgcBpjD0A473U9CSoIktQRZagiixBFVmCKj0JaEw1+McrJKAx1fzNF6iDT5R+AxOLNj+SFfOFAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - 191, 191, 191 - White - 191, 191, 191 - Office2010 - 191, 191, 191 - - - - - Standard - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAnSW5mcmFnaXN0aWNzLldpbi5DaGVja0JveEltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAAAAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAFkN1c3RvbSBjaGVja2JveCBnbHlwaHMFBwAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJCQAAAA8JAAAA8wMAAAKJUE5HDQoaCgAAAA1JSERSAAAAQQAAACcIBgAAAFBaJQIAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAADlUlEQVRoQ+2YTWsTURSGq3Ql1YWgG10q/g4pbhR0J1IQN4ILF65cuHEXXAiCm+JvsGhj0SqIsWLFVKXQKrZJatJ8N5MmafPRpDHJ8b5Hkt5MJ5l7BxSF+8ALncmc3DnP3Lkz6UgikSDdBAIB7fh8Pu0ceBylgxrB8V5qWEKj0VBOPp/npnRYWVnhpqrVqnL8fj+fpA7XP+c91RgJRoKRwBgJAiNBYCQIjASBkSAwEgRGgqAnAY2pJp1OswQ0pppgMMgS0JhqJicn+b0eJ6maMy+TnmpGVldXSTeQoBtI0I2XH0NealiCDtlslptSJRKJ8GxAU07TflAwG3CSOuDKeqn54xJyudz/L6HValEqlaJSqcTbKhIKu226NL9Bj36UeVtFQrJUpgvv0vTwe563VSTYx1GR4FQzVAIEZDIZXgcgArhJwCATQYtGxMlcnM/xPjcJEHB5PsM15+fSvM9NgtM4bhIG1QyU0Ol0uGF8jicIhIBhEprtDl37ZPFiMz6XpY3675phEkrlKk18yHDN2TcpihbLvH+YhEHjDJMwrKYnAe8AaLZWq/F2sVikUChE0WiUdnZ2eB+QJSxt7dK5d2LbqpMYg+6HtujQkxidnk3S+3ydjwGyhIXsFo0HUjQbL1K5UiXfssU1p17E6XWy2JMjS1AdR5agU9OTgAUMf6+trZFlWRQOh3llr9f3CoAs4ebiJps9+TxBt5cKdGR6nY7PxOnjZoM/7yJLuLGQ5ZoTM+t068sGHX4ao2PP1ultstQTYJegOo4sQaem73ZAg7j62AcB3VkhY78dri7kaHQqxvfZUX+cXmX3Zk0X++1wRUz/0SnxfEbNdIz8sb0Z0I39dlAZR5YAVGv6JLTbbX4rxCzA7YB1wY5dQu1nm+5+K9KYuKIPwttUb+2vsUuwtit0ZzFHY2J63vtq0Wa50icAsUtQGccuQbVm38KIxpvNpqMAYJcA8OWRSpMXHyecFkY0vmxt88Io7+/GaWF0G8cuAajU7JPghpMEN5wkuMVJghtOEtzoSUBjqsHTAhLQmGr++R9QeCzqBhJ0Awm6QUO4sqrB8V5qWIIOhUKBm9KhK0EHzAacpA64sl5qehLkKz0oQJaAR49bgCzB6Rh7gCzB6Rh7gCzB6Rh7gJEgMBIERoLASBAYCQIjQWAkCIwEQZ8EVWQJqsgSVJElqCJLUKUnAY2pBv94RVO6gQQ0ppq/9wMqSb8AWg1JD6G7pzMAAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAGJJbmZyYWdpc3RpY3M0Lldpbi52MTMuMiwgVmVyc2lvbj0xMy4yLjIwMTMyLjIwMjMsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49N2RkNWMzMTYzZjJjZDBjYgwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQwEAAAAZUluZnJhZ2lzdGljczQuU2hhcmVkLnYxMy4yLCBWZXJzaW9uPTEzLjIuMjAxMzIuMjAyMywgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj03ZGQ1YzMxNjNmMmNkMGNiBQEAAAAqSW5mcmFnaXN0aWNzLldpbi5SYWRpb0J1dHRvbkltYWdlR2x5cGhJbmZvBAAAAAlHbHlwaFR5cGUJR2x5cGhTaXplEkNvbWJpbmVkR2x5cGhJbWFnZQtEZXNjcmlwdGlvbgAEBAEIE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAL0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyBAAAAAIAAAABAAAABfv///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICAMAAAANAAAADQAAAAX6////L0luZnJhZ2lzdGljcy5TaGFyZWQuU2VyaWFsaXphdGlvbi5PYmplY3RXcmFwcGVyAQAAAAtvYmplY3RWYWx1ZQQVU3lzdGVtLkRyYXdpbmcuQml0bWFwAwAAAAQAAAAJBwAAAAYIAAAAGkN1c3RvbSByYWRpbyBidXR0b24gZ2x5cGhzBQcAAAAVU3lzdGVtLkRyYXdpbmcuQml0bWFwAQAAAAREYXRhBwIDAAAACQkAAAAPCQAAAFoGAAACiVBORw0KGgoAAAANSUhEUgAAAEEAAAAaCAYAAADovjFxAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvAAADrwBlbxySQAABfxJREFUWEfdmDlvY1UUxw1IIFHOJ4BvQEGDEAUFNGyioAEJoREC8QGmgRIhEBUiUQoqmCYKWRQpi5SJnGQ0ZCH7vkz2zXFsx4kTZ/GWw/2d+GbevFz7Oe7IXzqy/XLPu/f871kTEg+y2azs7u7K4uLitayvr0s6nS6uuInz83OZm5uTvr4+6e3tVRkbG5NkMimXl5fFVc/j+PhYuru7pa6uTmpra1UaGxtle3u7pM7maU6+/DcmrzStyUuNV/JWeFfC++dScKtUrKMkFAoFicfjanAsFlOjLy4u5OzsTJ9vbW1JJBJRkizy+bxsbm6qwXyyHlgip6amlET7HGQyGRkdHZWmpibVOzk5UaMhcnZ2Vtra2pREnluksgX5ZeFQ3g5H5NfFIzWM8ycyBfljNSUfPYnKt2Nx2T7NXykY3FZHSUgkEnpwa7xfTk9PJRqN6k3lcjlVxPClpSU1wAXIgFTIwHgwPj6uHoMnuADpw8PD0t7ernsCjPjOHNga4kfsIi8/zh8aw/Yken5l1G11Qhx2Y2NDN3URYAVjd3Z21M35zk2WIsCCW15YWFDyuN3m5uaSBFjgleFwWCYnJ9WId3oisnX27JZdyJt9vh6JyW9PU1XphPCA/f19p+F+wQAMIgdAXCVAZ3p6WnMAoVAq5r0gJDs6OjSefzZuXSg+L4fxZEY++SdalU6IuC0VBn7BXQkD4jbICyzwNG6VJBjkBRbs09raKi+bRLaefpaHyiF+UZD3H+9VpaMkuAx2CYbjCT09PcXXBAP3xnNqamoq8gJA0u3q6pIX/l4rmfn9yJiFnw/FqtK5tSdQKfAEflcCEinhQBn0Zv1yIJFSKShpO2dXiTgIR6YifGiyfjU6ITI41cFvsEswglxAUtzb2yu+qjxIuIQDfQBJshKQfAkHavrDjcpCaOE4K+89jlSlE8ILcHFu2WW4VyiTJC0OSV339g2lAMmrq6u6R2dnZ0W5ZGRkRAYHB7Wp+WxgXxImdoPwkyl5P0wnq9LRPoFGCHEZbgVvwSC+E9uE0crKir7MBdbgLRgE0fwml/T39xdX3AT5A29paGiQg4MDje1vRuPyYPKguOImcsbWP9dP5M3uXZlPZavSURK4UW4KSaVS6sLcGN5BCFBC19bW9LcFZBDr8/PzcnR0pO/ACHIA+lQRGh/eZ8G7aIQolxDE+0iCvAujKaH19fXPhdq2ie+PTRn7ypS+wcSFyeh5TWjE81wqo+XwjUc7MmT+ZnFbnevZgcPj5hBB3POJIXwnBDioHyQw1s3MzGjcUwXoECcmJjQE8AA/IIg19AHEPVWAJNjS0iIDAwNKhh90db+bpubT/qiWtC+G9uUD0+292xuR7407c5t+3EbnmgQAEYQF7TDujthushTwmDszQHED3Dyfdj7AVXF12mVc1JsI79wAheFk/lLZHoNJjNyUJQjD78wAhVEYxCe3ws0Tz9zi8vKyJkVI4G8Q5R+gssavHm6cyOsdWxIy3dq91k2TmROSNKyj4xqgyumUGqDK6ZQaoCrVCZEDbDKCAG8+sEIocDhcm9DwDlB/mU1ebV7XTazQut4fjkna1CLXABWk4xqggnRcA1SlOiGMtmFgPcAveARr8AjbNtsweK39imW/3GvdkNWTrOr5B6ggHcLCP0AF6bgGqEp1dHaw8BvvFeKaW8RzvAOUaxMrtKV4kH+Acq21gg5k+wco11or6LgGKNdaK14dJcEmO27cbzxivQWDiG/vAAWrrk1ww6eGbd7tH6CCdFwDVJCOa4CqVCdEbJMLAEnQRQIhwO1wOL57B6gHUwfyotnYvxFNSSKT1yzvH6CCdFwDVJCOHYaq0QlxSOo6RiIYZz0CD8Bo2y5TJvnHq3eAItPeH45fsw7LbPIkfpUzXANUkI5rgArScQ1Qlepon2CnQ4DLYxy3jkAMscwMgNcQBvyGJDtApXOXsprOKbO42YHZnDUQWmqAcumwd7kByqXjH4aq0VESMNp2hdyUNZxDQYSdIO/8AMVhDg8PlQxclyrAJ8YQApDhB89Y8/8eoET+A46Kvwl1DPddAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - - False - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA2wAAAAKJUE5HDQoaCgAAAA1JSERSAAAACgAAAAoIBgAAAI0yz70AAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M1cbXjNgAAAFVJREFUKFNj+P//Pxi3trZeAGIBGB8dwxlARf+B+AEQGyArgGE4A6oQhD8AcQCyIhDGphCGC4hVCMILqKqwASaHSyHIMwnIikAYXSFIEcHgwRPg/xkAphkSTK5IMV8AAAAASUVORK5CYIILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA6AAAAAKJUE5HDQoaCgAAAA1JSERSAAAACgAAAAoIBgAAAI0yz70AAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA68AAAOvAGVvHJJAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M1cbXjNgAAAGJJREFUKFNj+P//P1EYqyA2zMCw6t4FIP5PAF8AKRQA4g9Iguj4ARALQIxddc8AiLEpBokZgNXA3bDqXgKSAhgOgMvDGFDFDUiKClDkkDlggVX3FoAwhji6AC6MVRAT/2cAAJhQETR6tnZYAAAAAElFTkSuQmCCCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= - Never - None - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.pfx b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.pfx deleted file mode 100644 index bf28015..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.pfx and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.snk b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/modConstant.vb b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/modConstant.vb deleted file mode 100644 index b445f5e..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/modConstant.vb +++ /dev/null @@ -1,22 +0,0 @@ -Module modConstant - - Public Const defInteger As Integer = -999 '宣告整數使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defString As String = "Null" '宣告字串使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defDateTime As Date = #12/31/1900# '宣告日期使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defSingle As Single = -999 '宣告單精準數使用的常數,用以辨識參數是否有傳入Function中。 - Public Const defDouble As Double = -999 '宣告雙精準數使用的常數,用以辨識參數是否有傳入Function中。 - Public Const strAddTagLabel As String = "extrabase" 'Add by py for Combine Addition XML doc - Public Const strAddTagName As String = "ExtraBase" 'Add by py for Combine Addition XML doc - Public Const defWinErrCode As String = "0000-899999" - Public Const defNullDate As Date = #12/31/1910# '宣告日期使用的常數,用以辨識參數是否要變更為Null。 - Public Const defNullInteger As Integer = -9999 '宣告數值使用的常數,用以辨識參數是否要變更為Null。 -End Module - -'2020/01/15 Shih Kai,供前端InvokeSrv_Module時使用,用以辨識是否存入EventLog (1,2,3 >存入) -Public Enum _enuInvokeType - _Load = 0 - _Add = 1 - _Edit = 2 - _Delete = 3 - _Get = 4 -End Enum diff --git a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/modQCSetting.vb b/SRC/MESWin/SYS4/21670ll/MESWin/shared file/modQCSetting.vb deleted file mode 100644 index 87e1b4e..0000000 --- a/SRC/MESWin/SYS4/21670ll/MESWin/shared file/modQCSetting.vb +++ /dev/null @@ -1,61 +0,0 @@ -Module modQCSetting - - Public Function LoadQCObjectInfo(ByVal pQCObjectType As String, - ByRef pRefTableName As String, - ByRef pData As DataSet, - Optional ByVal pQCObjectNo As String = defString, - Optional ByRef pFindColumnNo As String = "", - Optional ByRef pFindColumnName As String = "", - Optional ByVal pLikeSymbo As String = "", - Optional ByVal pQCObjectFrom As String = defString, - Optional ByVal pQCObjectTo As String = defString, - Optional ByVal pAdditional As String = "") As Boolean - - Dim strMethod As String - Dim strNode As String - Dim strConditionName As String = "QCObjectType" - Dim strConditionValue As String = pQCObjectType - - pQCObjectNo = pQCObjectNo & pLikeSymbo - - Select Case pQCObjectType - Case 0 - pFindColumnNo = "QCCategory" - pFindColumnName = "QCCategoryName" - - Case 1 - pFindColumnNo = "ProductNo" - pFindColumnName = "ProductName" - - Case 2 - pFindColumnNo = "QCCategory" - pFindColumnName = "QCCategoryName" - - Case 3 - pFindColumnNo = "MaterialNo" - pFindColumnName = "MaterialName" - - End Select - - If pQCObjectNo <> defString Then - strConditionName = strConditionName & ",QCObjectNo" - strConditionValue = strConditionValue & "," & pQCObjectNo - End If - - If pQCObjectFrom <> defString Then - strConditionName = strConditionName & ",QCObjectNoFrom" - strConditionValue = strConditionValue & "," & pQCObjectFrom - End If - - If pQCObjectTo <> defString Then - strConditionName = strConditionName & ",QCObjectNoTo" - strConditionValue = strConditionValue & "," & pQCObjectTo - End If - - LoadQCObjectInfo = COM_Utility.clsUtility.InvokeLoadFunction(gComputerName, gUserNo, "wsQC.LoadQCObjectRefInfo", "loadqcobjectrefinfo", - Split(strConditionName, ","), Split(strConditionValue, ","), - pRefTableName, pData,, pAdditional) - - End Function - -End Module diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_ABC.csproj.vspscc b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_ABC.csproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_ABC.csproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_SXS.csproj b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_SXS.csproj deleted file mode 100644 index ef7f35c..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_SXS.csproj +++ /dev/null @@ -1,134 +0,0 @@ - - - - Debug - AnyCPU - - - - - {8CC8664F-C718-0888-187B-600F20E362E0} - Library - MEStc_SXS - MEStc_SXS - 512 - Windows - v4.6.2 - SAK - SAK - SAK - SAK - - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - true - full - true - true - ..\MES_S_DLL\ - ..\MES_S_DLL\MEStc_SXS.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - pdbonly - false - true - true - bin\Release\ - bin\Release\ - - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - On - - - Binary - - - Off - - - On - - - - - False - ..\MES_S_DLL\data_access_service.dll - False - - - False - ..\MES_S_DLL\iMESAppSetting.dll - False - - - False - ..\MES_S_DLL\iMESComSubroutine.dll - False - - - False - ..\MES_S_DLL\iMESComXML.dll - False - - - False - ..\MES_S_DLL\iMESConst.dll - False - - - ..\..\MESSeries_2016\MES_S_DLL\iMESException.dll - False - - - False - ..\MES_S_DLL\iMESLog.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_SXS.sln b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_SXS.sln deleted file mode 100644 index 22ddfea..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/MEStc_SXS.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32630.194 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MEStc_SXS", "MEStc_SXS.csproj", "{8CC8664F-C718-0888-187B-600F20E362E0}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {20814751-26E2-4F61-9643-BFEDC7384E35} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/NewFolder1/clsENT_21670.cs b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/NewFolder1/clsENT_21670.cs deleted file mode 100644 index f830114..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/NewFolder1/clsENT_21670.cs +++ /dev/null @@ -1,959 +0,0 @@ -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 : IDisposable - { - LoadSubcontractor - /*不使用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() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor_21670 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - 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); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21670 Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor_21670 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21670", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", 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 SubcontractorNo = 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 tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21670 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(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 AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont (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 (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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 - } -} diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs deleted file mode 100644 index 8c4e437..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs +++ /dev/null @@ -1 +0,0 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/clsENT_21670.cs b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/clsENT_21670.cs deleted file mode 100644 index c10aa6e..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/clsENT_21670.cs +++ /dev/null @@ -1,959 +0,0 @@ -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 : IDisposable - { - LoadSubcontractor - /*不使用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() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - 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); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(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 AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont (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 (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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 - } -} diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT/clsENT.cs b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT/clsENT.cs deleted file mode 100644 index 2af6c9d..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT/clsENT.cs +++ /dev/null @@ -1,958 +0,0 @@ -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 : 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() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - 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); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(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 AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont (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 (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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 - } -} diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT21670/clsENT_21670.cs b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT21670/clsENT_21670.cs deleted file mode 100644 index 339a403..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT21670/clsENT_21670.cs +++ /dev/null @@ -1,969 +0,0 @@ -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_21670 : 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_21670() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string WZ21670,string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor_21670 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; - - strSQLAddField += ",WZ21670"; - strSQLAddValue += ",'" + WZ21670 + "'"; - - - 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditSubcontractor(string SubcontractorNo,string WZ21670, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21670 Set "; - - if ((WZ21670 ?? "") != defString) - { - strSQL += "WZ21670 = '" + WZ21670 + "',"; - } - - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont_21670 " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor_21670 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21670", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", 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 SubcontractorNo = 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 tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21670 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(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 AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont_21670 (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 (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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont_21670 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont_21670 " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont_21670 Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21670", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21670", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21670 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21670", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21670 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21670", 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 - } -} diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT_21670/clsENT.cs b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT_21670/clsENT.cs deleted file mode 100644 index c0331f1..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcENT_21670/clsENT.cs +++ /dev/null @@ -1,958 +0,0 @@ -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_21670_1 : 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_21670_1() - { - // 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 AddSubcontractor_21670(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor_21670 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditSubcontractor_21670(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21670 Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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_21670(string SubcontractorNo, string AdditionalXml = "") - { - string DelSubcontractorRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont_21670 " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor_21670 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor_21670(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21670", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor_21670(string SubcontractorNo = 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 tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", 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_21670(string SubcontractorNo = 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 tblENTSubcontractor_21670 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21670", 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 SetSubcontractorIssueState_21670(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21670 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont_21670(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 AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont_21670 (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 (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_21670(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 EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont_21670 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 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_21670(string SubcontractorNo, string ContactorName = defString, string AdditionalXml = "") - { - string DelSubcontractorContRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont_21670 " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont_21670(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont_21670 Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21670", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21670", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont_21670(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21670 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21670", 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_21670(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21670 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21670", 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 - } -} diff --git a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcWIP/clsLot.cs b/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcWIP/clsLot.cs deleted file mode 100644 index 57d1278..0000000 --- a/SRC/MESWin/SYS4/21670ll/MEStc_SXS/tcWIP/clsLot.cs +++ /dev/null @@ -1,337 +0,0 @@ -using System; -using System.Data; -using System.Data.Common; -using Microsoft.VisualBasic; -using static iMESCore.Base.iMESComSubroutine; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.DataBase.iMESSql; -using iMESCore.Settings; - -namespace MEStc_SXS -{ - - - public class clsLot : 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 = ""; - - #region --- Initial Object --- - - public clsLot() - { - // 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 - - - public string LoadOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadOPTypeRet = null; - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - - DataSet dsOP = null; - - try - { - - dsOP = ShowOPType(OPType, IssueState, AdditionalXml); - - // //Combine return value - LoadOPTypeRet = CombineXMLReturnValue("loadoptype", "OPType", "DataSet", FormatXMLSchema(dsOP.GetXmlSchema()), dsOP.GetXml(), ""); - } - - catch (Exception e1) - { - LoadOPTypeRet = "fail"; - throw; - } // New Exception("kcOP.LoadOPType: " & e1.Message) - - finally - { - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return LoadOPTypeRet; - - } - - public DataSet ShowOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - DataSet ShowOPTypeRet = null; - - // 此 Function 將資料以 Dataset 方式取出 - // 傳入值: 索引值 - // 傳回值: Dataset(成功), Nothing(失敗) - - - DataSet dsOP = null; - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblOPType Where OPType Is Not Null"; - if (OPType != defString) - { - strSQL = strSQL + " And OPType = '" + OPType + "'"; - } - if (IssueState != defInteger) - { - strSQL = strSQL + " And IssueState = " + IssueState; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL = strSQL + SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsOP = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsOP, "OPType", cnnTemp); - - // //Return data - ShowOPTypeRet = dsOP; - } - - catch (Exception e1) - { - ShowOPTypeRet = null; - throw; - } - - finally - { - CloseConnection(cnnTemp); - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return ShowOPTypeRet; - } - - public DataRow GetOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - DataRow GetOPTypeRet = null; - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - - DataSet dsOP = null; - - try - { - - dsOP = ShowOPType(OPType, IssueState, AdditionalXml); - - // //Return data - if (dsOP.Tables[0].Rows.Count > 0) - { - GetOPTypeRet = dsOP.Tables[0].Rows[0]; - } - else - { - GetOPTypeRet = dsOP.Tables[0].NewRow(); - } - } - - catch (Exception e1) - { - GetOPTypeRet = null; - throw; - } // New Exception("kcOP.LoadOPType: " & e1.Message) - - finally - { - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return GetOPTypeRet; - - } - - public string BR_CheckIn(long LotStamp, string LotNo, string LinkName, DataTable dtAttrib, DataTable dtEquipment, string UserNo, string ShiftNo, - string LotRecord = defString, DateTime CheckInTime = default(DateTime), string RuleNo = "", DataTable dtLoginState = null, DataTable dtAccessory = null, - DataTable dtMTLLot = null, string LanguageMode = defString) - { - string BR_CheckInRet = default(string); - // 此 Function 將更新CheckIn Data - // 傳入值: LotNo,dtAttrib,dtEquipment - // 傳回值: success(成功), fail(失敗) - - IDbConnection cnnTemp = null; - DbDataReader drTemp; - var CollectionSQL = new Collection(); - var CollectionSQL_Rows = new Collection(); - string strSQL = ""; - - string LotSerial, OPNo, BRNo, SerialNo, LogGroupSerial, BaseLotNo, CurQTY; - int PhaseNo; - DateTime datEventTime; - long lngLotStamp; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - // 1.取出Temp LotState的資料 - strSQL = "Select A.LotSerial,A.OPNo,A.SerialNo,B.BRNo,B.LogGroupSerial,B.LotStamp,B.BaseLotNo,B.CurQTY,B.PhaseNo " + - " From tblWIPTemp_LotState A, tblWIPLotState B " + " Where A.LotNo ='" + LotNo + "'" + " And A.LotNo = B.LotNo "; - // cmmTemp = New OleDb.OleDbCommand(strSQL, cnnTemp) - drTemp = ExecuteSQLQuery_Reader(strSQL, cnnTemp); - if (drTemp.Read()) - { - LotSerial = drTemp["LotSerial"].ToString(); - OPNo = drTemp["OPNo"].ToString(); - SerialNo = drTemp["SerialNo"].ToString(); - BRNo = drTemp["BRNo"].ToString(); - LogGroupSerial = drTemp["LogGroupSerial"].ToString(); - lngLotStamp = Convert.ToInt64(drTemp["LotStamp"]); - BaseLotNo = drTemp["BaseLotNo"].ToString(); - CurQTY = drTemp["CurQTY"].ToString(); - PhaseNo = Convert.ToInt32(drTemp["PhaseNo"]); // 2020/11/20 Steven Mantis: 0082084: [PAD]eRunCard_調整 BR 生產記錄 - } - else - { - throw new iMESException.MESException("0000-202003", "[%LotNo%] : " + LotNo); - } - drTemp.Close(); - - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_ChkRowCount(strDataBaseType, strConnectionString, CollectionSQL, CollectionSQL_Rows); - - // //Return success - BR_CheckInRet = "success"; - } - - catch (Exception e1) - { - BR_CheckInRet = "fail"; - throw; - } - finally - { - CloseConnection(cnnTemp); - - } - return BR_CheckInRet; - - } - - - } -} \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Application.Designer.cs b/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Application.Designer.cs deleted file mode 100644 index 299bbe3..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Application.Designer.cs +++ /dev/null @@ -1,11 +0,0 @@ -// ------------------------------------------------------------------------------ -// -// 這段程式碼是由工具產生的。 -// 執行階段版本:4.0.30319.42000 -// -// 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, -// 變更將會遺失。 -// -// ------------------------------------------------------------------------------ - - diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Application.myapp b/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Settings.Designer.cs b/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Settings.Designer.cs deleted file mode 100644 index 10f0acd..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Settings.Designer.cs +++ /dev/null @@ -1,26 +0,0 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -namespace wsABC.My { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - } -} diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Settings.settings b/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/Properties/BuildIncrementVersionInfo.cs b/SRC/MESWin/SYS4/21670ll/wsSXS/Properties/BuildIncrementVersionInfo.cs deleted file mode 100644 index 8c4e437..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/Properties/BuildIncrementVersionInfo.cs +++ /dev/null @@ -1 +0,0 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/Resources.Designer.cs b/SRC/MESWin/SYS4/21670ll/wsSXS/Resources.Designer.cs deleted file mode 100644 index 20e487b..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/Resources.Designer.cs +++ /dev/null @@ -1,63 +0,0 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -namespace wsABC.My.Resources { - using System; - - - /// - /// 一个强类型的资源类,用于查找本地化的字符串等。 - /// - // 此类是由 StronglyTypedResourceBuilder - // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - // (以 /str 作为命令选项),或重新生成 VS 项目。 - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() { - } - - /// - /// 返回此类使用的缓存的 ResourceManager 实例。 - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("wsSXS.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// 重写当前线程的 CurrentUICulture 属性,对 - /// 使用此强类型资源类的所有资源查找执行重写。 - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { - get { - return resourceCulture; - } - set { - resourceCulture = value; - } - } - } -} diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/Resources.resx b/SRC/MESWin/SYS4/21670ll/wsSXS/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/wsENT_21670/wsENT.cs b/SRC/MESWin/SYS4/21670ll/wsSXS/wsENT_21670/wsENT.cs deleted file mode 100644 index b603955..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/wsENT_21670/wsENT.cs +++ /dev/null @@ -1,1101 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT - { - private MEStc_SXS.clsENT_21670 objENT = new MEStc_SXS.clsENT_21670(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string WZ21670 = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // WZ21670 - if (xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Count > 0) - { - if (xmlDoc.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Count > 0) - { - WZ21670 = xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName,WZ21670, Description,Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string WZ21670 = defString; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // WZ21670 - if (xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Count > 0) - { - if (xmlDoc.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Count > 0) - { - WZ21670 = xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo,WZ21670, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor_21670 Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor_21670 Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - } -} diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/wsWIP/wsWIP.cs b/SRC/MESWin/SYS4/21670ll/wsSXS/wsWIP/wsWIP.cs deleted file mode 100644 index f8474ef..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/wsWIP/wsWIP.cs +++ /dev/null @@ -1,131 +0,0 @@ -using System; -using Microsoft.VisualBasic; -using static iMESCore.Base.iMESComSubroutine; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using iMESCore.Settings; - -namespace wsSXS -{ - - public class wsWIP - { - - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private string strServiceName = "wsWIP_SXS"; // ServiceName - private string strResourceDir = "Resources"; - - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - - public wsWIP() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - public string HelloWorld(string InXml) - { - return "HelloWorld"; - } - - - //public string LoadOPMaterialState(string InXml) - //{ - // string LoadOPMaterialStateRet = null; - - // // 先給預設值,以判斷是否有傳入該參數 - // string OPNo = defString; - // string MaterialNo = defString; - // string MaterialLotNo = defString; - // string UnitNo = defString; - // string MaterialType = defString; - - // ArriveTime = DateTime.Now; - - // try - // { - // // 讀取InXml字串 - // xmlDoc.LoadXml(InXml); - // // 組Identity字串 - // strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), ArriveTime.ToString(defDateTimeFormat)); - - // // 判斷是否有傳入OPNo,若有,表示要依OPNo查詢 - // if (xmlDoc.DocumentElement.GetElementsByTagName("opno").Count > 0) - // { - // if (xmlDoc.GetElementsByTagName("opno").Item(0).SelectNodes("value").Count > 0) - // { - // OPNo = xmlDoc.DocumentElement.GetElementsByTagName("opno").Item(0).SelectNodes("value").Item(0).InnerText; - // } - // } - // // 判斷是否有傳入MaterialNo,若有,表示要依MaterialNo查詢 - // if (xmlDoc.DocumentElement.GetElementsByTagName("materialno").Count > 0) - // { - // if (xmlDoc.GetElementsByTagName("materialno").Item(0).SelectNodes("value").Count > 0) - // { - // MaterialNo = xmlDoc.DocumentElement.GetElementsByTagName("materialno").Item(0).SelectNodes("value").Item(0).InnerText; - // } - // } - // // 判斷是否有傳入MaterialLotNo,若有,表示要依MaterialLotNo查詢 - // if (xmlDoc.DocumentElement.GetElementsByTagName("materiallotno").Count > 0) - // { - // if (xmlDoc.GetElementsByTagName("materiallotno").Item(0).SelectNodes("value").Count > 0) - // { - // MaterialLotNo = xmlDoc.DocumentElement.GetElementsByTagName("materiallotno").Item(0).SelectNodes("value").Item(0).InnerText; - // } - // } - // if (xmlDoc.DocumentElement.GetElementsByTagName("unitno").Count > 0) - // { - // if (xmlDoc.GetElementsByTagName("unitno").Item(0).SelectNodes("value").Count > 0) - // { - // UnitNo = xmlDoc.DocumentElement.GetElementsByTagName("unitno").Item(0).SelectNodes("value").Item(0).InnerText; - // } - // } - // if (xmlDoc.DocumentElement.GetElementsByTagName("materialtype").Count > 0) - // { - // if (xmlDoc.GetElementsByTagName("materialtype").Item(0).SelectNodes("value").Count > 0) - // { - // MaterialType = xmlDoc.DocumentElement.GetElementsByTagName("materialtype").Item(0).SelectNodes("value").Item(0).InnerText; - // } - // } - - // // 呼叫Dll執行 - // //strReturnValue = objWIP.LoadOPMaterialState(OPNo, MaterialNo, MaterialLotNo, UnitNo, MaterialType); - // strException = ""; - // strResult = "success"; - // } - - // catch (iMESException.MESException ex) - // { - // strReturnValue = ""; - // strException = CombineXMLException(ex.ErrorCode.ToString(), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Load OP Material State Fail!!", ex.StackTrace); - // strResult = "fail"; - // } - - // catch (Exception ex) - // { - // strReturnValue = ""; - // strException = CombineXMLException(defWSErrCode, ex.Message, "Load OP Material State Fail!!", ex.StackTrace); - // strResult = "fail"; - // } - - // finally - // { - // // 將各部份之XML字串組起來並傳出 - // LoadOPMaterialStateRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - // } - // return LoadOPMaterialStateRet; - - //} - } -} \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/wxENT/wsENT.cs b/SRC/MESWin/SYS4/21670ll/wsSXS/wxENT/wsENT.cs deleted file mode 100644 index b603955..0000000 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/wxENT/wsENT.cs +++ /dev/null @@ -1,1101 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT - { - private MEStc_SXS.clsENT_21670 objENT = new MEStc_SXS.clsENT_21670(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string WZ21670 = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // WZ21670 - if (xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Count > 0) - { - if (xmlDoc.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Count > 0) - { - WZ21670 = xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName,WZ21670, Description,Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string WZ21670 = defString; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // WZ21670 - if (xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Count > 0) - { - if (xmlDoc.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Count > 0) - { - WZ21670 = xmlDoc.DocumentElement.GetElementsByTagName("wz21670").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo,WZ21670, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor_21670 Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor_21670 Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - } -} diff --git a/SRC/MESWin/SYS4/21691/ET_Subcontractor.sln b/SRC/MESWin/SYS4/21691/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS4/21691/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj b/SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj deleted file mode 100644 index fc8e9ea..0000000 --- a/SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj +++ /dev/null @@ -1,207 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj - ET_Subcontractor_21691 - ET_Subcontractor_21691 -======== - ET_Teacher_M - ET_Teacher_M ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj - ET_Subcontractor_21691.xml -======== - ET_Teacher_M.xml ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj - ET_Subcontractor_21691.xml -======== - ET_Teacher_M.xml ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/ET_Subcontractor.vbproj - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmSubcontractor.vb - - - frmTeacherContDef.vb - - - frmTeacherDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21691/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21691/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21691/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS4/21691/My Project/Application.myapp b/SRC/MESWin/SYS4/21691/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21691/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21691/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21691/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21691/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21691/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21691/My Project/Resources.Designer.vb deleted file mode 100644 index 688b951..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/Resources.Designer.vb +++ /dev/null @@ -1,67 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/My Project/Resources.Designer.vb - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21691.Resources", GetType(Resources).Assembly) -======== - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Teacher_M.Resources", GetType(Resources).Assembly) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/My Project/Resources.Designer.vb - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21691/My Project/Resources.resx b/SRC/MESWin/SYS4/21691/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21691/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21691/My Project/Settings.Designer.vb deleted file mode 100644 index 2ac46e7..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/Settings.Designer.vb +++ /dev/null @@ -1,79 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/My Project/Settings.Designer.vb - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21691.My.MySettings - Get - Return Global.ET_Subcontractor_21691.My.MySettings.Default -======== - Friend ReadOnly Property Settings() As Global.ET_Teacher_M.My.MySettings - Get - Return Global.ET_Teacher_M.My.MySettings.Default ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/My Project/Settings.Designer.vb - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21691/My Project/Settings.settings b/SRC/MESWin/SYS4/21691/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21691/My Project/licenses.licx b/SRC/MESWin/SYS4/21691/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21691/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21691/frmSubcontractor.resx b/SRC/MESWin/SYS4/21691/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21691/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21691/frmSubcontractor.vb b/SRC/MESWin/SYS4/21691/frmSubcontractor.vb deleted file mode 100644 index c3933f9..0000000 --- a/SRC/MESWin/SYS4/21691/frmSubcontractor.vb +++ /dev/null @@ -1,1129 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21691/frmSubcontractorContDef.resx b/SRC/MESWin/SYS4/21691/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21691/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21691/frmSubcontractorContDef.vb b/SRC/MESWin/SYS4/21691/frmSubcontractorContDef.vb deleted file mode 100644 index c489735..0000000 --- a/SRC/MESWin/SYS4/21691/frmSubcontractorContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21691/frmSubcontractorDef.resx b/SRC/MESWin/SYS4/21691/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21691/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb b/SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb deleted file mode 100644 index 4a55ecf..0000000 --- a/SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb +++ /dev/null @@ -1,526 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Friend WithEvents lblTelNo As Label - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents lblEMail As Label - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblEMail = New System.Windows.Forms.Label() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblTelNo = New System.Windows.Forms.Label() -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.gbxBasisData.Location = New System.Drawing.Point(12, 211) -======== - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.btnApply.Location = New System.Drawing.Point(403, 290) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 290) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 290) -======== - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.gbxSubcontractorData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblTelNo) -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 195) -======== - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(326, 83) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 17 - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(256, 83) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 16 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(128, 83) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 15 - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(34, 83) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 14 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 111) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(58, 114) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Me.ClientSize = New System.Drawing.Size(503, 335) -======== - Me.ClientSize = New System.Drawing.Size(503, 309) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", CInput(txtTelNo.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractor", InXml) -======== - OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractor", InXml) -======== - OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -<<<<<<<< HEAD:SRC/MESWin/SYS4/21691/frmSubcontractorDef.vb - Private Sub lblTelNo_Click(sender As Object, e As EventArgs) Handles lblTelNo.Click - - End Sub - -======== ->>>>>>>> dc359766c3664933829094578fcef17205eebc35:SRC/MESWin/SYS1/ET_21674/frmSubcontractorDef.vb -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21691/iMES.snk b/SRC/MESWin/SYS4/21691/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21691/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.sln b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj deleted file mode 100644 index 8417a9e..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj +++ /dev/null @@ -1,203 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor_21699 - ET_Subcontractor_21699 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor_21699.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor_21699.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - frmDemo2.vb - - - Form - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmDemo2.vb - - - frmSubcontractor.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj.user b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj.user deleted file mode 100644 index 20199b4..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj.user +++ /dev/null @@ -1,6 +0,0 @@ - - - - D:\SourceCode\SRC\MES_C_DLL\ - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Application.myapp b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Resources.Designer.vb deleted file mode 100644 index 95bec3f..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21699.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Resources.resx b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Settings.Designer.vb deleted file mode 100644 index ad64a78..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21699.My.MySettings - Get - Return Global.ET_Subcontractor_21699.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Settings.settings b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/licenses.licx b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.Designer.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.Designer.vb deleted file mode 100644 index f5e1590..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.Designer.vb +++ /dev/null @@ -1,37 +0,0 @@ - -Partial Class frmDemo2 - 'Inherits System.Windows.Forms.Form - Inherits COM_Kit.frmBasisTemplat - 'Form 重写 Dispose,以清理组件列表。 - - Protected Overrides Sub Dispose(ByVal disposing As Boolean) - Try - If disposing AndAlso components IsNot Nothing Then - components.Dispose() - End If - Finally - MyBase.Dispose(disposing) - End Try - End Sub - - 'Windows 窗体设计器所必需的 - Private components As System.ComponentModel.IContainer - - '注意: 以下过程是 Windows 窗体设计器所必需的 - '可以使用 Windows 窗体设计器修改它。 - '不要使用代码编辑器修改它。 - - Private Sub InitializeComponent() - Me.SuspendLayout() - ' - 'frmDemo2 - ' - Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 15.0!) - Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(1053, 562) - Me.Name = "frmDemo2" - Me.Text = "frmDemo2" - Me.ResumeLayout(False) - - End Sub -End Class diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.resx b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.vb deleted file mode 100644 index 13777e7..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmDemo2.vb +++ /dev/null @@ -1,7 +0,0 @@ -Public Class frmDemo2 - Private Sub frmDemo2_Load(sender As Object, e As EventArgs) Handles MyBase.Load - - End Sub - - -End Class \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractor.resx b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractor.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractor.vb deleted file mode 100644 index 108571b..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractor.vb +++ /dev/null @@ -1,1139 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor_21699 As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont_21699 As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(1035, 518) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(1035, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(1035, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(1035, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(1035, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(1035, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(1017, 280) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(1035, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(1035, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(1035, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(1035, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(1035, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(1017, 158) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1131, 557) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor_21699).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor_21699).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor_21699).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor_21699).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor_21699).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor_21699).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor_21699).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont_21699).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont_21699).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont_21699).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With .Bands(0).Columns("JT21699") - .Header.Caption = "JT21699" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 12 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor_21699)) Then - dsENT.Tables.Remove(tblENTSubcontractor_21699) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor_21699 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor_21699).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor_21699).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor_21699).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont_21699)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont_21699) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont_21699 = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont_21699).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - Private Sub iugSubcontractor_Load(sender As Object, e As EventArgs) Handles iugSubcontractor.Load - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorContDef.resx b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorContDef.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorContDef.vb deleted file mode 100644 index e6da084..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorContDef.vb +++ /dev/null @@ -1,695 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents Label1 As Label - Friend WithEvents txtJT21699 As TextBox - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.Label1 = New System.Windows.Forms.Label() - Me.txtJT21699 = New System.Windows.Forms.TextBox() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtJT21699) - Me.gbxSubcontractorContData.Controls.Add(Me.Label1) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(114, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'Label1 - ' - Me.Label1.AutoSize = True - Me.Label1.Location = New System.Drawing.Point(262, 58) - Me.Label1.Name = "Label1" - Me.Label1.Size = New System.Drawing.Size(50, 15) - Me.Label1.TabIndex = 16 - Me.Label1.Text = "JT21699" - ' - 'txtJT21699 - ' - Me.txtJT21699.Location = New System.Drawing.Point(320, 56) - Me.txtJT21699.Name = "txtJT21699" - Me.txtJT21699.Size = New System.Drawing.Size(136, 21) - Me.txtJT21699.TabIndex = 17 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - txtJT21699.Text = EditDataRow.Item("JT21699").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click - - End Sub - - Private Sub txtEMail_ValueChanged(sender As Object, e As EventArgs) Handles txtEMail.ValueChanged - - End Sub - - Private Sub Label1_Click_1(sender As Object, e As EventArgs) Handles Label1.Click - - End Sub - - Private Sub txtFaxNo_ValueChanged(sender As Object, e As EventArgs) Handles txtFaxNo.ValueChanged - - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorDef.resx b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorDef.vb b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorDef.vb deleted file mode 100644 index 11b316b..0000000 --- a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/frmSubcontractorDef.vb +++ /dev/null @@ -1,446 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents lblJT21699 As Label - Friend WithEvents txtJT21699 As TextBox - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtJT21699 = New System.Windows.Forms.TextBox() - Me.lblJT21699 = New System.Windows.Forms.Label() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 225) - Me.gbxBasisData.Size = New System.Drawing.Size(562, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(486, 304) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(298, 304) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(392, 304) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.lblJT21699) - Me.gbxSubcontractorData.Controls.Add(Me.txtJT21699) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(562, 209) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'txtJT21699 - ' - Me.txtJT21699.Cursor = System.Windows.Forms.Cursors.IBeam - Me.txtJT21699.Location = New System.Drawing.Point(347, 25) - Me.txtJT21699.Name = "txtJT21699" - Me.txtJT21699.Size = New System.Drawing.Size(115, 21) - Me.txtJT21699.TabIndex = 14 - ' - 'lblJT21699 - ' - Me.lblJT21699.AutoSize = True - Me.lblJT21699.Location = New System.Drawing.Point(291, 24) - Me.lblJT21699.Name = "lblJT21699" - Me.lblJT21699.Size = New System.Drawing.Size(50, 15) - Me.lblJT21699.TabIndex = 15 - Me.lblJT21699.Text = "JT21699" - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(586, 349) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - txtSubcontractorName.Text = EditDataRow.Item("JT21699").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - strParameter = strParameter & CombineXMLParameter("jt21699", "JT21699", "String", CInput(txtJT21699.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/iMES.snk b/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21699jt/ET_Subcontractor/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_ABC.csproj.vspscc b/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_ABC.csproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_ABC.csproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_SXS.sln b/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_SXS.sln deleted file mode 100644 index 22ddfea..0000000 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_SXS.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32630.194 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MEStc_SXS", "MEStc_SXS.csproj", "{8CC8664F-C718-0888-187B-600F20E362E0}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {20814751-26E2-4F61-9643-BFEDC7384E35} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/Properties/AssemblyInfo.cs b/SRC/MESWin/SYS4/21699jt/MEStc_SXS/Properties/AssemblyInfo.cs deleted file mode 100644 index e2bf75b..0000000 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// 組件的一般資訊是由下列的屬性集控制。 -// 變更這些屬性的值即可修改組件的相關 -// 資訊。 -[assembly: AssemblyTitle("MEStc_ABC.Properties")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("iMES Technology Inc.")] -[assembly: AssemblyProduct("MESSeries 6")] -[assembly: AssemblyCopyright("Copyright iMES Technology Inc.")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// 將 ComVisible 設定為 false 會使得這個組件中的類型 -// 對 COM 元件而言為不可見。如果您需要從 COM 存取這個組件中 -// 的類型,請在該類型上將 ComVisible 屬性設定為 true。 -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("00eb00ee-1246-48cf-a0bf-f5203de255f1")] - -// 組件的版本資訊由下列四個值所組成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂編號 -// -[assembly: AssemblyVersion("6.0.0.0")] diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs b/SRC/MESWin/SYS4/21699jt/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs deleted file mode 100644 index 8c4e437..0000000 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs +++ /dev/null @@ -1 +0,0 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcENT/clsENT.cs b/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcENT/clsENT.cs deleted file mode 100644 index f260913..0000000 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcENT/clsENT.cs +++ /dev/null @@ -1,973 +0,0 @@ -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 : 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() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string JT21699 = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor_21699 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; - - if ((Description ?? "") != defString) - { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; - } - if ((JT21699 ?? "") != defString) - { - strSQLAddField += ",JT21699"; - strSQLAddValue += ",'" + JT21699 + "'"; - } - 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 - 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 JT21699 = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21699 Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - if ((Description ?? "") != defString) - { - strSQL += "Description = '" + Description + "',"; - } - - if ((JT21699 ?? "") != defString) - { - strSQL += "JT21699 = '" + JT21699 + "',"; - } - - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont_21699 " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor_21699 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor_21699 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21699", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21699", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor_21699 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21699", 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 SubcontractorNo = 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 tblENTSubcontractor_21699 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21699", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21699 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(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, string JT21699 = defString, DateTime CreateDate = default(DateTime)) - { - string AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont_21699 (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 (JT21699 != defString) - { - strSQLAddField = strSQLAddField + ",JT21699"; - strSQLAddValue = strSQLAddValue + ",'" + JT21699 + "'"; - } - 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 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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont_21699 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont_21699 " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont_21699 Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21699", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21699", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21699 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21699", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21699 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21699", 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 - } -} diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcTEST21699/clsENT.cs b/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcTEST21699/clsENT.cs deleted file mode 100644 index b61ae80..0000000 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcTEST21699/clsENT.cs +++ /dev/null @@ -1,973 +0,0 @@ -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 clsENT21699 : 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 clsENT21699() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string JT21699 = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor_21699 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; - - if ((Description ?? "") != defString) - { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; - } - if ((JT21699 ?? "") != defString) - { - strSQLAddField += ",JT21699"; - strSQLAddValue += ",'" + JT21699 + "'"; - } - 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 - 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 JT21699 = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21699 Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - if ((Description ?? "") != defString) - { - strSQL += "Description = '" + Description + "',"; - } - - if ((JT21699 ?? "") != defString) - { - strSQL += "JT21699 = '" + JT21699 + "',"; - } - - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont_21699 " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor_21699 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor_21699 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21699", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21699", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor_21699 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21699", 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 SubcontractorNo = 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 tblENTSubcontractor_21699 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor_21699", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21699 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(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, string JT21699 = defString, DateTime CreateDate = default(DateTime)) - { - string AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont_21699 (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 (JT21699 != defString) - { - strSQLAddField = strSQLAddField + ",JT21699"; - strSQLAddValue = strSQLAddValue + ",'" + JT21699 + "'"; - } - 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 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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont_21699 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont_21699 " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont_21699 Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21699", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21699", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21699 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21699", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont_21699 Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21699", 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 - } -} diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcWIP/clsLot.cs b/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcWIP/clsLot.cs deleted file mode 100644 index 57d1278..0000000 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/tcWIP/clsLot.cs +++ /dev/null @@ -1,337 +0,0 @@ -using System; -using System.Data; -using System.Data.Common; -using Microsoft.VisualBasic; -using static iMESCore.Base.iMESComSubroutine; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.DataBase.iMESSql; -using iMESCore.Settings; - -namespace MEStc_SXS -{ - - - public class clsLot : 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 = ""; - - #region --- Initial Object --- - - public clsLot() - { - // 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 - - - public string LoadOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadOPTypeRet = null; - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - - DataSet dsOP = null; - - try - { - - dsOP = ShowOPType(OPType, IssueState, AdditionalXml); - - // //Combine return value - LoadOPTypeRet = CombineXMLReturnValue("loadoptype", "OPType", "DataSet", FormatXMLSchema(dsOP.GetXmlSchema()), dsOP.GetXml(), ""); - } - - catch (Exception e1) - { - LoadOPTypeRet = "fail"; - throw; - } // New Exception("kcOP.LoadOPType: " & e1.Message) - - finally - { - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return LoadOPTypeRet; - - } - - public DataSet ShowOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - DataSet ShowOPTypeRet = null; - - // 此 Function 將資料以 Dataset 方式取出 - // 傳入值: 索引值 - // 傳回值: Dataset(成功), Nothing(失敗) - - - DataSet dsOP = null; - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblOPType Where OPType Is Not Null"; - if (OPType != defString) - { - strSQL = strSQL + " And OPType = '" + OPType + "'"; - } - if (IssueState != defInteger) - { - strSQL = strSQL + " And IssueState = " + IssueState; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL = strSQL + SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsOP = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsOP, "OPType", cnnTemp); - - // //Return data - ShowOPTypeRet = dsOP; - } - - catch (Exception e1) - { - ShowOPTypeRet = null; - throw; - } - - finally - { - CloseConnection(cnnTemp); - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return ShowOPTypeRet; - } - - public DataRow GetOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - DataRow GetOPTypeRet = null; - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - - DataSet dsOP = null; - - try - { - - dsOP = ShowOPType(OPType, IssueState, AdditionalXml); - - // //Return data - if (dsOP.Tables[0].Rows.Count > 0) - { - GetOPTypeRet = dsOP.Tables[0].Rows[0]; - } - else - { - GetOPTypeRet = dsOP.Tables[0].NewRow(); - } - } - - catch (Exception e1) - { - GetOPTypeRet = null; - throw; - } // New Exception("kcOP.LoadOPType: " & e1.Message) - - finally - { - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return GetOPTypeRet; - - } - - public string BR_CheckIn(long LotStamp, string LotNo, string LinkName, DataTable dtAttrib, DataTable dtEquipment, string UserNo, string ShiftNo, - string LotRecord = defString, DateTime CheckInTime = default(DateTime), string RuleNo = "", DataTable dtLoginState = null, DataTable dtAccessory = null, - DataTable dtMTLLot = null, string LanguageMode = defString) - { - string BR_CheckInRet = default(string); - // 此 Function 將更新CheckIn Data - // 傳入值: LotNo,dtAttrib,dtEquipment - // 傳回值: success(成功), fail(失敗) - - IDbConnection cnnTemp = null; - DbDataReader drTemp; - var CollectionSQL = new Collection(); - var CollectionSQL_Rows = new Collection(); - string strSQL = ""; - - string LotSerial, OPNo, BRNo, SerialNo, LogGroupSerial, BaseLotNo, CurQTY; - int PhaseNo; - DateTime datEventTime; - long lngLotStamp; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - // 1.取出Temp LotState的資料 - strSQL = "Select A.LotSerial,A.OPNo,A.SerialNo,B.BRNo,B.LogGroupSerial,B.LotStamp,B.BaseLotNo,B.CurQTY,B.PhaseNo " + - " From tblWIPTemp_LotState A, tblWIPLotState B " + " Where A.LotNo ='" + LotNo + "'" + " And A.LotNo = B.LotNo "; - // cmmTemp = New OleDb.OleDbCommand(strSQL, cnnTemp) - drTemp = ExecuteSQLQuery_Reader(strSQL, cnnTemp); - if (drTemp.Read()) - { - LotSerial = drTemp["LotSerial"].ToString(); - OPNo = drTemp["OPNo"].ToString(); - SerialNo = drTemp["SerialNo"].ToString(); - BRNo = drTemp["BRNo"].ToString(); - LogGroupSerial = drTemp["LogGroupSerial"].ToString(); - lngLotStamp = Convert.ToInt64(drTemp["LotStamp"]); - BaseLotNo = drTemp["BaseLotNo"].ToString(); - CurQTY = drTemp["CurQTY"].ToString(); - PhaseNo = Convert.ToInt32(drTemp["PhaseNo"]); // 2020/11/20 Steven Mantis: 0082084: [PAD]eRunCard_調整 BR 生產記錄 - } - else - { - throw new iMESException.MESException("0000-202003", "[%LotNo%] : " + LotNo); - } - drTemp.Close(); - - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_ChkRowCount(strDataBaseType, strConnectionString, CollectionSQL, CollectionSQL_Rows); - - // //Return success - BR_CheckInRet = "success"; - } - - catch (Exception e1) - { - BR_CheckInRet = "fail"; - throw; - } - finally - { - CloseConnection(cnnTemp); - - } - return BR_CheckInRet; - - } - - - } -} \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21699jt/wxENT/wsENT.cs b/SRC/MESWin/SYS4/21699jt/wxENT/wsENT.cs deleted file mode 100644 index 0b18978..0000000 --- a/SRC/MESWin/SYS4/21699jt/wxENT/wsENT.cs +++ /dev/null @@ -1,1103 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT - { - private MEStc_SXS .clsENT objENT = new MEStc_SXS.clsENT(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string JT21699 = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - //JT21699 - if (xmlDoc.DocumentElement.GetElementsByTagName("jt21699").Count > 0) - { - if (xmlDoc.GetElementsByTagName("jt21699").Item(0).SelectNodes("value").Count > 0) - { - JT21699 = xmlDoc.DocumentElement.GetElementsByTagName("jt21699").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName, Description, JT21699, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - string JT21699 = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - //JT21699 - if (xmlDoc.DocumentElement.GetElementsByTagName("jt21699").Count > 0) - { - if (xmlDoc.GetElementsByTagName("jt21699").Item(0).SelectNodes("value").Count > 0) - { - JT21699 = xmlDoc.DocumentElement.GetElementsByTagName("jt21699").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor_21699 Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor_21699 Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string JT21699 = defString; - string Description = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, JT21699, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - } -} diff --git a/SRC/MESWin/SYS4/21706/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21706/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21706/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21706/ET_Subcontractor_21706.sln b/SRC/MESWin/SYS4/21706/ET_Subcontractor_21706.sln deleted file mode 100644 index 56a4e47..0000000 --- a/SRC/MESWin/SYS4/21706/ET_Subcontractor_21706.sln +++ /dev/null @@ -1,31 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.34407.143 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor_21706", "ET_Subcontractor_21706.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {90AD5AEC-CF5E-4F34-BF22-34D3D94B3E15} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21706/ET_Subcontractor_21706.vbproj b/SRC/MESWin/SYS4/21706/ET_Subcontractor_21706.vbproj deleted file mode 100644 index b5d5d6b..0000000 --- a/SRC/MESWin/SYS4/21706/ET_Subcontractor_21706.vbproj +++ /dev/null @@ -1,194 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_Subcontractor_21706 - ET_Subcontractor_21706 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_Subcontractor_21706.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_Subcontractor_21706.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmSubcontractor21706.vb - - - frmSubcontractorContDef.vb - - - frmSubcontractorDef.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21706/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS4/21706/My Project/Application.myapp b/SRC/MESWin/SYS4/21706/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21706/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21706/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21706/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21706/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21706/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21706/My Project/Resources.Designer.vb deleted file mode 100644 index 4535830..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21706.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21706/My Project/Resources.resx b/SRC/MESWin/SYS4/21706/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21706/My Project/Settings.Designer.vb deleted file mode 100644 index 1348728..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21706.My.MySettings - Get - Return Global.ET_Subcontractor_21706.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21706/My Project/Settings.settings b/SRC/MESWin/SYS4/21706/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21706/My Project/licenses.licx b/SRC/MESWin/SYS4/21706/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21706/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21706/frmDemo21706.Designer.vb b/SRC/MESWin/SYS4/21706/frmDemo21706.Designer.vb deleted file mode 100644 index c29624a..0000000 --- a/SRC/MESWin/SYS4/21706/frmDemo21706.Designer.vb +++ /dev/null @@ -1,5 +0,0 @@ - -Partial Class frmDemo21706 - - -End Class diff --git a/SRC/MESWin/SYS4/21706/frmDemo21706.resx b/SRC/MESWin/SYS4/21706/frmDemo21706.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21706/frmDemo21706.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706/frmDemo21706.vb b/SRC/MESWin/SYS4/21706/frmDemo21706.vb deleted file mode 100644 index 7e88fba..0000000 --- a/SRC/MESWin/SYS4/21706/frmDemo21706.vb +++ /dev/null @@ -1,3 +0,0 @@ -Public Class frmDemo21706 - -End Class \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706/frmSubcontractor21706.resx b/SRC/MESWin/SYS4/21706/frmSubcontractor21706.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21706/frmSubcontractor21706.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706/frmSubcontractor21706.vb b/SRC/MESWin/SYS4/21706/frmSubcontractor21706.vb deleted file mode 100644 index 1ecb531..0000000 --- a/SRC/MESWin/SYS4/21706/frmSubcontractor21706.vb +++ /dev/null @@ -1,1150 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor21706 - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - '如果有激活行才执行操作 - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - '删除方法,不需要调用客制化方法 - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - 'OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - '调用客制化方法 - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorContCustom", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("NotNull") - .Header.Caption = "NotNull" - .Width = 150 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("Note21706") - .Header.Caption = "Note21706" - .Width = 150 - .Hidden = False - .Header.VisiblePosition = 9 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With .Bands(0).Columns("Note21706") - .Header.Caption = "Note21706" - .Width = 150 - .Hidden = False - .Header.VisiblePosition = 12 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21706/frmSubcontractorContDef.resx b/SRC/MESWin/SYS4/21706/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21706/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706/frmSubcontractorContDef.vb b/SRC/MESWin/SYS4/21706/frmSubcontractorContDef.vb deleted file mode 100644 index 74984bb..0000000 --- a/SRC/MESWin/SYS4/21706/frmSubcontractorContDef.vb +++ /dev/null @@ -1,688 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents lblNote21706 As Label - Friend WithEvents txtNote21706 As Infragistics.Win.UltraWinEditors.UltraTextEditor - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.lblNote21706 = New System.Windows.Forms.Label() - Me.txtNote21706 = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtNote21706, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 354) - Me.gbxBasisData.Size = New System.Drawing.Size(476, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(400, 433) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(212, 433) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(306, 433) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.lblNote21706) - Me.gbxSubcontractorContData.Controls.Add(Me.txtNote21706) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(473, 338) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'lblNote21706 - ' - Me.lblNote21706.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblNote21706.Location = New System.Drawing.Point(24, 302) - Me.lblNote21706.Name = "lblNote21706" - Me.lblNote21706.Size = New System.Drawing.Size(86, 14) - Me.lblNote21706.TabIndex = 17 - Me.lblNote21706.Text = "Note 21706" - Me.lblNote21706.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtNote21706 - ' - Me.txtNote21706.Location = New System.Drawing.Point(120, 298) - Me.txtNote21706.Name = "txtNote21706" - Me.txtNote21706.Size = New System.Drawing.Size(114, 22) - Me.txtNote21706.TabIndex = 16 - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 123) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(500, 478) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtNote21706, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - '以下为自己添加的字段 - txtNote21706.Text = EditDataRow.Item("Note21706").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - '以下为自己添加的字段 - strParameter = strParameter & CombineXMLParameter("note21706", "Note21706", "String", CInput(txtNote21706.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - 'OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - '调用客制化方法 - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorContCustom", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - 'OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - '调用客制化方法 - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorContCustom", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21706/frmSubcontractorDef.resx b/SRC/MESWin/SYS4/21706/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21706/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706/frmSubcontractorDef.vb b/SRC/MESWin/SYS4/21706/frmSubcontractorDef.vb deleted file mode 100644 index 158f05b..0000000 --- a/SRC/MESWin/SYS4/21706/frmSubcontractorDef.vb +++ /dev/null @@ -1,497 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents txtNote21706 As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents lblNote21706 As Label - Friend WithEvents lblKey21706 As Label - Friend WithEvents txtNotNull As Infragistics.Win.UltraWinEditors.UltraTextEditor - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance3 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance4 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.lblNote21706 = New System.Windows.Forms.Label() - Me.txtNote21706 = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtNotNull = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblKey21706 = New System.Windows.Forms.Label() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtNote21706, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtNotNull, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 266) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 345) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 345) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 345) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.lblKey21706) - Me.gbxSubcontractorData.Controls.Add(Me.txtNotNull) - Me.gbxSubcontractorData.Controls.Add(Me.lblNote21706) - Me.gbxSubcontractorData.Controls.Add(Me.txtNote21706) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 250) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'lblNote21706 - ' - Me.lblNote21706.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblNote21706.Location = New System.Drawing.Point(24, 193) - Me.lblNote21706.Name = "lblNote21706" - Me.lblNote21706.Size = New System.Drawing.Size(96, 32) - Me.lblNote21706.TabIndex = 14 - Me.lblNote21706.Text = "Note 21706" - Me.lblNote21706.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtNote21706 - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer)) - Me.txtNote21706.Appearance = Appearance2 - Me.txtNote21706.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer)) - Me.txtNote21706.Location = New System.Drawing.Point(128, 193) - Me.txtNote21706.Name = "txtNote21706" - Me.txtNote21706.Size = New System.Drawing.Size(152, 22) - Me.txtNote21706.TabIndex = 3 - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance3.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance3 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance4.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance4 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'txtNotNull - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtNotNull.Appearance = Appearance1 - Me.txtNotNull.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtNotNull.Location = New System.Drawing.Point(128, 162) - Me.txtNotNull.Name = "txtNotNull" - Me.txtNotNull.Size = New System.Drawing.Size(152, 22) - Me.txtNotNull.TabIndex = 15 - ' - 'lblKey21706 - ' - Me.lblKey21706.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblKey21706.Location = New System.Drawing.Point(24, 162) - Me.lblKey21706.Name = "lblKey21706" - Me.lblKey21706.Size = New System.Drawing.Size(96, 32) - Me.lblKey21706.TabIndex = 16 - Me.lblKey21706.Text = "Not Null" - Me.lblKey21706.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 390) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtNote21706, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtNotNull, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - '加入自定义字段 - txtNotNull.Text = EditDataRow.Item("NotNull").ToString - txtNote21706.Text = EditDataRow.Item("Note21706").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '以下为自定义的字段,如果非空字段为空,抛出异常之后退出函数(即不进行处理) - If txtNotNull.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%NotNull%]"), MsgBoxStyle.Exclamation, Me.Text) - txtNotNull.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - '以下为自己定义的字段 - strParameter = strParameter & CombineXMLParameter("notnull", "NotNull", "String", CInput(txtNotNull.Text), "") - strParameter = strParameter & CombineXMLParameter("note21706", "Note21706", "String", CInput(txtNote21706.Text), "") - - If DefMode = 0 Or DefMode = 2 Then - 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml) - '调用客制化方法 - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCustom", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml) - '调用客制化方法 - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCustom", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21706/iMES.snk b/SRC/MESWin/SYS4/21706/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21706/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/21706NEW/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS4/21706NEW/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS4/21706NEW/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS4/21706NEW/ET_TestData21706.sln b/SRC/MESWin/SYS4/21706NEW/ET_TestData21706.sln deleted file mode 100644 index 9ee88c7..0000000 --- a/SRC/MESWin/SYS4/21706NEW/ET_TestData21706.sln +++ /dev/null @@ -1,31 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.34407.143 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_TestData21706", "ET_TestData21706.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {EDD304C3-6FB8-495A-8B20-2CFB2A234E2B} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS4/21706NEW/ET_TestData21706.vbproj b/SRC/MESWin/SYS4/21706NEW/ET_TestData21706.vbproj deleted file mode 100644 index 13c8fa6..0000000 --- a/SRC/MESWin/SYS4/21706NEW/ET_TestData21706.vbproj +++ /dev/null @@ -1,194 +0,0 @@ - - - - - Debug - x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} - Library - ET_TestData21706 - ET_TestData21706 - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - - - On - - - Binary - - - Off - - - On - - - true - true - true - ..\..\..\MESClient\ - ET_TestData21706.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - x86 - MinimumRecommendedRules.ruleset - false - - - true - ..\..\..\MESClient\ - ET_TestData21706.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - x86 - MinimumRecommendedRules.ruleset - false - - - true - - - iMES.snk - - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll - False - - - False - C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll - False - - - ..\..\..\MESClient\COM_Kit.dll - False - - - ..\..\..\MES_C_DLL\iMESExceptionManager.dll - False - - - ..\..\..\MES_C_DLL\iMESUltraGrid.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - modConstant.vb - - - Form - - - Form - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmTestData21706.vb - - - frmTestData21706ContDef.vb - - - frmTestData21706Def.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/Application.Designer.vb b/SRC/MESWin/SYS4/21706NEW/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/Application.myapp b/SRC/MESWin/SYS4/21706NEW/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS4/21706NEW/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS4/21706NEW/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/Resources.Designer.vb b/SRC/MESWin/SYS4/21706NEW/My Project/Resources.Designer.vb deleted file mode 100644 index 3f59252..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_TestData21706.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/Resources.resx b/SRC/MESWin/SYS4/21706NEW/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/Settings.Designer.vb b/SRC/MESWin/SYS4/21706NEW/My Project/Settings.Designer.vb deleted file mode 100644 index 49a2d86..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_TestData21706.My.MySettings - Get - Return Global.ET_TestData21706.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/Settings.settings b/SRC/MESWin/SYS4/21706NEW/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS4/21706NEW/My Project/licenses.licx b/SRC/MESWin/SYS4/21706NEW/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS4/21706NEW/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS4/21706NEW/frmTestData21706.resx b/SRC/MESWin/SYS4/21706NEW/frmTestData21706.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21706NEW/frmTestData21706.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706NEW/frmTestData21706.vb b/SRC/MESWin/SYS4/21706NEW/frmTestData21706.vb deleted file mode 100644 index 18ca685..0000000 --- a/SRC/MESWin/SYS4/21706NEW/frmTestData21706.vb +++ /dev/null @@ -1,1129 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmTestData21706 - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmTestData_21706 - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmTestData_21706" - Me.Text = "ENT TestData21706" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmTestData21706Def - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmTestData21706Def - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21706.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmTestData21706Def - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21706.ApproveTestData21706", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmTestData21706ContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTestData21706ContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmTestData21706ContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 7 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT_21706.LoadTestData21706", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadTestData21706").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadTestData21706").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadTestData21706").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21706NEW/frmTestData21706ContDef.resx b/SRC/MESWin/SYS4/21706NEW/frmTestData21706ContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21706NEW/frmTestData21706ContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706NEW/frmTestData21706ContDef.vb b/SRC/MESWin/SYS4/21706NEW/frmTestData21706ContDef.vb deleted file mode 100644 index 3a58dc7..0000000 --- a/SRC/MESWin/SYS4/21706NEW/frmTestData21706ContDef.vb +++ /dev/null @@ -1,656 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTestData21706ContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 22) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 22) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 22) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 22) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 22) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 22) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub -End Class - diff --git a/SRC/MESWin/SYS4/21706NEW/frmTestData21706Def.resx b/SRC/MESWin/SYS4/21706NEW/frmTestData21706Def.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS4/21706NEW/frmTestData21706Def.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS4/21706NEW/frmTestData21706Def.vb b/SRC/MESWin/SYS4/21706NEW/frmTestData21706Def.vb deleted file mode 100644 index 2db3b2c..0000000 --- a/SRC/MESWin/SYS4/21706NEW/frmTestData21706Def.vb +++ /dev/null @@ -1,421 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmTestData21706Def - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT_21706.AddTestData21706", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT_21706.EditTestData21706", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS4/21706NEW/iMES.snk b/SRC/MESWin/SYS4/21706NEW/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS4/21706NEW/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS4/新建 文本文档.txt b/SRC/MESWin/SYS4/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_ABC.csproj.vspscc b/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_ABC.csproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_ABC.csproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_SXS.csproj b/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_SXS.csproj deleted file mode 100644 index f1e3d31..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_SXS.csproj +++ /dev/null @@ -1,131 +0,0 @@ - - - - Debug - AnyCPU - - - - - {8CC8664F-C718-0888-187B-600F20E362E0} - Library - MEStc_SXS - MEStc_SXS - 512 - Windows - v4.6.2 - SAK - SAK - SAK - SAK - - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - true - full - true - true - ..\MES_S_DLL\ - ..\MES_S_DLL\MEStc_SXS.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - pdbonly - false - true - true - bin\Release\ - bin\Release\ - - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - On - - - Binary - - - Off - - - On - - - - - False - ..\MES_S_DLL\data_access_service.dll - False - - - False - ..\MES_S_DLL\iMESAppSetting.dll - False - - - False - ..\MES_S_DLL\iMESComSubroutine.dll - False - - - False - ..\MES_S_DLL\iMESComXML.dll - False - - - False - ..\MES_S_DLL\iMESConst.dll - False - - - ..\..\MESSeries_2016\MES_S_DLL\iMESException.dll - False - - - False - ..\MES_S_DLL\iMESLog.dll - False - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_SXS.sln b/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_SXS.sln deleted file mode 100644 index 22ddfea..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/MEStc_SXS.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32630.194 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MEStc_SXS", "MEStc_SXS.csproj", "{8CC8664F-C718-0888-187B-600F20E362E0}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {20814751-26E2-4F61-9643-BFEDC7384E35} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/Properties/AssemblyInfo.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/Properties/AssemblyInfo.cs deleted file mode 100644 index e2bf75b..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// 組件的一般資訊是由下列的屬性集控制。 -// 變更這些屬性的值即可修改組件的相關 -// 資訊。 -[assembly: AssemblyTitle("MEStc_ABC.Properties")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("iMES Technology Inc.")] -[assembly: AssemblyProduct("MESSeries 6")] -[assembly: AssemblyCopyright("Copyright iMES Technology Inc.")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// 將 ComVisible 設定為 false 會使得這個組件中的類型 -// 對 COM 元件而言為不可見。如果您需要從 COM 存取這個組件中 -// 的類型,請在該類型上將 ComVisible 屬性設定為 true。 -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("00eb00ee-1246-48cf-a0bf-f5203de255f1")] - -// 組件的版本資訊由下列四個值所組成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂編號 -// -[assembly: AssemblyVersion("6.0.0.0")] diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs deleted file mode 100644 index 8c4e437..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs +++ /dev/null @@ -1 +0,0 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/stcWHS/clsENT21695.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/stcWHS/clsENT21695.cs deleted file mode 100644 index bd64d95..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/stcWHS/clsENT21695.cs +++ /dev/null @@ -1,1401 +0,0 @@ -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 clsENT21695 : 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 clsENT21695() - { - // 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 - // } - //} - - public string AddTest_21695(string SubcontractorNo, string SubcontractorName, string ItHeima = defString, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into TBLENTTEST21695MAIN (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; - - if ((Description ?? "") != defString) - { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; - } - if ((Creator ?? "") != defString) - { - strSQLAddField += ",Creator"; - strSQLAddValue += ",'" + Creator + "'"; - } - if ((Creator ?? "") != defString) - { - strSQLAddField += ",ItHeima"; - strSQLAddValue += ",'" + ItHeima + "'"; - } - 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditTest_21695(string SubcontractorNo, string ItHeima = defString, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update TBLENTTEST21695MAIN Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - if ((Description ?? "") != defString) - { - strSQL += "Description = '" + Description + "',"; - } - - if (ItHeima != defString) - strSQL = strSQL + "ItHeima = '" + ItHeima + "',"; - - - 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 DelTest_21695(string SubcontractorNo, string AdditionalXml = "") - { - string DelSubcontractorRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From TBLENTTEST21695SUB " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From TBLENTTEST21695MAIN " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadTest_21695(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From TBLENTTEST21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "TBLENTTEST21695MAIN", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "TBLENTTEST21695MAIN", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowTest_21695(string SubcontractorNo = 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 TBLENTTEST21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "TBLENTTEST21695MAIN", 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 GetTest_21695(string SubcontractorNo = 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 TBLENTTEST21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "TBLENTTEST21695MAIN", 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 Set21695TESTIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update TBLENTTEST21695MAIN 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - #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 AddSubcontractor(string SubcontractorNo, string SubcontractorName,string ItHeima=defString, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into A_21695MAIN (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; - - if ((Description ?? "") != defString) - { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; - } - if ((Creator ?? "") != defString) - { - strSQLAddField += ",Creator"; - strSQLAddValue += ",'" + Creator + "'"; - } - if ((Creator ?? "") != defString) - { - strSQLAddField += ",ItHeima"; - strSQLAddValue += ",'" + ItHeima + "'"; - } - 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditSubcontractor(string SubcontractorNo,string ItHeima=defString, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update A_21695MAIN Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - if ((Description ?? "") != defString) - { - strSQL += "Description = '" + Description + "',"; - } - - if(ItHeima!=defString) - strSQL = strSQL + "ItHeima = '" + ItHeima + "',"; - - - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From A_21695SUB " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From A_21695MAIN " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From A_21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "A_21695MAIN", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "A_21695MAIN", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 A_21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "A_21695MAIN", 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 SubcontractorNo = 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 A_21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "A_21695MAIN", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update A_21695MAIN 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(string SubcontractorNo, string ContactorName,string ItHeima, 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 A_21695SUB (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 (ItHeima != defString) - { - strSQLAddField = strSQLAddField + ",Itheima"; - strSQLAddValue = strSQLAddValue + ",'" + ItHeima + "'"; - } - 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 EditSubcontractorCont(string SubcontractorNo, string ContactorName,string ItHeima=defString, 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 EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update A_21695SUB 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 (ItHeima != defString) - strSQL = strSQL + "ItHeima='" + ItHeima + "',"; - - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From A_21695SUB " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From A_21695SUB Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21695SUB", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "A_21695SUB", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 A_21695SUB Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21695SUB", 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 SubcontractorNo = defString, string ContactorName = 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 A_21695SUB Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21695SUB", 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 - } -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/tcENT/clsENT.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/tcENT/clsENT.cs deleted file mode 100644 index 231abb0..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/MEStc_SXS/tcENT/clsENT.cs +++ /dev/null @@ -1,975 +0,0 @@ -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 : 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() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName,string ItHeima=defString, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into A_21695MAIN (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; - - if ((Description ?? "") != defString) - { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; - } - if ((Creator ?? "") != defString) - { - strSQLAddField += ",Creator"; - strSQLAddValue += ",'" + Creator + "'"; - } - if ((Creator ?? "") != defString) - { - strSQLAddField += ",ItHeima"; - strSQLAddValue += ",'" + ItHeima + "'"; - } - 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditSubcontractor(string SubcontractorNo,string ItHeima=defString, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update A_21695MAIN Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - if ((Description ?? "") != defString) - { - strSQL += "Description = '" + Description + "',"; - } - - if(ItHeima!=defString) - strSQL = strSQL + "ItHeima = '" + ItHeima + "',"; - - - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From A_21695SUB " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From A_21695MAIN " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From A_21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "A_21695MAIN", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "A_21695MAIN", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 A_21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "A_21695MAIN", 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 SubcontractorNo = 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 A_21695MAIN Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "A_21695MAIN", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update A_21695MAIN 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(string SubcontractorNo, string ContactorName,string ItHeima, 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 A_21695SUB (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 (ItHeima != defString) - { - strSQLAddField = strSQLAddField + ",Itheima"; - strSQLAddValue = strSQLAddValue + ",'" + ItHeima + "'"; - } - 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 EditSubcontractorCont(string SubcontractorNo, string ContactorName,string ItHeima=defString, 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 EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update A_21695SUB 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 (ItHeima != defString) - strSQL = strSQL + "ItHeima='" + ItHeima + "',"; - - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From A_21695SUB " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From A_21695SUB Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21695SUB", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "A_21695SUB", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 A_21695SUB Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21695SUB", 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 SubcontractorNo = defString, string ContactorName = 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 A_21695SUB Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21695SUB", 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 - } -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Application.myapp b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Settings.Designer.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Settings.Designer.cs deleted file mode 100644 index 10f0acd..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Settings.Designer.cs +++ /dev/null @@ -1,26 +0,0 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -namespace wsABC.My { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - } -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Settings.settings b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Properties/AssemblyInfo.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Properties/AssemblyInfo.cs deleted file mode 100644 index 7ead6a6..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// 組件的一般資訊是由下列的屬性集控制。 -// 變更這些屬性的值即可修改組件的相關 -// 資訊。 -[assembly: AssemblyTitle("wsABC.Properties")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("iMES Technology Inc.")] -[assembly: AssemblyProduct("MESSeries 6")] -[assembly: AssemblyCopyright("Copyright iMES Technology Inc.")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// 將 ComVisible 設定為 false 會使得這個組件中的類型 -// 對 COM 元件而言為不可見。如果您需要從 COM 存取這個組件中 -// 的類型,請在該類型上將 ComVisible 屬性設定為 true。 -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("ad05cadf-ff22-498b-a29e-df915118873d")] - -// 組件的版本資訊由下列四個值所組成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂編號 -// -[assembly: AssemblyVersion("6.0.0.0")] diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Properties/BuildIncrementVersionInfo.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Properties/BuildIncrementVersionInfo.cs deleted file mode 100644 index 8c4e437..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Properties/BuildIncrementVersionInfo.cs +++ /dev/null @@ -1 +0,0 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Resources.Designer.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Resources.Designer.cs deleted file mode 100644 index 20e487b..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Resources.Designer.cs +++ /dev/null @@ -1,63 +0,0 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -namespace wsABC.My.Resources { - using System; - - - /// - /// 一个强类型的资源类,用于查找本地化的字符串等。 - /// - // 此类是由 StronglyTypedResourceBuilder - // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - // (以 /str 作为命令选项),或重新生成 VS 项目。 - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() { - } - - /// - /// 返回此类使用的缓存的 ResourceManager 实例。 - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("wsSXS.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// 重写当前线程的 CurrentUICulture 属性,对 - /// 使用此强类型资源类的所有资源查找执行重写。 - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { - get { - return resourceCulture; - } - set { - resourceCulture = value; - } - } - } -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Resources.resx b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsABC.csproj.vspscc b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsABC.csproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsABC.csproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsSXS.csproj b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsSXS.csproj deleted file mode 100644 index 823a082..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsSXS.csproj +++ /dev/null @@ -1,181 +0,0 @@ - - - - - Debug - AnyCPU - {881686CE-A940-0485-2766-D411835B2FBB} - Library - wsSXS - wsSXS - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - true - full - true - true - ..\MES_S_DLL\ - ..\MES_S_DLL\wsSXS.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - pdbonly - false - true - true - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\ - - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - On - - - Binary - - - Off - - - On - - - - False - ..\MES_S_DLL\kcISSUE.dll - - - False - ..\MES_S_DLL\MEStc_SXS.dll - - - - False - ..\MES_S_DLL\iMESAppSetting.dll - False - - - False - ..\MES_S_DLL\iMESComSubroutine.dll - False - - - False - ..\MES_S_DLL\iMESComXML.dll - False - - - False - ..\MES_S_DLL\iMESConst.dll - False - - - ..\MES_S_DLL\iMESException.dll - False - - - False - ..\MES_S_DLL\iMESSCI.dll - False - - - ..\MES_S_DLL\kcSYS.dll - False - False - - - False - ..\MES_S_DLL\Newtonsoft.Json.dll - False - - - - - - - - - - - - - - - False - - - - - - - - - - - - - - - - True - Application.myapp - - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - - - - ResXFileCodeGenerator - Resources.Designer.cs - wsABC.My.Resources - Designer - - - - - MyApplicationCodeGenerator - Application.Designer.cs - - - SettingsSingleFileGenerator - wsABC.My - Settings.Designer.cs - - - - - - - \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsSXS.sln b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsSXS.sln deleted file mode 100644 index 13847da..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsSXS.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32630.194 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "wsSXS", "wsSXS.csproj", "{881686CE-A940-0485-2766-D411835B2FBB}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {881686CE-A940-0485-2766-D411835B2FBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {881686CE-A940-0485-2766-D411835B2FBB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {881686CE-A940-0485-2766-D411835B2FBB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {881686CE-A940-0485-2766-D411835B2FBB}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {7B40A25F-A0CA-49E5-AB24-36F7949771DE} - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsent-21695/wsENT21695.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsent-21695/wsENT21695.cs deleted file mode 100644 index 1643b37..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wsent-21695/wsENT21695.cs +++ /dev/null @@ -1,1720 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT21695 - { - private MEStc_SXS .clsENT objENT = new MEStc_SXS.clsENT(); - private MEStc_SXS.clsENT21695 testObjENT = new MEStc_SXS.clsENT21695(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT21695() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region "21695test" - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadTest21695(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = testObjENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddTest21695(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - string ItHeima = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 呼叫Dll執行新增資料 - testObjENT.AddSubcontractor(SubcontractorNo, SubcontractorName, ItHeima, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditTest21695(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - string ItHeima = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - testObjENT.EditSubcontractor(SubcontractorNo, ItHeima, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelTest21695(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - testObjENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - testObjENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - testObjENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveTest21695(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update TBLENTTEST21695MAIN Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update TBLENTTEST21695MAIN Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - testObjENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - #endregion - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - string ItHeima = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName,ItHeima, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - string ItHeima = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo,ItHeima, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update A_21695MAIN Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update A_21695MAIN Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string ItHeima = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // itheima - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName,ItHeima, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string ItHeima = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, ItHeima,TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - } -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wxENT/wsENT.cs b/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wxENT/wsENT.cs deleted file mode 100644 index a8ffc9f..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/backend/wsSXS/wxENT/wsENT.cs +++ /dev/null @@ -1,1116 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT - { - private MEStc_SXS .clsENT objENT = new MEStc_SXS.clsENT(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - string ItHeima = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName,ItHeima, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - string ItHeima = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo,ItHeima, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update A_21695MAIN Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update A_21695MAIN Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string ItHeima = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // itheima - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName,ItHeima, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string ItHeima = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - if (xmlDoc.DocumentElement.GetElementsByTagName("itheima").Count > 0) - { - if (xmlDoc.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Count > 0) - { - ItHeima = xmlDoc.DocumentElement.GetElementsByTagName("itheima").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, ItHeima,TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - } -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.sln b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.sln deleted file mode 100644 index 85b1902..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.sln +++ /dev/null @@ -1,39 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}" -EndProject -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86 - {D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86 - {C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 3 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccProjectUniqueName0 = ET_Subcontractor.vbproj - SccLocalPath0 = . - SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj - SccProjectName1 = ../../Test - SccLocalPath1 = ..\\..\\Test - SccLocalPath2 = . - EndGlobalSection -EndGlobal diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/ET_Subcontractor.vbproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Application.Designer.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Application.Designer.vb deleted file mode 100644 index 537244b..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Application.Designer.vb +++ /dev/null @@ -1,13 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Application.myapp b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Application.myapp deleted file mode 100644 index 758895d..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Application.myapp +++ /dev/null @@ -1,10 +0,0 @@ - - - false - false - 0 - true - 0 - 1 - true - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/AssemblyInfo.vb deleted file mode 100644 index b0cdd98..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/AssemblyInfo.vb +++ /dev/null @@ -1,35 +0,0 @@ -Imports System -Imports System.Reflection -Imports System.Runtime.InteropServices - -' 組件的一般資訊是由下列的屬性集控制。 -' 變更這些屬性的值即可修改組件的相關 -' 資訊。 - -' 檢閱組件屬性的值 - - - - - - - - - - -'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID - - -' 組件的版本資訊由下列四個值所組成: -' -' 主要版本 -' 次要版本 -' 組建編號 -' 修訂編號 -' -' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 -' 指定為預設值: -' - - - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb deleted file mode 100644 index d2f2e21..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb +++ /dev/null @@ -1 +0,0 @@ - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Resources.Designer.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Resources.Designer.vb deleted file mode 100644 index c146bf2..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Resources.Designer.vb +++ /dev/null @@ -1,63 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - -Imports System - -Namespace My.Resources - - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 - ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 - ''' - _ - Friend Module Resources - - Private resourceMan As Global.System.Resources.ResourceManager - - Private resourceCulture As Global.System.Globalization.CultureInfo - - ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 - ''' - _ - Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager - Get - If Object.ReferenceEquals(resourceMan, Nothing) Then - Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ET_Subcontractor_21695.Resources", GetType(Resources).Assembly) - resourceMan = temp - End If - Return resourceMan - End Get - End Property - - ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 - ''' - _ - Friend Property Culture() As Global.System.Globalization.CultureInfo - Get - Return resourceCulture - End Get - Set - resourceCulture = value - End Set - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Resources.resx b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Settings.Designer.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Settings.Designer.vb deleted file mode 100644 index 17ab98b..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Settings.Designer.vb +++ /dev/null @@ -1,73 +0,0 @@ -'------------------------------------------------------------------------------ -' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 -' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 -' -'------------------------------------------------------------------------------ - -Option Strict On -Option Explicit On - - -Namespace My - - _ - Partial Friend NotInheritable Class MySettings - Inherits Global.System.Configuration.ApplicationSettingsBase - - Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) - -#Region "My.Settings 自动保存功能" -#If _MyType = "WindowsForms" Then - Private Shared addedHandler As Boolean - - Private Shared addedHandlerLockObject As New Object - - _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) - If My.Application.SaveMySettingsOnExit Then - My.Settings.Save() - End If - End Sub -#End If -#End Region - - Public Shared ReadOnly Property [Default]() As MySettings - Get - -#If _MyType = "WindowsForms" Then - If Not addedHandler Then - SyncLock addedHandlerLockObject - If Not addedHandler Then - AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings - addedHandler = True - End If - End SyncLock - End If -#End If - Return defaultInstance - End Get - End Property - End Class -End Namespace - -Namespace My - - _ - Friend Module MySettingsProperty - - _ - Friend ReadOnly Property Settings() As Global.ET_Subcontractor_21695.My.MySettings - Get - Return Global.ET_Subcontractor_21695.My.MySettings.Default - End Get - End Property - End Module -End Namespace diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Settings.settings b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Settings.settings deleted file mode 100644 index 85b890b..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/licenses.licx b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/licenses.licx deleted file mode 100644 index e3f40e2..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/My Project/licenses.licx +++ /dev/null @@ -1,7 +0,0 @@ -Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb -Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractor.resx b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractor.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractor.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractor.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractor.vb deleted file mode 100644 index 3455efe..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractor.vb +++ /dev/null @@ -1,1143 +0,0 @@ -Imports iMESExceptionManager - -Imports Infragistics.Win -Imports Infragistics.Win.UltraWinGrid -Public Class frmSubcontractor - - Inherits COM_Kit.frmBasisTemplat - - Public PrivFunNo As String = defString - - '//WS相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT '宣告Web Service物件? - Dim tmpStringReader As System.IO.StringReader '將字串轉換成可讀入DataSet的物件 - Dim XmlData As String '儲存取回之資料 - Dim XmlSchema As String '儲存取回之資料結構 - Dim InXml As String '儲存呼叫Web Service的傳入參數(Request字串) - Dim OutXml As String '儲存Web Service的傳回值(Response字串) - Dim strIdentity As String '儲存Identity XML字串? - Dim strParameter As String '儲存Parameter XML字串 - - '//資料表相關變數 - - Dim dsENT As New DataSet '資料集:儲存取回之資料? - - Dim tblENTSubcontractor As String '儲存取回資料表的名稱(master)? - Dim tblENTSubcontractorCont As String '明細資料表名稱(detail) - Dim strFilter As String 'Filter string及列印的過濾條件 - - '//其他共用變數 - Dim SubcontractorNo As String 'for Gird to Focus - Dim ContactorName As String 'for DetailGrid to Focus - Dim ugrRow As Infragistics.Win.UltraWinGrid.UltraGridRow - Friend WithEvents btnAdd As Misc.UltraButton - Friend WithEvents btnEdit As Misc.UltraButton - Friend WithEvents btnDel As Misc.UltraButton - Friend WithEvents btnCopy As Misc.UltraButton - Friend WithEvents btnApprove As Misc.UltraButton - Friend WithEvents iugSubcontractor As iMESUltraGrid.iMESUltraGridControl - Dim i As Integer - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.Container - Friend WithEvents iugDetail As iMESUltraGrid.iMESUltraGridControl - Friend WithEvents btnClose As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnEMail As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDCopy As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDDel As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDEdit As Infragistics.Win.Misc.UltraButton - Friend WithEvents btnDAdd As Infragistics.Win.Misc.UltraButton - Private Sub InitializeComponent() - Me.btnClose = New Infragistics.Win.Misc.UltraButton() - Me.btnEMail = New Infragistics.Win.Misc.UltraButton() - Me.btnDCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnDDel = New Infragistics.Win.Misc.UltraButton() - Me.btnDEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDAdd = New Infragistics.Win.Misc.UltraButton() - Me.iugDetail = New iMESUltraGrid.iMESUltraGridControl() - Me.btnAdd = New Infragistics.Win.Misc.UltraButton() - Me.btnEdit = New Infragistics.Win.Misc.UltraButton() - Me.btnDel = New Infragistics.Win.Misc.UltraButton() - Me.btnCopy = New Infragistics.Win.Misc.UltraButton() - Me.btnApprove = New Infragistics.Win.Misc.UltraButton() - Me.iugSubcontractor = New iMESUltraGrid.iMESUltraGridControl() - Me.SuspendLayout() - ' - 'btnClose - ' - Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnClose.Location = New System.Drawing.Point(912, 552) - Me.btnClose.Name = "btnClose" - Me.btnClose.Size = New System.Drawing.Size(88, 32) - Me.btnClose.TabIndex = 18 - Me.btnClose.Text = "Close (&X)" - ' - 'btnEMail - ' - Me.btnEMail.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEMail.Location = New System.Drawing.Point(912, 429) - Me.btnEMail.Name = "btnEMail" - Me.btnEMail.Size = New System.Drawing.Size(88, 32) - Me.btnEMail.TabIndex = 17 - Me.btnEMail.Text = "Mail" - ' - 'btnDCopy - ' - Me.btnDCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDCopy.Location = New System.Drawing.Point(912, 389) - Me.btnDCopy.Name = "btnDCopy" - Me.btnDCopy.Size = New System.Drawing.Size(88, 32) - Me.btnDCopy.TabIndex = 16 - Me.btnDCopy.Text = "Copy" - ' - 'btnDDel - ' - Me.btnDDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDDel.Location = New System.Drawing.Point(912, 349) - Me.btnDDel.Name = "btnDDel" - Me.btnDDel.Size = New System.Drawing.Size(88, 32) - Me.btnDDel.TabIndex = 15 - Me.btnDDel.Text = "DEL" - ' - 'btnDEdit - ' - Me.btnDEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDEdit.Location = New System.Drawing.Point(912, 309) - Me.btnDEdit.Name = "btnDEdit" - Me.btnDEdit.Size = New System.Drawing.Size(88, 32) - Me.btnDEdit.TabIndex = 14 - Me.btnDEdit.Text = "EDIT" - ' - 'btnDAdd - ' - Me.btnDAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDAdd.Location = New System.Drawing.Point(912, 269) - Me.btnDAdd.Name = "btnDAdd" - Me.btnDAdd.Size = New System.Drawing.Size(88, 32) - Me.btnDAdd.TabIndex = 13 - Me.btnDAdd.Text = "ADD" - ' - 'iugDetail - ' - Me.iugDetail.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugDetail.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugDetail.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugDetail.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugDetail.Identity = "IMes" - Me.iugDetail.IdentityForm = "" - Me.iugDetail.LayOutFilePath = "" - Me.iugDetail.Location = New System.Drawing.Point(12, 270) - Me.iugDetail.Name = "iugDetail" - Me.iugDetail.PrintFitWidthToPages = 0 - Me.iugDetail.PrintLandscape = True - Me.iugDetail.PrintPageFooter = "" - Me.iugDetail.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageFooterHeight = 20 - Me.iugDetail.PrintPageHeader = "" - Me.iugDetail.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugDetail.PrintPageHeaderHeight = 20 - Me.iugDetail.PrintZoom = 1.0R - Me.iugDetail.Size = New System.Drawing.Size(894, 314) - Me.iugDetail.TabIndex = 12 - Me.iugDetail.UserNo = "IMes" - ' - 'btnAdd - ' - Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnAdd.Location = New System.Drawing.Point(912, 53) - Me.btnAdd.Name = "btnAdd" - Me.btnAdd.Size = New System.Drawing.Size(88, 32) - Me.btnAdd.TabIndex = 20 - Me.btnAdd.Text = "Add(&A)" - ' - 'btnEdit - ' - Me.btnEdit.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnEdit.Location = New System.Drawing.Point(912, 93) - Me.btnEdit.Name = "btnEdit" - Me.btnEdit.Size = New System.Drawing.Size(88, 32) - Me.btnEdit.TabIndex = 21 - Me.btnEdit.Text = "Edit(&E)" - ' - 'btnDel - ' - Me.btnDel.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnDel.Location = New System.Drawing.Point(912, 133) - Me.btnDel.Name = "btnDel" - Me.btnDel.Size = New System.Drawing.Size(88, 32) - Me.btnDel.TabIndex = 22 - Me.btnDel.Text = "Del(&D)" - ' - 'btnCopy - ' - Me.btnCopy.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnCopy.Location = New System.Drawing.Point(912, 173) - Me.btnCopy.Name = "btnCopy" - Me.btnCopy.Size = New System.Drawing.Size(88, 32) - Me.btnCopy.TabIndex = 23 - Me.btnCopy.Text = "Copy(&C)" - ' - 'btnApprove - ' - Me.btnApprove.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.btnApprove.Location = New System.Drawing.Point(912, 213) - Me.btnApprove.Name = "btnApprove" - Me.btnApprove.Size = New System.Drawing.Size(88, 32) - Me.btnApprove.TabIndex = 24 - Me.btnApprove.Text = "Approve(&Y)" - ' - 'iugSubcontractor - ' - Me.iugSubcontractor.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.iugSubcontractor.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down - Me.iugSubcontractor.GroupBoxPromptText = "Drag a column header here to group by that column." - Me.iugSubcontractor.GroupBoxTextForeColor = System.Drawing.Color.Red - Me.iugSubcontractor.Identity = "IMes" - Me.iugSubcontractor.IdentityForm = "" - Me.iugSubcontractor.LayOutFilePath = "" - Me.iugSubcontractor.Location = New System.Drawing.Point(12, 53) - Me.iugSubcontractor.Name = "iugSubcontractor" - Me.iugSubcontractor.PrintFitWidthToPages = 0 - Me.iugSubcontractor.PrintLandscape = True - Me.iugSubcontractor.PrintPageFooter = "" - Me.iugSubcontractor.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageFooterHeight = 20 - Me.iugSubcontractor.PrintPageHeader = "" - Me.iugSubcontractor.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] - Me.iugSubcontractor.PrintPageHeaderHeight = 20 - Me.iugSubcontractor.PrintZoom = 1.0R - Me.iugSubcontractor.Size = New System.Drawing.Size(894, 192) - Me.iugSubcontractor.TabIndex = 25 - Me.iugSubcontractor.UserNo = "IMes" - ' - 'frmSubcontractor - ' - Me.ClientSize = New System.Drawing.Size(1008, 591) - Me.Controls.Add(Me.btnClose) - Me.Controls.Add(Me.btnApprove) - Me.Controls.Add(Me.btnEMail) - Me.Controls.Add(Me.btnDCopy) - Me.Controls.Add(Me.btnCopy) - Me.Controls.Add(Me.btnDDel) - Me.Controls.Add(Me.iugSubcontractor) - Me.Controls.Add(Me.btnDEdit) - Me.Controls.Add(Me.btnAdd) - Me.Controls.Add(Me.btnDAdd) - Me.Controls.Add(Me.btnDel) - Me.Controls.Add(Me.iugDetail) - Me.Controls.Add(Me.btnEdit) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractor" - Me.Text = "ENT Subcontractor & Contactor" - Me.WindowState = System.Windows.Forms.FormWindowState.Maximized - Me.Controls.SetChildIndex(Me.btnEdit, 0) - Me.Controls.SetChildIndex(Me.iugDetail, 0) - Me.Controls.SetChildIndex(Me.btnDel, 0) - Me.Controls.SetChildIndex(Me.btnDAdd, 0) - Me.Controls.SetChildIndex(Me.btnAdd, 0) - Me.Controls.SetChildIndex(Me.btnDEdit, 0) - Me.Controls.SetChildIndex(Me.iugSubcontractor, 0) - Me.Controls.SetChildIndex(Me.btnDDel, 0) - Me.Controls.SetChildIndex(Me.btnCopy, 0) - Me.Controls.SetChildIndex(Me.btnDCopy, 0) - Me.Controls.SetChildIndex(Me.btnEMail, 0) - Me.Controls.SetChildIndex(Me.btnApprove, 0) - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - Call funiMESUltraGridIni() 'Grid初始設定 - - '//取出資料 - Call funLoadSubcontractor() - - SetIssueState(Issue.Unfrozen) '預設在Unforzen上 - SetSearchFieldName(New String() {"SubcontractorNo", "SubcontractorNaME"}) '設置搜尋欄位 - - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractor_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If Not dsENT Is Nothing Then dsENT.Dispose() - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - Protected Overrides Sub rdoIssue_CheckedChanged(sender As Object, e As EventArgs) - If IsNothing(dsENT) Then Exit Sub - - Select Case GetIssueState() - Case Issue.Unfrozen - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=0" - Case Issue.Pending - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=1" - Case Issue.Active - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=2" - Case Issue.Unused - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = "IssueState=-1" - End Select - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - Call funShowActiveDetail() - End Sub - - Protected Overrides Sub Finalize() - MyBase.Finalize() - End Sub - - Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click - - Dim fSubcontractorDef As New frmSubcontractorDef - - fSubcontractorDef.DefMode = 0 - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End Sub - - Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - '核准狀態為"Unfrozen"者才可修改 - - If Rows(0).Item("IssueState") <> 0 Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-202202", "[%NOT ALLOWED TO EDIT%]"), MsgBoxStyle.Exclamation, Me.Text) - Exit Sub - End If - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 1 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - fSubcontractorDef.Dispose() - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 - - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", CInput(intIssueState), "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOWED TO delete%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click - - - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - 'IsGroupByRow不做任何處理 - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Exit Sub - End If - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractor).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorDef As New frmSubcontractorDef - fSubcontractorDef.DefMode = 2 - fSubcontractorDef.EditDataRow = Rows(0) - fSubcontractorDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - SubcontractorNo = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractor() - - If GetIssueState() = Issue.Unfrozen Then - ugrRow = FindRecordPosition(iugSubcontractor, "SubcontractorNo", SubcontractorNo) - If Not ugrRow Is Nothing Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow = ugrRow - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - End If - - End If - End Sub - - Private Sub btnApprove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnApprove.Click - - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Cursor.Current = Cursors.WaitCursor - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected Then - Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100002", "[%ARE YOU SURE TO APPROVE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugSubcontractor.iMESUltraGrid.Selected.Rows.Count - 1 - intIssueState = Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value - If intIssueState = 0 Then - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("SubcontractorNo").Value.ToString), "") - strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugSubcontractor.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.ApproveSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.ApproveSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.ApproveSubcontractor", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Approve failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - Else - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200021", "[%NOT ALLOW TO APPROVE%]"), MsgBoxStyle.Exclamation, Me.Text) - End If - Next - - XmlDoc = Nothing - - If blnReLoad Then - - Call funLoadSubcontractor() - - Call funShowActiveDetail() - - End If - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDAdd.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - - 'Dim Rows As DataRow() - Dim fSubcontractorContDef As New frmSubcontractorContDef - - fSubcontractorContDef.DefMode = 0 - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - End If - End Sub - - Private Sub btnDEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDEdit.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 1 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnDDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDDel.Click - - - '1.先檢查是否為單筆,是:將其Selecte - If Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - - Cursor.Current = Cursors.WaitCursor - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow.Selected Then - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - - '2.Multi - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Count > 0 Then - If Me.iugDetail.iMESUltraGrid.Selected.Rows.Item(0).IsGroupByRow Then - Exit Sub 'Selected.Rows,不會包含GroupRow & 一般的Row在一起,故若是GroupRow不做任何處理 - End If - If iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-100001", "[%ARE YOU SURE TO DELETE ALL SELECTED RECORDS%]"), MsgBoxStyle.OkCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton2, Me.Text) = MsgBoxResult.Cancel Then - Exit Sub - End If - - '共用資料 - Dim XmlDoc As New XmlDocument - Dim blnReLoad As Boolean = False - Dim intIssueState As Integer - - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - For i = 0 To Me.iugDetail.iMESUltraGrid.Selected.Rows.Count - 1 - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", CInput(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString), "") - strParameter = strParameter & CombineXMLParameter("ContactorName", "ContactorName", "String", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ContactorName").Value.ToString), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - Try - ' 2016 YF, OutXml = wsENT.DelSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.DelSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.DelSubcontractorCont", InXml) - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - If Not blnReLoad Then blnReLoad = True - Else - '找出Exception訊並顯示出來 - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit For - End If - Catch ex As Exception - 'MsgBox("Unexpected Error. Delete failed," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - Exit For - End Try - - Next - - XmlDoc = Nothing - - If blnReLoad Then Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - End If - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub btnDCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDCopy.Click - - If Not Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - - '找出DataSet中在目前游標列的資料列(DataRow) - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - Dim fSubcontractorContDef As New frmSubcontractorContDef - fSubcontractorContDef.DefMode = 2 - fSubcontractorContDef.EditDataRow = Rows(0) - fSubcontractorContDef.SubcontractorNo = Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString - fSubcontractorContDef.ShowDialog(Me) - - If gReturnKeyValue = "" Then Exit Sub - - ContactorName = gReturnKeyValue - - '重新取出資料 - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - - ugrRow = FindRecordPosition(iugDetail, "ContactorName", ContactorName) - If Not ugrRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.ActiveRow = ugrRow - Me.iugDetail.iMESUltraGrid.ActiveRow.Selected = True - End If - Else - - Exit Sub - End If - - End Sub - - Private Sub btnEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEMail.Click - - If Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then - If iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub - Dim Rows As DataRow() - Dim proMail As New System.Diagnostics.Process - Dim strAccount As String - - Rows = dsENT.Tables(tblENTSubcontractorCont).Select("SubcontractorNo = '" _ - & Replace(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString, "'", "''") & "'" _ - & " And ContactorName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ContactorName").Value.ToString, "'", "''") & "'") - - strAccount = "mailto:" & Rows(0).Item("EMail").ToString - proMail.Start(strAccount) - - End If - - End Sub - - Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click - Me.Close() - End Sub - - Protected Overrides Sub btnQuery_Click(sender As Object, e As EventArgs) - Cursor.Current = Cursors.WaitCursor - - funLoadSubcontractor() - - Cursor.Current = Cursors.Default - End Sub - -#Region "Ultra Grid" - - Private Sub iugSubcontractor_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugSubcontractor.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("SubcontractorName") - .Header.Caption = "SubcontractorName" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("ItHeima") - .Header.Caption = "ItHeima" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("IssueState") - .Header.Caption = "IssueState" - .Width = 114 - .Hidden = True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 8 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - - Private Sub iugSubcontractor_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugSubcontractor.iMESUltraGrid_AfterRowActivate - - 'IsGroupByRow不做任何處理 - If Not iugSubcontractor.iMESUltraGrid.ActiveRow.IsGroupByRow Then - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - Else - Exit Sub - End If - - End Sub - - Private Sub iugDetail_iMESUltraGrid_InitializeLayOut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugDetail.iMESUltraGrid_InitializeLayOut - - With e.Layout - With .Bands(0).Columns("SubcontractorNo") - .Header.Caption = "SubcontractorNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 0 - End With - With .Bands(0).Columns("ContactorName") - .Header.Caption = "ContactorName" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 1 - End With - With .Bands(0).Columns("TelNo") - .Header.Caption = "TelNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 2 - End With - With .Bands(0).Columns("FaxNo") - .Header.Caption = "FaxNo" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 3 - End With - With .Bands(0).Columns("Title") - .Header.Caption = "Title" - .Width = 110 - .Hidden = False - .Header.VisiblePosition = 4 - End With - With .Bands(0).Columns("Address") - .Header.Caption = "Address" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 5 - End With - With .Bands(0).Columns("EMail") - .Header.Caption = "EMail" - .Width = 150 - .Hidden = False - .CellAppearance.ForeColor = System.Drawing.Color.Blue - .CellAppearance.FontData.Underline = DefaultableBoolean.True - .Header.VisiblePosition = 6 - End With - With .Bands(0).Columns("Description") - .Header.Caption = "Description" - .Width = 200 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 7 - End With - With .Bands(0).Columns("Creator") - .Header.Caption = "Creator" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 8 - End With - With .Bands(0).Columns("CreateDate") - .Header.Caption = "CreateDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 9 - End With - With .Bands(0).Columns("Reviser") - .Header.Caption = "Reviser" - .Width = 80 - .Hidden = False - .Header.VisiblePosition = 10 - End With - With .Bands(0).Columns("ReviseDate") - .Header.Caption = "ReviseDate" - .Width = 150 - .Format = "yyyy/MM/dd HH:mm:ss" - .Hidden = False - .Header.VisiblePosition = 11 - End With - With .Bands(0).Columns("ItHeima") - .Header.Caption = "ItHeima" - .Width = 110 - .Hidden = False - .CellMultiLine = DefaultableBoolean.True - .Header.VisiblePosition = 12 - End With - With e.Layout.Bands(0).Columns("DataStamp") - .Hidden = True - End With - End With - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - End Sub - -#End Region - -#Region "Load Function" - - '//取出tblENTSubcontractor 外包商資料 - - Private Sub funLoadSubcontractor() - - '先判斷是否dataset中已有ENTSubcontractor之datatable,若有,需先remove否則會有錯誤 - If Not IsNothing(dsENT.Tables(tblENTSubcontractor)) Then - dsENT.Tables.Remove(tblENTSubcontractor) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - '加上IssueState要求取出所有資料 - strParameter = CombineXMLParameter("issuestate", "IssueState", "Integer", defInteger, "") - '加上查詢條件 cboSearchFieldName,txtSearchFieldValue - strParameter += CombineXMLQueryCondition() - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractor(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractor", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractor", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractor = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractor").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractor").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - strFilter = "" - Select Case GetIssueState() - Case Issue.Unfrozen - strFilter = FilterByInteger(strFilter, "IssueState", 0) - Case Issue.Pending - strFilter = FilterByInteger(strFilter, "IssueState", 1) - Case Issue.Active - strFilter = FilterByInteger(strFilter, "IssueState", 2) - Case Issue.Unused - strFilter = FilterByInteger(strFilter, "IssueState", -1) - End Select - - dsENT.Tables(tblENTSubcontractor).DefaultView.RowFilter = strFilter - dsENT.Tables(tblENTSubcontractor).DefaultView.Sort = "SubcontractorNo" - - Me.iugSubcontractor.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractor).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - Exit Sub - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - '//取出tblENTSubcontractorCont聯絡人資料 - - Private Sub funLoadSubcontractorCont(ByRef SubcontractorNo As String) - - If Not IsNothing(dsENT.Tables(tblENTSubcontractorCont)) Then - dsENT.Tables.Remove(tblENTSubcontractorCont) - End If - - '組InXml的字串 - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("SubcontractorNo", "SubcontractorNo", "String", SubcontractorNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - Try - ' 2016 YF, OutXml = wsENT.LoadSubcontractorCont(InXml) - 'OutXml = InvokeSrv("wsENT.LoadSubcontractorCont", InXml) - OutXml = InvokeSrv("SXS.wsENT.LoadSubcontractorCont", InXml) - - Dim XmlDoc As New XmlDocument '處理Xml字串之物件? - - '利用XmlDoc物件處理ReturnValue - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - '讀取取出資料表之名稱 - - tblENTSubcontractorCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadSubcontractorcont").Item(0).SelectNodes("name").Item(0).InnerXml - '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 - XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("schema").Item(0).InnerXml - If XmlSchema <> "" Then - '將XML讀入String Reader object中,因為Dataset讀入XML時必須透過String Reader物件 - tmpStringReader = New System.IO.StringReader(XmlSchema) - dsENT.ReadXmlSchema(tmpStringReader) - tmpStringReader.Close() - End If - - '取出Data - XmlData = XmlDoc.DocumentElement.GetElementsByTagName("loadSubcontractorcont").Item(0).SelectNodes("value").Item(0).InnerXml - If XmlData <> "" Then - tmpStringReader = New System.IO.StringReader(XmlData) - dsENT.ReadXml(tmpStringReader, XmlReadMode.InferSchema) - tmpStringReader.Close() - End If - - Me.iugDetail.iMESUltraGrid.DataSource = dsENT.Tables(tblENTSubcontractorCont).DefaultView - - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - XmlDoc = Nothing - - Catch ex As Exception - 'MsgBox("Unexpected Error. Load ENT Subcontractor Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - End Sub - - Private Sub funShowActiveDetail() - - If Me.iugSubcontractor.iMESUltraGrid.ActiveRow Is Nothing Then - Me.iugDetail.iMESUltraGrid.DataSource = Nothing - Else - Call funLoadSubcontractorCont(Me.iugSubcontractor.iMESUltraGrid.ActiveRow.Cells("SubcontractorNo").Value.ToString) - End If - - End Sub - - Private Sub funiMESUltraGridIni() - - 'iugSubcontractor 初始設定 - With Me.iugSubcontractor.iMESUltraGrid - .Text = "" - .DisplayLayout.GroupByBox.Hidden = True - .DisplayLayout.UseFixedHeaders = False - End With - - '系統會以UserNo做為Layout的檔名 - - iugSubcontractor.UserNo = gUserNo - - 'iugDetail 初始設定 - With Me.iugDetail.iMESUltraGrid.DisplayLayout - .GroupByBox.Hidden = True - .Override.ExpansionIndicator = ShowExpansionIndicator.Default - .ViewStyle = ViewStyle.SingleBand - .RowConnectorStyle = RowConnectorStyle.Default - - End With - - '系統會以UserNo做為Layout的檔名 - - iugDetail.UserNo = gUserNo - - End Sub - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorContDef.resx b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorContDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorContDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorContDef.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorContDef.vb deleted file mode 100644 index e0712f6..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorContDef.vb +++ /dev/null @@ -1,683 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorContDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - - Public SubcontractorNo As String = defString - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents txt21695 As TextBox - Friend WithEvents Label21695 As Label - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblAddress As System.Windows.Forms.Label - Friend WithEvents lblEMail As System.Windows.Forms.Label - Friend WithEvents lblTitle As System.Windows.Forms.Label - Friend WithEvents lblFaxNo As System.Windows.Forms.Label - Friend WithEvents lblTelNo As System.Windows.Forms.Label - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblContactorName As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox() - Me.txt21695 = New System.Windows.Forms.TextBox() - Me.Label21695 = New System.Windows.Forms.Label() - Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.lblAddress = New System.Windows.Forms.Label() - Me.lblEMail = New System.Windows.Forms.Label() - Me.lblTitle = New System.Windows.Forms.Label() - Me.lblFaxNo = New System.Windows.Forms.Label() - Me.lblTelNo = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblContactorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorContData.SuspendLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 322) - Me.gbxBasisData.Size = New System.Drawing.Size(472, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(396, 401) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(208, 401) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(302, 401) - ' - 'gbxSubcontractorContData - ' - Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorContData.Controls.Add(Me.txt21695) - Me.gbxSubcontractorContData.Controls.Add(Me.Label21695) - Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress) - Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle) - Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName) - Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo) - Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8) - Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData" - Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306) - Me.gbxSubcontractorContData.TabIndex = 0 - Me.gbxSubcontractorContData.TabStop = False - Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data" - ' - 'txt21695 - ' - Me.txt21695.Location = New System.Drawing.Point(340, 28) - Me.txt21695.Name = "txt21695" - Me.txt21695.Size = New System.Drawing.Size(83, 25) - Me.txt21695.TabIndex = 17 - Me.txt21695.Text = "21695" - ' - 'Label21695 - ' - Me.Label21695.AutoSize = True - Me.Label21695.Location = New System.Drawing.Point(273, 29) - Me.Label21695.Name = "Label21695" - Me.Label21695.Size = New System.Drawing.Size(43, 17) - Me.Label21695.TabIndex = 16 - Me.Label21695.Text = "21695" - ' - 'txtAddress - ' - Me.txtAddress.Location = New System.Drawing.Point(120, 152) - Me.txtAddress.Name = "txtAddress" - Me.txtAddress.Size = New System.Drawing.Size(336, 26) - Me.txtAddress.TabIndex = 13 - ' - 'txtEMail - ' - Me.txtEMail.Location = New System.Drawing.Point(320, 120) - Me.txtEMail.Name = "txtEMail" - Me.txtEMail.Size = New System.Drawing.Size(136, 26) - Me.txtEMail.TabIndex = 11 - ' - 'txtTitle - ' - Me.txtTitle.Location = New System.Drawing.Point(120, 120) - Me.txtTitle.Name = "txtTitle" - Me.txtTitle.Size = New System.Drawing.Size(114, 26) - Me.txtTitle.TabIndex = 9 - ' - 'txtFaxNo - ' - Me.txtFaxNo.Location = New System.Drawing.Point(320, 88) - Me.txtFaxNo.Name = "txtFaxNo" - Me.txtFaxNo.Size = New System.Drawing.Size(136, 26) - Me.txtFaxNo.TabIndex = 7 - ' - 'lblAddress - ' - Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblAddress.Location = New System.Drawing.Point(24, 154) - Me.lblAddress.Name = "lblAddress" - Me.lblAddress.Size = New System.Drawing.Size(86, 14) - Me.lblAddress.TabIndex = 12 - Me.lblAddress.Text = "Address" - Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblEMail - ' - Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblEMail.Location = New System.Drawing.Point(248, 123) - Me.lblEMail.Name = "lblEMail" - Me.lblEMail.Size = New System.Drawing.Size(64, 14) - Me.lblEMail.TabIndex = 10 - Me.lblEMail.Text = "EMail" - Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTitle - ' - Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTitle.Location = New System.Drawing.Point(24, 121) - Me.lblTitle.Name = "lblTitle" - Me.lblTitle.Size = New System.Drawing.Size(86, 14) - Me.lblTitle.TabIndex = 8 - Me.lblTitle.Text = "Title" - Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblFaxNo - ' - Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblFaxNo.Location = New System.Drawing.Point(248, 90) - Me.lblFaxNo.Name = "lblFaxNo" - Me.lblFaxNo.Size = New System.Drawing.Size(64, 14) - Me.lblFaxNo.TabIndex = 6 - Me.lblFaxNo.Text = "FaxNo" - Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblTelNo - ' - Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTelNo.Location = New System.Drawing.Point(24, 90) - Me.lblTelNo.Name = "lblTelNo" - Me.lblTelNo.Size = New System.Drawing.Size(86, 14) - Me.lblTelNo.TabIndex = 4 - Me.lblTelNo.Text = "TelNo" - Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(120, 184) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(336, 108) - Me.txtDescription.TabIndex = 15 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(24, 186) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(86, 14) - Me.lblDescription.TabIndex = 14 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14) - Me.lblSubcontractorNo.TabIndex = 0 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblContactorName - ' - Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblContactorName.Location = New System.Drawing.Point(24, 59) - Me.lblContactorName.Name = "lblContactorName" - Me.lblContactorName.Size = New System.Drawing.Size(86, 14) - Me.lblContactorName.TabIndex = 2 - Me.lblContactorName.Text = "Contactor Name" - Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.ReadOnly = True - Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 26) - Me.txtSubcontractorNo.TabIndex = 1 - Me.txtSubcontractorNo.TabStop = False - ' - 'txtContactorName - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Appearance = Appearance1 - Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtContactorName.Location = New System.Drawing.Point(120, 56) - Me.txtContactorName.Name = "txtContactorName" - Me.txtContactorName.Size = New System.Drawing.Size(160, 26) - Me.txtContactorName.TabIndex = 3 - ' - 'txtTelNo - ' - Me.txtTelNo.Location = New System.Drawing.Point(120, 88) - Me.txtTelNo.Name = "txtTelNo" - Me.txtTelNo.Size = New System.Drawing.Size(114, 26) - Me.txtTelNo.TabIndex = 5 - ' - 'frmSubcontractorContDef - ' - Me.ClientSize = New System.Drawing.Size(496, 446) - Me.Controls.Add(Me.gbxSubcontractorContData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorContDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Contactor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorContData.ResumeLayout(False) - Me.gbxSubcontractorContData.PerformLayout() - CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據() - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - If DefMode = 0 Or DefMode = 2 Then - SetCreateDate(Now) - SetCreator(gUserNo) - End If - If Not EditDataRow Is Nothing Then '修改 or Copy - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtContactorName.Text = EditDataRow.Item("ContactorName").ToString - txtTelNo.Text = EditDataRow.Item("TelNo").ToString - txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString - txtTitle.Text = EditDataRow.Item("Title").ToString - txtAddress.Text = EditDataRow.Item("Address").ToString - txtEMail.Text = EditDataRow.Item("EMail").ToString - txt21695.Text = EditDataRow.Item("ItHeima").ToString - 'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料) - txtDescription.Text = EditDataRow.Item("Description").ToString - If DefMode = 1 Then - If (Not IsDBNull(EditDataRow("Creator"))) Then - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetCreator(EditDataRow.Item("Creator").ToString) - End If - End If - End If - - If DefMode = 0 Then 'Add - txtSubcontractorNo.Text = SubcontractorNo - SetCreateDate(Now) - SetCreator(gUserNo) - ElseIf DefMode = 1 Then 'Edit - txtContactorName.ReadOnly = True - SetReviseDate(Now) - SetReviser(gUserNo) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtContactorName.Focus() - Else - txtTelNo.Focus() - End If - - txtEMail.Text = "" - btnApplyEnabled = False - Cursor.Current = Cursors.Default - - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter - txtContactorName.SelectAll() - End Sub - - Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave - If txtContactorName.Text <> "" And txtEMail.Text = "" Then - txtEMail.Text = txtContactorName.Text & "@" - End If - txtContactorName.Text = UCase(txtContactorName.Text) - End Sub - - Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter - txtTelNo.SelectAll() - End Sub - - Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter - txtFaxNo.SelectAll() - End Sub - - Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter - txtTitle.SelectAll() - End Sub - - Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter - txtEMail.SelectAll() - End Sub - - Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter - txtAddress.SelectAll() - End Sub - - Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查() - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - If txtContactorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtContactorName.Focus() - Exit Function - End If - - '****************************************************************************** - '2.寫回資料庫() - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "") - strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "") - strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "") - strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "") - strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "") - strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - strParameter = strParameter & CombineXMLParameter("itheima", "ItHeima", "String", txt21695.Text, "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml) - - Else 'Edit - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - ' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtContactorName.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function -#End Region - - - Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - - -End Class - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorDef.resx b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorDef.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorDef.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorDef.vb b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorDef.vb deleted file mode 100644 index ee2c234..0000000 --- a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/frmSubcontractorDef.vb +++ /dev/null @@ -1,449 +0,0 @@ -Imports iMESExceptionManager - -Public Class frmSubcontractorDef - - Inherits COM_Kit.frmDefTemplat - - '//Public Variables - Public EditDataRow As DataRow - Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy - Public PrivFunNo As String = defString - - '//Web Service相關變數 - ' 2016 YF, Dim wsENT As New wsENT.wsENT - Dim InXml As String - Dim OutXml As String - - Dim strIdentity As String - Dim strParameter As String - Friend WithEvents txt21695 As TextBox - Friend WithEvents Label21695 As Label - Dim intDataStamp As Integer '紀錄DataStamp - -#Region " Windows Form Designer generated code " - - Public Sub New() - MyBase.New() - - 'This call is required by the Windows Form Designer. - InitializeComponent() - - 'Add any initialization after the InitializeComponent() call - - End Sub - - 'Form overrides dispose to clean up the component list. - Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing Then - If Not (components Is Nothing) Then - components.Dispose() - End If - End If - MyBase.Dispose(disposing) - End Sub - - 'Required by the Windows Form Designer - Private components As System.ComponentModel.IContainer - - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. - Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox - Friend WithEvents lblDescription As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label - Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label - Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox - Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor - Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor - Private Sub InitializeComponent() - Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance() - Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox() - Me.txt21695 = New System.Windows.Forms.TextBox() - Me.Label21695 = New System.Windows.Forms.Label() - Me.txtDescription = New System.Windows.Forms.RichTextBox() - Me.lblDescription = New System.Windows.Forms.Label() - Me.lblSubcontractorNo = New System.Windows.Forms.Label() - Me.lblSubcontractorName = New System.Windows.Forms.Label() - Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() - Me.gbxSubcontractorData.SuspendLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit() - Me.SuspendLayout() - ' - 'gbxBasisData - ' - Me.gbxBasisData.Location = New System.Drawing.Point(12, 185) - Me.gbxBasisData.Size = New System.Drawing.Size(479, 70) - ' - 'btnApply - ' - Me.btnApply.Location = New System.Drawing.Point(403, 264) - ' - 'btnConfirm - ' - Me.btnConfirm.Location = New System.Drawing.Point(215, 264) - ' - 'btnClose - ' - Me.btnClose.Location = New System.Drawing.Point(309, 264) - ' - 'gbxSubcontractorData - ' - Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ - Or System.Windows.Forms.AnchorStyles.Left) _ - Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.gbxSubcontractorData.Controls.Add(Me.txt21695) - Me.gbxSubcontractorData.Controls.Add(Me.Label21695) - Me.gbxSubcontractorData.Controls.Add(Me.txtDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblDescription) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo) - Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName) - Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8) - Me.gbxSubcontractorData.Name = "gbxSubcontractorData" - Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169) - Me.gbxSubcontractorData.TabIndex = 7 - Me.gbxSubcontractorData.TabStop = False - Me.gbxSubcontractorData.Text = "Subcontractor Data" - ' - 'txt21695 - ' - Me.txt21695.Location = New System.Drawing.Point(380, 23) - Me.txt21695.Name = "txt21695" - Me.txt21695.Size = New System.Drawing.Size(83, 25) - Me.txt21695.TabIndex = 19 - Me.txt21695.Text = "21695" - ' - 'Label21695 - ' - Me.Label21695.AutoSize = True - Me.Label21695.Location = New System.Drawing.Point(313, 24) - Me.Label21695.Name = "Label21695" - Me.Label21695.Size = New System.Drawing.Size(43, 17) - Me.Label21695.TabIndex = 18 - Me.Label21695.Text = "21695" - ' - 'txtDescription - ' - Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtDescription.Location = New System.Drawing.Point(128, 86) - Me.txtDescription.Name = "txtDescription" - Me.txtDescription.Size = New System.Drawing.Size(334, 67) - Me.txtDescription.TabIndex = 2 - Me.txtDescription.Text = "" - ' - 'lblDescription - ' - Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblDescription.Location = New System.Drawing.Point(56, 88) - Me.lblDescription.Name = "lblDescription" - Me.lblDescription.Size = New System.Drawing.Size(64, 14) - Me.lblDescription.TabIndex = 13 - Me.lblDescription.Text = "Description" - Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorNo - ' - Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24) - Me.lblSubcontractorNo.Name = "lblSubcontractorNo" - Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32) - Me.lblSubcontractorNo.TabIndex = 5 - Me.lblSubcontractorNo.Text = "Subcontractor No" - Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'lblSubcontractorName - ' - Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56) - Me.lblSubcontractorName.Name = "lblSubcontractorName" - Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32) - Me.lblSubcontractorName.TabIndex = 9 - Me.lblSubcontractorName.Text = "Subcontractor Name" - Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight - ' - 'txtSubcontractorNo - ' - Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Appearance = Appearance1 - Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24) - Me.txtSubcontractorNo.Name = "txtSubcontractorNo" - Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 26) - Me.txtSubcontractorNo.TabIndex = 0 - ' - 'txtSubcontractorName - ' - Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Appearance = Appearance2 - Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) - Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55) - Me.txtSubcontractorName.Name = "txtSubcontractorName" - Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 26) - Me.txtSubcontractorName.TabIndex = 1 - ' - 'frmSubcontractorDef - ' - Me.ClientSize = New System.Drawing.Size(503, 309) - Me.Controls.Add(Me.gbxSubcontractorData) - Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.Name = "frmSubcontractorDef" - Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide - Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen - Me.Text = "ENT Subcontractor Define" - Me.Controls.SetChildIndex(Me.btnClose, 0) - Me.Controls.SetChildIndex(Me.btnConfirm, 0) - Me.Controls.SetChildIndex(Me.btnApply, 0) - Me.Controls.SetChildIndex(Me.gbxBasisData, 0) - Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0) - CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() - Me.gbxSubcontractorData.ResumeLayout(False) - Me.gbxSubcontractorData.PerformLayout() - CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit() - Me.ResumeLayout(False) - - End Sub - -#End Region - - Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load - - Cursor.Current = Cursors.WaitCursor - - Select Case DefMode - Case 0 - Me.Text = Me.Text & "(ADD)" - Case 1 - Me.Text = Me.Text & "(EDIT)" - Case 2 - Me.Text = Me.Text & "(Copy)" - Case Else - Me.Text = Me.Text & "(Unknown)" - End Select - - '做為MainForm判斷是否重新LoadData的依據 - gReturnKeyValue = "" - - ' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString) - ' 2016 YF, wsENT.EnableDecompression = True - - If Not EditDataRow Is Nothing Then - txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString - txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString - txt21695.Text = EditDataRow.Item("ItHeima").ToString - 'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 - txtDescription.Text = EditDataRow.Item("Description").ToString - End If - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - SetCreator(gUserNo) - SetCreateDate(Now) - ElseIf DefMode = 1 Then 'Edit - txtSubcontractorNo.ReadOnly = True - SetCreator(EditDataRow.Item("Creator").ToString) - SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate"))) - SetReviser(gUserNo) - SetReviseDate(Now) - intDataStamp = EditDataRow.Item("DataStamp") - End If - - btnApplyEnabled = False - - '語系切換 - Call ExeChangeResource(Me, gLanguageMode) - ExeGroupControlPriv(Me, PrivFunNo) - - Cursor.Current = Cursors.Default - - End Sub - - Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - End If - End Sub - - Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - Me.Close() - - Cursor.Current = Cursors.Default - End Sub - - Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - Me.Close() - End Sub - - Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) - - Cursor.Current = Cursors.WaitCursor - - If funAddorEdit(sender) < 0 Then Exit Sub - - If DefMode = 0 Or DefMode = 2 Then - txtSubcontractorNo.Focus() - Else - txtSubcontractorName.Focus() - - End If - - Cursor.Current = Cursors.Default - btnApplyEnabled = False - - End Sub - - Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - ' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose() - End Sub - -#Region "Control KeyPress" - - Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter - txtSubcontractorNo.SelectAll() - End Sub - - Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave - txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text) - End Sub - - Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter - txtSubcontractorName.SelectAll() - End Sub - - Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress - If e.KeyChar = Convert.ToChar(13) Then - SendKeys.Send("{TAB}") - End If - End Sub - - Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged - btnApplyEnabled = True - End Sub - - Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter - txtDescription.SelectAll() - End Sub - - Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged - btnApplyEnabled = True - End Sub - -#End Region - -#Region "Others" - - Private Function funAddorEdit(sender As Object) As Integer - - funAddorEdit = -1 - - '****************************************************************************** - '1.基本檢查 - '****************************************************************************** - If txtSubcontractorNo.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorNo.Focus() - Exit Function - End If - - If txtSubcontractorName.Text = "" Then - iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text) - txtSubcontractorName.Focus() - Exit Function - End If - - '2. - '****************************************************************************** - '寫回資料庫 - '****************************************************************************** - Dim XmlDoc As New XmlDocument - - Try - strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) - strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "") - strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "") - strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "") - strParameter = strParameter & CombineXMLParameter("itheima", "ItHeima", "String", txt21695.Text, "") - - - If DefMode = 0 Or DefMode = 2 Then 'Add or Copy - strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "") - strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.AddSubcontractor", InXml) - - Else - '修改 - strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "") - ' 增加Datastamp - strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "") - InXml = CombineXMLRequest(strIdentity, strParameter) - - ' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml) - OutXml = InvokeSrv("SXS.wsENT.EditSubcontractor", InXml) - - End If - - XmlDoc.LoadXml(OutXml) - If ChkExecutionSuccess(XmlDoc) Then - gReturnKeyValue = txtSubcontractorNo.Text - - funAddorEdit = 0 - If sender.Equals(btnApply) Then - intDataStamp += 1 - End If - Else - ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) - End If - - Catch ex As Exception - 'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation) - ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) - End Try - - XmlDoc = Nothing - - End Function - - - - - -#End Region - -End Class - diff --git a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/iMES.snk b/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/MESWin/SYS6/21695韦海桑/frontend/ET_Subcontractor/iMES.snk and /dev/null differ diff --git a/SRC/MESWin/SYS6/新建 文本文档.txt b/SRC/MESWin/SYS6/新建 文本文档.txt deleted file mode 100644 index e69de29..0000000 diff --git a/SRC/MESWin/Test/My Project/Application.Designer.vb b/SRC/MESWin/Test/My Project/Application.Designer.vb index 537244b..4f9342a 100644 --- a/SRC/MESWin/Test/My Project/Application.Designer.vb +++ b/SRC/MESWin/Test/My Project/Application.Designer.vb @@ -1,10 +1,10 @@ '------------------------------------------------------------------------------ ' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 +' 這段程式碼是由工具產生的。 +' 執行階段版本:4.0.30319.42000 ' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 +' 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, +' 變更將會遺失。 ' '------------------------------------------------------------------------------ diff --git a/SRC/MESWin/Test/My Project/Resources.Designer.vb b/SRC/MESWin/Test/My Project/Resources.Designer.vb index ba975fa..3995654 100644 --- a/SRC/MESWin/Test/My Project/Resources.Designer.vb +++ b/SRC/MESWin/Test/My Project/Resources.Designer.vb @@ -1,10 +1,10 @@ '------------------------------------------------------------------------------ ' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 +' 這段程式碼是由工具產生的。 +' 執行階段版本:4.0.30319.42000 ' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 +' 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, +' 變更將會遺失。 ' '------------------------------------------------------------------------------ @@ -15,14 +15,14 @@ Imports System Namespace My.Resources - '此类是由 StronglyTypedResourceBuilder - '类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - '若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - '(以 /str 作为命令选项),或重新生成 VS 项目。 + '這個類別是自動產生的,是利用 StronglyTypedResourceBuilder + '類別透過 ResGen 或 Visual Studio 這類工具。 + '若要加入或移除成員,請編輯您的 .ResX 檔,然後重新執行 ResGen + '(利用 /str 選項),或重建您的 VS 專案。 ''' - ''' 一个强类型的资源类,用于查找本地化的字符串等。 + ''' 用於查詢當地語系化字串等的強類型資源類別。 ''' - _ @@ -33,7 +33,7 @@ Namespace My.Resources Private resourceCulture As Global.System.Globalization.CultureInfo ''' - ''' 返回此类使用的缓存的 ResourceManager 实例。 + ''' 傳回這個類別使用的快取的 ResourceManager 執行個體。 ''' _ Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager @@ -47,8 +47,8 @@ Namespace My.Resources End Property ''' - ''' 重写当前线程的 CurrentUICulture 属性,对 - ''' 使用此强类型资源类的所有资源查找执行重写。 + ''' 覆寫目前執行緒的 CurrentUICulture 屬性,對象是所有 + ''' 使用這個強類型資源類別的資源查閱。 ''' _ Friend Property Culture() As Global.System.Globalization.CultureInfo @@ -61,7 +61,7 @@ Namespace My.Resources End Property ''' - ''' 查找 System.Byte[] 类型的本地化资源。 + ''' 查詢類型 System.Byte[] 的當地語系化資源。 ''' Friend ReadOnly Property iMES() As Byte() Get diff --git a/SRC/MESWin/Test/My Project/Settings.Designer.vb b/SRC/MESWin/Test/My Project/Settings.Designer.vb index 9244dd0..d0b470b 100644 --- a/SRC/MESWin/Test/My Project/Settings.Designer.vb +++ b/SRC/MESWin/Test/My Project/Settings.Designer.vb @@ -1,10 +1,10 @@ '------------------------------------------------------------------------------ ' -' 此代码由工具生成。 -' 运行时版本:4.0.30319.42000 +' 這段程式碼是由工具產生的。 +' 執行階段版本:4.0.30319.42000 ' -' 对此文件的更改可能会导致不正确的行为,并且如果 -' 重新生成代码,这些更改将会丢失。 +' 對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼, +' 變更將會遺失。 ' '------------------------------------------------------------------------------ @@ -15,21 +15,21 @@ Option Explicit On Namespace My _ Partial Friend NotInheritable Class MySettings Inherits Global.System.Configuration.ApplicationSettingsBase Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) -#Region "My.Settings 自动保存功能" +#Region "My.Settings 自動儲存功能" #If _MyType = "WindowsForms" Then Private Shared addedHandler As Boolean Private Shared addedHandlerLockObject As New Object _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) If My.Application.SaveMySettingsOnExit Then My.Settings.Save() End If diff --git a/SRC/MESWin/Test/Test.vbproj b/SRC/MESWin/Test/Test.vbproj index d1919df..dc4d40c 100644 --- a/SRC/MESWin/Test/Test.vbproj +++ b/SRC/MESWin/Test/Test.vbproj @@ -10,7 +10,7 @@ Test 512 WindowsFormsWithCustomSubMain - v4.6.1 + v4.6.2 @@ -67,29 +67,6 @@ iMES.snk - - true - true - true - bin\Debug\ - Test.xml - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - full - AnyCPU - MinimumRecommendedRules.ruleset - - - true - bin\Release\ - Test.xml - true - 0 - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - pdbonly - AnyCPU - MinimumRecommendedRules.ruleset - False diff --git a/SRC/MESWin/Test/app.config b/SRC/MESWin/Test/app.config index 0899833..48769a1 100644 --- a/SRC/MESWin/Test/app.config +++ b/SRC/MESWin/Test/app.config @@ -25,4 +25,4 @@ - + diff --git a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_SXS.csproj b/SRC/MEStc_ABC/MEStc_ABC.csproj similarity index 93% rename from SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_SXS.csproj rename to SRC/MEStc_ABC/MEStc_ABC.csproj index 0854ab1..49ee504 100644 --- a/SRC/MESWin/SYS4/21699jt/MEStc_SXS/MEStc_SXS.csproj +++ b/SRC/MEStc_ABC/MEStc_ABC.csproj @@ -9,8 +9,8 @@ {8CC8664F-C718-0888-187B-600F20E362E0} Library - MEStc_SXS - MEStc_SXS + MEStc_ABC + MEStc_ABC 512 Windows v4.6.2 @@ -27,7 +27,7 @@ true true ..\MES_S_DLL\ - ..\MES_S_DLL\MEStc_SXS.xml + ..\MES_S_DLL\MEStc_ABC.xml 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 0 false @@ -112,11 +112,16 @@ - + + + + + + - - \ No newline at end of file diff --git a/SRC/MEStc_SXS/MEStc_SXS.sln b/SRC/MEStc_SXS/MEStc_SXS.sln deleted file mode 100644 index 22ddfea..0000000 --- a/SRC/MEStc_SXS/MEStc_SXS.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32630.194 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MEStc_SXS", "MEStc_SXS.csproj", "{8CC8664F-C718-0888-187B-600F20E362E0}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8CC8664F-C718-0888-187B-600F20E362E0}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {20814751-26E2-4F61-9643-BFEDC7384E35} - EndGlobalSection -EndGlobal diff --git a/SRC/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs b/SRC/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs deleted file mode 100644 index 8c4e437..0000000 --- a/SRC/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs +++ /dev/null @@ -1 +0,0 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/MEStc_SXS/tcENT/clsENT.cs b/SRC/MEStc_SXS/tcENT/clsENT.cs deleted file mode 100644 index 0955f3d..0000000 --- a/SRC/MEStc_SXS/tcENT/clsENT.cs +++ /dev/null @@ -1,1759 +0,0 @@ -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 : 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() - { - // 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 外包商 --- - - -<<<<<<< HEAD - public string AddSubcontractor(string SubcontractorNo, string SubcontractorName, string TelNo = defString, string EMail = defString, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") -======= - - public string AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string AGE = defString,string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - - public string AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string Age = defString,string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { -<<<<<<< HEAD - - strSQLAddField = "Insert into tblENTSubcontractor_21691 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "',0"; - - if ((TelNo ?? "") != defString) -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQLAddField = "Insert into A_21671main (SubcontractorNo, SubcontractorName, IssueState"; -======= - strSQLAddField = "Insert into A_21703MAIN (SubcontractorNo, SubcontractorName, IssueState"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQLAddField = "Insert into tblENTSubcontractor_21706 (SubcontractorNo, SubcontractorName, IssueState"; -======= - strSQLAddField = "Insert into A_21703MAIN (SubcontractorNo, SubcontractorName, IssueState"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; - if ((Age ?? "") != defString) ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - { - strSQLAddField += ",TelNo"; - strSQLAddValue += ",'" + TelNo + "'"; - } - if ((EMail ?? "") != defString) - { - strSQLAddField += ",EMail"; - strSQLAddValue += ",'" + EMail + "'"; - } - if ((Description ?? "") != defString) - { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; - } - if ((AGE ?? "") != defString) - { - strSQLAddField += ",AGE"; - strSQLAddValue += ",'" + AGE + "'"; - } - 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddTeacher: " & e1.Message) - - return AddSubcontractorRet; - - } - -<<<<<<< HEAD - - public string EditSubcontractor(string SubcontractorNo, string SubcontractorName = defString, string TelNo = defString, string EMail = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - -======= -<<<<<<< HEAD -<<<<<<< HEAD - public string EditSubcontractor(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string AGE = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) -======= - public string EditSubcontractor(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string Age = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - 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)) -======= - public string EditSubcontractor(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string Age = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 -<<<<<<< HEAD - - strSQL = "Update tblENTSubcontractor_21691 Set "; - - if ((TelNo ?? "") != defString) - { - strSQL += "TelNo = '" + TelNo + "',"; - } - if ((EMail ?? "") != defString) - { - strSQL += "EMail = '" + EMail + "',"; - - } -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Update A_21671main Set "; -======= - strSQL = "Update A_21703MAIN Set "; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Update tblENTSubcontractor_21706 Set "; ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef - ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - if ((Description ?? "") != defString) - { - strSQL += "Description = '" + Description + "',"; - } - if ((AGE ?? "") != defString) - { - strSQL += "AGE = '" + AGE + "',"; - } - - 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 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 "; -======= - strSQL = "Update A_21703MAIN Set "; ->>>>>>> .merge_file_vx44Nb - - if ((Age ?? "") != defString) - { - strSQL += "Age = '" + Age + "',"; - } - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Delete From A_21671sub " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From A_21671main " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Delete From tblENTSubcontractorCont_21706 " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor_21706 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef -======= - strSQL = "Delete From A_21703SUB " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 -<<<<<<< HEAD - - strSQL = "Delete From tblENTSubcontractor_21691 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - -======= - strSQL = "Delete From A_21703MAIN " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; -<<<<<<< HEAD ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - -<<<<<<< HEAD - - strSQL = "Select * From tblENTSubcontractor_21691 Where SubcontractorNo Is Not Null"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Select * From A_21671main Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703MAIN Where SubcontractorNo Is Not Null"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Select * From tblENTSubcontractor_21706 Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703MAIN Where SubcontractorNo Is Not Null"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if (IssueState != defInteger) - { - strSQL += " And IssueState = " + IssueState; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); -<<<<<<< HEAD - - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21691", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21691", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); -======= -<<<<<<< HEAD -<<<<<<< HEAD - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21671main", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "A_21671main", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); -======= -<<<<<<< .merge_file_APRfoz - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21706", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21706", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703MAIN", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "A_21703MAIN", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); -<<<<<<< HEAD ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadTeacher: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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); - -<<<<<<< HEAD - - strSQL = "Select * From tblENTSubcontractor_21691 Where SubcontractorNo Is Not Null"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Select * From A_21671main Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703MAIN Where SubcontractorNo Is Not Null"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Select * From tblENTSubcontractor_21706 Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703MAIN Where SubcontractorNo Is Not Null"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if (IssueState != defInteger) - { - strSQL += " And IssueState = " + IssueState; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); -<<<<<<< HEAD - - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21691", cnnTemp); - -======= -<<<<<<< HEAD -<<<<<<< HEAD - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21671main", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703MAIN", cnnTemp); ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21706", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703MAIN", cnnTemp); ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - // //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 SubcontractorNo = 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); - -<<<<<<< HEAD - - strSQL = "Select * From tblENTSubcontractor_21691 Where SubcontractorNo Is Not Null"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Select * From A_21671main Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703MAIN Where SubcontractorNo Is Not Null"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Select * From tblENTSubcontractor_21706 Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703MAIN Where SubcontractorNo Is Not Null"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if (IssueState != defInteger) - { - strSQL += " And IssueState = " + IssueState; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); -<<<<<<< HEAD - - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21691", cnnTemp); - -======= -<<<<<<< HEAD -<<<<<<< HEAD - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21671main", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703MAIN", cnnTemp); ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor_21706", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703MAIN", cnnTemp); ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - // //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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 -<<<<<<< HEAD - - strSQL = "Update tblENTSubcontractor_21691 Set IssueState = " + IssueState + ","; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Update A_21671main Set IssueState = " + IssueState + ","; -======= - strSQL = "Update A_21703MAIN Set IssueState = " + IssueState + ","; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Update tblENTSubcontractor_21706 Set IssueState = " + IssueState + ","; -======= - strSQL = "Update A_21703MAIN Set IssueState = " + IssueState + ","; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - -<<<<<<< HEAD - public string AddSubcontractorCont(string SubcontractorNo, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string AGE = defString, string Description = defString, string AdditionalXml = "", string Creator = defString, DateTime CreateDate = default(DateTime)) -======= - public string AddSubcontractorCont(string SubcontractorNo, string ContactorName, string TelNo = defString, string Age = 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)) ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 - { - string AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { -<<<<<<< HEAD - - strSQLAddField = "Insert into tblENTSubcontractorCont_21691 (SubcontractorNo, ContactorName"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQLAddField = "Insert into A_21671sub (SubcontractorNo, ContactorName"; -======= - strSQLAddField = "Insert into A_21703SUB (SubcontractorNo, ContactorName"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQLAddField = "Insert into tblENTSubcontractorCont_21706 (SubcontractorNo, ContactorName"; ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - 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 ((AGE ?? "") != defString) - { - strSQLAddField += ",AGE"; - strSQLAddValue += ",'" + AGE + "'"; - } - 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 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"; -======= - strSQLAddField = "Insert into A_21703SUB (SubcontractorNo, ContactorName"; ->>>>>>> .merge_file_vx44Nb - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + ContactorName + "'"; - - if ((Age ?? "") != defString) - { - strSQLAddField += ",Age"; - strSQLAddValue += ",'" + Age + "'"; - } - 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; - - } - - -<<<<<<< HEAD - public string EditSubcontractorCont(string SubcontractorNo, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string AGE = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) -======= - public string EditSubcontractorCont(string SubcontractorNo, string ContactorName, string TelNo = defString, string Age = 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)) ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 -<<<<<<< HEAD - - strSQL = "Update tblENTSubcontractorCont_21691 Set "; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Update A_21671sub Set "; -======= - strSQL = "Update A_21703SUB Set "; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Update tblENTSubcontractorCont_21706 Set "; ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef - - 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 ((AGE ?? "") != defString) - { - strSQLAddField += ",AGE"; - strSQLAddValue += ",'" + AGE + "'"; - } - 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 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 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 "; -======= - strSQL = "Update A_21703SUB Set "; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - if ((Age ?? "") != defString) - { - strSQL += "Age = '" + Age + "',"; - } - 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { -<<<<<<< HEAD - - strSQL = "Delete From tblENTSubcontractorCont_21691 " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Delete From A_21671sub " + " Where SubcontractorNo='" + SubcontractorNo + "'"; -======= - strSQL = "Delete From A_21703SUB " + " Where SubcontractorNo='" + SubcontractorNo + "'"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Delete From tblENTSubcontractorCont_21706 " + " Where SubcontractorNo='" + SubcontractorNo + "'"; -======= - strSQL = "Delete From A_21703SUB " + " Where SubcontractorNo='" + SubcontractorNo + "'"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - -<<<<<<< HEAD - strSQL = "Select * From tblENTSubcontractorCont_21691 Where SubcontractorNo Is Not Null"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Select * From A_21671sub Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703SUB Where SubcontractorNo Is Not Null"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Select * From tblENTSubcontractorCont_21706 Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703SUB Where SubcontractorNo Is Not Null"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); -<<<<<<< HEAD - - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21691", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21691", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - -======= -<<<<<<< HEAD -<<<<<<< HEAD - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21671sub", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "A_21671sub", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); -======= -<<<<<<< .merge_file_APRfoz - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21706", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21706", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703SUB", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "A_21703SUB", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); -<<<<<<< HEAD ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - DataSet ShowSubcontractorContRet = default(DataSet); - // 此 Function 將資料以 Dataset 方式取出 - // 傳入值: 索引值 - // 傳回值: Dataset(成功), Nothing(失敗) - - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - -<<<<<<< HEAD - - strSQL = "Select * From tblENTSubcontractorCont_21691 Where SubcontractorNo Is Not Null"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Select * From A_21671sub Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703SUB Where SubcontractorNo Is Not Null"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Select * From tblENTSubcontractorCont_21706 Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703SUB Where SubcontractorNo Is Not Null"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); -<<<<<<< HEAD - - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21691", cnnTemp); - -======= -<<<<<<< HEAD -<<<<<<< HEAD - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21671sub", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703SUB", cnnTemp); ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21706", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703SUB", cnnTemp); ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - // //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 SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - DataRow GetSubcontractorContRet = default(DataRow); - // 此 Function 將資料以 DataRow 方式取出 - // 傳入值: 索引值 - // 傳回值: DataRow(成功), Nothing(失敗) - - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - -<<<<<<< HEAD - - strSQL = "Select * From tblENTSubcontractorCont_21691 Where SubcontractorNo Is Not Null"; - -======= -<<<<<<< HEAD -<<<<<<< HEAD - strSQL = "Select * From A_21671sub Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703SUB Where SubcontractorNo Is Not Null"; ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - strSQL = "Select * From tblENTSubcontractorCont_21706 Where SubcontractorNo Is Not Null"; -======= - strSQL = "Select * From A_21703SUB Where SubcontractorNo Is Not Null"; ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); -<<<<<<< HEAD - - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21691", cnnTemp); - -======= -<<<<<<< HEAD -<<<<<<< HEAD - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21671sub", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703SUB", cnnTemp); ->>>>>>> d89d49780d597d830e98f207bcaf042ea615b374 -======= -<<<<<<< .merge_file_APRfoz - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21706", cnnTemp); -======= - ExecuteSQLQuery_Adapter(strSQL, dsENT, "A_21703SUB", cnnTemp); ->>>>>>> .merge_file_vx44Nb ->>>>>>> 24c623d98bc11e5948b038d0b561b7316dd293ef ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - // //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 - } -} diff --git a/SRC/MEStc_SXS/tcENT_21674/clsENT_21674.cs b/SRC/MEStc_SXS/tcENT_21674/clsENT_21674.cs deleted file mode 100644 index 6c5de64..0000000 --- a/SRC/MEStc_SXS/tcENT_21674/clsENT_21674.cs +++ /dev/null @@ -1,958 +0,0 @@ -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 - } -} diff --git a/SRC/MEStc_SXS/tcENT_21676/clsENT_21676.cs b/SRC/MEStc_SXS/tcENT_21676/clsENT_21676.cs deleted file mode 100644 index 9357113..0000000 --- a/SRC/MEStc_SXS/tcENT_21676/clsENT_21676.cs +++ /dev/null @@ -1,958 +0,0 @@ -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_21676 : 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_21676() - { - // 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 AddSubcontractor(string SubcontractorNo_21676, string SubcontractorName_21676, string Description_21676 = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor_21676 (SubcontractorNo_21676, SubcontractorName_21676, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo_21676 + "','" + SubcontractorName_21676 + "', 0"; - - if ((Description_21676 ?? "") != defString) - { - strSQLAddField += ",Description_21676"; - strSQLAddValue += ",'" + Description_21676 + "'"; - } - 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditSubcontractor(string SubcontractorNo_21676, string SubcontractorName_21676 = defString, string Description_21676 = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21676 Set "; - - if ((SubcontractorName_21676 ?? "") != defString) - { - strSQL += "SubcontractorName_21676 = '" + SubcontractorName_21676 + "',"; - } - if ((Description_21676 ?? "") != defString) - { - strSQL += "Description_21676 = '" + Description_21676 + "',"; - } - - 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_21676 ='" + SubcontractorNo_21676 + "'"; - 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_21676, string AdditionalXml = "") - { - string DelSubcontractorRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont_21676 " + "Where SubcontractorNo_21676='" + SubcontractorNo_21676 + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor_21676 " + " Where SubcontractorNo_21676 ='" + SubcontractorNo_21676 + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo_21676 = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection SubcontractorNo_21676 SUBCONTRACTORNO_21676 - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor_21676 Where SubcontractorNo_21676 Is Not Null"; - - if ((SubcontractorNo_21676 ?? "") != defString) - { - strSQL += " And SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - } - 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, "tblENTSubcontractor_21676", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor_21676", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo_21676 = 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 tblENTSubcontractor_21676 Where SubcontractorNo_21676 Is Not Null"; - - if ((SubcontractorNo_21676 ?? "") != defString) - { - strSQL += " And SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - } - 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, "tblENTSubcontractor_21676", 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 SubcontractorNo_21676 = 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 tblENTSubcontractor_21676 Where SubcontractorNo_21676 Is Not Null"; - - if ((SubcontractorNo_21676 ?? "") != defString) - { - strSQL += " And SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - } - 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, "tblENTSubcontractor_21676", 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 SetSubcontractorIssueState(string SubcontractorNo_21676, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor_21676 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 SubcontractorNo_21676 ='" + SubcontractorNo_21676 + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(string SubcontractorNo_21676, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description_21676 = defString, string AdditionalXml = "", string Creator = defString, DateTime CreateDate = default(DateTime)) - { - string AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont_21676 (SubcontractorNo_21676, ContactorName"; - strSQLAddValue = " Values ('" + SubcontractorNo_21676 + "','" + 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_21676 ?? "") != defString) - { - strSQLAddField += ",Description_21676"; - strSQLAddValue += ",'" + Description_21676 + "'"; - } - 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 EditSubcontractorCont(string SubcontractorNo_21676, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description_21676 = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont_21676 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_21676 ?? "") != defString) - { - strSQL += "Description_21676 = '" + Description_21676 + "',"; - } - - 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_21676 = '" + SubcontractorNo_21676 + "'" + " 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_21676, string ContactorName = defString, string AdditionalXml = "") - { - string DelSubcontractorContRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont_21676 " + " Where SubcontractorNo_21676='" + SubcontractorNo_21676 + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo_21676 = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont_21676 Where SubcontractorNo_21676 Is Not Null"; - - // 有傳入SubcontractorNo_21676表示只取該SubcontractorNo_21676之資料 - if ((SubcontractorNo_21676 ?? "") != defString) - { - strSQL += " And SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21676", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont_21676", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo_21676 = defString, string ContactorName = 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 tblENTSubcontractorCont_21676 Where SubcontractorNo_21676 Is Not Null"; - if ((SubcontractorNo_21676 ?? "") != defString) - { - strSQL += " And SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21676", 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 SubcontractorNo_21676 = defString, string ContactorName = 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 tblENTSubcontractorCont_21676 Where SubcontractorNo_21676 Is Not Null"; - if ((SubcontractorNo_21676 ?? "") != defString) - { - strSQL += " And SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont_21676", 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 - } -} diff --git a/SRC/MEStc_SXS/tcENT_21710/tcENT_21710.cs b/SRC/MEStc_SXS/tcENT_21710/tcENT_21710.cs deleted file mode 100644 index 0ae88e5..0000000 --- a/SRC/MEStc_SXS/tcENT_21710/tcENT_21710.cs +++ /dev/null @@ -1,963 +0,0 @@ -using iMESCore.Settings; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using System; -using System.Collections.Generic; -using System.Collections.ObjectModel; -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_21710 : 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_21710() - { - // 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 AddSubcontractor(string CNo, string CNAME, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into TBLENTBASIS21710 (CNo, CNAME, IssueState"; - strSQLAddValue = " Values ('" + CNo + "','" + CNAME + "', 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditSubcontractor(string CNo, string CNAME = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update TBLENTBASIS21710 Set "; - - if ((CNAME ?? "") != defString) - { - strSQL += "CNAME = '" + CNAME + "',"; - } - 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 CNo ='" + CNo + "'"; - 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 CNo, string AdditionalXml = "") - { - string DelSubcontractorRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From TBLENTBASIS21710Cont " + "Where CNo='" + CNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From TBLENTBASIS21710 " + " Where CNo ='" + CNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string CNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From TBLENTBASIS21710 Where CNo Is Not Null"; - - if ((CNo ?? "") != defString) - { - strSQL += " And CNo = '" + CNo + "'"; - } - 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, "TBLENTBASIS21710", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "TBLENTBASIS21710", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string CNo = 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 TBLENTBASIS21710 Where CNo Is Not Null"; - - if ((CNo ?? "") != defString) - { - strSQL += " And CNo = '" + CNo + "'"; - } - 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, "TBLENTBASIS21710", 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 CNo = 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 TBLENTBASIS21710 Where CNo Is Not Null"; - - if ((CNo ?? "") != defString) - { - strSQL += " And CNo = '" + CNo + "'"; - } - 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, "TBLENTBASIS21710", 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 SetSubcontractorIssueState(string CNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update TBLENTBASIS21710 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 CNo ='" + CNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(string CNo, string CNAME, 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 TBLENTBASIS21710Cont (CNo, CNAME"; - strSQLAddValue = " Values ('" + CNo + "','" + CNAME + "'"; - - 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 EditSubcontractorCont(string CNo, string CNAME, 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 EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update TBLENTBASIS21710Cont 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 CNo = '" + CNo + "'" + " And CNAME ='" + CNAME + "'"; - 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 CNo, string CNAME = defString, string AdditionalXml = "") - { - string DelSubcontractorContRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From TBLENTBASIS21710Cont " + " Where CNo='" + CNo + "'"; - - if ((CNAME ?? "") != defString) - { - strSQL += " And CNAME = '" + CNAME + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string CNo = defString, string CNAME = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From TBLENTBASIS21710Cont Where CNo Is Not Null"; - - // 有傳入CNo表示只取該CNo之資料 - if ((CNo ?? "") != defString) - { - strSQL += " And CNo = '" + CNo + "'"; - } - if ((CNAME ?? "") != defString) - { - strSQL += " And CNAME = '" + CNAME + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710Cont", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "TBLENTBASIS21710Cont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string CNo = defString, string CNAME = 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 TBLENTBASIS21710Cont Where CNo Is Not Null"; - if ((CNo ?? "") != defString) - { - strSQL += " And CNo = '" + CNo + "'"; - } - if ((CNAME ?? "") != defString) - { - strSQL += " And CNAME = '" + CNAME + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710Cont", 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 CNo = defString, string CNAME = 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 TBLENTBASIS21710Cont Where CNo Is Not Null"; - if ((CNo ?? "") != defString) - { - strSQL += " And CNo = '" + CNo + "'"; - } - if ((CNAME ?? "") != defString) - { - strSQL += " And CNAME = '" + CNAME + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710Cont", 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 - - -} -} diff --git a/SRC/MEStc_SXS/tcENT_21710_02/clsENT_21710_02.cs b/SRC/MEStc_SXS/tcENT_21710_02/clsENT_21710_02.cs deleted file mode 100644 index 0e5c7f0..0000000 --- a/SRC/MEStc_SXS/tcENT_21710_02/clsENT_21710_02.cs +++ /dev/null @@ -1,1333 +0,0 @@ -using iMESCore.Settings; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using System; -using System.Collections.Generic; -using System.Collections.ObjectModel; -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_21710_02 : 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_21710_02() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - 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); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public string AddSubcontractorCont(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 AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont (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 (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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 - #region "Test" - - - public string AddTest(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into TBLENTBASIS21710 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditTest(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update TBLENTBASIS21710 Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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 DelTest(string SubcontractorNo, string AdditionalXml = "") - { - string DelSubcontractorRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From TBLENTBASIS21710Cont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From TBLENTBASIS21710 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadTest(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From TBLENTBASIS21710 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "TBLENTBASIS21710", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadTest", "TBLENTBASIS21710", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowTest(string SubcontractorNo = 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 TBLENTBASIS21710 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "TBLENTBASIS21710", 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 GetTest(string SubcontractorNo = 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 TBLENTBASIS21710 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "TBLENTBASIS21710", 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; - - } - - - - - #endregion - } -} diff --git a/SRC/MEStc_SXS/tcTEST21676/clsTEST_21676.cs b/SRC/MEStc_SXS/tcTEST21676/clsTEST_21676.cs deleted file mode 100644 index fedc77c..0000000 --- a/SRC/MEStc_SXS/tcTEST21676/clsTEST_21676.cs +++ /dev/null @@ -1,1447 +0,0 @@ -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 clsTEST_21676 : 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 clsTEST_21676() - { - // 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 AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTSubcontractor (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - 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); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowSubcontractor(string SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SubcontractorNo = 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 tblENTSubcontractor Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - public string AddSubcontractorCont(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 AddSubcontractorContRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQLAddField = "Insert into tblENTSubcontractorCont (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 (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)) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont 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 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); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - - try - { - strSQL = "Delete From tblENTSubcontractorCont " + " Where SubcontractorNo='" + SubcontractorNo + "'"; - - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); - - // //Return success - DelSubcontractorContRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorContRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) - - return DelSubcontractorContRet; - - } - - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 SubcontractorNo = defString, string ContactorName = 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 tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", 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 - - - - - - public string AddTESTDATA_21676(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTTESTDATA21676 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - - public string EditTESTDATA_21676(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTTESTDATA21676 Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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 DelTESTDATA_21676(string SubcontractorNo, string AdditionalXml = "") - { - string DelSubcontractorRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTTESTDATA21676Cont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblENTTESTDATA21676 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - - public string LoadTESTDATA_21676(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTTESTDATA21676 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("TESTDATA21676", "tblENTSubcontractor", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - - public DataSet ShowTESTDATA_21676(string SubcontractorNo = 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 tblENTTESTDATA21676 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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 string LoadTESTDATA_21676Cont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") - { - string LoadSubcontractorContRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTTESTDATA21676Cont Where SubcontractorNo Is Not Null"; - - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - if ((ContactorName ?? "") != defString) - { - strSQL += " And ContactorName = '" + ContactorName + "'"; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTTESTDATA21676Cont", cnnTemp); - - // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorContRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorContRet; - - } - - public string SetTESTDATA_21676IssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTTESTDATA21676 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - - - public DataRow GetTESTDATA_21676(string SubcontractorNo = 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 tblENTTESTDATA21676 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTSubcontractor", 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; - - } - } -} diff --git a/SRC/MEStc_SXS/tcTEST21706/clsENT21706.cs b/SRC/MEStc_SXS/tcTEST21706/clsENT21706.cs deleted file mode 100644 index 30033bb..0000000 --- a/SRC/MEStc_SXS/tcTEST21706/clsENT21706.cs +++ /dev/null @@ -1,548 +0,0 @@ -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 clsENT21706 : 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 clsENT21706() - { - // 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 --- Custom 自定义 --- - public string AddTestData21706(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") - { - string AddSubcontractorRet = default(string); - // 此 Function 將新增一筆資料 - // 傳入值: 各欄位新增值 - // 傳回值: success(成功), fail(失敗) - - if (CreateDate == defDateTime) - CreateDate = DateTime.Now; - - try - { - strSQLAddField = "Insert into tblENTTestData21706 (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 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 - AddSubcontractorRet = "success"; - } - - catch (Exception e1) - { - AddSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) - - return AddSubcontractorRet; - - } - - public string EditTestData21706(string SubcontractorNo, string SubcontractorName = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string EditSubcontractorRet = default(string); - // 此 Function 將修改一筆資料 - // 傳入值: 各欄位修改值 - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTTestData21706 Set "; - - if ((SubcontractorName ?? "") != defString) - { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; - } - 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 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 DelTestData21706(string SubcontractorNo, string AdditionalXml = "") - { - string DelSubcontractorRet = default(string); - // 此 Function 將刪除資料 - // 傳入值: 刪除的索引值 - // 傳回值: success(成功), fail(失敗) - var CollectionSQL = new Collection(); - - try - { - // 1. 刪除Contactor - strSQL = "Delete From tblENTTestData21706Cont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; - CollectionSQL.Add(strSQL); - - // 2. 刪除主檔 - strSQL = "Delete From tblTestData21706 " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL += SeparateAddXML_Condition(AdditionalXml); - } - - CollectionSQL.Add(strSQL); - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); - - // //Return success - DelSubcontractorRet = "success"; - } - - catch (Exception e1) - { - DelSubcontractorRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) - - return DelSubcontractorRet; - - } - - public string LoadTestData21706(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadSubcontractorRet = default(string); - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - var dsENT = default(DataSet); - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblENTTestData21706 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTTestData21706", cnnTemp); - - // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadTestData21706", "tblENTTestData21706", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); - } - - catch (Exception e1) - { - LoadSubcontractorRet = "fail"; - throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) - - finally - { - CloseConnection(cnnTemp); - if (dsENT != null) - { - dsENT.Dispose(); - } - - } - - return LoadSubcontractorRet; - - } - - public DataSet ShowTestData21706(string SubcontractorNo = 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 tblENTTestData21706 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTTestData21706", 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 GetTestData21706(string SubcontractorNo = 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 tblENTTestData21706 Where SubcontractorNo Is Not Null"; - - if ((SubcontractorNo ?? "") != defString) - { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; - } - 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, "tblENTTestData21706", 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 SetTestData21706IssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) - { - string SetSubcontractorIssueStateRet = default(string); - // 此 Function 將修改IssueState欄位的值 - // 傳入值: IssueState修改後的值及VendorNo - // 傳回值: success(成功), fail(失敗) - - try - { - // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTTestData21706 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 SubcontractorNo ='" + SubcontractorNo + "'"; - strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); - } - - // //Return success - SetSubcontractorIssueStateRet = "success"; - } - - catch (Exception e1) - { - SetSubcontractorIssueStateRet = "fail"; - // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 - throw; - - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) - - return SetSubcontractorIssueStateRet; - - } - #endregion - } -} diff --git a/SRC/MEStc_SXS/tcWIP/clsLot.cs b/SRC/MEStc_SXS/tcWIP/clsLot.cs deleted file mode 100644 index 57d1278..0000000 --- a/SRC/MEStc_SXS/tcWIP/clsLot.cs +++ /dev/null @@ -1,337 +0,0 @@ -using System; -using System.Data; -using System.Data.Common; -using Microsoft.VisualBasic; -using static iMESCore.Base.iMESComSubroutine; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.DataBase.iMESSql; -using iMESCore.Settings; - -namespace MEStc_SXS -{ - - - public class clsLot : 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 = ""; - - #region --- Initial Object --- - - public clsLot() - { - // 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 - - - public string LoadOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - string LoadOPTypeRet = null; - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - - DataSet dsOP = null; - - try - { - - dsOP = ShowOPType(OPType, IssueState, AdditionalXml); - - // //Combine return value - LoadOPTypeRet = CombineXMLReturnValue("loadoptype", "OPType", "DataSet", FormatXMLSchema(dsOP.GetXmlSchema()), dsOP.GetXml(), ""); - } - - catch (Exception e1) - { - LoadOPTypeRet = "fail"; - throw; - } // New Exception("kcOP.LoadOPType: " & e1.Message) - - finally - { - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return LoadOPTypeRet; - - } - - public DataSet ShowOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - DataSet ShowOPTypeRet = null; - - // 此 Function 將資料以 Dataset 方式取出 - // 傳入值: 索引值 - // 傳回值: Dataset(成功), Nothing(失敗) - - - DataSet dsOP = null; - IDbConnection cnnTemp = null; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - strSQL = "Select * From tblOPType Where OPType Is Not Null"; - if (OPType != defString) - { - strSQL = strSQL + " And OPType = '" + OPType + "'"; - } - if (IssueState != defInteger) - { - strSQL = strSQL + " And IssueState = " + IssueState; - } - - if (!string.IsNullOrEmpty(AdditionalXml)) - { - // 加上additional的condition - strSQL = strSQL + SeparateAddXML_Condition(AdditionalXml); - } - - // //Select data - dsOP = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsOP, "OPType", cnnTemp); - - // //Return data - ShowOPTypeRet = dsOP; - } - - catch (Exception e1) - { - ShowOPTypeRet = null; - throw; - } - - finally - { - CloseConnection(cnnTemp); - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return ShowOPTypeRet; - } - - public DataRow GetOPType(string OPType = defString, int IssueState = defInteger, string AdditionalXml = "") - { - DataRow GetOPTypeRet = null; - // 此 Function 將資料以XML方式取出 - // 傳入值: 索引值 - // 傳回值: XML(成功), fail(失敗) - - - DataSet dsOP = null; - - try - { - - dsOP = ShowOPType(OPType, IssueState, AdditionalXml); - - // //Return data - if (dsOP.Tables[0].Rows.Count > 0) - { - GetOPTypeRet = dsOP.Tables[0].Rows[0]; - } - else - { - GetOPTypeRet = dsOP.Tables[0].NewRow(); - } - } - - catch (Exception e1) - { - GetOPTypeRet = null; - throw; - } // New Exception("kcOP.LoadOPType: " & e1.Message) - - finally - { - if (dsOP != null) - { - dsOP.Dispose(); - } - } - - return GetOPTypeRet; - - } - - public string BR_CheckIn(long LotStamp, string LotNo, string LinkName, DataTable dtAttrib, DataTable dtEquipment, string UserNo, string ShiftNo, - string LotRecord = defString, DateTime CheckInTime = default(DateTime), string RuleNo = "", DataTable dtLoginState = null, DataTable dtAccessory = null, - DataTable dtMTLLot = null, string LanguageMode = defString) - { - string BR_CheckInRet = default(string); - // 此 Function 將更新CheckIn Data - // 傳入值: LotNo,dtAttrib,dtEquipment - // 傳回值: success(成功), fail(失敗) - - IDbConnection cnnTemp = null; - DbDataReader drTemp; - var CollectionSQL = new Collection(); - var CollectionSQL_Rows = new Collection(); - string strSQL = ""; - - string LotSerial, OPNo, BRNo, SerialNo, LogGroupSerial, BaseLotNo, CurQTY; - int PhaseNo; - DateTime datEventTime; - long lngLotStamp; - - try - { - // //Create connection - cnnTemp = CreateConnection(strConnectionString); - - // 1.取出Temp LotState的資料 - strSQL = "Select A.LotSerial,A.OPNo,A.SerialNo,B.BRNo,B.LogGroupSerial,B.LotStamp,B.BaseLotNo,B.CurQTY,B.PhaseNo " + - " From tblWIPTemp_LotState A, tblWIPLotState B " + " Where A.LotNo ='" + LotNo + "'" + " And A.LotNo = B.LotNo "; - // cmmTemp = New OleDb.OleDbCommand(strSQL, cnnTemp) - drTemp = ExecuteSQLQuery_Reader(strSQL, cnnTemp); - if (drTemp.Read()) - { - LotSerial = drTemp["LotSerial"].ToString(); - OPNo = drTemp["OPNo"].ToString(); - SerialNo = drTemp["SerialNo"].ToString(); - BRNo = drTemp["BRNo"].ToString(); - LogGroupSerial = drTemp["LogGroupSerial"].ToString(); - lngLotStamp = Convert.ToInt64(drTemp["LotStamp"]); - BaseLotNo = drTemp["BaseLotNo"].ToString(); - CurQTY = drTemp["CurQTY"].ToString(); - PhaseNo = Convert.ToInt32(drTemp["PhaseNo"]); // 2020/11/20 Steven Mantis: 0082084: [PAD]eRunCard_調整 BR 生產記錄 - } - else - { - throw new iMESException.MESException("0000-202003", "[%LotNo%] : " + LotNo); - } - drTemp.Close(); - - - // 呼叫執行SQL指令 - ExecuteSQLNoneQuery_ChkRowCount(strDataBaseType, strConnectionString, CollectionSQL, CollectionSQL_Rows); - - // //Return success - BR_CheckInRet = "success"; - } - - catch (Exception e1) - { - BR_CheckInRet = "fail"; - throw; - } - finally - { - CloseConnection(cnnTemp); - - } - return BR_CheckInRet; - - } - - - } -} \ No newline at end of file diff --git a/SRC/MESud/UserDefine_Customer.sln b/SRC/MESud/UserDefine_Customer.sln deleted file mode 100644 index 651f835..0000000 --- a/SRC/MESud/UserDefine_Customer.sln +++ /dev/null @@ -1,49 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "udSYS_Customer", "udSYS_Customer\udSYS_Customer.csproj", "{73D29D85-D190-04AF-0922-F34F21CAC888}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "udScriptFunction_Customer", "udScriptFunction_Customer\udScriptFunction_Customer.csproj", "{F31A762E-F2F8-00E6-10BA-01E73BC174FA}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "udUnitTransferFunction_Customer", "udUnitTransferFunction_Customer\udUnitTransferFunction_Customer.csproj", "{BFE0BB52-2A20-0BA7-1FE1-00305141A790}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {73D29D85-D190-04AF-0922-F34F21CAC888}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {73D29D85-D190-04AF-0922-F34F21CAC888}.Debug|Any CPU.Build.0 = Debug|Any CPU - {73D29D85-D190-04AF-0922-F34F21CAC888}.Release|Any CPU.ActiveCfg = Release|Any CPU - {73D29D85-D190-04AF-0922-F34F21CAC888}.Release|Any CPU.Build.0 = Release|Any CPU - {F31A762E-F2F8-00E6-10BA-01E73BC174FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F31A762E-F2F8-00E6-10BA-01E73BC174FA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F31A762E-F2F8-00E6-10BA-01E73BC174FA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F31A762E-F2F8-00E6-10BA-01E73BC174FA}.Release|Any CPU.Build.0 = Release|Any CPU - {BFE0BB52-2A20-0BA7-1FE1-00305141A790}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BFE0BB52-2A20-0BA7-1FE1-00305141A790}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BFE0BB52-2A20-0BA7-1FE1-00305141A790}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BFE0BB52-2A20-0BA7-1FE1-00305141A790}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 4 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6 - SccLocalPath0 = . - SccProjectUniqueName1 = udSYS_Customer\\udSYS_Customer.vbproj - SccProjectName1 = udSYS_Customer - SccLocalPath1 = udSYS_Customer - SccProjectUniqueName2 = udScriptFunction_Customer\\udScriptFunction_Customer.vbproj - SccProjectName2 = udScriptFunction_Customer - SccLocalPath2 = udScriptFunction_Customer - SccProjectUniqueName3 = udUnitTransferFunction_Customer\\udUnitTransferFunction_Customer.vbproj - SccProjectName3 = udUnitTransferFunction_Customer - SccLocalPath3 = udUnitTransferFunction_Customer - EndGlobalSection -EndGlobal diff --git a/SRC/MESud/udSYS_Customer/Properties/AssemblyInfo.cs b/SRC/MESud/udSYS_Customer/Properties/AssemblyInfo.cs deleted file mode 100644 index aa5755f..0000000 --- a/SRC/MESud/udSYS_Customer/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,32 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// 組件的一般資訊是由下列的屬性集控制。 -// 變更這些屬性的值即可修改組件的相關 -// 資訊。 -[assembly: AssemblyTitle("udSYS")] -[assembly: AssemblyDescription("udSYS for MESSeries")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("iMES Technology Inc.")] -[assembly: AssemblyProduct("MESSeries 6")] -[assembly: AssemblyCopyright("Copyright iMES Technology Inc.")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// 將 ComVisible 設定為 false 會使得這個組件中的類型 -// 對 COM 元件而言為不可見。如果您需要從 COM 存取這個組件中 -// 的類型,請在該類型上將 ComVisible 屬性設定為 true。 -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("eac22f8c-c9cb-4a0e-b9fa-9a35789e48ef")] - -// 組件的版本資訊由下列四個值所組成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂編號 -// -[assembly: AssemblyVersion("6.0.0.0")] diff --git a/SRC/MESud/udSYS_Customer/Resources.resx b/SRC/MESud/udSYS_Customer/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/SRC/MESud/udSYS_Customer/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/MESud/udSYS_Customer/clsSerialNoFunction.cs b/SRC/MESud/udSYS_Customer/clsSerialNoFunction.cs deleted file mode 100644 index 2aca53c..0000000 --- a/SRC/MESud/udSYS_Customer/clsSerialNoFunction.cs +++ /dev/null @@ -1,174 +0,0 @@ -using System; -using System.Data; -using static iMESCore.DataBase.iMESSql; -using iMESCore.Settings; -using iMESException; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; - -namespace udSYS_Customer -{ - - public class clsSerialNoFunction : IDisposable - { - - private AppSettings objSetting = new AppSettings(); - - private IDbConnection cnnTemp; - private IDbCommand cmmTemp; - private string strConnectionString; // Connection string - private string strDataBaseType; // DataBase Type:oracle, mysql, access - private string strMQType; // MessageQueue Type:TIBCO, MQSeries, MSMQ - private string strSQLAddField; - private string strSQLAddValue; - private string strSQL; - - #region IDisposable Support - private bool disposedValue; // 偵測多餘的呼叫 - - // //Initial Object---------------------------------- - public clsSerialNoFunction() - { - // //Get database type - strDataBaseType = objSetting.GetDataBaseType(); - // //Get connection string - strConnectionString = objSetting.GetConnectionString(strDataBaseType); - // //Get Message Queue Type - strMQType = objSetting.GetMQType(); - } - - // IDisposable - protected virtual void Dispose(bool disposing) - { - if (!disposedValue) - { - if (disposing) - { - // TODO: 處置 Managed 狀態 (Managed 物件)。 - } - - // 釋放 Unmanaged 資源 (Unmanaged 物件) 並覆寫下方的 Finalize()。 - if (objSetting != null) - objSetting = null; - // 將大型欄位設為 null。 - } - disposedValue = true; - } - - // 只有當上方的 Dispose(disposing As Boolean) 具有要釋放 Unmanaged 資源的程式碼時,才覆寫 Finalize()。 - ~clsSerialNoFunction() - { - // 請勿變更這個程式碼。請將清除程式碼放在上方的 Dispose(disposing As Boolean) 中。 - Dispose(false); - } - - // Visual Basic 加入這個程式碼的目的,在於能正確地實作可處置的模式。 - public void Dispose() - { - // 請勿變更這個程式碼。請將清除程式碼放在上方的 Dispose(disposing As Boolean) 中。 - Dispose(true); - // 覆寫上列 Finalize() 時,取消下行的註解狀態。 - GC.SuppressFinalize(this); - } - #endregion - - #region --- Property --- - - public string ConnectionString - { - get - { - return strConnectionString; - } - } - - public string DataBaseType - { - get - { - return strDataBaseType; - } - } - - public string MQType - { - get - { - return strMQType; - } - } - - #endregion - - // 2018/04/10 OwenLiu, Mantis:0045761, 增加客製 SerialNoFunction 支援機制 - // colParameters 變更為下述格式(FunctionName 及 . 可省略) - // [FunctionName][.] - // FunctionName 必須以 funC_ 作為名稱的前綴字串,才可以正常運作 - - // 前端(WinForm)呼叫範例(新開發的功能,儘量以 <.> 方式加入,以避免同樣的Key 對不同的ScriptFunction - // 有不同的值,造成執行階段引發的錯誤編碼結果 - // ----------------------------------------------------------------------------------------------------------- - // Dim strAddition As String = "" - // Dim aryAdditionKey() As String = {"FabCode", "funC_GetSample.FabCode"} - // Dim aryAdditionVal() As String = {"F1_", "F2_"} - // If Not aryAdditionKey Is Nothing AndAlso Not aryAdditionKey.Length.Equals(0) Then - // For i As Integer = LBound(aryAdditionKey) To UBound(aryAdditionKey) - // strAddition += CombineAddXML_Add(aryAdditionKey(i), "String", CInput(aryAdditionVal(i))) - // Next i - // strParameter += CombineXMLAdditional(strAddition) - // End If - // ----------------------------------------------------------------------------------------------------------- - - - public string funC_GetSample(Collection colParameters) - { - - IDbConnection cnnTemp = null; - string strResult = string.Empty; - string strFunctionName = System.Reflection.MethodBase.GetCurrentMethod().Name; - string strParameterKey = string.Empty; - - string FabCode = string.Empty; - - try - { - // 建立連線 - cnnTemp = CreateConnection_None(strConnectionString, strDataBaseType); - - // 取出參數 - strParameterKey = "FabCode"; - if (colParameters.Contains(strFunctionName + "." + strParameterKey)) - { - // 有只針對此Function傳入的Parameter - FabCode = Conversions.ToString(colParameters[strFunctionName + "." + strParameterKey]); - } - else if (colParameters.Contains(strParameterKey)) - { - // 泛用的Parameter - FabCode = Conversions.ToString(colParameters[strParameterKey]); - } - else - { - // 找不到傳入的Parameter - throw new MESException("0000-200002", "[%Parameter%] [%not found%]: [%" + strParameterKey + "%]"); - } - - strResult = FabCode; - } - - catch (Exception ex) - { - throw; - } - finally - { - // 關閉連線 - CloseConnection(cnnTemp); - } - - return strResult; - - } - - } -} \ No newline at end of file diff --git a/SRC/MESud/udSYS_Customer/udSYS_Customer.csproj b/SRC/MESud/udSYS_Customer/udSYS_Customer.csproj deleted file mode 100644 index 26067ae..0000000 --- a/SRC/MESud/udSYS_Customer/udSYS_Customer.csproj +++ /dev/null @@ -1,136 +0,0 @@ - - - - Debug - AnyCPU - - - - - {73D29D85-D190-04AF-0922-F34F21CAC888} - Library - udSYS_Customer - udSYS_Customer - 512 - Windows - v4.6.2 - SAK - SAK - SAK - SAK - - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - true - full - true - true - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\udSYS_Customer.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - pdbonly - false - true - true - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\udSYS_Customer.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - On - - - Binary - - - Off - - - On - - - - - False - ..\..\MES_S_DLL\data_access_service.dll - False - - - False - ..\..\MES_S_DLL\iMESAppSetting.dll - False - - - False - ..\..\MES_S_DLL\iMESComSubroutine.dll - False - - - False - ..\..\MES_S_DLL\iMESComXML.dll - False - - - False - ..\..\MES_S_DLL\iMESConst.dll - False - - - False - ..\..\MES_S_DLL\iMESException.dll - False - - - False - ..\..\MES_S_DLL\iMESLog.dll - False - - - - - - - - - - - - - - - - - - - - - True - True - Resources.resx - - - - - ResXFileCodeGenerator - Resources.Designer.cs - udSYS_Customer.My.Resources - Designer - - - - - - \ No newline at end of file diff --git a/SRC/MESud/udScriptFunction_Customer/AssemblyInfo.cs b/SRC/MESud/udScriptFunction_Customer/AssemblyInfo.cs deleted file mode 100644 index 3f9b2a4..0000000 --- a/SRC/MESud/udScriptFunction_Customer/AssemblyInfo.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.Reflection; -using System.Runtime.InteropServices; - -// 一般的組件資訊是由下列這組屬性所控制。 -// 變更這些屬性的值即可修改組件的相關資訊。 -// 檢閱組件屬性的值 - -[assembly: AssemblyTitle("udScriptFunction")] -[assembly: AssemblyDescription("udScriptFunction for MESSeries")] -[assembly: AssemblyCompany("iMES Technology Inc.")] -[assembly: AssemblyProduct("MESSeries 6")] -[assembly: AssemblyCopyright("Copyright © iMES Technology Inc.")] -[assembly: AssemblyTrademark("")] -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("532A640D-1ACE-4133-BC62-0662C5F3D7BB")] - -// 組件的版本資訊由下列四個值所組成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂 -// -// 您可以自行指定所有的值,也可以依照以下的方式,使用 '*' 將修訂和組建編號 -// 指定為預設值: - -[assembly: AssemblyVersion("6.0.0.0")] diff --git a/SRC/MESud/udScriptFunction_Customer/clsScriptFunction.cs b/SRC/MESud/udScriptFunction_Customer/clsScriptFunction.cs deleted file mode 100644 index a0f5957..0000000 --- a/SRC/MESud/udScriptFunction_Customer/clsScriptFunction.cs +++ /dev/null @@ -1,225 +0,0 @@ -using System; -using System.Data; -using static iMESCore.Base.iMESConst; -using static iMESCore.DataBase.iMESSql; -using iMESCore.Settings; -using Microsoft.VisualBasic.CompilerServices; -using System.Data.Common; - -namespace udScriptFunction_Customer -{ - - public class clsScriptFunction : IDisposable - { - - // 2007/04/03,sammi.整合modUD. - private AppSettings objSetting = new AppSettings(); - - private IDbConnection cnnTemp; - private string strConnectionString; // Connection string - private string strDataBaseType; // DataBase Type:oracle, mysql, access - private string strMQType; // MessageQueue Type:TIBCO, MQSeries, MSMQ - private int intGetMethod = 1; // 0.Simulation, 1.Production - - private DataTable dtLotAttrib = null; - private DataTable dtCompAttrib = null; - private string strLotNo; - private string strOPNo; - private string strComponentNo; - - private string strENGNo; - private string strENGVersion; - private string strRecipeNo; - private string strRecipeVersion; - private string strPropertyNo; - - - - #region --- Property --- - public string ConnectionString - { - get - { - return strConnectionString; - } - } - - public string DataBaseType - { - get - { - return strDataBaseType; - } - } - - public string MQType - { - get - { - return strMQType; - } - } - - // 當intGetMethod 為 0 時 Function 本身必須自行 Return Value,當 1 時可依實際需求取得實際值 - public int GetMethod - { - get - { - return intGetMethod; - } - set - { - intGetMethod = value; - } - } - - // 部分之Function 需要提供LotNo的屬性 - public string LotNo - { - set - { - strLotNo = value; - } - } - // 部分之Function 需要提供OPNo的屬性 - public string OPNo - { - set - { - strOPNo = value; - } - } - // 部分之Function 需要提供OPNo的屬性 - public string ComponentNo - { - set - { - strComponentNo = value; - } - } - // 部分之Function 需要提供ComponentAttrib - public DataTable ComponentAttrib - { - set - { - dtCompAttrib = value; - } - } - - // 部分之Function 需要提供ComponentAttrib - public DataTable LotAttrib - { - set - { - dtLotAttrib = value; - } - } - #endregion - - // //Initial Object-------------------------------------------------------------------------------------------------------------------------------- - public clsScriptFunction() - { - // //Get database type - strDataBaseType = objSetting.GetDataBaseType(); - // //Get connection string - strConnectionString = objSetting.GetConnectionString(strDataBaseType); - // //Get Message Queue Type - strMQType = objSetting.GetMQType(); - } - - #region IDisposable Support - private bool disposedValue; // 偵測多餘的呼叫 - - // IDisposable - protected virtual void Dispose(bool disposing) - { - if (!disposedValue) - { - if (disposing) - { - // TODO: 處置 Managed 狀態 (Managed 物件)。 - } - - // 釋放 Unmanaged 資源 (Unmanaged 物件) 並覆寫下方的 Finalize()。 - if (objSetting != null) - objSetting = null; - // 將大型欄位設為 null。 - } - disposedValue = true; - } - - // TODO: 只有當上方的 Dispose(disposing As Boolean) 具有要釋放 Unmanaged 資源的程式碼時,才覆寫 Finalize()。 - // Protected Overrides Sub Finalize() - // ' 請勿變更這個程式碼。請將清除程式碼放在上方的 Dispose(disposing As Boolean) 中。 - // Dispose(False) - // MyBase.Finalize() - // End Sub - - // Visual Basic 加入這個程式碼的目的,在於能正確地實作可處置的模式。 - public void Dispose() - { - // 請勿變更這個程式碼。請將清除程式碼放在上方的 Dispose(disposing As Boolean) 中。 - Dispose(true); - // TODO: 覆寫上列 Finalize() 時,取消下行的註解狀態。 - // GC.SuppressFinalize(Me) - } - #endregion - - // 2018/05/22 OwenLiu, Mantis:0047207 Script Function同時支援標準迭代與個案客製 - // FunctionName 必須以 funSCC_ 作為名稱的前綴字串,才可以正常運作 - //public int funSCC_GetAPPreviousDate() - //{ - - // int intResult = defInteger; - // string strFunctionName = System.Reflection.MethodBase.GetCurrentMethod().Name; - // string strSQL = string.Empty; - // var datServerTime = DateTime.Now; - - // try - // { - // // Simulation - // if (intGetMethod == 0) - // { - // intResult = 1; - // return intResult; - // } - - // // Production - // // Create Connection - // cnnTemp = CreateConnection_None(strConnectionString, strDataBaseType); - // if (strDataBaseType.ToLower() == "oracle") - // { - // strSQL = "SELECT sysdate AS ServerTime FROM dual"; - // } - // else - // { - // strSQL = "SELECT getdate() AS ServerTime"; - // } - - - // using (DbDataReader drTemp = ExecuteSQLQuery_Reader(strSQL, cnnTemp)) - // { - // if (drTemp.Read()) - // { - // datServerTime = Conversions.ToDate(drTemp["ServerTime"]); - // intResult = Conversions.ToInteger(datServerTime.AddDays(-1).ToString("yyyyMMdd")); - // } - // drTemp.Close(); - // } - // } - - // catch (Exception ex) - // { - // throw; - // } - // finally - // { - // CloseConnection(cnnTemp); - // } - - // return intResult; - - //} - - } -} \ No newline at end of file diff --git a/SRC/MESud/udScriptFunction_Customer/udScriptFunction_Customer.csproj b/SRC/MESud/udScriptFunction_Customer/udScriptFunction_Customer.csproj deleted file mode 100644 index 8e85594..0000000 --- a/SRC/MESud/udScriptFunction_Customer/udScriptFunction_Customer.csproj +++ /dev/null @@ -1,157 +0,0 @@ - - - - Local - 8.0.50727 - 2.0 - {F31A762E-F2F8-00E6-10BA-01E73BC174FA} - SAK - SAK - SAK - SAK - Debug - AnyCPU - - - - - udScriptFunction_Customer - - - None - JScript - Grid - IE50 - false - Library - Binary - On - Off - udScriptFunction_Customer - - - - - Windows - - - v4.6.2 - 2.0 - - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\udScriptFunction_Customer.xml - 285212672 - - - - - true - true - true - false - false - false - false - 0 - 42016,42017,42018,42019,42032,42353,42354,42355 - full - false - - - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\udScriptFunction_Customer.xml - 285212672 - - - - - false - true - false - true - false - false - false - 0 - 42016,42017,42018,42019,42032,42353,42354,42355 - none - false - - - - - False - ..\..\MES_S_DLL\data_access_service.dll - False - - - False - ..\..\MES_S_DLL\iMESAppSetting.dll - False - - - False - ..\..\MES_S_DLL\iMESComSubroutine.dll - False - - - False - ..\..\MES_S_DLL\iMESComXML.dll - False - - - False - ..\..\MES_S_DLL\iMESConst.dll - False - - - iMESException - ..\..\MES_S_DLL\iMESException.dll - False - - - False - ..\..\MES_S_DLL\iMESLog.dll - False - - - System - - - - System.Data - - - System.XML - - - - - - - - - - - - Code - - - Code - - - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/MESud/udUnitTransferFunction_Customer/AssemblyInfo.cs b/SRC/MESud/udUnitTransferFunction_Customer/AssemblyInfo.cs deleted file mode 100644 index 357b28d..0000000 --- a/SRC/MESud/udUnitTransferFunction_Customer/AssemblyInfo.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.Reflection; -using System.Runtime.InteropServices; - -// 一般的組件資訊是由下列這組屬性所控制。 -// 變更這些屬性的值即可修改組件的相關資訊。 -// 檢閱組件屬性的值 - -[assembly: AssemblyTitle("udUnitTransferFunction")] -[assembly: AssemblyDescription("udUnitTransferFunction for MESSeries")] -[assembly: AssemblyCompany("iMES Technology Inc.")] -[assembly: AssemblyProduct("MESSeries 6")] -[assembly: AssemblyCopyright("Copyright © iMES Technology Inc.")] -[assembly: AssemblyTrademark("")] -[assembly: ComVisible(false)] - -// 下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID -[assembly: Guid("D537C63D-671A-4B2C-840D-20D31715F5BE")] - -// 組件的版本資訊由下列四個值所組成: -// -// 主要版本 -// 次要版本 -// 組建編號 -// 修訂 -// -// 您可以自行指定所有的值,也可以依照以下的方式,使用 '*' 將修訂和組建編號 -// 指定為預設值: - -[assembly: AssemblyVersion("6.0.0.0")] diff --git a/SRC/MESud/udUnitTransferFunction_Customer/clsUnitTransferFunction.cs b/SRC/MESud/udUnitTransferFunction_Customer/clsUnitTransferFunction.cs deleted file mode 100644 index c2f1371..0000000 --- a/SRC/MESud/udUnitTransferFunction_Customer/clsUnitTransferFunction.cs +++ /dev/null @@ -1,124 +0,0 @@ -using System; -using System.Data; -using System.Data.Common; -using static iMESCore.Base.iMESConst; -using static iMESCore.DataBase.iMESSql; -using iMESCore.Settings; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; - -namespace udUnitTransferFunction_Customer -{ - public class clsUnitTransferFunction : IDisposable - { - - 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 string strSQLAddField; - private string strSQLAddValue; - private string strSQL; - private int intGetMethod = 1; // 0.Simulation, 1.Production - - #region IDisposable Support - private bool disposedValue; // 偵測多餘的呼叫 - - // //Initial Object---------------------------------- - public clsUnitTransferFunction() - { - // //Get database type - strDataBaseType = objSetting.GetDataBaseType(); - // //Get connection string - strConnectionString = objSetting.GetConnectionString(strDataBaseType); - // //Get Message Queue Type - strMQType = objSetting.GetMQType(); - } - - // IDisposable - protected virtual void Dispose(bool disposing) - { - if (!disposedValue) - { - if (disposing) - { - // TODO: 處置 Managed 狀態 (Managed 物件)。 - } - - // TODO: 釋放 Unmanaged 資源 (Unmanaged 物件) 並覆寫下方的 Finalize()。 - if (objSetting != null) - objSetting = null; - // TODO: 將大型欄位設為 null。 - } - disposedValue = true; - } - - // TODO: 只有當上方的 Dispose(disposing As Boolean) 具有要釋放 Unmanaged 資源的程式碼時,才覆寫 Finalize()。 - ~clsUnitTransferFunction() - { - // 請勿變更這個程式碼。請將清除程式碼放在上方的 Dispose(disposing As Boolean) 中。 - Dispose(false); - } - - // Visual Basic 加入這個程式碼的目的,在於能正確地實作可處置的模式。 - public void Dispose() - { - // 請勿變更這個程式碼。請將清除程式碼放在上方的 Dispose(disposing As Boolean) 中。 - Dispose(true); - // TODO: 覆寫上列 Finalize() 時,取消下行的註解狀態。 - GC.SuppressFinalize(this); - } - #endregion - - // 2018/07/10 OwenLiu, Mantis:0048659 單位轉換函式增加 個案客製支援機制 - // FunctionName 必須以 funUTC_ 作為名稱的前綴字串,才可以正常運作 - //private decimal funUTC_Sample(Collection colParameters) - //{ - - // IDbConnection cnnTemp = null; - // string ProductNo, ProductVersion, ENGNo, ENGVersion; - // decimal decExecResult = defInteger; - // try - // { - // if (intGetMethod == 0) // Simulation - // { - // decExecResult = 1m; - // } - // else // Production - // { - // // 1.取出參數 - // ProductNo = Conversions.ToString(colParameters["ProductNo"]); - // ProductVersion = Conversions.ToString(colParameters["ProductVersion"]); - // ENGNo = Conversions.ToString(colParameters["ENGNo"]); - // ENGVersion = Conversions.ToString(colParameters["ENGVersion"]); - - // // //Create connection - // cnnTemp = CreateConnection_None(strConnectionString, strDataBaseType); - - // strSQL = "SELECT DefaultValue FROM tblPRDProductProperty" + " WHERE ProductNo = '" + ProductNo.ToUpper() + "'" + " AND ProductVersion = '" + ProductVersion.ToUpper() + "'" + " AND Upper(PropertyNo) = '" + "GrossDie".ToUpper() + "'"; - // using (DbDataReader drProperty = ExecuteSQLQuery_Reader(strSQL, cnnTemp)) - // { - // if (drProperty.Read()) - // { - // decExecResult = Conversions.ToDecimal(drProperty["DefaultValue"]); - // } - // drProperty.Close(); - // } - // } - // } - - // catch (Exception ex) - // { - // throw; - // } - // finally - // { - // CloseConnection(cnnTemp); - // } - - // return decExecResult; - - //} - } -} \ No newline at end of file diff --git a/SRC/MESud/udUnitTransferFunction_Customer/udUnitTransferFunction_Customer.csproj b/SRC/MESud/udUnitTransferFunction_Customer/udUnitTransferFunction_Customer.csproj deleted file mode 100644 index 2f71fd9..0000000 --- a/SRC/MESud/udUnitTransferFunction_Customer/udUnitTransferFunction_Customer.csproj +++ /dev/null @@ -1,155 +0,0 @@ - - - - Local - 8.0.50727 - 2.0 - {BFE0BB52-2A20-0BA7-1FE1-00305141A790} - SAK - SAK - SAK - SAK - Debug - AnyCPU - - - - - udUnitTransferFunction_Customer - - - None - JScript - Grid - IE50 - false - Library - Binary - On - Off - udUnitTransferFunction_Customer - - - - - Windows - - - v4.6.2 - 2.0 - - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\udUnitTransferFunction_Customer.xml - 285212672 - - - - - true - true - true - false - false - false - false - 0 - 42016,42017,42018,42019,42032,42353,42354,42355 - full - false - - - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\udUnitTransferFunction_Customer.xml - 285212672 - - - - - false - true - true - false - false - false - false - 0 - 42016,42017,42018,42019,42032,42353,42354,42355 - pdbonly - false - - - - - False - ..\..\MES_S_DLL\data_access_service.dll - False - - - False - ..\..\MES_S_DLL\iMESAppSetting.dll - False - - - False - ..\..\MES_S_DLL\iMESComSubroutine.dll - False - - - False - ..\..\MES_S_DLL\iMESComXML.dll - False - - - False - ..\..\MES_S_DLL\iMESConst.dll - False - - - iMESException - ..\..\MES_S_DLL\iMESException.dll - False - - - False - ..\..\MES_S_DLL\iMESLog.dll - False - - - System - - - - System.Data - - - System.XML - - - - - - - - - - - - Code - - - Code - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/iMESCIOC/CDO/Tables/CDO_TABLE_SAMPLE.cs b/SRC/iMESCIOC/CDO/Tables/CDO_TABLE_SAMPLE.cs deleted file mode 100644 index c13ed4b..0000000 --- a/SRC/iMESCIOC/CDO/Tables/CDO_TABLE_SAMPLE.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System; -using System.Data; -using System.Linq; -using System.Text; -using System.Collections.Generic; -using iMESCore.DataObject; -using iMESCore.Base.ProjectBase.Base; - -namespace iMESCIO.CDO.Tables -{ - - [CDO(TableName = "TABLE_SAMPLE")] - public class CDO_TABLE_SAMPLE : CDOBase - { - - [CDO(ColumnName = "PMITEMNO", DBType = SqlDbType.VarChar, PrimaryKey = true)] - public String PMITEMNO { get; set; } - - [CDO(ColumnName = "PMMODE", DBType = SqlDbType.VarChar)] - public String PMMODE { get; set; } - - [CDO(ColumnName = "DESCRIPTION", DBType = SqlDbType.VarChar)] - public String DESCRIPTION { get; set; } - - [CDO(ColumnName = "CREATOR", DBType = SqlDbType.VarChar)] - public String CREATOR { get; set; } - - [CDO(ColumnName = "CREATEDATE", DBType = SqlDbType.DateTime)] - public DateTime? CREATEDATE { get; set; } - - [CDO(ColumnName = "REVISER", DBType = SqlDbType.VarChar)] - public String REVISER { get; set; } - - [CDO(ColumnName = "REVISEDATE", DBType = SqlDbType.DateTime)] - public DateTime? REVISEDATE { get; set; } - - } -} diff --git a/SRC/iMESCIOC/iMES.snk b/SRC/iMESCIOC/iMES.snk deleted file mode 100644 index 4206cdc..0000000 Binary files a/SRC/iMESCIOC/iMES.snk and /dev/null differ diff --git a/SRC/iMESCIOC/iMESCIOC.csproj b/SRC/iMESCIOC/iMESCIOC.csproj deleted file mode 100644 index 1077cdc..0000000 --- a/SRC/iMESCIOC/iMESCIOC.csproj +++ /dev/null @@ -1,84 +0,0 @@ - - - - - Debug - AnyCPU - {3A1F68B3-EBE4-4A86-9334-F66EC3DCE0AD} - Library - Properties - iMESCIOC - iMESCIOC - v4.6.2 - 512 - - - - true - full - false - ..\MES_S_DLL\ - DEBUG;TRACE - prompt - 4 - false - - - pdbonly - true - ..\..\bin\MES_S_DLL\ - TRACE - prompt - 4 - false - - - true - - - iMES.snk - - - - ..\MES_S_DLL\iMESCIO.dll - - - ..\MES_S_DLL\iMESDataObject.dll - - - ..\MES_S_DLL\iMESProjectBase.dll - - - ..\MES_S_DLL\Newtonsoft.Json.dll - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/SRC/iMESCIOC/iMESCIOC.sln b/SRC/iMESCIOC/iMESCIOC.sln deleted file mode 100644 index 6f6679b..0000000 --- a/SRC/iMESCIOC/iMESCIOC.sln +++ /dev/null @@ -1,22 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.23107.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "iMESCIOC", "iMESCIOC.csproj", "{3A1F68B3-EBE4-4A86-9334-F66EC3DCE0AD}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {3A1F68B3-EBE4-4A86-9334-F66EC3DCE0AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3A1F68B3-EBE4-4A86-9334-F66EC3DCE0AD}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3A1F68B3-EBE4-4A86-9334-F66EC3DCE0AD}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3A1F68B3-EBE4-4A86-9334-F66EC3DCE0AD}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/SRC/MESPlugin/MESPI_BusinessRule/My Project/Application.Designer.cs b/SRC/wsABC/My Project/Application.Designer.cs similarity index 100% rename from SRC/MESPlugin/MESPI_BusinessRule/My Project/Application.Designer.cs rename to SRC/wsABC/My Project/Application.Designer.cs diff --git a/SRC/MESWin/SYS1/ET_21674/My Project/Application.myapp b/SRC/wsABC/My Project/Application.myapp similarity index 100% rename from SRC/MESWin/SYS1/ET_21674/My Project/Application.myapp rename to SRC/wsABC/My Project/Application.myapp diff --git a/SRC/MESPlugin/MESPI_WIP/My Project/Settings.Designer.cs b/SRC/wsABC/My Project/Settings.Designer.cs similarity index 92% rename from SRC/MESPlugin/MESPI_WIP/My Project/Settings.Designer.cs rename to SRC/wsABC/My Project/Settings.Designer.cs index ecde249..47aea5e 100644 --- a/SRC/MESPlugin/MESPI_WIP/My Project/Settings.Designer.cs +++ b/SRC/wsABC/My Project/Settings.Designer.cs @@ -12,11 +12,11 @@ using System.Diagnostics; using Microsoft.VisualBasic; -namespace MESPI_WIP.My +namespace wsABC.My { [System.Runtime.CompilerServices.CompilerGenerated()] - [System.CodeDom.Compiler.GeneratedCode("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0")] + [System.CodeDom.Compiler.GeneratedCode("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")] [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Advanced)] internal sealed partial class MySettings : System.Configuration.ApplicationSettingsBase { @@ -32,7 +32,7 @@ namespace MESPI_WIP.My Private Shared addedHandlerLockObject As New Object _ - Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) If My.Application.SaveMySettingsOnExit Then My.Settings.Save() End If @@ -67,7 +67,7 @@ namespace MESPI_WIP.My } } -namespace MESPI_WIP.My +namespace wsABC.My { [HideModuleName()] diff --git a/SRC/MESPlugin/MESPI_BusinessRule/My Project/Settings.settings b/SRC/wsABC/My Project/Settings.settings similarity index 100% rename from SRC/MESPlugin/MESPI_BusinessRule/My Project/Settings.settings rename to SRC/wsABC/My Project/Settings.settings diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/Properties/AssemblyInfo.cs b/SRC/wsABC/Properties/AssemblyInfo.cs similarity index 100% rename from SRC/MESWin/SYS4/21670ll/wsSXS/Properties/AssemblyInfo.cs rename to SRC/wsABC/Properties/AssemblyInfo.cs diff --git a/SRC/MESud/udSYS_Customer/Resources.Designer.cs b/SRC/wsABC/Resources.Designer.cs similarity index 96% rename from SRC/MESud/udSYS_Customer/Resources.Designer.cs rename to SRC/wsABC/Resources.Designer.cs index 1bbfb01..303e10b 100644 --- a/SRC/MESud/udSYS_Customer/Resources.Designer.cs +++ b/SRC/wsABC/Resources.Designer.cs @@ -12,7 +12,7 @@ using System.Diagnostics; using Microsoft.VisualBasic; -namespace udSYS_Customer.My.Resources +namespace wsABC.My.Resources { // 這個類別是自動產生的,是利用 StronglyTypedResourceBuilder @@ -43,7 +43,7 @@ namespace udSYS_Customer.My.Resources { if (ReferenceEquals(resourceMan, null)) { - var temp = new System.Resources.ResourceManager("udSYS_Customer.Resources", typeof(Resources).Assembly); + var temp = new System.Resources.ResourceManager("wsABC.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; diff --git a/SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.resx b/SRC/wsABC/Resources.resx similarity index 100% rename from SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.resx rename to SRC/wsABC/Resources.resx diff --git a/SRC/MESWin/SYS4/21670ll/wsSXS/wsSXS.csproj b/SRC/wsABC/wsABC.csproj similarity index 91% rename from SRC/MESWin/SYS4/21670ll/wsSXS/wsSXS.csproj rename to SRC/wsABC/wsABC.csproj index 47d0b9f..cccd3bb 100644 --- a/SRC/MESWin/SYS4/21670ll/wsSXS/wsSXS.csproj +++ b/SRC/wsABC/wsABC.csproj @@ -6,8 +6,8 @@ AnyCPU {881686CE-A940-0485-2766-D411835B2FBB} Library - wsSXS - wsSXS + wsABC + wsABC 512 Windows v4.6.2 @@ -24,7 +24,7 @@ true true ..\MES_S_DLL\ - ..\MES_S_DLL\wsSXS.xml + ..\MES_S_DLL\wsABC.xml 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 0 false @@ -54,14 +54,6 @@ On - - False - ..\MES_S_DLL\kcISSUE.dll - - - False - ..\MES_S_DLL\MEStc_SXS.dll - False @@ -146,7 +138,6 @@ True - @@ -167,7 +158,14 @@ Settings.Designer.cs - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/SRC/wsSXS/wsABC.csproj.vspscc b/SRC/wsSXS/wsABC.csproj.vspscc deleted file mode 100644 index b6d3289..0000000 --- a/SRC/wsSXS/wsABC.csproj.vspscc +++ /dev/null @@ -1,10 +0,0 @@ -"" -{ -"FILE_VERSION" = "9237" -"ENLISTMENT_CHOICE" = "NEVER" -"PROJECT_FILE_RELATIVE_PATH" = "" -"NUMBER_OF_EXCLUDED_FILES" = "0" -"ORIGINAL_PROJECT_FILE_PATH" = "" -"NUMBER_OF_NESTED_PROJECTS" = "0" -"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" -} diff --git a/SRC/wsSXS/wsENT21706/wsENT_21706.cs b/SRC/wsSXS/wsENT21706/wsENT_21706.cs deleted file mode 100644 index 9567c22..0000000 --- a/SRC/wsSXS/wsENT21706/wsENT_21706.cs +++ /dev/null @@ -1,2293 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT_21706 - { - private MEStc_SXS.clsENT objENT = new MEStc_SXS.clsENT(); - private MEStc_SXS.clsENT21706 objTest21706 = new MEStc_SXS.clsENT21706(); // 宣告自定义物件 - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT_21706() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data(Custom)")] - public string AddSubcontractorCustom(string InXml) - { - string AddSubcontractorRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - - // 以下为自定义字段 - string NotNull; - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // 自定义的非空字段 NotNull 一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("notnull").Count > 0) - { - if (xmlDoc.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Count > 0) - { - NotNull = xmlDoc.DocumentElement.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "NotNull Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "NotNull Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCustom(SubcontractorNo, SubcontractorName, NotNull, Description, Creator, defDateTime, Note21706); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data(Custom)")] - public string EditSubcontractorCustom(string InXml) - { - string EditSubcontractorRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - // 以下为自定义字段 - string NotNull = defString; - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // NotNull不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("notnull").Count > 0) - { - if (xmlDoc.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Count > 0) - { - NotNull = xmlDoc.DocumentElement.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "NotNull is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("Note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("Note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("Note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCustom(SubcontractorNo, SubcontractorName, NotNull, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime, Note21706); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data(Custom)")] - public string AddSubcontractorContCustom(string InXml) - { - string AddSubcontractorContRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string AdditionalXml = ""; - - // 以下为自定义字段 - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorContCustom(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime, Note21706); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data(Custom)")] - public string EditSubcontractorContCustom(string InXml) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - // 以下为自定义字段 - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorContCustom(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime, Note21706); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - - #region "21706" - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadTestData21706(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objTest21706.LoadTestData21706(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddTestData21706(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objTest21706.AddTestData21706(SubcontractorNo, SubcontractorName, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditTestData21706(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objTest21706.EditTestData21706(SubcontractorNo, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelTestData21706(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objTest21706.DelTestData21706(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - //objENT.SetTestDataBasis_21706IssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objTest21706.DelTestData21706(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveTestData21706(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objTest21706.SetTestData21706IssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objTest21706.SetTestData21706IssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objTest21706.SetTestData21706IssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - #endregion - - } -} diff --git a/SRC/wsSXS/wsSXS.csproj b/SRC/wsSXS/wsSXS.csproj deleted file mode 100644 index 4ad1e57..0000000 --- a/SRC/wsSXS/wsSXS.csproj +++ /dev/null @@ -1,181 +0,0 @@ - - - - - Debug - AnyCPU - {881686CE-A940-0485-2766-D411835B2FBB} - Library - wsSXS - wsSXS - 512 - Windows - v4.6.2 - - SAK - SAK - SAK - SAK - $(DefaultItemExcludes);$(ProjectDir)**\*.vb - - - true - full - true - true - ..\MES_S_DLL\ - ..\MES_S_DLL\wsSXS.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - pdbonly - false - true - true - ..\..\MES_S_DLL\ - ..\..\MES_S_DLL\ - - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - 0 - false - - - On - - - Binary - - - Off - - - On - - - - False - ..\MES_S_DLL\kcISSUE.dll - - - False - ..\MES_S_DLL\MEStc_SXS.dll - - - - False - ..\MES_S_DLL\iMESAppSetting.dll - False - - - False - ..\MES_S_DLL\iMESComSubroutine.dll - False - - - False - ..\MES_S_DLL\iMESComXML.dll - False - - - False - ..\MES_S_DLL\iMESConst.dll - False - - - ..\MES_S_DLL\iMESException.dll - False - - - False - ..\MES_S_DLL\iMESSCI.dll - False - - - ..\MES_S_DLL\kcSYS.dll - False - False - - - False - ..\MES_S_DLL\Newtonsoft.Json.dll - False - - - - - - - - - - - - - - - False - - - - - - - - - - - - - - - - True - Application.myapp - - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - - - - ResXFileCodeGenerator - Resources.Designer.cs - wsABC.My.Resources - Designer - - - - - MyApplicationCodeGenerator - Application.Designer.cs - - - SettingsSingleFileGenerator - wsABC.My - Settings.Designer.cs - - - - - - - \ No newline at end of file diff --git a/SRC/wsSXS/wsSXS.csproj.user b/SRC/wsSXS/wsSXS.csproj.user deleted file mode 100644 index f32b94f..0000000 --- a/SRC/wsSXS/wsSXS.csproj.user +++ /dev/null @@ -1,14 +0,0 @@ - - - - - E:\code\SRC\MES_S_DLL\ - - E:\code\SRC\MES_S_DLL\;E:\Project\digihua\iMES\SYS20240115\SRC\MES_S_DLL\;E:\Project\digihua\iMES\SYS20240115\SRC\MEStc_SXS\ - - E:\VisualStudio_app\Digihua\iMES\MES_S_DLL\ - - - - - \ No newline at end of file diff --git a/SRC/wsSXS/wsSXS.sln b/SRC/wsSXS/wsSXS.sln deleted file mode 100644 index 13847da..0000000 --- a/SRC/wsSXS/wsSXS.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32630.194 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "wsSXS", "wsSXS.csproj", "{881686CE-A940-0485-2766-D411835B2FBB}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {881686CE-A940-0485-2766-D411835B2FBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {881686CE-A940-0485-2766-D411835B2FBB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {881686CE-A940-0485-2766-D411835B2FBB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {881686CE-A940-0485-2766-D411835B2FBB}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {7B40A25F-A0CA-49E5-AB24-36F7949771DE} - EndGlobalSection -EndGlobal diff --git a/SRC/wsSXS/wsTEST_21676/wsTEST_21676.cs b/SRC/wsSXS/wsTEST_21676/wsTEST_21676.cs deleted file mode 100644 index 906b9e6..0000000 --- a/SRC/wsSXS/wsTEST_21676/wsTEST_21676.cs +++ /dev/null @@ -1,1737 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsTEST_21676 - { - //private MEStc_SXS.clsENT objENT = new MEStc_SXS.clsENT(); - private MEStc_SXS.clsTEST_21676 objENT = new MEStc_SXS.clsTEST_21676(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsTEST_21676() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - - #region"wsTEST_21676" - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadTESTDATA_21676(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadTESTDATA_21676(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddTESTDATA_21676(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddTESTDATA_21676(SubcontractorNo, SubcontractorName, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditTESTDATA_21676(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditTESTDATA_21676(SubcontractorNo, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelTESTDATA_21676(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelTESTDATA_21676(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - //objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelTESTDATA_21676(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveTESTDATA_21676(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetTESTDATA_21676IssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetTESTDATA_21676IssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTTESTDATA21676 Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTTESTDATA21676 Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetTESTDATA_21676IssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadTESTDATA_21676Cont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadTESTDATA_21676Cont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - #endregion - - } -} diff --git a/SRC/wsSXS/wsWIP/wsWIP.cs b/SRC/wsSXS/wsWIP/wsWIP.cs deleted file mode 100644 index 0349d56..0000000 --- a/SRC/wsSXS/wsWIP/wsWIP.cs +++ /dev/null @@ -1,131 +0,0 @@ -using System; -using Microsoft.VisualBasic; -using static iMESCore.Base.iMESComSubroutine; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using iMESCore.Settings; - -namespace wsSXS -{ - - public class wsWIP - { - - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private string strServiceName = "wsWIP_SXS"; // ServiceName - private string strResourceDir = "Resources"; - - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - - public wsWIP() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - public string HelloWorld(string InXml) - { - return "HelloWorld"; - } - - - public string LoadOPMaterialState(string InXml) - { - string LoadOPMaterialStateRet = null; - - // 先給預設值,以判斷是否有傳入該參數 - string OPNo = defString; - string MaterialNo = defString; - string MaterialLotNo = defString; - string UnitNo = defString; - string MaterialType = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), ArriveTime.ToString(defDateTimeFormat)); - - // 判斷是否有傳入OPNo,若有,表示要依OPNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("opno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("opno").Item(0).SelectNodes("value").Count > 0) - { - OPNo = xmlDoc.DocumentElement.GetElementsByTagName("opno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入MaterialNo,若有,表示要依MaterialNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("materialno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("materialno").Item(0).SelectNodes("value").Count > 0) - { - MaterialNo = xmlDoc.DocumentElement.GetElementsByTagName("materialno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入MaterialLotNo,若有,表示要依MaterialLotNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("materiallotno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("materiallotno").Item(0).SelectNodes("value").Count > 0) - { - MaterialLotNo = xmlDoc.DocumentElement.GetElementsByTagName("materiallotno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("unitno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("unitno").Item(0).SelectNodes("value").Count > 0) - { - UnitNo = xmlDoc.DocumentElement.GetElementsByTagName("unitno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("materialtype").Count > 0) - { - if (xmlDoc.GetElementsByTagName("materialtype").Item(0).SelectNodes("value").Count > 0) - { - MaterialType = xmlDoc.DocumentElement.GetElementsByTagName("materialtype").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - // strReturnValue = objWIP.LoadOPMaterialState(OPNo, MaterialNo, MaterialLotNo, UnitNo, MaterialType); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(ex.ErrorCode.ToString(), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Load OP Material State Fail!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Load OP Material State Fail!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadOPMaterialStateRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - } - return LoadOPMaterialStateRet; - - } - } -} \ No newline at end of file diff --git a/SRC/wsSXS/wxENT/wsENT.cs b/SRC/wsSXS/wxENT/wsENT.cs deleted file mode 100644 index 93a1c8b..0000000 --- a/SRC/wsSXS/wxENT/wsENT.cs +++ /dev/null @@ -1,1839 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT - { - private MEStc_SXS.clsENT objENT = new MEStc_SXS.clsENT(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string TelNo = defString; - string EMail = defString; - string Description = defString; - string Age = defString; - string Creator = defString; - string AGE = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - - // Age - - if (xmlDoc.DocumentElement.GetElementsByTagName("age").Count > 0) - { - if (xmlDoc.GetElementsByTagName("age").Item(0).SelectNodes("value").Count > 0) - { - - Description = xmlDoc.DocumentElement.GetElementsByTagName("age").Item(0).SelectNodes("value").Item(0).InnerText; - - Age = xmlDoc.DocumentElement.GetElementsByTagName("age").Item(0).SelectNodes("value").Item(0).InnerText; - - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - -<<<<<<< HEAD - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName, TelNo, EMail, Description, Creator); -======= - // 呼叫Dll執行新增資料 - - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName, Description,AGE, Creator); - objENT.AddSubcontractor(SubcontractorNo, SubcontractorName, Description,Age, Creator); ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data(Custom)")] - public string AddSubcontractorCustom(string InXml) - { - string AddSubcontractorRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - - // 以下为自定义字段 - string NotNull; - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // 自定义的非空字段 NotNull 一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("notnull").Count > 0) - { - if (xmlDoc.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Count > 0) - { - NotNull = xmlDoc.DocumentElement.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "NotNull Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "NotNull Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCustom(SubcontractorNo, SubcontractorName, NotNull, Description, Creator, defDateTime, Note21706); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddTeacher"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string TelNo = defString; - string EMail = defString; - string Description = defString; - - string AGE = defString; - - string Age = defString; - - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - - // Age - - if (xmlDoc.DocumentElement.GetElementsByTagName("age").Count > 0) - { - if (xmlDoc.GetElementsByTagName("age").Item(0).SelectNodes("value").Count > 0) - { - AGE = xmlDoc.DocumentElement.GetElementsByTagName("age").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (TelNo ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 -<<<<<<< HEAD -<<<<<<< HEAD - objENT.EditSubcontractor(SubcontractorNo, SubcontractorName, TelNo, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); -======= - objENT.EditSubcontractor(SubcontractorNo, SubcontractorName, Description,Age, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); ->>>>>>> 42de248d2d2ff29266f47df9261e045a7a3351b6 -======= - - objENT.EditSubcontractor(SubcontractorNo, SubcontractorName, Description,AGE, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime);; - - objENT.EditSubcontractor(SubcontractorNo, SubcontractorName, Description,Age, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data(Custom)")] - public string EditSubcontractorCustom(string InXml) - { - string EditSubcontractorRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - // 以下为自定义字段 - string NotNull = defString; - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // NotNull不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("notnull").Count > 0) - { - if (xmlDoc.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Count > 0) - { - NotNull = xmlDoc.DocumentElement.GetElementsByTagName("notnull").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "NotNull is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("Note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("Note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("Note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCustom(SubcontractorNo, SubcontractorName, NotNull, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime, Note21706); ->>>>>>> 7a91e232e75dd451f6bd1a92477e646c49dca747 - } - } - - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditTeacher"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active -<<<<<<< HEAD - tmpSQL = "Update tblENTSubcontractor_21691 Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor_21691 Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; -======= - tmpSQL = "Update A_21703MAIN Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update A_21703MAIN Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; ->>>>>>> 42de248d2d2ff29266f47df9261e045a7a3351b6 - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo,若有,表示要依SubcontractorNo查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string AGE = defString; - string Description = defString; - string Age = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Age - if (xmlDoc.DocumentElement.GetElementsByTagName("age").Count > 0) - { - if (xmlDoc.GetElementsByTagName("age").Item(0).SelectNodes("value").Count > 0) - { - Age = xmlDoc.DocumentElement.GetElementsByTagName("age").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("age").Count > 0) - { - if (xmlDoc.GetElementsByTagName("age").Item(0).SelectNodes("value").Count > 0) - { - AGE = xmlDoc.DocumentElement.GetElementsByTagName("age").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail,AGE, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - objENT.AddSubcontractorCont(SubcontractorNo, ContactorName, TelNo, Age,FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data(Custom)")] - public string AddSubcontractorContCustom(string InXml) - { - string AddSubcontractorContRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string AdditionalXml = ""; - - // 以下为自定义字段 - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorContCustom(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime, Note21706); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string AGE = defString; - string Description = defString; - string Age = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Age - if (xmlDoc.DocumentElement.GetElementsByTagName("age").Count > 0) - { - if (xmlDoc.GetElementsByTagName("age").Item(0).SelectNodes("value").Count > 0) - { - Age = xmlDoc.DocumentElement.GetElementsByTagName("age").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("age").Count > 0) - { - if (xmlDoc.GetElementsByTagName("age").Item(0).SelectNodes("value").Count > 0) - { - AGE = xmlDoc.DocumentElement.GetElementsByTagName("age").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, AGE,Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data(Custom)")] - public string EditSubcontractorContCustom(string InXml) - { - string EditSubcontractorContRet = default(string); - - // 此 Function 为用作练习之自定义 Function - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - // 以下为自定义字段 - string Note21706 = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Note21706 - if (xmlDoc.DocumentElement.GetElementsByTagName("note21706").Count > 0) - { - if (xmlDoc.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Count > 0) - { - Note21706 = xmlDoc.DocumentElement.GetElementsByTagName("note21706").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorContCustom(SubcontractorNo, ContactorName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime, Note21706); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - - } -} diff --git a/SRC/wsSXS/wxENT_21674/wsENT_21674.cs b/SRC/wsSXS/wxENT_21674/wsENT_21674.cs deleted file mode 100644 index cd370a5..0000000 --- a/SRC/wsSXS/wxENT_21674/wsENT_21674.cs +++ /dev/null @@ -1,1083 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT_21674 - { - private MEStc_SXS .clsENT_21674 objENT = new MEStc_SXS.clsENT_21674(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT_21674() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Teacher 外包商 --- - - [WebMethod(Description = "Load Teacher Data")] - public string LoadTeacher(string InXml) - { - string LoadTeacherRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string TeacherNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Teacher,若有,表示要依Teacher查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - TeacherNo = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadTeacher(TeacherNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Teacher Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Teacher Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadTeacherRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadTeacherRet; - - } - - [WebMethod(Description = "Add Teacher data")] - public string AddTeacher(string InXml) - { - string AddTeacherRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var TeacherNo = default(string); - string TeacherName; - string Description = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Teacher一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - TeacherNo = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("teachername").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teachername").Item(0).SelectNodes("value").Count > 0) - { - TeacherName = xmlDoc.DocumentElement.GetElementsByTagName("teachername").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "teachername Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddTeacher(TeacherNo, TeacherName, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", TeacherNo, DateTime.Now, "AddTeacher"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", TeacherNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", TeacherNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddTeacherRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddTeacherRet; - - } - - [WebMethod(Description = "Edit Specified Teacher Data")] - public string EditTeacher(string InXml) - { - string EditTeacherRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var TeacherNo = default(string); - int IssueState = defInteger; - string TeacherName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Teacher一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - TeacherNo = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // TeacherName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("teachername").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teachername").Item(0).SelectNodes("value").Count > 0) - { - TeacherName = xmlDoc.DocumentElement.GetElementsByTagName("teachername").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(TeacherName)) - { - throw new iMESException.MESException("0000-200001", "TeacherName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((TeacherName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditTeacher(TeacherNo, TeacherName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT_21674", GetXMLCurUserNo(xmlDoc), "TeacherNo", TeacherNo, DateTime.Now, "EditTeacher"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", TeacherNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", TeacherNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditTeacherRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditTeacherRet; - - } - - [WebMethod(Description = "Delete Teacher By Specified Teacher")] - public string DelTeacher(string InXml) - { - string DelTeacherRet = default(string); - - var teacherno = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Teacher一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - teacherno = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelTeacher(teacherno); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetTeacherIssueState(teacherno, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelTeacher(teacherno); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT_21674", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, "DelTeacher:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelTeacherRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelTeacherRet; - - } - - [WebMethod(Description = "Approve Specified Teacher Data")] - public string ApproveTeacher(string InXml) - { - string ApproveTeacherRet = default(string); - - string IssueNo = "Teacher BASIS"; // 簽核編號:Teacher BASIS.若找不到,表示直接將狀態改為Active. - var teacherno = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Teacher一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - teacherno = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetTeacherIssueState(teacherno, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT_21674", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, "ApproveTeacher"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetTeacherIssueState(teacherno, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT_21674", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, "ApproveTeacher"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update AA_21674TEACHER Set IssueState = 2 Where TeacherNo = '" + teacherno + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update AA_21674TEACHER Set IssueState = 0 Where TeacherNo = '" + teacherno + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "TeacherNo: " + teacherno; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetTeacherIssueState(teacherno, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT_21674", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, "ApproveTeacher"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Teacher failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveTeacherRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveTeacherRet; - - } - - // Teacher Contactor - [WebMethod(Description = "Load Teacher Contactor Data")] - public string LoadTeacherCont(string InXml) - { - string LoadTeacherContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string teacherno = defString; - string TeachercontName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入teacherno,若有,表示要依teacherno查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - teacherno = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("teachercontname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teachercontname").Item(0).SelectNodes("value").Count > 0) - { - TeachercontName = xmlDoc.DocumentElement.GetElementsByTagName("teachercontname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadTeaherCont(teacherno, TeachercontName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Teacher Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Teacher Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadTeacherContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadTeacherContRet; - - } - - [WebMethod(Description = "Add Teacher Contactor data")] - public string AddTeacherCont(string InXml) - { - string AddTeacherContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var teacherno = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // teacherno一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - teacherno = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeachercontName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeachercontName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - //objENT.AddTeacherCont(teacherno, TeachercontName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, "AddTeacherContactor TeachercontName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add TeacherContactor Data failed, TeachercontName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add TeacherContactor Data failed, TeachercontName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddTeacherContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddTeacherContRet; - - } - - [WebMethod(Description = "Edit Specified Teacher Contactor Data")] - public string EditTeacherCont(string InXml) - { - string EditTeacherContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var teacherno = default(string); - var ContactorName = default(string); - string TelNo = defString; - string FaxNo = defString; - string Title = defString; - string Address = defString; - string EMail = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // teacherno一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - teacherno = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeachercontName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeachercontName Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno").Item(0).SelectNodes("value").Count > 0) - { - TelNo = xmlDoc.DocumentElement.GetElementsByTagName("telno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Count > 0) - { - FaxNo = xmlDoc.DocumentElement.GetElementsByTagName("faxno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title").Item(0).SelectNodes("value").Count > 0) - { - Title = xmlDoc.DocumentElement.GetElementsByTagName("title").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address").Item(0).SelectNodes("value").Count > 0) - { - Address = xmlDoc.DocumentElement.GetElementsByTagName("address").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email").Item(0).SelectNodes("value").Count > 0) - { - EMail = xmlDoc.DocumentElement.GetElementsByTagName("email").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo ?? "") != defString | (FaxNo ?? "") != defString | (Title ?? "") != defString | (Address ?? "") != defString | (EMail ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - //objENT.EditTeacherCont(teacherno, TeachercontName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, "EditTeacherContactor TeachercontName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit TeacherContactor Data failed, TeachercontName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit TeacherContactor Data failed, TeachercontName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditTeacherContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditTeacherContRet; - - } - - [WebMethod(Description = "Delete Teacher Contactor By Specified TeacherNo and TeachercontName")] - public string DelTeacherCont(string InXml) - { - string DelTeacherContRet = default(string); - - var teacherno = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Teacher的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // teacherno一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Count > 0) - { - teacherno = xmlDoc.DocumentElement.GetElementsByTagName("teacherno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "TeacherNo Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelTeacherCont(teacherno, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, "DelTeacherContactor TeachercontName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del TeacherContactor Data failed, TeachercontName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del TeacherContactor Data failed, TeachercontName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "TeacherNo", teacherno, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelTeacherContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelTeacherContRet; - - } - - - #endregion - } -} diff --git a/SRC/wsSXS/wxENT_21676/wsENT_21676.cs b/SRC/wsSXS/wxENT_21676/wsENT_21676.cs deleted file mode 100644 index 3986514..0000000 --- a/SRC/wsSXS/wxENT_21676/wsENT_21676.cs +++ /dev/null @@ -1,1083 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT_21676 - { - private MEStc_SXS .clsENT_21676 objENT = new MEStc_SXS.clsENT_21676(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT_21676() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo_21676 = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractor(SubcontractorNo_21676, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo_21676 = default(string); - string SubcontractorName_21676; - string Description_21676 = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorname_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorname_21676 Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Count > 0) - { - Description_21676 = xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractor(SubcontractorNo_21676, SubcontractorName_21676, Description_21676, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo_21676 = default(string); - int IssueState = defInteger; - string SubcontractorName_21676 = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName_21676不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname_21676").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName_21676)) - { - throw new iMESException.MESException("0000-200001", "subcontractorname_21676 is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName_21676 ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractor(SubcontractorNo_21676, SubcontractorName_21676, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo_21676 = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objENT.DelSubcontractor(SubcontractorNo_21676); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objENT.SetSubcontractorIssueState(SubcontractorNo_21676, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objENT.DelSubcontractor(SubcontractorNo_21676); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo_21676 = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objENT.SetSubcontractorIssueState(SubcontractorNo_21676, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objENT.SetSubcontractorIssueState(SubcontractorNo_21676, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor_21676 Set IssueState = 2 Where SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor_21676 Set IssueState = 0 Where SubcontractorNo_21676 = '" + SubcontractorNo_21676 + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo_21676: " + SubcontractorNo_21676; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objENT.SetSubcontractorIssueState(SubcontractorNo_21676, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - // Subcontractor Contactor - [WebMethod(Description = "Load Subcontractor Contactor Data")] - public string LoadSubcontractorCont(string InXml) - { - string LoadSubcontractorContRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo_21676 = defString; - string ContactorName = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入SubcontractorNo_21676,若有,表示要依SubcontractorNo_21676查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行 - strReturnValue = objENT.LoadSubcontractorCont(SubcontractorNo_21676, ContactorName); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Contactor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorContRet; - - } - - [WebMethod(Description = "Add Subcontractor Contactor data")] - public string AddSubcontractorCont(string InXml) - { - string AddSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo_21676 = default(string); - var ContactorName_21676 = default(string); - string TelNo_21676 = defString; - string FaxNo_21676 = defString; - string Title_21676 = defString; - string Address_21676 = defString; - string EMail_21676 = defString; - string Description_21676 = defString; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo_21676一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname_21676").Item(0).SelectNodes("value").Count > 0) - { - ContactorName_21676 = xmlDoc.DocumentElement.GetElementsByTagName("contactorname_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "contactorname_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "contactorname_21676 Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno_21676").Item(0).SelectNodes("value").Count > 0) - { - TelNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("telno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno_21676").Item(0).SelectNodes("value").Count > 0) - { - FaxNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("faxno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title_21676").Item(0).SelectNodes("value").Count > 0) - { - Title_21676 = xmlDoc.DocumentElement.GetElementsByTagName("title_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address_21676").Item(0).SelectNodes("value").Count > 0) - { - Address_21676 = xmlDoc.DocumentElement.GetElementsByTagName("address_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email_21676").Item(0).SelectNodes("value").Count > 0) - { - EMail_21676 = xmlDoc.DocumentElement.GetElementsByTagName("email_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Count > 0) - { - Description_21676 = xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - - // 呼叫Dll執行新增資料 - objENT.AddSubcontractorCont(SubcontractorNo_21676, ContactorName_21676, TelNo_21676, FaxNo_21676, Title_21676, Address_21676, EMail_21676, Description_21676, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "AddSubcontractorContactor ContactorName_21676:" + ContactorName_21676); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add SubcontractorContactor Data failed, ContactorName_21676:" + ContactorName_21676, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add SubcontractorContactor Data failed, ContactorName_21676:" + ContactorName_21676, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorContRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Contactor Data")] - public string EditSubcontractorCont(string InXml) - { - string EditSubcontractorContRet = default(string); - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo_21676 = default(string); - var ContactorName_21676 = default(string); - string TelNo_21676 = defString; - string FaxNo_21676 = defString; - string Title_21676 = defString; - string Address_21676 = defString; - string EMail_21676 = defString; - string Description_21676 = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo_21676一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "subcontractorno_21676 Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName_21676 = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "ContactorName_21676 Not Found!"); - } - // TelNo - if (xmlDoc.DocumentElement.GetElementsByTagName("telno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("telno_21676").Item(0).SelectNodes("value").Count > 0) - { - TelNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("telno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // FaxNo - if (xmlDoc.DocumentElement.GetElementsByTagName("faxno_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("faxno_21676").Item(0).SelectNodes("value").Count > 0) - { - FaxNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("faxno_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Title - if (xmlDoc.DocumentElement.GetElementsByTagName("title_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("title_21676").Item(0).SelectNodes("value").Count > 0) - { - Title_21676 = xmlDoc.DocumentElement.GetElementsByTagName("title_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Address - if (xmlDoc.DocumentElement.GetElementsByTagName("address_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("address_21676").Item(0).SelectNodes("value").Count > 0) - { - Address_21676 = xmlDoc.DocumentElement.GetElementsByTagName("address_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // EMail - if (xmlDoc.DocumentElement.GetElementsByTagName("email_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("email_21676").Item(0).SelectNodes("value").Count > 0) - { - EMail_21676 = xmlDoc.DocumentElement.GetElementsByTagName("email_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Count > 0) - { - Description_21676 = xmlDoc.DocumentElement.GetElementsByTagName("description_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - // If IssueState = 0 Then 'Unfrozen時才可修改 - // 有修改欄位值時 - if ((TelNo_21676 ?? "") != defString | (FaxNo_21676 ?? "") != defString | (Title_21676 ?? "") != defString | (Address_21676 ?? "") != defString | (EMail_21676 ?? "") != defString | (Description_21676 ?? "") != defString) - { - // 呼叫Dll執行修改 - objENT.EditSubcontractorCont(SubcontractorNo_21676, ContactorName_21676, TelNo_21676, FaxNo_21676, Title_21676, Address_21676, EMail_21676, Description_21676, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - // End If - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "EditSubcontractorContactor ContactorName_21676:" + ContactorName_21676); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit SubcontractorContactor Data failed, ContactorName:" + ContactorName_21676, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit SubcontractorContactor Data failed, ContactorName_21676:" + ContactorName_21676, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return EditSubcontractorContRet; - - } - - [WebMethod(Description = "Delete Subcontractor Contactor By Specified SubcontractorNo_21676 and ContactorName")] - public string DelSubcontractorCont(string InXml) - { - string DelSubcontractorContRet = default(string); - - var SubcontractorNo_21676 = default(string); - string ContactorName = defString; // 沒有傳入表示要刪除指定Subcontractor的所有Contactor - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // SubcontractorNo_21676一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("SubcontractorNo_21676").Count > 0) - { - if (xmlDoc.GetElementsByTagName("SubcontractorNo_21676").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo_21676 = xmlDoc.DocumentElement.GetElementsByTagName("SubcontractorNo_21676").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo_21676 Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo_21676 Not Found!"); - } - // ContactorName一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Count > 0) - { - ContactorName = xmlDoc.DocumentElement.GetElementsByTagName("contactorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - objENT.DelSubcontractorCont(SubcontractorNo_21676, ContactorName); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, "DelSubcontractorContactor ContactorName:" + ContactorName); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Del SubcontractorContactor Data failed, ContactorName:" + ContactorName, ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo_21676", SubcontractorNo_21676, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorContRet; - - } - - - #endregion - } -} diff --git a/SRC/wsSXS/wxENT_21710_02/wsENT_21710_02.cs b/SRC/wsSXS/wxENT_21710_02/wsENT_21710_02.cs deleted file mode 100644 index e0bfeb6..0000000 --- a/SRC/wsSXS/wxENT_21710_02/wsENT_21710_02.cs +++ /dev/null @@ -1,634 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System; -using System.Data; -using System.Web.Services; -using Microsoft.VisualBasic; -using Microsoft.VisualBasic.CompilerServices; -using static iMESCore.Base.iMESComXML; -using static iMESCore.Base.iMESConst; -using static iMESCore.Base.iMESComSubroutine; -namespace wsSXS -{ - public class wsENT_21710_02 - { - private MEStc_SXS.clsENT_21710_02 objTest = new MEStc_SXS.clsENT_21710_02(); - private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件 - //private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化 - //private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化 - private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串 - private DateTime ArriveTime; // 送達時間 - private string strIdentity; // Identity XML字串 - private string strReturnValue; // ReturnValue XML字串 - private string strException; // Exception XML字串 - private string strResult; // Result XML字串 - private string strMessage; // Message XML字串 - private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings(); - private string strResourceDir = "Resources"; - - public wsENT_21710_02() - { - try - { - strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); - } - catch (Exception) - { } - } - - #region --- Subcontractor 外包商 --- - - [WebMethod(Description = "Load Subcontractor Data")] - public string LoadSubcontractor(string InXml) - { - string LoadSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - string SubcontractorNo = defString; - int IssueState = 2; - - ArriveTime = DateTime.Now; - string AdditionalXml = ""; - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // 判斷是否有傳入IssueState,若有,表示要依IssueState查詢 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - } - - // 呼叫副程式處理查詢條件與Additional格式 - AdditionalXml = CombineXMLQueryAdditional(xmlDoc); - - // 呼叫Dll執行 - strReturnValue = objTest.LoadTest(SubcontractorNo, IssueState, AdditionalXml); - strException = ""; - strResult = "success"; - } - - catch (iMESException.MESException ex) - { - strReturnValue = ""; - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - catch (Exception ex) - { - strReturnValue = ""; - strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace); - strResult = "fail"; - } - - finally - { - // 將各部份之XML字串組起來並傳出 - LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); - - } - - return LoadSubcontractorRet; - - } - - [WebMethod(Description = "Add Subcontractor data")] - public string AddSubcontractor(string InXml) - { - string AddSubcontractorRet = default(string); - - // 先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - string SubcontractorName; - string Description = defString; - string Creator = defString; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!"); - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - // Creator - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // 呼叫Dll執行新增資料 - objTest.AddTest(SubcontractorNo, SubcontractorName, Description, Creator); - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return AddSubcontractorRet; - - } - - [WebMethod(Description = "Edit Specified Subcontractor Data")] - public string EditSubcontractor(string InXml) - { - string EditSubcontractorRet = default(string); - - // 參數先給預設值,以判斷是否有傳入該參數 - var SubcontractorNo = default(string); - int IssueState = defInteger; - string SubcontractorName = defString; - string Description = defString; - - int DataStamp = defInteger; - string AdditionalXml = ""; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - // SubcontractorName不可空白 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText; - if (string.IsNullOrEmpty(SubcontractorName)) - { - throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!"); - } - } - } - // Description - if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0) - { - if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0) - { - Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText; - } - } - - // AdditionalXml - GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml"); - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // Unfrozen時才可修改 - { - // 有修改欄位值時 - if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString) - { - // 呼叫Dll執行修改 - objTest.EditTest(SubcontractorNo, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor"); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return EditSubcontractorRet; - - } - - [WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")] - public string DelSubcontractor(string InXml) - { - string DelSubcontractorRet = default(string); - - var SubcontractorNo = default(string); - int IssueState; - string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除 - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - switch (IssueState) - { - case 0: - { - objTest.DelTest(SubcontractorNo); - strDelState = "未簽核刪除"; - break; - } - case 2: - { - objTest.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - strDelState = "已簽核刪除"; - break; - } - case -1: - { - objTest.DelTest(SubcontractorNo); - strDelState = "不使用刪除"; - break; - } - - default: - { - throw new iMESException.MESException("0000-200021", "[%IssueState%]"); - } - } - - strException = ""; - strResult = "success"; - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState); - } - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - - } - - return DelSubcontractorRet; - - } - - [WebMethod(Description = "Approve Specified Subcontractor Data")] - public string ApproveSubcontractor(string InXml) - { - string ApproveSubcontractorRet = default(string); - - string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active. - var SubcontractorNo = default(string); - int IssueState; - var objIssue = new kcISSUE.clsIssue(); - DataRow IssueDR; - int DataStamp = defInteger; - - ArriveTime = DateTime.Now; - - try - { - // 讀取InXml字串 - xmlDoc.LoadXml(InXml); - // 組Identity字串 - strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); - - // 開始解譯InXml字串 - // Subcontractor一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0) - { - if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0) - { - SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!"); - } - // IssueState一定要傳入 - if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0) - { - if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0) - { - IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText); - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - } - else - { - throw new iMESException.MESException("0000-200002", "[%IssueState%]"); - } - - // DataStamp - GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true); - - if (IssueState == 0) // 當狀態為Unfrozen時才作 - { - // 去IssueManagement中找核准的方式 - IssueDR = objIssue.GetIssueJobMap(IssueNo); - - // 找不到表示bypass直接核准 - if (IssueDR["JobNo"] is DBNull) - { - // 直接核准 - objTest.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveTest"); - } - - else - { - // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 - DataRow tmpDR; - tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); - if (tmpDR["JobNo"] is DBNull) - { - objTest.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - } - - else - { - // 將狀態改為Pending,且應以找到的JobNo來進入簽核 - // 填入簽核現況檔之Initial - var ApproveSQL = new Collection(); - var RejectSQL = new Collection(); - string tmpSQL; - string IssueSubject; - string IssueMasterNo; - - // 核准後應將狀態改為Active - tmpSQL = "Update tblENTSubcontractor Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'"; - ApproveSQL.Add(tmpSQL); - // 退回則應將狀態回復到Unfrozen - tmpSQL = "Update tblENTSubcontractor Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'"; - RejectSQL.Add(tmpSQL); - - // Creator未傳入表示以目前的User - string Creator; - if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0) - { - if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0) - { - Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText; - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - } - else - { - Creator = GetXMLCurUserNo(xmlDoc); - } - - IssueSubject = "SubcontractorNo: " + SubcontractorNo; - IssueMasterNo = objIssue.InitIssueMasterNo(); - // 此筆資料進入Issue流程 - objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); - // 將狀態改為Pending - objTest.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); - - objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor"); - - // 發Email給JobSerialNo=1之負責群組 - objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject); - } - } - } - strException = ""; - strResult = "success"; - } - - - catch (iMESException.MESException ex) - { - strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); - } - - catch (Exception ex) - { - strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace); - - strResult = "fail"; - - objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); - } - - finally - { - // 將各部份之XML字串組起來並傳出 - ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); - } - - return ApproveSubcontractorRet; - - } - - - - - #endregion - } -}