From 53558957461ebbfe9c149268f9fed8eb233b5491 Mon Sep 17 00:00:00 2001 From: ISHAO <1870813041@qq.com> Date: Wed, 17 Jan 2024 16:05:54 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E4=BF=AE=E6=94=B9=E3=80=91=E5=AE=9E?= =?UTF-8?q?=E4=B9=A0=E7=94=9F=E7=BB=83=E4=B9=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../My Project/BuildIncrementVersionInfo.vb | 2 +- SRC/MESWin/SYS1/ET_21684/ET_Student.sln | 31 + SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj | 194 +++ .../SYS1/ET_21684/ET_Student.vbproj.user | 7 + .../SYS1/ET_21684/ET_Student.vbproj.vspscc | 10 + .../My Project/Application.Designer.vb | 13 + .../ET_21684/My Project/Application.myapp | 10 + .../SYS1/ET_21684/My Project/AssemblyInfo.vb | 35 + .../My Project/BuildIncrementVersionInfo.vb | 1 + .../ET_21684/My Project/Resources.Designer.vb | 63 + .../SYS1/ET_21684/My Project/Resources.resx | 117 ++ .../ET_21684/My Project/Settings.Designer.vb | 73 ++ .../ET_21684/My Project/Settings.settings | 7 + .../SYS1/ET_21684/My Project/licenses.licx | 7 + SRC/MESWin/SYS1/ET_21684/frmStudent.resx | 120 ++ SRC/MESWin/SYS1/ET_21684/frmStudent.vb | 1123 +++++++++++++++++ .../SYS1/ET_21684/frmStudentContDef.resx | 120 ++ SRC/MESWin/SYS1/ET_21684/frmStudentContDef.vb | 631 +++++++++ SRC/MESWin/SYS1/ET_21684/frmStudentDef.resx | 120 ++ SRC/MESWin/SYS1/ET_21684/frmStudentDef.vb | 433 +++++++ SRC/MESWin/SYS1/ET_21684/iMES.snk | Bin 0 -> 596 bytes SRC/MEStc_SXS/21684tcENT/clsENT21684.cs | 949 ++++++++++++++ SRC/MEStc_SXS/MEStc_SXS.csproj | 1 + .../Properties/BuildIncrementVersionInfo.cs | 2 +- SRC/MEStc_SXS/tcENT/clsENT.cs | 281 ++--- .../Properties/BuildIncrementVersionInfo.cs | 2 +- SRC/wsSXS/wsENT_21684/wsENT_21684.cs | 1082 ++++++++++++++++ SRC/wsSXS/wsSXS.csproj | 2 +- SRC/wsSXS/wsSXS.csproj.user | 2 +- 29 files changed, 5288 insertions(+), 150 deletions(-) create mode 100644 SRC/MESWin/SYS1/ET_21684/ET_Student.sln create mode 100644 SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj create mode 100644 SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj.user create mode 100644 SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj.vspscc create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/Application.Designer.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/Application.myapp create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/AssemblyInfo.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/BuildIncrementVersionInfo.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/Resources.Designer.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/Resources.resx create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/Settings.Designer.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/Settings.settings create mode 100644 SRC/MESWin/SYS1/ET_21684/My Project/licenses.licx create mode 100644 SRC/MESWin/SYS1/ET_21684/frmStudent.resx create mode 100644 SRC/MESWin/SYS1/ET_21684/frmStudent.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/frmStudentContDef.resx create mode 100644 SRC/MESWin/SYS1/ET_21684/frmStudentContDef.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/frmStudentDef.resx create mode 100644 SRC/MESWin/SYS1/ET_21684/frmStudentDef.vb create mode 100644 SRC/MESWin/SYS1/ET_21684/iMES.snk create mode 100644 SRC/MEStc_SXS/21684tcENT/clsENT21684.cs create mode 100644 SRC/wsSXS/wsENT_21684/wsENT_21684.cs diff --git a/SRC/MESWin/ENT/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/ENT/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb index 5b3cb44..755cff8 100644 --- a/SRC/MESWin/ENT/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb +++ b/SRC/MESWin/ENT/ET_Subcontractor/My Project/BuildIncrementVersionInfo.vb @@ -1 +1 @@ - + diff --git a/SRC/MESWin/SYS1/ET_21684/ET_Student.sln b/SRC/MESWin/SYS1/ET_21684/ET_Student.sln new file mode 100644 index 0000000..1e77687 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/ET_Student.sln @@ -0,0 +1,31 @@ + +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_Student", "ET_Student.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 = {674818D9-9790-4A86-93B8-665E012B20B5} + EndGlobalSection +EndGlobal diff --git a/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj b/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj new file mode 100644 index 0000000..ff9b097 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj @@ -0,0 +1,194 @@ + + + + + Debug + x86 + {D6EE7B96-F10E-44E2-9731-162B70B4C8DD} + Library + ET_ChengJi + ET_ChengJi + 512 + Windows + v4.6.2 + + SAK + SAK + SAK + SAK + + + On + + + Binary + + + Off + + + On + + + true + true + true + ..\..\..\MESClient\ + ET_ChengJi.xml + 0 + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + full + x86 + MinimumRecommendedRules.ruleset + false + + + true + ..\..\..\MESClient\ + ET_ChengJi.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 + + + + + frmStudent.vb + + + frmStudentContDef.vb + + + frmStudentDef.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_21684/ET_Student.vbproj.user b/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj.user new file mode 100644 index 0000000..6e4223f --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj.user @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj.vspscc b/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj.vspscc new file mode 100644 index 0000000..b6d3289 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/ET_Student.vbproj.vspscc @@ -0,0 +1,10 @@ +"" +{ +"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/SYS1/ET_21684/My Project/Application.Designer.vb b/SRC/MESWin/SYS1/ET_21684/My Project/Application.Designer.vb new file mode 100644 index 0000000..537244b --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' 此代码由工具生成。 +' 运行时版本:4.0.30319.42000 +' +' 对此文件的更改可能会导致不正确的行为,并且如果 +' 重新生成代码,这些更改将会丢失。 +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/SRC/MESWin/SYS1/ET_21684/My Project/Application.myapp b/SRC/MESWin/SYS1/ET_21684/My Project/Application.myapp new file mode 100644 index 0000000..758895d --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 1 + true + diff --git a/SRC/MESWin/SYS1/ET_21684/My Project/AssemblyInfo.vb b/SRC/MESWin/SYS1/ET_21684/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..b0cdd98 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' 組件的一般資訊是由下列的屬性集控制。 +' 變更這些屬性的值即可修改組件的相關 +' 資訊。 + +' 檢閱組件屬性的值 + + + + + + + + + + +'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID + + +' 組件的版本資訊由下列四個值所組成: +' +' 主要版本 +' 次要版本 +' 組建編號 +' 修訂編號 +' +' 您可以指定所有的值,也可以依照以下的方式,使用 '*' 將組建和修訂編號 +' 指定為預設值: +' + + + diff --git a/SRC/MESWin/SYS1/ET_21684/My Project/BuildIncrementVersionInfo.vb b/SRC/MESWin/SYS1/ET_21684/My Project/BuildIncrementVersionInfo.vb new file mode 100644 index 0000000..d2f2e21 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/BuildIncrementVersionInfo.vb @@ -0,0 +1 @@ + diff --git a/SRC/MESWin/SYS1/ET_21684/My Project/Resources.Designer.vb b/SRC/MESWin/SYS1/ET_21684/My Project/Resources.Designer.vb new file mode 100644 index 0000000..46b2823 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' 此代码由工具生成。 +' 运行时版本: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_ChengJi.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/SYS1/ET_21684/My Project/Resources.resx b/SRC/MESWin/SYS1/ET_21684/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/SYS1/ET_21684/My Project/Settings.Designer.vb b/SRC/MESWin/SYS1/ET_21684/My Project/Settings.Designer.vb new file mode 100644 index 0000000..5d8dc58 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' 此代码由工具生成。 +' 运行时版本: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_ChengJi.My.MySettings + Get + Return Global.ET_ChengJi.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/SRC/MESWin/SYS1/ET_21684/My Project/Settings.settings b/SRC/MESWin/SYS1/ET_21684/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SRC/MESWin/SYS1/ET_21684/My Project/licenses.licx b/SRC/MESWin/SYS1/ET_21684/My Project/licenses.licx new file mode 100644 index 0000000..e3f40e2 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/My Project/licenses.licx @@ -0,0 +1,7 @@ +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_21684/frmStudent.resx b/SRC/MESWin/SYS1/ET_21684/frmStudent.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/frmStudent.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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_21684/frmStudent.vb b/SRC/MESWin/SYS1/ET_21684/frmStudent.vb new file mode 100644 index 0000000..5c0c970 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/frmStudent.vb @@ -0,0 +1,1123 @@ +Imports iMESExceptionManager + +Imports Infragistics.Win +Imports Infragistics.Win.UltraWinGrid +Public Class frmChengJi + + 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 tblENTStudent As String '儲存取回資料表的名稱(master)? + Dim tblENTStudentCont As String '明細資料表名稱(detail) + Dim strFilter As String 'Filter string及列印的過濾條件 + + '//其他共用變數 + Dim StudentNo As String 'for Gird to Focus + Dim ParentName 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 iugStudent 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.iugStudent = 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)" + ' + 'iugStudent + ' + Me.iugStudent.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.iugStudent.EnterDirection = iMESUltraGrid.iMESUltraGridControl.EnterDirectionEnum.Down + Me.iugStudent.GroupBoxPromptText = "Drag a column header here to group by that column." + Me.iugStudent.GroupBoxTextForeColor = System.Drawing.Color.Red + Me.iugStudent.Identity = "IMes" + Me.iugStudent.IdentityForm = "" + Me.iugStudent.LayOutFilePath = "" + Me.iugStudent.Location = New System.Drawing.Point(12, 53) + Me.iugStudent.Name = "iugStudent" + Me.iugStudent.PrintFitWidthToPages = 0 + Me.iugStudent.PrintLandscape = True + Me.iugStudent.PrintPageFooter = "" + Me.iugStudent.PrintPageFooterHAlign = Infragistics.Win.HAlign.[Default] + Me.iugStudent.PrintPageFooterHeight = 20 + Me.iugStudent.PrintPageHeader = "" + Me.iugStudent.PrintPageHeaderHAlign = Infragistics.Win.HAlign.[Default] + Me.iugStudent.PrintPageHeaderHeight = 20 + Me.iugStudent.PrintZoom = 1.0R + Me.iugStudent.Size = New System.Drawing.Size(894, 192) + Me.iugStudent.TabIndex = 25 + Me.iugStudent.UserNo = "IMes" + ' + 'frmChengJi + ' + 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.iugStudent) + 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 = "frmChengJi" + Me.Text = "ENT Student" + 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.iugStudent, 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 frmStudent_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 funLoadStudent() + + SetIssueState(Issue.Unfrozen) '預設在Unforzen上 + SetSearchFieldName(New String() {"StudentNo", "StudentNaME"}) '設置搜尋欄位 + + + '語系切換 + Call ExeChangeResource(Me, gLanguageMode) + ExeGroupControlPriv(Me, PrivFunNo) + + Cursor.Current = Cursors.Default + + End Sub + + Private Sub frmStudent_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(tblENTStudent).DefaultView.RowFilter = "IssueState=0" + Case Issue.Pending + dsENT.Tables(tblENTStudent).DefaultView.RowFilter = "IssueState=1" + Case Issue.Active + dsENT.Tables(tblENTStudent).DefaultView.RowFilter = "IssueState=2" + Case Issue.Unused + dsENT.Tables(tblENTStudent).DefaultView.RowFilter = "IssueState=-1" + End Select + Me.iugStudent.iMESUltraGrid.DataSource = dsENT.Tables(tblENTStudent).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 fStudentDef As New frmStudentDef + + fStudentDef.DefMode = 0 + fStudentDef.ShowDialog(Me) + fStudentDef.Dispose() + + If gReturnKeyValue = "" Then Exit Sub + + StudentNo = gReturnKeyValue + + '重新取出資料 + Call funLoadStudent() + + If GetIssueState() = Issue.Unfrozen Then + ugrRow = FindRecordPosition(iugStudent, "StudentNo", StudentNo) + If Not ugrRow Is Nothing Then + Me.iugStudent.iMESUltraGrid.ActiveRow = ugrRow + Me.iugStudent.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.iugStudent.iMESUltraGrid.ActiveRow Is Nothing Then + 'IsGroupByRow不做任何處理 + If iugStudent.iMESUltraGrid.ActiveRow.IsGroupByRow Then + Exit Sub + End If + Dim Rows As DataRow() + + '找出DataSet中在目前游標列的資料列(DataRow) + Rows = dsENT.Tables(tblENTStudent).Select("StudentNo = '" _ + & Replace(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").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 fStudentDef As New frmStudentDef + fStudentDef.DefMode = 1 + fStudentDef.EditDataRow = Rows(0) + fStudentDef.ShowDialog(Me) + fStudentDef.Dispose() + + If gReturnKeyValue = "" Then Exit Sub + + StudentNo = gReturnKeyValue + + '重新取出資料 + Call funLoadStudent() + + If GetIssueState() = Issue.Unfrozen Then + ugrRow = FindRecordPosition(iugStudent, "StudentNo", StudentNo) + If Not ugrRow Is Nothing Then + Me.iugStudent.iMESUltraGrid.ActiveRow = ugrRow + Me.iugStudent.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.iugStudent.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub + If iugStudent.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub + Cursor.Current = Cursors.WaitCursor + If Not Me.iugStudent.iMESUltraGrid.ActiveRow.Selected Then + Me.iugStudent.iMESUltraGrid.ActiveRow.Selected = True + End If + + '2.Multi + If Me.iugStudent.iMESUltraGrid.Selected.Rows.Count > 0 Then + If Me.iugStudent.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.iugStudent.iMESUltraGrid.Selected.Rows.Count - 1 + intIssueState = Me.iugStudent.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value + If intIssueState = 0 Or intIssueState = -1 Or intIssueState = 2 Then '狀態為Unforzen或Unused時直接刪除 + + strParameter = CombineXMLParameter("studentno", "studentno", "string", CInput(Me.iugStudent.iMESUltraGrid.Selected.Rows(i).Cells("StudentNo").Value.ToString), "") + strParameter = strParameter & CombineXMLParameter("issuestate", "issuestate", "string", CInput(intIssueState), "") + strParameter = strParameter & CombineXMLParameter("datastamp", "datastamp", "integer", iugStudent.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + Try + ' 2016 YF, OutXml = wsENT.DelStudent(InXml) + 'OutXml = InvokeSrv("wsENT.DelStudent", InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.DelStudent", 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 funLoadStudent() + + 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.iugStudent.iMESUltraGrid.ActiveRow Is Nothing Then + 'IsGroupByRow不做任何處理 + If iugStudent.iMESUltraGrid.ActiveRow.IsGroupByRow Then + Exit Sub + End If + Dim Rows As DataRow() + + '找出DataSet中在目前游標列的資料列(DataRow) + Rows = dsENT.Tables(tblENTStudent).Select("StudentNo = '" _ + & Replace(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString, "'", "''") & "'") + + Dim fStudentDef As New frmStudentDef + fStudentDef.DefMode = 2 + fStudentDef.EditDataRow = Rows(0) + fStudentDef.ShowDialog(Me) + + If gReturnKeyValue = "" Then Exit Sub + + StudentNo = gReturnKeyValue + + '重新取出資料 + Call funLoadStudent() + + If GetIssueState() = Issue.Unfrozen Then + ugrRow = FindRecordPosition(iugStudent, "StudentNo", StudentNo) + If Not ugrRow Is Nothing Then + Me.iugStudent.iMESUltraGrid.ActiveRow = ugrRow + Me.iugStudent.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.iugStudent.iMESUltraGrid.ActiveRow Is Nothing Then Exit Sub + If iugStudent.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub + Cursor.Current = Cursors.WaitCursor + If Not Me.iugStudent.iMESUltraGrid.ActiveRow.Selected Then + Me.iugStudent.iMESUltraGrid.ActiveRow.Selected = True + End If + + '2.Multi + If Me.iugStudent.iMESUltraGrid.Selected.Rows.Count > 0 Then + If Me.iugStudent.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.iugStudent.iMESUltraGrid.Selected.Rows.Count - 1 + intIssueState = Me.iugStudent.iMESUltraGrid.Selected.Rows(i).Cells("IssueState").Value + If intIssueState = 0 Then + strParameter = CombineXMLParameter("StudentNo", "StudentNo", "String", CInput(Me.iugStudent.iMESUltraGrid.Selected.Rows(i).Cells("StudentNo").Value.ToString), "") + strParameter += CombineXMLParameter("issuestate", "IssueState", "String", intIssueState, "") + strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "") + strParameter = strParameter & CombineXMLParameter("datastamp", "DataStamp", "Integer", iugStudent.iMESUltraGrid.Selected.Rows(i).Cells("DataStamp").Value, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + Try + ' 2016 YF, OutXml = wsENT.ApproveStudent(InXml) + 'OutXml = InvokeSrv("wsENT.ApproveStudent", InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.ApproveStudent", 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 funLoadStudent() + + 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.iugStudent.iMESUltraGrid.ActiveRow Is Nothing Then + + 'Dim Rows As DataRow() + Dim fStudentContDef As New frmStudentContDef + + fStudentContDef.DefMode = 0 + fStudentContDef.StudentNo = Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString + fStudentContDef.ShowDialog(Me) + + If gReturnKeyValue = "" Then Exit Sub + + ParentName = gReturnKeyValue + + '重新取出資料 + Call funLoadStudentCont(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString) + + ugrRow = FindRecordPosition(iugDetail, "ParentName", ParentName) + 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.iugStudent.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then + If iugStudent.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub + Dim Rows As DataRow() + + '找出DataSet中在目前游標列的資料列(DataRow) + Rows = dsENT.Tables(tblENTStudentCont).Select("StudentNo = '" _ + & Replace(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString, "'", "''") & "'" _ + & " And ParentName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ParentName").Value.ToString, "'", "''") & "'") + + Dim fStudentContDef As New frmStudentContDef + fStudentContDef.DefMode = 1 + fStudentContDef.EditDataRow = Rows(0) + fStudentContDef.StudentNo = Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString + fStudentContDef.ShowDialog(Me) + + If gReturnKeyValue = "" Then Exit Sub + + ParentName = gReturnKeyValue + + '重新取出資料 + Call funLoadStudentCont(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString) + + ugrRow = FindRecordPosition(iugDetail, "ParentName", ParentName) + 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("studentNo", "studentno", "string", CInput(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString), "") + strParameter = strParameter & CombineXMLParameter("parentname", "parentname", "string", CInput(Me.iugDetail.iMESUltraGrid.Selected.Rows(i).Cells("ParentName").Value.ToString), "") + InXml = CombineXMLRequest(strIdentity, strParameter) + Try + ' 2016 YF, OutXml = wsENT.DelStudentCont(InXml) + 'OutXml = InvokeSrv("wsENT.DelStudentCont", InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.DelStudentCont", 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 funLoadStudentCont(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").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.iugStudent.iMESUltraGrid.ActiveRow Is Nothing And Not Me.iugDetail.iMESUltraGrid.ActiveRow Is Nothing Then + If iugStudent.iMESUltraGrid.ActiveRow.IsGroupByRow OrElse iugDetail.iMESUltraGrid.ActiveRow.IsGroupByRow Then Exit Sub + Dim Rows As DataRow() + + '找出DataSet中在目前游標列的資料列(DataRow) + Rows = dsENT.Tables(tblENTStudentCont).Select("StudentNo = '" _ + & Replace(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString, "'", "''") & "'" _ + & " And ParentName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ParentName").Value.ToString, "'", "''") & "'") + + Dim fStudentContDef As New frmStudentContDef + fStudentContDef.DefMode = 2 + fStudentContDef.EditDataRow = Rows(0) + fStudentContDef.StudentNo = Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString + fStudentContDef.ShowDialog(Me) + + If gReturnKeyValue = "" Then Exit Sub + + ParentName = gReturnKeyValue + + '重新取出資料 + Call funLoadStudentCont(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString) + + ugrRow = FindRecordPosition(iugDetail, "ParentName", ParentName) + 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(tblENTStudentCont).Select("StudentNo = '" _ + & Replace(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString, "'", "''") & "'" _ + & " And ParentName = '" & Replace(Me.iugDetail.iMESUltraGrid.ActiveRow.Cells("ParentName").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 + + funLoadStudent() + + Cursor.Current = Cursors.Default + End Sub + +#Region "Ultra Grid" + + Private Sub iugStudent_iMESUltraGrid_InitializeLayOut(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles iugStudent.iMESUltraGrid_InitializeLayOut + + With e.Layout + With .Bands(0).Columns("StudentNo") + .Header.Caption = "StudentNo" + .Width = 110 + .Hidden = False + .Header.VisiblePosition = 0 + End With + With .Bands(0).Columns("StudentName") + .Header.Caption = "StudentName" + .Width = 110 + .Hidden = False + .CellMultiLine = DefaultableBoolean.True + .Header.VisiblePosition = 1 + End With + With .Bands(0).Columns("Score") + .Header.Caption = "Score" + .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 iugStudent_iMESUltraGrid_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles iugStudent.iMESUltraGrid_AfterRowActivate + + 'IsGroupByRow不做任何處理 + If Not iugStudent.iMESUltraGrid.ActiveRow.IsGroupByRow Then + Call funLoadStudentCont(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").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("StudentNo") + .Header.Caption = "StudentNo" + .Width = 110 + .Hidden = False + .Header.VisiblePosition = 0 + End With + With .Bands(0).Columns("ParentName") + .Header.Caption = "ParentName" + .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("Creator") + .Header.Caption = "Creator" + .Width = 80 + .Hidden = False + .Header.VisiblePosition = 7 + End With + With .Bands(0).Columns("CreateDate") + .Header.Caption = "CreateDate" + .Width = 150 + .Format = "yyyy/MM/dd HH:mm:ss" + .Hidden = False + .Header.VisiblePosition = 8 + End With + With .Bands(0).Columns("Reviser") + .Header.Caption = "Reviser" + .Width = 80 + .Hidden = False + .Header.VisiblePosition = 9 + End With + With .Bands(0).Columns("ReviseDate") + .Header.Caption = "ReviseDate" + .Width = 150 + .Format = "yyyy/MM/dd HH:mm:ss" + .Hidden = False + .Header.VisiblePosition = 10 + End With + End With + + '語系切換 + Call ExeChangeResource(Me, gLanguageMode) + End Sub + +#End Region + +#Region "Load Function" + + '//取出tblENTStudent 外包商資料 + + Private Sub funLoadStudent() + + '先判斷是否dataset中已有ENTStudent之datatable,若有,需先remove否則會有錯誤 + If Not IsNothing(dsENT.Tables(tblENTStudent)) Then + dsENT.Tables.Remove(tblENTStudent) + 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.LoadStudent(InXml) + 'OutXml = InvokeSrv("wsENT.LoadStudent", InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.LoadStudent", InXml) + + Dim XmlDoc As New XmlDocument '處理Xml字串之物件? + + '利用XmlDoc物件處理ReturnValue + XmlDoc.LoadXml(OutXml) + + If ChkExecutionSuccess(XmlDoc) Then + '讀取取出資料表之名稱 + + tblENTStudent = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadStudent").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadStudent").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("loadStudent").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(tblENTStudent).DefaultView.RowFilter = strFilter + dsENT.Tables(tblENTStudent).DefaultView.Sort = "StudentNo" + + Me.iugStudent.iMESUltraGrid.DataSource = dsENT.Tables(tblENTStudent).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 Student Failed!!," & e1.Message, MsgBoxStyle.Exclamation) + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Sub + + '//取出tblENTStudentCont聯絡人資料 + + Private Sub funLoadStudentCont(ByRef StudentNo As String) + + If Not IsNothing(dsENT.Tables(tblENTStudentCont)) Then + dsENT.Tables.Remove(tblENTStudentCont) + End If + + '組InXml的字串 + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("studentno", "studentno", "string", StudentNo, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + + Try + ' 2016 YF, OutXml = wsENT.LoadStudentCont(InXml) + 'OutXml = InvokeSrv("wsENT.LoadStudentCont", InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.LoadStudentCont", InXml) + + Dim XmlDoc As New XmlDocument '處理Xml字串之物件? + + '利用XmlDoc物件處理ReturnValue + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + '讀取取出資料表之名稱 + + tblENTStudentCont = XmlDoc.GetElementsByTagName("returnvalue").Item(0).SelectNodes("loadStudentcont").Item(0).SelectNodes("name").Item(0).InnerXml + '取出Schema,dataset讀取Schema可防止Null Field及DateTime的問題 + XmlSchema = XmlDoc.DocumentElement.GetElementsByTagName("loadStudentcont").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("loadStudentcont").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(tblENTStudentCont).DefaultView + + Else + ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc)) + End If + + XmlDoc = Nothing + + Catch ex As Exception + 'MsgBox("Unexpected Error. Load ENT Student Cont Failed!!," & e1.Message, MsgBoxStyle.Exclamation) + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + End Sub + + Private Sub funShowActiveDetail() + + If Me.iugStudent.iMESUltraGrid.ActiveRow Is Nothing Then + Me.iugDetail.iMESUltraGrid.DataSource = Nothing + Else + Call funLoadStudentCont(Me.iugStudent.iMESUltraGrid.ActiveRow.Cells("StudentNo").Value.ToString) + End If + + End Sub + + Private Sub funiMESUltraGridIni() + + 'iugStudent 初始設定 + With Me.iugStudent.iMESUltraGrid + .Text = "" + .DisplayLayout.GroupByBox.Hidden = True + .DisplayLayout.UseFixedHeaders = False + End With + + '系統會以UserNo做為Layout的檔名 + + iugStudent.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/SYS1/ET_21684/frmStudentContDef.resx b/SRC/MESWin/SYS1/ET_21684/frmStudentContDef.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/frmStudentContDef.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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_21684/frmStudentContDef.vb b/SRC/MESWin/SYS1/ET_21684/frmStudentContDef.vb new file mode 100644 index 0000000..384dbfa --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/frmStudentContDef.vb @@ -0,0 +1,631 @@ +Imports iMESExceptionManager + +Public Class frmStudentContDef + + Inherits COM_Kit.frmDefTemplat + + '//Public Variables + Public EditDataRow As DataRow + Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy + + Public StudentNo 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 + 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 lblParentName As System.Windows.Forms.Label + Friend WithEvents lblStudentNo As System.Windows.Forms.Label + Friend WithEvents gbxStudentContData As System.Windows.Forms.GroupBox + Friend WithEvents txtStudentNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtParentName 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.gbxStudentContData = 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.lblStudentNo = New System.Windows.Forms.Label() + Me.lblParentName = New System.Windows.Forms.Label() + Me.txtStudentNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtParentName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() + Me.gbxStudentContData.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.txtStudentNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtParentName, 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) + ' + 'gbxStudentContData + ' + Me.gbxStudentContData.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.gbxStudentContData.Controls.Add(Me.txtAddress) + Me.gbxStudentContData.Controls.Add(Me.txtEMail) + Me.gbxStudentContData.Controls.Add(Me.txtTitle) + Me.gbxStudentContData.Controls.Add(Me.txtFaxNo) + Me.gbxStudentContData.Controls.Add(Me.lblAddress) + Me.gbxStudentContData.Controls.Add(Me.lblEMail) + Me.gbxStudentContData.Controls.Add(Me.lblTitle) + Me.gbxStudentContData.Controls.Add(Me.lblFaxNo) + Me.gbxStudentContData.Controls.Add(Me.lblTelNo) + Me.gbxStudentContData.Controls.Add(Me.lblStudentNo) + Me.gbxStudentContData.Controls.Add(Me.lblParentName) + Me.gbxStudentContData.Controls.Add(Me.txtStudentNo) + Me.gbxStudentContData.Controls.Add(Me.txtParentName) + Me.gbxStudentContData.Controls.Add(Me.txtTelNo) + Me.gbxStudentContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.gbxStudentContData.Location = New System.Drawing.Point(15, 8) + Me.gbxStudentContData.Name = "gbxStudentContData" + Me.gbxStudentContData.Size = New System.Drawing.Size(469, 306) + Me.gbxStudentContData.TabIndex = 0 + Me.gbxStudentContData.TabStop = False + Me.gbxStudentContData.Text = "ENT Student 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 + ' + 'lblStudentNo + ' + Me.lblStudentNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblStudentNo.Location = New System.Drawing.Point(14, 29) + Me.lblStudentNo.Name = "lblStudentNo" + Me.lblStudentNo.Size = New System.Drawing.Size(96, 14) + Me.lblStudentNo.TabIndex = 0 + Me.lblStudentNo.Text = "Student No" + Me.lblStudentNo.TextAlign = System.Drawing.ContentAlignment.TopRight + ' + 'lblParentName + ' + Me.lblParentName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblParentName.Location = New System.Drawing.Point(24, 59) + Me.lblParentName.Name = "lblParentName" + Me.lblParentName.Size = New System.Drawing.Size(86, 14) + Me.lblParentName.TabIndex = 2 + Me.lblParentName.Text = "Parent Name" + Me.lblParentName.TextAlign = System.Drawing.ContentAlignment.TopRight + ' + 'txtStudentNo + ' + Me.txtStudentNo.Location = New System.Drawing.Point(120, 24) + Me.txtStudentNo.Name = "txtStudentNo" + Me.txtStudentNo.ReadOnly = True + Me.txtStudentNo.Size = New System.Drawing.Size(114, 22) + Me.txtStudentNo.TabIndex = 1 + Me.txtStudentNo.TabStop = False + ' + 'txtParentName + ' + Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) + Me.txtParentName.Appearance = Appearance1 + Me.txtParentName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) + Me.txtParentName.Location = New System.Drawing.Point(120, 56) + Me.txtParentName.Name = "txtParentName" + Me.txtParentName.Size = New System.Drawing.Size(160, 22) + Me.txtParentName.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 + ' + 'frmStudentContDef + ' + Me.ClientSize = New System.Drawing.Size(496, 446) + Me.Controls.Add(Me.gbxStudentContData) + Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Name = "frmStudentContDef" + Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "ENT Student 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.gbxStudentContData, 0) + CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() + Me.gbxStudentContData.ResumeLayout(False) + Me.gbxStudentContData.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.txtStudentNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtParentName, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + +#End Region + + Private Sub frmStudentContDef_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 + txtStudentNo.Text = EditDataRow.Item("StudentNo").ToString + txtParentName.Text = EditDataRow.Item("ParentName").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 + txtStudentNo.Text = StudentNo + SetCreateDate(Now) + SetCreator(gUserNo) + ElseIf DefMode = 1 Then 'Edit + txtParentName.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 frmStudentContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated + If DefMode = 0 Or DefMode = 2 Then + txtParentName.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 + txtParentName.Focus() + Else + txtTelNo.Focus() + End If + + txtEMail.Text = "" + btnApplyEnabled = False + Cursor.Current = Cursors.Default + + End Sub + +#Region "Control KeyPress" + + Private Sub txtStudentNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentNo.Click + txtStudentNo.SelectAll() + End Sub + + Private Sub txtStudentNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentNo.Enter + txtStudentNo.SelectAll() + End Sub + + Private Sub txtStudentNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStudentNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtStudentNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentNo.TextChanged + btnApplyEnabled = True + End Sub + + Private Sub txtParentName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtParentName.Click + txtParentName.SelectAll() + End Sub + + Private Sub txtParentName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtParentName.Enter + txtParentName.SelectAll() + End Sub + + Private Sub txtParentName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtParentName.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtParentName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtParentName.Leave + If txtParentName.Text <> "" And txtEMail.Text = "" Then + txtEMail.Text = txtParentName.Text & "@" + End If + txtParentName.Text = UCase(txtParentName.Text) + End Sub + + Private Sub txtParentName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtParentName.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) + ' txtDescription.SelectAll() + 'End Sub + + 'Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) + ' txtDescription.SelectAll() + 'End Sub + + 'Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) + ' 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) + ' btnApplyEnabled = True + 'End Sub + +#End Region + +#Region "Others" + + Private Function funAddorEdit(sender As Object) As Integer + + funAddorEdit = -1 + + '****************************************************************************** + '1.基本檢查() + '****************************************************************************** + If txtStudentNo.Text = "" Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%StudentNo%]"), MsgBoxStyle.Exclamation, Me.Text) + txtStudentNo.Focus() + Exit Function + End If + If txtParentName.Text = "" Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ParentName%]"), MsgBoxStyle.Exclamation, Me.Text) + txtParentName.Focus() + Exit Function + End If + + '****************************************************************************** + '2.寫回資料庫() + '****************************************************************************** + Dim XmlDoc As New XmlDocument + + Try + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("studentno", "studentNo", "string", CInput(txtStudentNo.Text), "") + strParameter = strParameter & CombineXMLParameter("parentname", "parentname", "string", CInput(txtParentName.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.AddStudentCont(InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.AddStudentCont", InXml) + + Else 'Edit + ' 增加Datastamp + strParameter += CombineXMLParameter("datastamp", "datastamp", "integer", intDataStamp, "") + InXml = CombineXMLRequest(strIdentity, strParameter) + ' 2016 YF, OutXml = wsENT.EditStudentCont(InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.EditStudentCont", InXml) + + End If + + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + gReturnKeyValue = txtParentName.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 Student Parent Failed!," & e1.Message, MsgBoxStyle.Exclamation) + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + XmlDoc = Nothing + + End Function +#End Region + + + Private Sub frmStudentContDef_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/SYS1/ET_21684/frmStudentDef.resx b/SRC/MESWin/SYS1/ET_21684/frmStudentDef.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/frmStudentDef.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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_21684/frmStudentDef.vb b/SRC/MESWin/SYS1/ET_21684/frmStudentDef.vb new file mode 100644 index 0000000..49f9c95 --- /dev/null +++ b/SRC/MESWin/SYS1/ET_21684/frmStudentDef.vb @@ -0,0 +1,433 @@ +Imports iMESExceptionManager + +Public Class frmStudentDef + + 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 txtSCORE As System.Windows.Forms.RichTextBox + Friend WithEvents lblScore As System.Windows.Forms.Label + Friend WithEvents lblStudentNo As System.Windows.Forms.Label + Friend WithEvents lblStudentName As System.Windows.Forms.Label + Friend WithEvents gbxStudentData As System.Windows.Forms.GroupBox + Friend WithEvents txtStudentNo As Infragistics.Win.UltraWinEditors.UltraTextEditor + Friend WithEvents txtStudentName 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.gbxStudentData = New System.Windows.Forms.GroupBox() + Me.txtSCORE = New System.Windows.Forms.RichTextBox() + Me.lblScore = New System.Windows.Forms.Label() + Me.lblStudentNo = New System.Windows.Forms.Label() + Me.lblStudentName = New System.Windows.Forms.Label() + Me.txtStudentNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + Me.txtStudentName = New Infragistics.Win.UltraWinEditors.UltraTextEditor() + CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit() + Me.gbxStudentData.SuspendLayout() + CType(Me.txtStudentNo, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtStudentName, 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) + ' + 'gbxStudentData + ' + Me.gbxStudentData.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.gbxStudentData.Controls.Add(Me.txtSCORE) + Me.gbxStudentData.Controls.Add(Me.lblScore) + Me.gbxStudentData.Controls.Add(Me.lblStudentNo) + Me.gbxStudentData.Controls.Add(Me.lblStudentName) + Me.gbxStudentData.Controls.Add(Me.txtStudentNo) + Me.gbxStudentData.Controls.Add(Me.txtStudentName) + Me.gbxStudentData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.gbxStudentData.Location = New System.Drawing.Point(12, 8) + Me.gbxStudentData.Name = "gbxStudentData" + Me.gbxStudentData.Size = New System.Drawing.Size(479, 169) + Me.gbxStudentData.TabIndex = 7 + Me.gbxStudentData.TabStop = False + Me.gbxStudentData.Text = "Student Data" + ' + 'txtSCORE + ' + Me.txtSCORE.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtSCORE.Location = New System.Drawing.Point(128, 86) + Me.txtSCORE.Name = "txtSCORE" + Me.txtSCORE.Size = New System.Drawing.Size(334, 67) + Me.txtSCORE.TabIndex = 2 + Me.txtSCORE.Text = "" + ' + 'lblScore + ' + Me.lblScore.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblScore.Location = New System.Drawing.Point(56, 88) + Me.lblScore.Name = "lblScore" + Me.lblScore.Size = New System.Drawing.Size(64, 14) + Me.lblScore.TabIndex = 13 + Me.lblScore.Text = "SCORE" + Me.lblScore.TextAlign = System.Drawing.ContentAlignment.TopRight + ' + 'lblStudentNo + ' + Me.lblStudentNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblStudentNo.Location = New System.Drawing.Point(24, 24) + Me.lblStudentNo.Name = "lblStudentNo" + Me.lblStudentNo.Size = New System.Drawing.Size(96, 32) + Me.lblStudentNo.TabIndex = 5 + Me.lblStudentNo.Text = "Student No" + Me.lblStudentNo.TextAlign = System.Drawing.ContentAlignment.TopRight + ' + 'lblStudentName + ' + Me.lblStudentName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblStudentName.Location = New System.Drawing.Point(8, 56) + Me.lblStudentName.Name = "lblStudentName" + Me.lblStudentName.Size = New System.Drawing.Size(112, 32) + Me.lblStudentName.TabIndex = 9 + Me.lblStudentName.Text = "Student Name" + Me.lblStudentName.TextAlign = System.Drawing.ContentAlignment.TopRight + ' + 'txtStudentNo + ' + Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) + Me.txtStudentNo.Appearance = Appearance1 + Me.txtStudentNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) + Me.txtStudentNo.Location = New System.Drawing.Point(128, 24) + Me.txtStudentNo.Name = "txtStudentNo" + Me.txtStudentNo.Size = New System.Drawing.Size(152, 22) + Me.txtStudentNo.TabIndex = 0 + ' + 'txtStudentName + ' + Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) + Me.txtStudentName.Appearance = Appearance2 + Me.txtStudentName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer)) + Me.txtStudentName.Location = New System.Drawing.Point(128, 55) + Me.txtStudentName.Name = "txtStudentName" + Me.txtStudentName.Size = New System.Drawing.Size(334, 22) + Me.txtStudentName.TabIndex = 1 + ' + 'frmStudentDef + ' + Me.ClientSize = New System.Drawing.Size(503, 309) + Me.Controls.Add(Me.gbxStudentData) + Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Name = "frmStudentDef" + Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "ENT Student" + 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.gbxStudentData, 0) + CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit() + Me.gbxStudentData.ResumeLayout(False) + Me.gbxStudentData.PerformLayout() + CType(Me.txtStudentNo, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtStudentName, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + +#End Region + + Private Sub frmStudentDef_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 + txtStudentNo.Text = EditDataRow.Item("StudentNo").ToString + txtStudentName.Text = EditDataRow.Item("StudentName").ToString + 'txtScore是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料 + txtSCORE.Text = EditDataRow.Item("Score").ToString + End If + + If DefMode = 0 Or DefMode = 2 Then 'Add or Copy + SetCreator(gUserNo) + SetCreateDate(Now) + ElseIf DefMode = 1 Then 'Edit + txtStudentNo.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 frmStudentDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated + If DefMode = 0 Or DefMode = 2 Then + txtStudentNo.Focus() + Else + txtStudentName.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 + txtStudentNo.Focus() + Else + txtStudentName.Focus() + + End If + + Cursor.Current = Cursors.Default + btnApplyEnabled = False + + End Sub + + Private Sub frmStudentDef_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 txtStudentNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentNo.Click + txtStudentNo.SelectAll() + End Sub + + Private Sub txtStudentNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentNo.Enter + txtStudentNo.SelectAll() + End Sub + + Private Sub txtStudentNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStudentNo.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtStudentNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentNo.Leave + txtStudentNo.Text = UCase(txtStudentNo.Text) + End Sub + + Private Sub txtStudentNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentNo.TextChanged + btnApplyEnabled = True + End Sub + + Private Sub txtStudentName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentName.Click + txtStudentName.SelectAll() + End Sub + + Private Sub txtStudentName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentName.Enter + txtStudentName.SelectAll() + End Sub + + Private Sub txtStudentName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStudentName.KeyPress + If e.KeyChar = Convert.ToChar(13) Then + SendKeys.Send("{TAB}") + End If + End Sub + + Private Sub txtStudentName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStudentName.TextChanged + btnApplyEnabled = True + End Sub + + Private Sub txtScore_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtSCORE.Click + txtSCORE.SelectAll() + End Sub + + Private Sub txtScore_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtSCORE.Enter + txtSCORE.SelectAll() + End Sub + + Private Sub txtScore_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSCORE.TextChanged + btnApplyEnabled = True + End Sub + +#End Region + +#Region "Others" + + Private Function funAddorEdit(sender As Object) As Integer + + funAddorEdit = -1 + + '****************************************************************************** + '1.基本檢查 + '****************************************************************************** + If txtStudentNo.Text = "" Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%StudentNo%]"), MsgBoxStyle.Exclamation, Me.Text) + txtStudentNo.Focus() + Exit Function + End If + + If txtStudentName.Text = "" Then + iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%StudentName%]"), MsgBoxStyle.Exclamation, Me.Text) + txtStudentName.Focus() + Exit Function + End If + + '2. + '****************************************************************************** + '寫回資料庫 + '****************************************************************************** + Dim XmlDoc As New XmlDocument + + Try + strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow()) + strParameter = CombineXMLParameter("studentno", "studentNo", "string", CInput(txtStudentNo.Text), "") + strParameter = strParameter & CombineXMLParameter("studentname", "studentname", "string", CInput(txtStudentName.Text), "") + strParameter = strParameter & CombineXMLParameter("score", "score", "string", CInput(txtSCORE.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.AddStudent(InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.AddStudent", 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.EditStudent(InXml) + OutXml = InvokeSrv("SXS.wsENT_21684.EditStudent", InXml) + + End If + + XmlDoc.LoadXml(OutXml) + If ChkExecutionSuccess(XmlDoc) Then + gReturnKeyValue = txtStudentNo.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 Student Failed!," & e1.Message, MsgBoxStyle.Exclamation) + ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace) + End Try + + XmlDoc = Nothing + + End Function + + Private Sub lblScore_Click(sender As Object, e As EventArgs) Handles lblScore.Click + + End Sub + + Private Sub btnConfirm_Click_1(sender As Object, e As EventArgs) Handles btnConfirm.Click + + End Sub + + Private Sub btnClose_Click_1(sender As Object, e As EventArgs) Handles btnClose.Click + + End Sub + +#End Region + +End Class + diff --git a/SRC/MESWin/SYS1/ET_21684/iMES.snk b/SRC/MESWin/SYS1/ET_21684/iMES.snk new file mode 100644 index 0000000000000000000000000000000000000000..4206cdc36eceddde7f30ac484d1852eb3f9be236 GIT binary patch literal 596 zcmV-a0;~N80ssI2Bme+XQ$aES1ONa50097#g3R+{UF+SWBpq3jKsGz4Rg)jp;sR@& z9YKT-w@gNp-L~38+1NJ=1XDRJDW25AI*NovDaNnzDN>{Bkv1jod=Ji9)a&FRUaAtf zi1{sH^ycmTE>;(=WPI@cVijY>( z68QMK9TPTAYPREpfq+h^Nne$)zO;6bx%j96AK_A|B+TR7U>0P)(eEk{J#@4Mx&M05 zCmJxuxSLKS802l^7))Rwj&-Awxzy zL|h&Z8u5{hxZ#i*aB?roJ=(>%lFM~AM)K&^89a(nzv>UkL3%^1E^(B=&$CpC*k&Uu zoWIXD#zo%*oEY3D5w(^p%? zO5a)yp9j|(odT|vi) x=2V4i$!>r`bocbgd;9#&HU{hI|N6Z$Mk4?^qLlWtab5 z>NP5P^SUu%0a4(t?J}R)?1B(lBxj+?ehgOdZcWno8ix^tn9J&06) 0) + { + GetStudentRet = dsENT.Tables[0].Rows[0]; + } + else + { + GetStudentRet = dsENT.Tables[0].NewRow(); + } + } + catch (Exception e1) + { + GetStudentRet = null; + throw; + } // New Exception("kcENT.GetStudent: " & e1.Message) + + finally + { + CloseConnection(cnnTemp); + if (dsENT != null) + { + dsENT.Dispose(); + } + + } + + return GetStudentRet; + + } + public string SetStudentIssueState(string StudentNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) + { + string SetStudentIssueStateRet = default(string); + // 此 Function 將修改IssueState欄位的值 + // 傳入值: IssueState修改後的值及VendorNo + // 傳回值: success(成功), fail(失敗) + + try + { + // 先給定strSQL一定有的欄位 + strSQL = "Update tblENTChengJi 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 StudentNo ='" + StudentNo + "'"; + strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; + + // 呼叫執行SQL指令 + ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true); + } + + // //Return success + SetStudentIssueStateRet = "success"; + } + + catch (Exception e1) + { + SetStudentIssueStateRet = "fail"; + // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 + throw; + + } // New Exception("kcENT.SetStudentIssueState: " & e1.Message) + + return SetStudentIssueStateRet; + + } + + + public string AddStudentCont(string StudentNo, string ParentName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Score = defString, string AdditionalXml = "", string Creator = defString, DateTime CreateDate = default(DateTime)) + { + string AddStudentContRet = default(string); + // 此 Function 將新增一筆資料 + // 傳入值: 各欄位新增值 + // 傳回值: success(成功), fail(失敗) + + try + { + strSQLAddField = "Insert into tblENTChengJiCont (StudentNo, ParentName"; + strSQLAddValue = " Values ('" + StudentNo + "','" + ParentName + "'"; + + 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 (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 + AddStudentContRet = "success"; + } + + catch (Exception e1) + { + AddStudentContRet = "fail"; + // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 + throw; + + } // New Exception("kcENT.AddStudentCont: " & e1.Message) + + return AddStudentContRet; + + } + + + public string EditStudentCont(string StudentNo, string ParentName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Score = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) + { + string EditStudentContRet = default(string); + + // 此 Function 將修改一筆資料 + // 傳入值: 各欄位修改值 + // 傳回值: success(成功), fail(失敗) + + try + { + // 先給定strSQL一定有的欄位 + strSQL = "Update tblENTChengJiCont 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 (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 StudentNo = '" + StudentNo + "'" + " And ParentName ='" + ParentName + "'"; + 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 + EditStudentContRet = "success"; + } + + catch (Exception e1) + { + EditStudentContRet = "fail"; + // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 + throw; + + } // New Exception("kcENT.EditStudentCont: " & e1.Message) + + return EditStudentContRet; + + } + + public string DelStudentCont(string StudentNo, string ParentName = defString, string AdditionalXml = "") + { + string DelStudentContRet = default(string); + // 此 Function 將刪除資料 + // 傳入值: 刪除的索引值 + // 傳回值: success(成功), fail(失敗) + + try + { + strSQL = "Delete From tblENTChengJiCont " + " Where StudentNo='" + StudentNo + "'"; + + if ((ParentName ?? "") != defString) + { + strSQL += " And ParentName = '" + ParentName + "'"; + } + + if (!string.IsNullOrEmpty(AdditionalXml)) + { + // 加上additional的condition + strSQL += SeparateAddXML_Condition(AdditionalXml); + } + + // 呼叫執行SQL指令 + ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); + + // //Return success + DelStudentContRet = "success"; + } + + catch (Exception e1) + { + DelStudentContRet = "fail"; + // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 + throw; + + } // New Exception("kcENT.DelStudentCont: " & e1.Message) + + return DelStudentContRet; + + } + + public string LoadStudentCont(string StudentNo = defString, string ParentName = defString, string AdditionalXml = "") + { + string LoadStudentContRet = default(string); + // 此 Function 將資料以XML方式取出 + // 傳入值: 索引值 + // 傳回值: XML(成功), fail(失敗) + + var dsENT = default(DataSet); + IDbConnection cnnTemp = null; + + try + { + // //Create connection + cnnTemp = CreateConnection(strConnectionString); + + strSQL = "Select * From tblENTChengJiCont Where StudentNo Is Not Null"; + + // 有傳入StudentNo表示只取該StudentNo之資料 + if ((StudentNo ?? "") != defString) + { + strSQL += " And StudentNo = '" + StudentNo + "'"; + } + if ((ParentName ?? "") != defString) + { + strSQL += " And ParentName = '" + ParentName + "'"; + } + + if (!string.IsNullOrEmpty(AdditionalXml)) + { + // 加上additional的condition + strSQL += SeparateAddXML_Condition(AdditionalXml); + } + + // //Select data + dsENT = new DataSet(); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJiCont", cnnTemp); + + // //Combine return value + LoadStudentContRet = CombineXMLReturnValue("loadStudentcont", "tblENTChengJiCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); + } + + catch (Exception e1) + { + LoadStudentContRet = "fail"; + throw; + } // New Exception("kcENT.LoadStudentCont: " & e1.Message) + + finally + { + CloseConnection(cnnTemp); + if (dsENT != null) + { + dsENT.Dispose(); + } + + } + + return LoadStudentContRet; + + } + + public DataSet ShowStudentCont(string StudentNo = defString, string ParentName = defString, string AdditionalXml = "") + { + DataSet ShowStudentContRet = default(DataSet); + // 此 Function 將資料以 Dataset 方式取出 + // 傳入值: 索引值 + // 傳回值: Dataset(成功), Nothing(失敗) + + + var dsENT = default(DataSet); + IDbConnection cnnTemp = null; + + try + { + // //Create connection + cnnTemp = CreateConnection(strConnectionString); + + strSQL = "Select * From tblENTChengJiCont Where StudentNo Is Not Null"; + if ((StudentNo ?? "") != defString) + { + strSQL += " And StudentNo = '" + StudentNo + "'"; + } + if ((ParentName ?? "") != defString) + { + strSQL += " And ParentName = '" + ParentName + "'"; + } + + if (!string.IsNullOrEmpty(AdditionalXml)) + { + // 加上additional的condition + strSQL += SeparateAddXML_Condition(AdditionalXml); + } + + // //Select data + dsENT = new DataSet(); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJiCont", cnnTemp); + + // //Return data + ShowStudentContRet = dsENT; + } + + catch (Exception e1) + { + ShowStudentContRet = null; + throw; + } // New Exception("kcENT.ShowStudentCont: " & e1.Message) + + finally + { + CloseConnection(cnnTemp); + if (dsENT != null) + { + dsENT.Dispose(); + } + + } + + return ShowStudentContRet; + + } + + public DataRow GetStudentCont(string StudentNo = defString, string ParentName = defString, string AdditionalXml = "") + { + DataRow GetStudentContRet = default(DataRow); + // 此 Function 將資料以 DataRow 方式取出 + // 傳入值: 索引值 + // 傳回值: DataRow(成功), Nothing(失敗) + + + var dsENT = default(DataSet); + IDbConnection cnnTemp = null; + + try + { + // //Create connection + cnnTemp = CreateConnection(strConnectionString); + + strSQL = "Select * From tblENTChengJiCont Where StudentNo Is Not Null"; + if ((StudentNo ?? "") != defString) + { + strSQL += " And StudentNo = '" + StudentNo + "'"; + } + if ((ParentName ?? "") != defString) + { + strSQL += " And ParentName = '" + ParentName + "'"; + } + + if (!string.IsNullOrEmpty(AdditionalXml)) + { + // 加上additional的condition + strSQL += SeparateAddXML_Condition(AdditionalXml); + } + + // //Select data + dsENT = new DataSet(); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJiCont", cnnTemp); + + // //Return data + if (dsENT.Tables[0].Rows.Count > 0) + { + GetStudentContRet = dsENT.Tables[0].Rows[0]; + } + else + { + GetStudentContRet = dsENT.Tables[0].NewRow(); + } + } + catch (Exception e1) + { + GetStudentContRet = null; + throw; + } // New Exception("kcENT.GetStudentCont: " & e1.Message) + + finally + { + CloseConnection(cnnTemp); + if (dsENT != null) + { + dsENT.Dispose(); + } + + } + + return GetStudentContRet; + + } + + + + #endregion + } +} diff --git a/SRC/MEStc_SXS/MEStc_SXS.csproj b/SRC/MEStc_SXS/MEStc_SXS.csproj index 0854ab1..d8b3545 100644 --- a/SRC/MEStc_SXS/MEStc_SXS.csproj +++ b/SRC/MEStc_SXS/MEStc_SXS.csproj @@ -111,6 +111,7 @@ + diff --git a/SRC/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs b/SRC/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs index 99be341..8c4e437 100644 --- a/SRC/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs +++ b/SRC/MEStc_SXS/Properties/BuildIncrementVersionInfo.cs @@ -1 +1 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40115")] +[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/MEStc_SXS/tcENT/clsENT.cs b/SRC/MEStc_SXS/tcENT/clsENT.cs index 2af6c9d..b5c8a5b 100644 --- a/SRC/MEStc_SXS/tcENT/clsENT.cs +++ b/SRC/MEStc_SXS/tcENT/clsENT.cs @@ -36,7 +36,7 @@ namespace MEStc_SXS #region --- Initial Object --- public clsENT() - { + { // Get database type strDataBaseType = objSetting.GetDataBaseType(); // Get connection string @@ -124,12 +124,12 @@ namespace MEStc_SXS } #endregion - #region --- Subcontractor 外包商 --- + #region --- Student 外包商 --- - public string AddSubcontractor(string SubcontractorNo, string SubcontractorName, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") + public string AddStudent(string StudentNo, string StudentName, string Score = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "") { - string AddSubcontractorRet = default(string); + string AddStudentRet = default(string); // 此 Function 將新增一筆資料 // 傳入值: 各欄位新增值 // 傳回值: success(成功), fail(失敗) @@ -139,13 +139,13 @@ namespace MEStc_SXS try { - strSQLAddField = "Insert into tblENTSubcontractor (SubcontractorNo, SubcontractorName, IssueState"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + SubcontractorName + "', 0"; + strSQLAddField = "Insert into tblENTChengJi (StudentNo, StudentName, IssueState"; + strSQLAddValue = " Values ('" + StudentNo + "','" + StudentName + "', 0"; - if ((Description ?? "") != defString) + if ((Score ?? "") != defString) { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; + strSQLAddField += ",Score"; + strSQLAddValue += ",'" + Score + "'"; } if ((Creator ?? "") != defString) { @@ -175,24 +175,24 @@ namespace MEStc_SXS ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); // //Return success - AddSubcontractorRet = "success"; + AddStudentRet = "success"; } catch (Exception e1) { - AddSubcontractorRet = "fail"; + AddStudentRet = "fail"; // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 throw; - } // New Exception("kcENT.AddSubcontractor: " & e1.Message) + } // New Exception("kcENT.AddStudent: " & e1.Message) - return AddSubcontractorRet; + return AddStudentRet; } - 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 EditStudent(string StudentNo, string StudentName = defString, string Score = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) { - string EditSubcontractorRet = default(string); + string EditStudentRet = default(string); // 此 Function 將修改一筆資料 // 傳入值: 各欄位修改值 // 傳回值: success(成功), fail(失敗) @@ -200,15 +200,15 @@ namespace MEStc_SXS try { // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor Set "; + strSQL = "Update tblENTChengJi Set "; - if ((SubcontractorName ?? "") != defString) + if ((StudentName ?? "") != defString) { - strSQL += "SubcontractorName = '" + SubcontractorName + "',"; + strSQL += "StudentName = '" + StudentName + "',"; } - if ((Description ?? "") != defString) + if ((Score ?? "") != defString) { - strSQL += "Description = '" + Description + "',"; + strSQL += "Score = '" + Score + "',"; } if (Reviser != defString) @@ -235,7 +235,7 @@ namespace MEStc_SXS strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1); } - strSQL += " Where SubcontractorNo ='" + SubcontractorNo + "'"; + strSQL += " Where StudentNo ='" + StudentNo + "'"; strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; // 有額外的條件式時再Append進原來的strSQL中 @@ -250,23 +250,23 @@ namespace MEStc_SXS } // //Return success - EditSubcontractorRet = "success"; + EditStudentRet = "success"; } catch (Exception e1) { - EditSubcontractorRet = "fail"; + EditStudentRet = "fail"; // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 throw; - } // New Exception("kcENT.EditSubcontractor: " & e1.Message) + } // New Exception("kcENT.EditStudent: " & e1.Message) - return EditSubcontractorRet; + return EditStudentRet; } - public string DelSubcontractor(string SubcontractorNo, string AdditionalXml = "") + public string DelStudent(string StudentNo, string AdditionalXml = "") { - string DelSubcontractorRet = default(string); + string DelStudentRet = default(string); // 此 Function 將刪除資料 // 傳入值: 刪除的索引值 // 傳回值: success(成功), fail(失敗) @@ -274,12 +274,12 @@ namespace MEStc_SXS try { - // 1. 刪除Contactor - strSQL = "Delete From tblENTSubcontractorCont " + "Where SubcontractorNo='" + SubcontractorNo + "'"; + // 1. 刪除Parent + strSQL = "Delete From tblENTChengJiCont " + "Where StudentNo='" + StudentNo + "'"; CollectionSQL.Add(strSQL); // 2. 刪除主檔 - strSQL = "Delete From tblENTSubcontractor " + " Where SubcontractorNo ='" + SubcontractorNo + "'"; + strSQL = "Delete From tblENTChengJi " + " Where StudentNo ='" + StudentNo + "'"; if (!string.IsNullOrEmpty(AdditionalXml)) { @@ -293,24 +293,24 @@ namespace MEStc_SXS ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL); // //Return success - DelSubcontractorRet = "success"; + DelStudentRet = "success"; } catch (Exception e1) { - DelSubcontractorRet = "fail"; + DelStudentRet = "fail"; // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 throw; - } // New Exception("kcENT.DelSubcontractor: " & e1.Message) + } // New Exception("kcENT.DelStudent: " & e1.Message) - return DelSubcontractorRet; + return DelStudentRet; } - public string LoadSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") + public string LoadStudent(string StudentNo = defString, int IssueState = defInteger, string AdditionalXml = "") { - string LoadSubcontractorRet = default(string); + string LoadStudentRet = default(string); // 此 Function 將資料以XML方式取出 // 傳入值: 索引值 // 傳回值: XML(成功), fail(失敗) @@ -323,11 +323,11 @@ namespace MEStc_SXS // //Create connection cnnTemp = CreateConnection(strConnectionString); - strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null"; + strSQL = "Select * From tblENTChengJi Where StudentNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) + if ((StudentNo ?? "") != defString) { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; + strSQL += " And StudentNo = '" + StudentNo + "'"; } if (IssueState != defInteger) { @@ -342,17 +342,17 @@ namespace MEStc_SXS // //Select data dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor", cnnTemp); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJi", cnnTemp); // //Combine return value - LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "tblENTSubcontractor", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); + LoadStudentRet = CombineXMLReturnValue("loadStudent", "tblENTChengJi", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); } catch (Exception e1) { - LoadSubcontractorRet = "fail"; + LoadStudentRet = "fail"; throw; - } // New Exception("kcENT.LoadSubcontractor: " & e1.Message) + } // New Exception("kcENT.LoadStudent: " & e1.Message) finally { @@ -364,13 +364,13 @@ namespace MEStc_SXS } - return LoadSubcontractorRet; + return LoadStudentRet; } - public DataSet ShowSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") + public DataSet ShowStudent(string StudentNo = defString, int IssueState = defInteger, string AdditionalXml = "") { - DataSet ShowSubcontractorRet = default(DataSet); + DataSet ShowStudentRet = default(DataSet); // 此 Function 將資料以 Dataset 方式取出 // 傳入值: 索引值 // 傳回值: Dataset(成功), Nothing(失敗) @@ -383,11 +383,11 @@ namespace MEStc_SXS // //Create connection cnnTemp = CreateConnection(strConnectionString); - strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null"; + strSQL = "Select * From tblENTChengJi Where StudentNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) + if ((StudentNo ?? "") != defString) { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; + strSQL += " And StudentNo = '" + StudentNo + "'"; } if (IssueState != defInteger) { @@ -402,17 +402,17 @@ namespace MEStc_SXS // //Select data dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor", cnnTemp); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJi", cnnTemp); // //Return data - ShowSubcontractorRet = dsENT; + ShowStudentRet = dsENT; } catch (Exception e1) { - ShowSubcontractorRet = null; + ShowStudentRet = null; throw; - } // New Exception("kcENT.ShowSubcontractor: " & e1.Message) + } // New Exception("kcENT.ShowStudent: " & e1.Message) finally { @@ -424,13 +424,13 @@ namespace MEStc_SXS } - return ShowSubcontractorRet; + return ShowStudentRet; } - public DataRow GetSubcontractor(string SubcontractorNo = defString, int IssueState = defInteger, string AdditionalXml = "") + public DataRow GetStudent(string StudentNo = defString, int IssueState = defInteger, string AdditionalXml = "") { - DataRow GetSubcontractorRet = default(DataRow); + DataRow GetStudentRet = default(DataRow); // 此 Function 將資料以 DataRow 方式取出 // 傳入值: 索引值 // 傳回值: DataRow(成功), Nothing(失敗) @@ -443,11 +443,11 @@ namespace MEStc_SXS // //Create connection cnnTemp = CreateConnection(strConnectionString); - strSQL = "Select * From tblENTSubcontractor Where SubcontractorNo Is Not Null"; + strSQL = "Select * From tblENTChengJi Where StudentNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) + if ((StudentNo ?? "") != defString) { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; + strSQL += " And StudentNo = '" + StudentNo + "'"; } if (IssueState != defInteger) { @@ -462,23 +462,23 @@ namespace MEStc_SXS // //Select data dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractor", cnnTemp); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJi", cnnTemp); // //Return data if (dsENT.Tables[0].Rows.Count > 0) { - GetSubcontractorRet = dsENT.Tables[0].Rows[0]; + GetStudentRet = dsENT.Tables[0].Rows[0]; } else { - GetSubcontractorRet = dsENT.Tables[0].NewRow(); + GetStudentRet = dsENT.Tables[0].NewRow(); } } catch (Exception e1) { - GetSubcontractorRet = null; + GetStudentRet = null; throw; - } // New Exception("kcENT.GetSubcontractor: " & e1.Message) + } // New Exception("kcENT.GetStudent: " & e1.Message) finally { @@ -490,12 +490,12 @@ namespace MEStc_SXS } - return GetSubcontractorRet; + return GetStudentRet; } - public string SetSubcontractorIssueState(string SubcontractorNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) + public string SetStudentIssueState(string StudentNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) { - string SetSubcontractorIssueStateRet = default(string); + string SetStudentIssueStateRet = default(string); // 此 Function 將修改IssueState欄位的值 // 傳入值: IssueState修改後的值及VendorNo // 傳回值: success(成功), fail(失敗) @@ -503,7 +503,7 @@ namespace MEStc_SXS try { // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractor Set IssueState = " + IssueState + ","; + strSQL = "Update tblENTChengJi Set IssueState = " + IssueState + ","; if (Reviser != defString) strSQL = strSQL + "Reviser = '" + Reviser + "',"; @@ -521,7 +521,7 @@ namespace MEStc_SXS strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1); } - strSQL = strSQL + " Where SubcontractorNo ='" + SubcontractorNo + "'"; + strSQL = strSQL + " Where StudentNo ='" + StudentNo + "'"; strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; // 呼叫執行SQL指令 @@ -529,33 +529,33 @@ namespace MEStc_SXS } // //Return success - SetSubcontractorIssueStateRet = "success"; + SetStudentIssueStateRet = "success"; } catch (Exception e1) { - SetSubcontractorIssueStateRet = "fail"; + SetStudentIssueStateRet = "fail"; // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 throw; - } // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message) + } // New Exception("kcENT.SetStudentIssueState: " & e1.Message) - return SetSubcontractorIssueStateRet; + return SetStudentIssueStateRet; } - 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)) + public string AddStudentCont(string StudentNo, string ParentName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Score = defString, string AdditionalXml = "", string Creator = defString, DateTime CreateDate = default(DateTime)) { - string AddSubcontractorContRet = default(string); + string AddStudentContRet = default(string); // 此 Function 將新增一筆資料 // 傳入值: 各欄位新增值 // 傳回值: success(成功), fail(失敗) try { - strSQLAddField = "Insert into tblENTSubcontractorCont (SubcontractorNo, ContactorName"; - strSQLAddValue = " Values ('" + SubcontractorNo + "','" + ContactorName + "'"; + strSQLAddField = "Insert into tblENTChengJiCont (StudentNo, ParentName"; + strSQLAddValue = " Values ('" + StudentNo + "','" + ParentName + "'"; if ((TelNo ?? "") != defString) { @@ -582,11 +582,6 @@ namespace MEStc_SXS strSQLAddField += ",EMail"; strSQLAddValue += ",'" + EMail + "'"; } - if ((Description ?? "") != defString) - { - strSQLAddField += ",Description"; - strSQLAddValue += ",'" + Description + "'"; - } if (Creator != defString) { strSQLAddField = strSQLAddField + ",Creator"; @@ -615,25 +610,25 @@ namespace MEStc_SXS ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); // //Return success - AddSubcontractorContRet = "success"; + AddStudentContRet = "success"; } catch (Exception e1) { - AddSubcontractorContRet = "fail"; + AddStudentContRet = "fail"; // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 throw; - } // New Exception("kcENT.AddSubcontractorCont: " & e1.Message) + } // New Exception("kcENT.AddStudentCont: " & e1.Message) - return AddSubcontractorContRet; + return AddStudentContRet; } - 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)) + public string EditStudentCont(string StudentNo, string ParentName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Score = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime)) { - string EditSubcontractorContRet = default(string); + string EditStudentContRet = default(string); // 此 Function 將修改一筆資料 // 傳入值: 各欄位修改值 @@ -642,7 +637,7 @@ namespace MEStc_SXS try { // 先給定strSQL一定有的欄位 - strSQL = "Update tblENTSubcontractorCont Set "; + strSQL = "Update tblENTChengJiCont Set "; if ((TelNo ?? "") != defString) { @@ -664,10 +659,6 @@ namespace MEStc_SXS { strSQL += "EMail = '" + EMail + "',"; } - if ((Description ?? "") != defString) - { - strSQL += "Description = '" + Description + "',"; - } if (Reviser != defString) strSQL = strSQL + "Reviser = '" + Reviser + "',"; @@ -693,7 +684,7 @@ namespace MEStc_SXS strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1); } - strSQL += " Where SubcontractorNo = '" + SubcontractorNo + "'" + " And ContactorName ='" + ContactorName + "'"; + strSQL += " Where StudentNo = '" + StudentNo + "'" + " And ParentName ='" + ParentName + "'"; strSQL = strSQL + " And DataStamp = '" + DataStamp + "'"; // 有額外的條件式時再Append進原來的strSQL中 @@ -708,35 +699,35 @@ namespace MEStc_SXS } // //Return success - EditSubcontractorContRet = "success"; + EditStudentContRet = "success"; } catch (Exception e1) { - EditSubcontractorContRet = "fail"; + EditStudentContRet = "fail"; // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 throw; - } // New Exception("kcENT.EditSubcontractorCont: " & e1.Message) + } // New Exception("kcENT.EditStudentCont: " & e1.Message) - return EditSubcontractorContRet; + return EditStudentContRet; } - public string DelSubcontractorCont(string SubcontractorNo, string ContactorName = defString, string AdditionalXml = "") + public string DelStudentCont(string StudentNo, string ParentName = defString, string AdditionalXml = "") { - string DelSubcontractorContRet = default(string); + string DelStudentContRet = default(string); // 此 Function 將刪除資料 // 傳入值: 刪除的索引值 // 傳回值: success(成功), fail(失敗) try { - strSQL = "Delete From tblENTSubcontractorCont " + " Where SubcontractorNo='" + SubcontractorNo + "'"; + strSQL = "Delete From tblENTChengJiCont " + " Where StudentNo='" + StudentNo + "'"; - if ((ContactorName ?? "") != defString) + if ((ParentName ?? "") != defString) { - strSQL += " And ContactorName = '" + ContactorName + "'"; + strSQL += " And ParentName = '" + ParentName + "'"; } if (!string.IsNullOrEmpty(AdditionalXml)) @@ -749,24 +740,24 @@ namespace MEStc_SXS ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL); // //Return success - DelSubcontractorContRet = "success"; + DelStudentContRet = "success"; } catch (Exception e1) { - DelSubcontractorContRet = "fail"; + DelStudentContRet = "fail"; // 發生錯誤時丟回本身的Function Name及系統錯誤訊息 throw; - } // New Exception("kcENT.DelSubcontractorCont: " & e1.Message) + } // New Exception("kcENT.DelStudentCont: " & e1.Message) - return DelSubcontractorContRet; + return DelStudentContRet; } - public string LoadSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") + public string LoadStudentCont(string StudentNo = defString, string ParentName = defString, string AdditionalXml = "") { - string LoadSubcontractorContRet = default(string); + string LoadStudentContRet = default(string); // 此 Function 將資料以XML方式取出 // 傳入值: 索引值 // 傳回值: XML(成功), fail(失敗) @@ -779,16 +770,16 @@ namespace MEStc_SXS // //Create connection cnnTemp = CreateConnection(strConnectionString); - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; + strSQL = "Select * From tblENTChengJiCont Where StudentNo Is Not Null"; - // 有傳入SubcontractorNo表示只取該SubcontractorNo之資料 - if ((SubcontractorNo ?? "") != defString) + // 有傳入StudentNo表示只取該StudentNo之資料 + if ((StudentNo ?? "") != defString) { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; + strSQL += " And StudentNo = '" + StudentNo + "'"; } - if ((ContactorName ?? "") != defString) + if ((ParentName ?? "") != defString) { - strSQL += " And ContactorName = '" + ContactorName + "'"; + strSQL += " And ParentName = '" + ParentName + "'"; } if (!string.IsNullOrEmpty(AdditionalXml)) @@ -799,17 +790,17 @@ namespace MEStc_SXS // //Select data dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJiCont", cnnTemp); // //Combine return value - LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "tblENTSubcontractorCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); + LoadStudentContRet = CombineXMLReturnValue("loadStudentcont", "tblENTChengJiCont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), ""); } catch (Exception e1) { - LoadSubcontractorContRet = "fail"; + LoadStudentContRet = "fail"; throw; - } // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message) + } // New Exception("kcENT.LoadStudentCont: " & e1.Message) finally { @@ -821,13 +812,13 @@ namespace MEStc_SXS } - return LoadSubcontractorContRet; + return LoadStudentContRet; } - public DataSet ShowSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") + public DataSet ShowStudentCont(string StudentNo = defString, string ParentName = defString, string AdditionalXml = "") { - DataSet ShowSubcontractorContRet = default(DataSet); + DataSet ShowStudentContRet = default(DataSet); // 此 Function 將資料以 Dataset 方式取出 // 傳入值: 索引值 // 傳回值: Dataset(成功), Nothing(失敗) @@ -841,14 +832,14 @@ namespace MEStc_SXS // //Create connection cnnTemp = CreateConnection(strConnectionString); - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) + strSQL = "Select * From tblENTChengJiCont Where StudentNo Is Not Null"; + if ((StudentNo ?? "") != defString) { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; + strSQL += " And StudentNo = '" + StudentNo + "'"; } - if ((ContactorName ?? "") != defString) + if ((ParentName ?? "") != defString) { - strSQL += " And ContactorName = '" + ContactorName + "'"; + strSQL += " And ParentName = '" + ParentName + "'"; } if (!string.IsNullOrEmpty(AdditionalXml)) @@ -859,17 +850,17 @@ namespace MEStc_SXS // //Select data dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJiCont", cnnTemp); // //Return data - ShowSubcontractorContRet = dsENT; + ShowStudentContRet = dsENT; } catch (Exception e1) { - ShowSubcontractorContRet = null; + ShowStudentContRet = null; throw; - } // New Exception("kcENT.ShowSubcontractorCont: " & e1.Message) + } // New Exception("kcENT.ShowStudentCont: " & e1.Message) finally { @@ -881,13 +872,13 @@ namespace MEStc_SXS } - return ShowSubcontractorContRet; + return ShowStudentContRet; } - public DataRow GetSubcontractorCont(string SubcontractorNo = defString, string ContactorName = defString, string AdditionalXml = "") + public DataRow GetStudentCont(string StudentNo = defString, string ParentName = defString, string AdditionalXml = "") { - DataRow GetSubcontractorContRet = default(DataRow); + DataRow GetStudentContRet = default(DataRow); // 此 Function 將資料以 DataRow 方式取出 // 傳入值: 索引值 // 傳回值: DataRow(成功), Nothing(失敗) @@ -901,14 +892,14 @@ namespace MEStc_SXS // //Create connection cnnTemp = CreateConnection(strConnectionString); - strSQL = "Select * From tblENTSubcontractorCont Where SubcontractorNo Is Not Null"; - if ((SubcontractorNo ?? "") != defString) + strSQL = "Select * From tblENTChengJiCont Where StudentNo Is Not Null"; + if ((StudentNo ?? "") != defString) { - strSQL += " And SubcontractorNo = '" + SubcontractorNo + "'"; + strSQL += " And StudentNo = '" + StudentNo + "'"; } - if ((ContactorName ?? "") != defString) + if ((ParentName ?? "") != defString) { - strSQL += " And ContactorName = '" + ContactorName + "'"; + strSQL += " And ParentName = '" + ParentName + "'"; } if (!string.IsNullOrEmpty(AdditionalXml)) @@ -919,23 +910,23 @@ namespace MEStc_SXS // //Select data dsENT = new DataSet(); - ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTSubcontractorCont", cnnTemp); + ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTChengJiCont", cnnTemp); // //Return data if (dsENT.Tables[0].Rows.Count > 0) { - GetSubcontractorContRet = dsENT.Tables[0].Rows[0]; + GetStudentContRet = dsENT.Tables[0].Rows[0]; } else { - GetSubcontractorContRet = dsENT.Tables[0].NewRow(); + GetStudentContRet = dsENT.Tables[0].NewRow(); } } catch (Exception e1) { - GetSubcontractorContRet = null; + GetStudentContRet = null; throw; - } // New Exception("kcENT.GetSubcontractorCont: " & e1.Message) + } // New Exception("kcENT.GetStudentCont: " & e1.Message) finally { @@ -947,7 +938,7 @@ namespace MEStc_SXS } - return GetSubcontractorContRet; + return GetStudentContRet; } diff --git a/SRC/wsSXS/Properties/BuildIncrementVersionInfo.cs b/SRC/wsSXS/Properties/BuildIncrementVersionInfo.cs index 99be341..8c4e437 100644 --- a/SRC/wsSXS/Properties/BuildIncrementVersionInfo.cs +++ b/SRC/wsSXS/Properties/BuildIncrementVersionInfo.cs @@ -1 +1 @@ -[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40115")] +[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")] diff --git a/SRC/wsSXS/wsENT_21684/wsENT_21684.cs b/SRC/wsSXS/wsENT_21684/wsENT_21684.cs new file mode 100644 index 0000000..e914338 --- /dev/null +++ b/SRC/wsSXS/wsENT_21684/wsENT_21684.cs @@ -0,0 +1,1082 @@ +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_21684 + { + private MEStc_SXS.clsENT21684 objENT = new MEStc_SXS.clsENT21684(); + 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_21684() + { + try + { + strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString()); + } + catch (Exception) + { } + } + + #region --- Student 外包商 --- + + [WebMethod(Description = "Load Student Data")] + public string LoadStudent(string InXml) + { + string LoadStudentRet = default(string); + + // 先給預設值,以判斷是否有傳入該參數 + string StudentNo = defString; + int IssueState = 2; + + ArriveTime = DateTime.Now; + string AdditionalXml = ""; + try + { + // 讀取InXml字串 + xmlDoc.LoadXml(InXml); + // 組Identity字串 + strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); + + // 判斷是否有傳入Student,若有,表示要依Student查詢 + if (xmlDoc.DocumentElement.GetElementsByTagName("Studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("Studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("Studentno").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.LoadStudent(StudentNo, IssueState, AdditionalXml); + strException = ""; + strResult = "success"; + } + + catch (iMESException.MESException ex) + { + strReturnValue = ""; + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Student Failed!!", ex.StackTrace); + strResult = "fail"; + } + + catch (Exception ex) + { + strReturnValue = ""; + strException = CombineXMLException(defWSErrCode, ex.Message, "Show Student Failed!!", ex.StackTrace); + strResult = "fail"; + } + + finally + { + // 將各部份之XML字串組起來並傳出 + LoadStudentRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); + + } + + return LoadStudentRet; + + } + + [WebMethod(Description = "Add Student data")] + public string AddStudent(string InXml) + { + string AddStudentRet = default(string); + + // 先給預設值,以判斷是否有傳入該參數 + var StudentNo = default(string); + string StudentName; + string Score = defString; + string Creator = defString; + + ArriveTime = DateTime.Now; + + try + { + // 讀取InXml字串 + xmlDoc.LoadXml(InXml); + + // 組Identity字串 + strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); + + // 開始解譯InXml字串 + // Student一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + if (xmlDoc.DocumentElement.GetElementsByTagName("studentname").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentname").Item(0).SelectNodes("value").Count > 0) + { + StudentName = xmlDoc.DocumentElement.GetElementsByTagName("studentname").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentName Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentName Not Found!"); + } + // Score + if (xmlDoc.DocumentElement.GetElementsByTagName("score").Count > 0) + { + if (xmlDoc.GetElementsByTagName("score").Item(0).SelectNodes("value").Count > 0) + { + Score = xmlDoc.DocumentElement.GetElementsByTagName("score").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.AddStudent(StudentNo, StudentName, Score, Creator); + + strException = ""; + strResult = "success"; + + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "AddStudent"); + } + + catch (iMESException.MESException ex) + { + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); + } + + catch (Exception ex) + { + strException = CombineXMLException(defWSErrCode, ex.Message, "Add Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); + } + + finally + { + // 將各部份之XML字串組起來並傳出 + AddStudentRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); + + } + + return AddStudentRet; + + } + + [WebMethod(Description = "Edit Specified Student Data")] + public string EditStudent(string InXml) + { + string EditStudentRet = default(string); + + // 參數先給預設值,以判斷是否有傳入該參數 + var StudentNo = default(string); + int IssueState = defInteger; + string StudentName = defString; + string Score = 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字串 + // Student一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo 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%]"); + } + // StudentName不可空白 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentname").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentname").Item(0).SelectNodes("value").Count > 0) + { + StudentName = xmlDoc.DocumentElement.GetElementsByTagName("studentname").Item(0).SelectNodes("value").Item(0).InnerText; + if (string.IsNullOrEmpty(StudentName)) + { + throw new iMESException.MESException("0000-200001", "StudentName is empty!"); + } + } + } + // Description + if (xmlDoc.DocumentElement.GetElementsByTagName("score").Count > 0) + { + if (xmlDoc.GetElementsByTagName("score").Item(0).SelectNodes("value").Count > 0) + { + Score = xmlDoc.DocumentElement.GetElementsByTagName("score").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 ((StudentName ?? "") != defString | (Score ?? "") != defString) + { + // 呼叫Dll執行修改 + objENT.EditStudent(StudentNo, StudentName, Score, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); + } + } + + strException = ""; + strResult = "success"; + + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "EditStudent"); + } + + catch (iMESException.MESException ex) + { + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); + } + + catch (Exception ex) + { + strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); + } + + finally + { + // 將各部份之XML字串組起來並傳出 + EditStudentRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); + } + + return EditStudentRet; + + } + + [WebMethod(Description = "Delete Student By Specified Student")] + public string DelStudent(string InXml) + { + string DelStudentRet = default(string); + + var StudentNo = 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字串 + // Student一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo 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.DelStudent(StudentNo); + strDelState = "未簽核刪除"; + break; + } + case 2: + { + objENT.SetStudentIssueState(StudentNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); + strDelState = "已簽核刪除"; + break; + } + case -1: + { + objENT.DelStudent(StudentNo); + strDelState = "不使用刪除"; + break; + } + + default: + { + throw new iMESException.MESException("0000-200021", "[%IssueState%]"); + } + } + + strException = ""; + strResult = "success"; + + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "DelStudent:" + strDelState); + } + + catch (iMESException.MESException ex) + { + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); + } + + catch (Exception ex) + { + strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); + } + + finally + { + DelStudentRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); + + } + + return DelStudentRet; + + } + + [WebMethod(Description = "Approve Specified Student Data")] + public string ApproveStudent(string InXml) + { + string ApproveStudentRet = default(string); + + string IssueNo = "Student BASIS"; // 簽核編號:Student BASIS.若找不到,表示直接將狀態改為Active. + var StudentNo = 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字串 + // Student一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo 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.SetStudentIssueState(StudentNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "ApproveStudent"); + } + + else + { + // 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准 + DataRow tmpDR; + tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"])); + if (tmpDR["JobNo"] is DBNull) + { + objENT.SetStudentIssueState(StudentNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "ApproveStudent"); + } + + else + { + // 將狀態改為Pending,且應以找到的JobNo來進入簽核 + // 填入簽核現況檔之Initial + var ApproveSQL = new Collection(); + var RejectSQL = new Collection(); + string tmpSQL; + string IssueSubject; + string IssueMasterNo; + + // 核准後應將狀態改為Active + tmpSQL = "Update tblENTStudent Set IssueState = 2 Where StudentNo = '" + StudentNo + "'"; + ApproveSQL.Add(tmpSQL); + // 退回則應將狀態回復到Unfrozen + tmpSQL = "Update tblENTStudent Set IssueState = 0 Where StudentNo = '" + StudentNo + "'"; + 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 = "StudentNo: " + StudentNo; + IssueMasterNo = objIssue.InitIssueMasterNo(); + // 此筆資料進入Issue流程 + objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator); + // 將狀態改為Pending + objENT.SetStudentIssueState(StudentNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); + + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "ApproveStudent"); + + // 發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 Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); + } + + catch (Exception ex) + { + strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Student failed!", ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); + } + + finally + { + // 將各部份之XML字串組起來並傳出 + ApproveStudentRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); + } + + return ApproveStudentRet; + + } + + // Student parent + [WebMethod(Description = "Load Student parent Data")] + public string LoadStudentCont(string InXml) + { + string LoadStudentContRet = default(string); + + // 先給預設值,以判斷是否有傳入該參數 + string StudentNo = defString; + string parentName = defString; + + ArriveTime = DateTime.Now; + + try + { + // 讀取InXml字串 + xmlDoc.LoadXml(InXml); + // 組Identity字串 + strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); + + // 判斷是否有傳入StudentNo,若有,表示要依StudentNo查詢 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + } + if (xmlDoc.DocumentElement.GetElementsByTagName("parentname").Count > 0) + { + if (xmlDoc.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Count > 0) + { + parentName = xmlDoc.DocumentElement.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Item(0).InnerText; + } + } + + // 呼叫Dll執行 + strReturnValue = objENT.LoadStudentCont(StudentNo, parentName); + strException = ""; + strResult = "success"; + } + + catch (iMESException.MESException ex) + { + strReturnValue = ""; + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Student parent Failed!!", ex.StackTrace); + strResult = "fail"; + } + + catch (Exception ex) + { + strReturnValue = ""; + strException = CombineXMLException(defWSErrCode, ex.Message, "Show Student parent Failed!!", ex.StackTrace); + strResult = "fail"; + } + + finally + { + // 將各部份之XML字串組起來並傳出 + LoadStudentContRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, ""); + + } + + return LoadStudentContRet; + + } + + [WebMethod(Description = "Add Student parent data")] + public string AddStudentCont(string InXml) + { + string AddStudentContRet = default(string); + // 先給預設值,以判斷是否有傳入該參數 + var StudentNo = default(string); + var parentName = 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字串 + // StudentNo一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + // parentName一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("parentname").Count > 0) + { + if (xmlDoc.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Count > 0) + { + parentName = xmlDoc.DocumentElement.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "parentName Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "parentName 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.AddStudentCont(StudentNo, parentName, TelNo, FaxNo, Title, Address, EMail, Description, AdditionalXml, GetXMLCurUserNo(xmlDoc), ArriveTime); + + strException = ""; + strResult = "success"; + + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "AddStudentparent parentName:" + parentName); + } + + catch (iMESException.MESException ex) + { + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Studentparent Data failed, parentName:" + parentName, ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); + } + + catch (Exception ex) + { + strException = CombineXMLException(defWSErrCode, ex.Message, "Add Studentparent Data failed, parentName:" + parentName, ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); + } + + finally + { + // 將各部份之XML字串組起來並傳出 + AddStudentContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); + + } + + return AddStudentContRet; + + } + + [WebMethod(Description = "Edit Specified Student parent Data")] + public string EditStudentCont(string InXml) + { + string EditStudentContRet = default(string); + // 先給預設值,以判斷是否有傳入該參數 + var StudentNo = default(string); + var parentName = 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字串 + // StudentNo一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + // parentName一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("parentname").Count > 0) + { + if (xmlDoc.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Count > 0) + { + parentName = xmlDoc.DocumentElement.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "parentName Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "parentName 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) + { + // 呼叫Dll執行修改 + objENT.EditStudentCont(StudentNo, parentName, TelNo, FaxNo, Title, Address, EMail, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime); + } + // End If + + strException = ""; + strResult = "success"; + + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "EditStudentparent parentName:" + parentName); + } + + catch (iMESException.MESException ex) + { + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Studentparent Data failed, parentName:" + parentName, ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); + } + + catch (Exception ex) + { + strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Studentparent Data failed, parentName:" + parentName, ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); + } + + finally + { + // 將各部份之XML字串組起來並傳出 + EditStudentContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); + + } + + return EditStudentContRet; + + } + + [WebMethod(Description = "Delete Student parent By Specified StudentNo and parentName")] + public string DelStudentCont(string InXml) + { + string DelStudentContRet = default(string); + + var StudentNo = default(string); + string parentName = defString; // 沒有傳入表示要刪除指定Student的所有parent + + ArriveTime = DateTime.Now; + + try + { + // 讀取InXml字串 + xmlDoc.LoadXml(InXml); + // 組Identity字串 + strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime)); + + // 開始解譯InXml字串 + // StudentNo一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("studentno").Count > 0) + { + if (xmlDoc.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Count > 0) + { + StudentNo = xmlDoc.DocumentElement.GetElementsByTagName("studentno").Item(0).SelectNodes("value").Item(0).InnerText; + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + } + else + { + throw new iMESException.MESException("0000-200002", "StudentNo Not Found!"); + } + // parentName一定要傳入 + if (xmlDoc.DocumentElement.GetElementsByTagName("parentname").Count > 0) + { + if (xmlDoc.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Count > 0) + { + parentName = xmlDoc.DocumentElement.GetElementsByTagName("parentname").Item(0).SelectNodes("value").Item(0).InnerText; + } + } + + objENT.DelStudentCont(StudentNo, parentName); + + strException = ""; + strResult = "success"; + + objSYS.AddEventLog("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, "DelStudentparent parentName:" + parentName); + } + + catch (iMESException.MESException ex) + { + strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Del Studentparent Data failed, parentName:" + parentName, ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode)); + } + + catch (Exception ex) + { + strException = CombineXMLException(defWSErrCode, ex.Message, "Del Studentparent Data failed, parentName:" + parentName, ex.StackTrace); + + strResult = "fail"; + + objSYS.AddErrorLog_ErrorCode("wsENT_21684", GetXMLCurUserNo(xmlDoc), "StudentNo", StudentNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode); + } + + finally + { + DelStudentContRet = CombineXMLResponse(strIdentity, "", strException, strResult, ""); + + } + + return DelStudentContRet; + + } + #endregion + } +} diff --git a/SRC/wsSXS/wsSXS.csproj b/SRC/wsSXS/wsSXS.csproj index 1c0f518..365c887 100644 --- a/SRC/wsSXS/wsSXS.csproj +++ b/SRC/wsSXS/wsSXS.csproj @@ -146,7 +146,7 @@ True - + diff --git a/SRC/wsSXS/wsSXS.csproj.user b/SRC/wsSXS/wsSXS.csproj.user index 3c48538..11b510e 100644 --- a/SRC/wsSXS/wsSXS.csproj.user +++ b/SRC/wsSXS/wsSXS.csproj.user @@ -1,6 +1,6 @@  - E:\code\SRC\MES_S_DLL\ + E:\VisualStudio_app\Digihua\iMES\MES_S_DLL\ \ No newline at end of file