【修改】实习生21685李孝龙

This commit is contained in:
LiMaiQi 2024-01-17 16:03:04 +08:00
parent 3991de18d8
commit 18272ec95a
27 changed files with 5024 additions and 4 deletions

View File

@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.34407.143
MinimumVisualStudioVersion = 10.0.40219.1
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}"
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
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BCC83B33-4B36-4EB9-B200-F5C49DEAEE65}
EndGlobalSection
EndGlobal

View File

@ -0,0 +1,194 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>ENT_StuBasis</RootNamespace>
<AssemblyName>ENT_StuBasis</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<TargetFrameworkProfile />
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>..\..\..\MESClient\</OutputPath>
<DocumentationFile>ENT_StuBasis.xml</DocumentationFile>
<WarningLevel>0</WarningLevel>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<DefineTrace>true</DefineTrace>
<OutputPath>..\..\..\MESClient\</OutputPath>
<DocumentationFile>ENT_StuBasis.xml</DocumentationFile>
<Optimize>true</Optimize>
<WarningLevel>0</WarningLevel>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup>
<SignAssembly>true</SignAssembly>
</PropertyGroup>
<PropertyGroup>
<AssemblyOriginatorKeyFile>iMES.snk</AssemblyOriginatorKeyFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Infragistics4.Win.v19.1, Version=19.1.20191.82, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.v19.1.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Infragistics4.Win.UltraWinGrid.v19.1, Version=19.1.20191.82, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinGrid.v19.1.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.82, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.UltraWinEditors.v19.1.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Infragistics4.Win.Misc.v19.1, Version=19.1.20191.82, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Win.Misc.v19.1.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Infragistics4.Shared.v19.1, Version=19.1.20191.82, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>C:\Program Files (x86)\Infragistics\2019.1\Windows Forms\CLR4.0\Bin\Infragistics4.Shared.v19.1.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="COM_Kit">
<HintPath>..\..\..\MESClient\COM_Kit.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="iMESExceptionManager">
<HintPath>..\..\..\MES_C_DLL\iMESExceptionManager.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="iMESUltraGrid">
<HintPath>..\..\..\MES_C_DLL\iMESUltraGrid.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<Import Include="COM_Kit.clsGlobalVariables" />
<Import Include="COM_Kit.clsKit" />
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
<Import Include="System.Drawing" />
<Import Include="System.Linq" />
<Import Include="System.Windows.Forms" />
<Import Include="System.Xml" />
<Import Include="System.Xml.Linq" />
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="..\..\shared file\modConstant.vb">
<Link>modConstant.vb</Link>
</Compile>
<Compile Include="frmSubcontractor.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmSubcontractorContDef.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmSubcontractorDef.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="frmSubcontractor.resx">
<DependentUpon>frmSubcontractor.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmSubcontractorContDef.resx">
<DependentUpon>frmSubcontractorContDef.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmSubcontractorDef.resx">
<DependentUpon>frmSubcontractorDef.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="My Project\licenses.licx" />
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="iMES.snk" />
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
<Import Project="..\..\shared file\MakeVersion.targets" Condition="exists('..\..\shared file\MakeVersion.targets')" />
</Project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ReferencePath>E:\MESEnv\607.4\MESsc\SClientSource\</ReferencePath>
</PropertyGroup>
</Project>

View File

@ -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"
}

View File

@ -0,0 +1,13 @@
'------------------------------------------------------------------------------
' <auto-generated>
' 此代码由工具生成
' 运行时版本:4.0.30319.42000
'
' 对此文件的更改可能会导致不正确的行为并且如果
' 重新生成代码这些更改将会丢失
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MySubMain>false</MySubMain>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>1</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

View File

@ -0,0 +1,35 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' 組件的一般資訊是由下列的屬性集控制
' 變更這些屬性的值即可修改組件的相關
' 資訊
' 檢閱組件屬性的值
<Assembly: AssemblyTitle("ET_Subcontractor")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("iMES Technology Inc.")>
<Assembly: AssemblyProduct("MESSeries 6")>
<Assembly: AssemblyCopyright("Copyright © iMES Technology Inc.")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'下列 GUID 為專案公開 (Expose) COM 時所要使用的 typelib ID
<Assembly: Guid("cb602012-a17f-433f-b777-ace6a6a676c1")>
' 組件的版本資訊由下列四個值所組成:
'
' 主要版本
' 次要版本
' 組建編號
' 修訂編號
'
' 您可以指定所有的值也可以依照以下的方式使用 '*' 將組建和修訂編號
' 指定為預設值:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("6.0.0.0")>

View File

@ -0,0 +1 @@
<Assembly: Reflection.AssemblyFileVersion("6.0.5.40117")>

View File

@ -0,0 +1,63 @@
'------------------------------------------------------------------------------
' <auto-generated>
' 此代码由工具生成
' 运行时版本:4.0.30319.42000
'
' 对此文件的更改可能会导致不正确的行为并且如果
' 重新生成代码这些更改将会丢失
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Imports System
Namespace My.Resources
'此类是由 StronglyTypedResourceBuilder
'类通过类似于 ResGen Visual Studio 的工具自动生成的
'若要添加或移除成员请编辑 .ResX 文件然后重新运行 ResGen
'( /str 作为命令选项)或重新生成 VS 项目
'''<summary>
''' 一个强类型的资源类用于查找本地化的字符串等
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' 返回此类使用的缓存的 ResourceManager 实例
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
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("ENT_StuBasis.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' 重写当前线程的 CurrentUICulture 属性
''' 使用此强类型资源类的所有资源查找执行重写
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set
resourceCulture = value
End Set
End Property
End Module
End Namespace

View File

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' 此代码由工具生成
' 运行时版本:4.0.30319.42000
'
' 对此文件的更改可能会导致不正确的行为并且如果
' 重新生成代码这些更改将会丢失
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
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
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
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
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.ENT_StuBasis.My.MySettings
Get
Return Global.ENT_StuBasis.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

View File

@ -0,0 +1,8 @@
Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.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.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.UltraControlContainerEditor, Infragistics4.Win.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.UltraPanel, 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

View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="UltraControlContainerEditor1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -0,0 +1,507 @@
Imports iMESExceptionManager
Public Class frmStuBasisContDef
Inherits COM_Kit.frmDefTemplat
'//Public Variables
Public EditDataRow As DataRow
Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy
Public StuBasisNo As String = defString
Public PrivFunNo As String = defString
'//Web Service相關變數
' 2016 YF, Dim wsENT As New wsENT.wsENT
Dim InXml As String
Dim OutXml As String
Dim strIdentity As String
Dim strParameter As String
Dim intDataStamp As Integer '紀錄DataStamp
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox
Friend WithEvents lblTelNo As System.Windows.Forms.Label
Friend WithEvents lblDescription As System.Windows.Forms.Label
Friend WithEvents lblTeacherName As System.Windows.Forms.Label
Friend WithEvents lblStuBasisNo As System.Windows.Forms.Label
Friend WithEvents gbxStuBasisContData As System.Windows.Forms.GroupBox
Friend WithEvents txtStuBasisNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
Friend WithEvents txtTeacherName As Infragistics.Win.UltraWinEditors.UltraTextEditor
Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance()
Me.gbxStuBasisContData = New System.Windows.Forms.GroupBox()
Me.lblTelNo = New System.Windows.Forms.Label()
Me.txtDescription = New System.Windows.Forms.RichTextBox()
Me.lblDescription = New System.Windows.Forms.Label()
Me.lblStuBasisNo = New System.Windows.Forms.Label()
Me.lblTeacherName = New System.Windows.Forms.Label()
Me.txtStuBasisNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
Me.txtTeacherName = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit()
Me.gbxStuBasisContData.SuspendLayout()
CType(Me.txtStuBasisNo, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.txtTeacherName, 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)
'
'gbxStuBasisContData
'
Me.gbxStuBasisContData.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.gbxStuBasisContData.Controls.Add(Me.lblTelNo)
Me.gbxStuBasisContData.Controls.Add(Me.txtDescription)
Me.gbxStuBasisContData.Controls.Add(Me.lblDescription)
Me.gbxStuBasisContData.Controls.Add(Me.lblStuBasisNo)
Me.gbxStuBasisContData.Controls.Add(Me.lblTeacherName)
Me.gbxStuBasisContData.Controls.Add(Me.txtStuBasisNo)
Me.gbxStuBasisContData.Controls.Add(Me.txtTeacherName)
Me.gbxStuBasisContData.Controls.Add(Me.txtTelNo)
Me.gbxStuBasisContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.gbxStuBasisContData.Location = New System.Drawing.Point(15, 8)
Me.gbxStuBasisContData.Name = "gbxStuBasisContData"
Me.gbxStuBasisContData.Size = New System.Drawing.Size(469, 306)
Me.gbxStuBasisContData.TabIndex = 0
Me.gbxStuBasisContData.TabStop = False
Me.gbxStuBasisContData.Text = "ENT StuBasis Contactor Data"
'
'lblTelNo
'
Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblTelNo.Location = New System.Drawing.Point(24, 90)
Me.lblTelNo.Name = "lblTelNo"
Me.lblTelNo.Size = New System.Drawing.Size(86, 14)
Me.lblTelNo.TabIndex = 4
Me.lblTelNo.Text = "TelNo"
Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'txtDescription
'
Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtDescription.Location = New System.Drawing.Point(120, 138)
Me.txtDescription.Name = "txtDescription"
Me.txtDescription.Size = New System.Drawing.Size(336, 108)
Me.txtDescription.TabIndex = 15
Me.txtDescription.Text = ""
'
'lblDescription
'
Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblDescription.Location = New System.Drawing.Point(28, 138)
Me.lblDescription.Name = "lblDescription"
Me.lblDescription.Size = New System.Drawing.Size(86, 14)
Me.lblDescription.TabIndex = 14
Me.lblDescription.Text = "Description"
Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'lblStuBasisNo
'
Me.lblStuBasisNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStuBasisNo.Location = New System.Drawing.Point(14, 29)
Me.lblStuBasisNo.Name = "lblStuBasisNo"
Me.lblStuBasisNo.Size = New System.Drawing.Size(96, 14)
Me.lblStuBasisNo.TabIndex = 0
Me.lblStuBasisNo.Text = "StuBasis No"
Me.lblStuBasisNo.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'lblTeacherName
'
Me.lblTeacherName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblTeacherName.Location = New System.Drawing.Point(24, 59)
Me.lblTeacherName.Name = "lblTeacherName"
Me.lblTeacherName.Size = New System.Drawing.Size(86, 14)
Me.lblTeacherName.TabIndex = 2
Me.lblTeacherName.Text = "Teacher Name"
Me.lblTeacherName.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'txtStuBasisNo
'
Me.txtStuBasisNo.Location = New System.Drawing.Point(120, 24)
Me.txtStuBasisNo.Name = "txtStuBasisNo"
Me.txtStuBasisNo.ReadOnly = True
Me.txtStuBasisNo.Size = New System.Drawing.Size(114, 22)
Me.txtStuBasisNo.TabIndex = 1
Me.txtStuBasisNo.TabStop = False
'
'txtTeacherName
'
Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtTeacherName.Appearance = Appearance1
Me.txtTeacherName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtTeacherName.Location = New System.Drawing.Point(120, 56)
Me.txtTeacherName.Name = "txtTeacherName"
Me.txtTeacherName.Size = New System.Drawing.Size(160, 22)
Me.txtTeacherName.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
'
'frmStuBasisContDef
'
Me.ClientSize = New System.Drawing.Size(496, 446)
Me.Controls.Add(Me.gbxStuBasisContData)
Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Name = "frmStuBasisContDef"
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "ENT StuBasis Contactor Define"
Me.Controls.SetChildIndex(Me.btnClose, 0)
Me.Controls.SetChildIndex(Me.btnConfirm, 0)
Me.Controls.SetChildIndex(Me.btnApply, 0)
Me.Controls.SetChildIndex(Me.gbxBasisData, 0)
Me.Controls.SetChildIndex(Me.gbxStuBasisContData, 0)
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit()
Me.gbxStuBasisContData.ResumeLayout(False)
Me.gbxStuBasisContData.PerformLayout()
CType(Me.txtStuBasisNo, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtTeacherName, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
#End Region
Private Sub frmStuBasisContDef_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
txtStuBasisNo.Text = EditDataRow.Item("StuBasisNo").ToString
txtTeacherName.Text = EditDataRow.Item("ContactorName").ToString
txtTelNo.Text = EditDataRow.Item("TelNo").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
txtStuBasisNo.Text = StuBasisNo
SetCreateDate(Now)
SetCreator(gUserNo)
ElseIf DefMode = 1 Then 'Edit
txtTeacherName.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 frmStuBasisContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated
If DefMode = 0 Or DefMode = 2 Then
txtTeacherName.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
txtTeacherName.Focus()
Else
txtTelNo.Focus()
End If
btnApplyEnabled = False
Cursor.Current = Cursors.Default
End Sub
#Region "Control KeyPress"
Private Sub txtStuBasisNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.Click
txtStuBasisNo.SelectAll()
End Sub
Private Sub txtStuBasisNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.Enter
txtStuBasisNo.SelectAll()
End Sub
Private Sub txtStuBasisNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStuBasisNo.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtStuBasisNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.TextChanged
btnApplyEnabled = True
End Sub
Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.Click
txtTeacherName.SelectAll()
End Sub
Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.Enter
txtTeacherName.SelectAll()
End Sub
Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTeacherName.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
'Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave
'xtContactorName.Text <> "" And txtEMail.Text = "" Then
' txtEMail.Text = txtContactorName.Text & "@"
'End If
' txtContactorName.Text = UCase(txtContactorName.Text)
'End Sub
Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.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_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
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)
btnApplyEnabled = True
End Sub
Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
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)
btnApplyEnabled = True
End Sub
Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
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)
btnApplyEnabled = True
End Sub
Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click
txtDescription.SelectAll()
End Sub
Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter
txtDescription.SelectAll()
End Sub
Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged
btnApplyEnabled = True
End Sub
#End Region
#Region "Others"
Private Function funAddorEdit(sender As Object) As Integer
funAddorEdit = -1
'******************************************************************************
'1.基本檢查()
'******************************************************************************
If txtStuBasisNo.Text = "" Then
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%StuBasisNo%]"), MsgBoxStyle.Exclamation, Me.Text)
txtStuBasisNo.Focus()
Exit Function
End If
If txtTeacherName.Text = "" Then
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%TeacherName%]"), MsgBoxStyle.Exclamation, Me.Text)
txtTeacherName.Focus()
Exit Function
End If
'******************************************************************************
'2.寫回資料庫()
'******************************************************************************
Dim XmlDoc As New XmlDocument
Try
strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow())
strParameter = CombineXMLParameter("stubasisno", "StuBasisNo", "String", CInput(txtStuBasisNo.Text), "")
strParameter = strParameter & CombineXMLParameter("teachername", "teachername", "String", CInput(txtTeacherName.Text), "")
strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "")
If DefMode = 0 Or DefMode = 2 Then 'Add or Copy
strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "")
InXml = CombineXMLRequest(strIdentity, strParameter)
' 2016 YF, OutXml = wsENT.AddStuBasisCont(InXml)
OutXml = InvokeSrv("SXS.ws_21685.AddStuBasisCont", InXml)
Else 'Edit
' 增加Datastamp
strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "")
InXml = CombineXMLRequest(strIdentity, strParameter)
' 2016 YF, OutXml = wsENT.EditStuBasisCont(InXml)
OutXml = InvokeSrv("SXS.ws_21685.EditStuBasisCont", InXml)
End If
XmlDoc.LoadXml(OutXml)
If ChkExecutionSuccess(XmlDoc) Then
gReturnKeyValue = txtTeacherName.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 StuBasis Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation)
ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace)
End Try
XmlDoc = Nothing
End Function
#End Region
Private Sub frmStuBasisContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose()
End Sub
End Class

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -0,0 +1,482 @@
Imports iMESExceptionManager
Public Class frmStuBasisDef
Inherits COM_Kit.frmDefTemplat
'//Public Variables
Public EditDataRow As DataRow
Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy
Public PrivFunNo As String = defString
'//Web Service相關變數
' 2016 YF, Dim wsENT As New wsENT.wsENT
Dim InXml As String
Dim OutXml As String
Dim strIdentity As String
Dim strParameter As String
Friend WithEvents Sex As Infragistics.Win.UltraWinEditors.UltraTextEditor
Friend WithEvents lblStudentSex As Label
Dim intDataStamp As Integer '紀錄DataStamp
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox
Friend WithEvents lblDescription As System.Windows.Forms.Label
Friend WithEvents lblStudentId As System.Windows.Forms.Label
Friend WithEvents lblStudentName As System.Windows.Forms.Label
Friend WithEvents lblSex As System.Windows.Forms.Label
Friend WithEvents gbxStudentData As System.Windows.Forms.GroupBox
Friend WithEvents txtStuBasisNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
Friend WithEvents txtStuBasisName As Infragistics.Win.UltraWinEditors.UltraTextEditor
Friend WithEvents txtSex As Infragistics.Win.UltraWinEditors.UltraTextEditor
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance()
Dim Appearance2 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance()
Dim Appearance3 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance()
Me.gbxStudentData = New System.Windows.Forms.GroupBox()
Me.Sex = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
Me.lblStudentSex = New System.Windows.Forms.Label()
Me.txtDescription = New System.Windows.Forms.RichTextBox()
Me.lblDescription = New System.Windows.Forms.Label()
Me.lblStudentId = New System.Windows.Forms.Label()
Me.lblStudentName = New System.Windows.Forms.Label()
Me.txtStuBasisNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
Me.txtStuBasisName = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit()
Me.gbxStudentData.SuspendLayout()
CType(Me.Sex, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.txtStuBasisNo, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.txtStuBasisName, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'gbxBasisData
'
Me.gbxBasisData.Location = New System.Drawing.Point(12, 257)
Me.gbxBasisData.Size = New System.Drawing.Size(512, 70)
'
'btnApply
'
Me.btnApply.Location = New System.Drawing.Point(436, 336)
'
'btnConfirm
'
Me.btnConfirm.Location = New System.Drawing.Point(248, 336)
'
'btnClose
'
Me.btnClose.Location = New System.Drawing.Point(342, 336)
'
'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.Sex)
Me.gbxStudentData.Controls.Add(Me.lblStudentSex)
Me.gbxStudentData.Controls.Add(Me.txtDescription)
Me.gbxStudentData.Controls.Add(Me.lblDescription)
Me.gbxStudentData.Controls.Add(Me.lblStudentId)
Me.gbxStudentData.Controls.Add(Me.lblStudentName)
Me.gbxStudentData.Controls.Add(Me.txtStuBasisNo)
Me.gbxStudentData.Controls.Add(Me.txtStuBasisName)
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(512, 241)
Me.gbxStudentData.TabIndex = 7
Me.gbxStudentData.TabStop = False
Me.gbxStudentData.Text = "Student Data"
'
'Sex
'
Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.Sex.Appearance = Appearance1
Me.Sex.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.Sex.Location = New System.Drawing.Point(128, 88)
Me.Sex.Name = "Sex"
Me.Sex.Size = New System.Drawing.Size(154, 30)
Me.Sex.TabIndex = 15
'
'lblStudentSex
'
Me.lblStudentSex.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStudentSex.Location = New System.Drawing.Point(10, 88)
Me.lblStudentSex.Name = "lblStudentSex"
Me.lblStudentSex.Size = New System.Drawing.Size(112, 32)
Me.lblStudentSex.TabIndex = 14
Me.lblStudentSex.Text = "Student Sex"
Me.lblStudentSex.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'txtDescription
'
Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtDescription.Location = New System.Drawing.Point(126, 131)
Me.txtDescription.Name = "txtDescription"
Me.txtDescription.Size = New System.Drawing.Size(334, 67)
Me.txtDescription.TabIndex = 2
Me.txtDescription.Text = ""
'
'lblDescription
'
Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblDescription.Location = New System.Drawing.Point(56, 131)
Me.lblDescription.Name = "lblDescription"
Me.lblDescription.Size = New System.Drawing.Size(64, 14)
Me.lblDescription.TabIndex = 13
Me.lblDescription.Text = "Description"
Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'lblStudentId
'
Me.lblStudentId.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStudentId.Location = New System.Drawing.Point(24, 24)
Me.lblStudentId.Name = "lblStudentId"
Me.lblStudentId.Size = New System.Drawing.Size(96, 32)
Me.lblStudentId.TabIndex = 5
Me.lblStudentId.Text = "Student ID"
Me.lblStudentId.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
'
'txtStuBasisNo
'
Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtStuBasisNo.Appearance = Appearance2
Me.txtStuBasisNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtStuBasisNo.Location = New System.Drawing.Point(128, 24)
Me.txtStuBasisNo.Name = "txtStuBasisNo"
Me.txtStuBasisNo.Size = New System.Drawing.Size(152, 30)
Me.txtStuBasisNo.TabIndex = 0
'
'txtStuBasisName
'
Appearance3.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtStuBasisName.Appearance = Appearance3
Me.txtStuBasisName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtStuBasisName.Location = New System.Drawing.Point(128, 55)
Me.txtStuBasisName.Name = "txtStuBasisName"
Me.txtStuBasisName.Size = New System.Drawing.Size(152, 30)
Me.txtStuBasisName.TabIndex = 1
'
'frmStuBasisDef
'
Me.ClientSize = New System.Drawing.Size(536, 381)
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 = "frmStuBasisDef"
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.gbxStudentData, 0)
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit()
Me.gbxStudentData.ResumeLayout(False)
Me.gbxStudentData.PerformLayout()
CType(Me.Sex, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtStuBasisNo, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtStuBasisName, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
#End Region
Private Sub frmStuBasisDef_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
txtStuBasisNo.Text = EditDataRow.Item("StuBasisNo").ToString
txtStuBasisName.Text = EditDataRow.Item("StuBasisName").ToString
'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料
txtDescription.Text = EditDataRow.Item("Description").ToString
End If
If DefMode = 0 Or DefMode = 2 Then 'Add or Copy
SetCreator(gUserNo)
SetCreateDate(Now)
ElseIf DefMode = 1 Then 'Edit
txtStuBasisNo.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 frmStuBasisDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated
If DefMode = 0 Or DefMode = 2 Then
txtStuBasisNo.Focus()
Else
txtStuBasisName.Focus()
End If
End Sub
Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConfirm.Click
Try
' 调用funAddorEdit函数并将sender作为参数传递
Dim result As Integer = funAddorEdit(sender)
' 根据需要处理结果
If result = 0 Then
' 函数成功执行
Me.Close()
Else
' 函数遇到错误或验证失败
End If
Catch ex As Exception
' 处理意外错误
ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace)
End Try
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
txtStuBasisNo.Focus()
Else
txtStuBasisName.Focus()
End If
Cursor.Current = Cursors.Default
btnApplyEnabled = False
End Sub
Private Sub frmStuBasisDef_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 txtStuBasisNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.Click
txtStuBasisNo.SelectAll()
End Sub
Private Sub txtStuBasisNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.Enter
txtStuBasisNo.SelectAll()
End Sub
Private Sub txtStuBasisNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStuBasisNo.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtStuBasisNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.Leave
txtStuBasisNo.Text = UCase(txtStuBasisNo.Text)
End Sub
Private Sub txtStuBasisNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.TextChanged
btnApplyEnabled = True
End Sub
Private Sub txtStuBasisName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisName.Click
txtStuBasisName.SelectAll()
End Sub
Private Sub txtStuBasisName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisName.Enter
txtStuBasisName.SelectAll()
End Sub
Private Sub txtStuBasisName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStuBasisName.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtStuBasisName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisName.TextChanged
btnApplyEnabled = True
End Sub
Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click
txtDescription.SelectAll()
End Sub
Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter
txtDescription.SelectAll()
End Sub
Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged
btnApplyEnabled = True
End Sub
#End Region
#Region "Others"
Private Function funAddorEdit(sender As Object) As Integer
funAddorEdit = -1
'******************************************************************************
'1.基本檢查
'******************************************************************************
If txtStuBasisNo.Text = "" Then
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%StuBasisNo%]"), MsgBoxStyle.Exclamation, Me.Text)
txtStuBasisNo.Focus()
Exit Function
End If
If txtStuBasisName.Text = "" Then
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%StuBasisName%]"), MsgBoxStyle.Exclamation, Me.Text)
txtStuBasisName.Focus()
Exit Function
End If
If Sex.Text = "" Then
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%Sex%]"), MsgBoxStyle.Exclamation, Me.Text)
Sex.Focus()
Exit Function
End If
'2.
'******************************************************************************
'寫回資料庫
'******************************************************************************
Dim XmlDoc As New XmlDocument
Try
strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow())
strParameter = CombineXMLParameter("stubasisno", "StuBasisNo", "String", CInput(txtStuBasisNo.Text), "")
strParameter = strParameter & CombineXMLParameter("stubasisname", "StuBasisName", "String", CInput(txtStuBasisName.Text), "")
strParameter = strParameter & CombineXMLParameter("sex", "Sex", "String", CInput(Sex.Text), "")
strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "")
If DefMode = 0 Or DefMode = 2 Then 'Add or Copy
strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "")
strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "")
InXml = CombineXMLRequest(strIdentity, strParameter)
' 2016 YF, OutXml = ws_21685.AddStuBasis(InXml)
OutXml = InvokeSrv("SXS.ws_21685.AddStuBasis", 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.EditStuBasis(InXml)
OutXml = InvokeSrv("SXS.ws_21685.EditStuBasis", InXml)
End If
XmlDoc.LoadXml(OutXml)
If ChkExecutionSuccess(XmlDoc) Then
gReturnKeyValue = txtStuBasisNo.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 StuBasis Failed!," & e1.Message, MsgBoxStyle.Exclamation)
ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace)
End Try
XmlDoc = Nothing
End Function
Private Sub lblStuBasisNo_Click(sender As Object, e As EventArgs) Handles lblStudentId.Click
End Sub
Private Sub lblDescription_Click(sender As Object, e As EventArgs) Handles lblDescription.Click
End Sub
Private Sub UltraTextEditor1_ValueChanged(sender As Object, e As EventArgs) Handles Sex.ValueChanged
End Sub
#End Region
End Class

Binary file not shown.

View File

@ -13,7 +13,7 @@
<AssemblyName>MEStc_SXS</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
@ -114,6 +114,7 @@
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="tcENT\clsENT.cs" />
<Compile Include="tcWIP\clsLot.cs" />
<Compile Include="tc_21685\clsENT_21685.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="shared file\" />

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ReferencePath>
</ReferencePath>
</PropertyGroup>
</Project>

View File

@ -1 +1 @@
[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40115")]
[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")]

View File

@ -0,0 +1,938 @@
using iMESCore.Settings;
using Microsoft.VisualBasic;
using Microsoft.VisualBasic.CompilerServices;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static iMESCore.Base.iMESComSubroutine;
using static iMESCore.Base.iMESComXML;
using static iMESCore.Base.iMESConst;
using static iMESCore.DataBase.iMESSql;
namespace MEStc_SXS
{
public class clsENT_21685 : IDisposable
{
/*使modXX,使OleDb
* (//),使data_access_service.dll
* ,使iMESAppSetting
* Xml相關,使iMESComXML.dll
* ,使iMESConst.dll
* ,使iMESComSubroutine.dll
*/
private AppSettings objSetting = new AppSettings();
private string strConnectionString; // Connection string
private string strDataBaseType; // DataBase Type:oracle, mysql, access
private string strMQType; // MessageQueue Type:TIBCO, MQSeries, MSMQ
private bool disposed = false; // To detect redundant calls
private string strSQL = "";
private string strSQLAddField;
private string strSQLAddValue;
#region --- Initial Object ---
public clsENT_21685()
{
// Get database type
strDataBaseType = objSetting.GetDataBaseType();
// Get connection string
strConnectionString = objSetting.GetConnectionString(strDataBaseType);
// Get Message Queue Type
strMQType = objSetting.GetMQType();
}
#endregion
#region --- Property ---
// //Property--------------------------------------------------------------------------------------------------------------------------------
public string ConnectionString
{
get
{
return strConnectionString;
}
}
public string DataBaseType
{
get
{
return strDataBaseType;
}
}
public string MQType
{
get
{
return strMQType;
}
}
// 2003/03/22,sammi.
// 因TC可能呼叫KC,在整個Function中,必須要使用同一個Reverse物件,如此在產生AddReverseUpdateContent的資料時,ReverseOrder才不會重覆.
// 若KC再往下呼叫UD,則必須將Reverse物件傳遞予UD.
//public object ReverseObj
//{
// get
// {
// //return objReverse;
// // ReverseObj = objReverse
// }
//}
#endregion
#region IDisposable Support
private bool disposedValue; // 偵測多餘的呼叫
// IDisposable
protected virtual void Dispose(bool disposing)
{
if (!disposedValue)
{
if (disposing)
{
// TODO: 處置 Managed 狀態 (Managed 物件)。
}
// TODO: 釋放 Unmanaged 資源 (Unmanaged 物件) 並覆寫下面的 Finalize()。
// TODO: 將大型欄位設定為 null。
}
disposedValue = true;
}
// TODO: 只有當上面的 Dispose(ByVal disposing As Boolean) 有可釋放 Unmanaged 資源的程式碼時,才覆寫 Finalize()。
// Protected Overrides Sub Finalize()
// ' 請勿變更此程式碼。在上面的 Dispose(ByVal disposing As Boolean) 中輸入清除程式碼。
// Dispose(False)
// MyBase.Finalize()
// End Sub
// 由 Visual Basic 新增此程式碼以正確實作可處置的模式。
public void Dispose()
{
// 請勿變更此程式碼。在以上的 Dispose 置入清除程式碼 (ByVal 視為布林值處置)。
Dispose(true);
GC.SuppressFinalize(this);
}
#endregion
#region --- StuBasis ---
public string AddStuBasis(string StuBasisNo, string StuBasisName, string Sex, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "")
{
string AddStuBasisRet = default(string);
// 此 Function 將新增一筆資料
// 傳入值: 各欄位新增值
// 傳回值: success(成功), fail(失敗)
if (CreateDate == defDateTime)
CreateDate = DateTime.Now;
try
{
strSQLAddField = "Insert into tblStuBasis_21685 (StuBasisNo, StuBasisName, Sex, IssueState";
strSQLAddValue = " Values ('" + StuBasisNo + "','" + StuBasisName + "','" + Sex + "', 0";
if ((Description ?? "") != defString)
{
strSQLAddField += ",Description";
strSQLAddValue += ",'" + Description + "'";
}
if ((Creator ?? "") != defString)
{
strSQLAddField += ",Creator";
strSQLAddValue += ",'" + Creator + "'";
}
if (CreateDate != defDateTime)
{
strSQLAddField += ",CreateDate";
strSQLAddValue += ", To_Date('" + Strings.Format(Conversions.ToDate(CreateDate), "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')";
}
if (string.IsNullOrEmpty(AdditionalXml))
{
// 當沒有額外的欄位時,直接給定strSQL
strSQL = strSQLAddField + ")" + strSQLAddValue + ")";
}
else
{
// 加上additional的field & value 後傳回
strSQL = SeparateAddXML_Add(ref strSQLAddField, ref strSQLAddValue, AdditionalXml);
}
// //執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
// //Return success
AddStuBasisRet = "success";
}
catch (Exception e1)
{
AddStuBasisRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.AddStuBasis: " & e1.Message)
return AddStuBasisRet;
}
public string EditStuBasis(string StuBasisNo, string StuBasisName = defString, string Sex = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
{
string EditStuBasisRet = default(string);
// 此 Function 將修改一筆資料
// 傳入值: 各欄位修改值
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblStuBasis_21685 Set ";
if ((StuBasisName ?? "") != defString)
{
strSQL += "StuBasisName = '" + StuBasisName + "',";
}
if ((Description ?? "") != defString)
{
strSQL += "Description = '" + Description + "',";
}
if ((Sex ?? "") != defString)
{
strSQL += "Sex = '" + Sex + "',";
}
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 StuBasisNo ='" + StuBasisNo + "'";
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
EditStuBasisRet = "success";
}
catch (Exception e1)
{
EditStuBasisRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.EditStuBasis: " & e1.Message)
return EditStuBasisRet;
}
public string DelStuBasis(string StuBasisNo, string AdditionalXml = "")
{
string DelStuBasisRet = default(string);
// 此 Function 將刪除資料
// 傳入值: 刪除的索引值
// 傳回值: success(成功), fail(失敗)
var CollectionSQL = new Collection();
try
{
// 1. 刪除Contactor
// strSQL = "Delete From tblENTStuBasisCont " + "Where StuBasisNo='" + StuBasisNo + "'";
// CollectionSQL.Add(strSQL);
// 2. 刪除主檔
strSQL = "Delete From tblStuBasis_21685 " + " Where StuBasisNo ='" + StuBasisNo + "'";
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
CollectionSQL.Add(strSQL);
// 呼叫執行SQL指令
ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL);
// //Return success
DelStuBasisRet = "success";
}
catch (Exception e1)
{
DelStuBasisRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.DelStuBasis: " & e1.Message)
return DelStuBasisRet;
}
public string LoadStuBasis(string StuBasisNo = defString, int IssueState = defInteger, string AdditionalXml = "")
{
string LoadStuBasisRet = default(string);
// 此 Function 將資料以XML方式取出
// 傳入值: 索引值
// 傳回值: XML(成功), fail(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblStuBasis_21685 Where StuBasisNo Is Not Null";
if ((StuBasisNo ?? "") != defString)
{
strSQL += " And StuBasisNo = '" + StuBasisNo + "'";
}
if (IssueState != defInteger)
{
strSQL += " And IssueState = " + IssueState;
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblStuBasis_21685", cnnTemp);
// //Combine return value
LoadStuBasisRet = CombineXMLReturnValue("loadStuBasis", "tblStuBasis_21685", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
}
catch (Exception e1)
{
LoadStuBasisRet = "fail";
throw;
} // New Exception("kcENT.LoadStuBasis: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return LoadStuBasisRet;
}
public DataSet ShowStuBasis(string StuBasisNo = defString, int IssueState = defInteger, string AdditionalXml = "")
{
DataSet ShowStuBasisRet = default(DataSet);
// 此 Function 將資料以 Dataset 方式取出
// 傳入值: 索引值
// 傳回值: Dataset(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTStuBasis Where StuBasisNo Is Not Null";
if ((StuBasisNo ?? "") != defString)
{
strSQL += " And StuBasisNo = '" + StuBasisNo + "'";
}
if (IssueState != defInteger)
{
strSQL += " And IssueState = " + IssueState;
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTStuBasis", cnnTemp);
// //Return data
ShowStuBasisRet = dsENT;
}
catch (Exception e1)
{
ShowStuBasisRet = null;
throw;
} // New Exception("kcENT.ShowStuBasis: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return ShowStuBasisRet;
}
public DataRow GetStuBasis(string StuBasisNo = defString, int IssueState = defInteger, string AdditionalXml = "")
{
DataRow GetStuBasisRet = default(DataRow);
// 此 Function 將資料以 DataRow 方式取出
// 傳入值: 索引值
// 傳回值: DataRow(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTStuBasis Where StuBasisNo Is Not Null";
if ((StuBasisNo ?? "") != defString)
{
strSQL += " And StuBasisNo = '" + StuBasisNo + "'";
}
if (IssueState != defInteger)
{
strSQL += " And IssueState = " + IssueState;
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTStuBasis", cnnTemp);
// //Return data
if (dsENT.Tables[0].Rows.Count > 0)
{
GetStuBasisRet = dsENT.Tables[0].Rows[0];
}
else
{
GetStuBasisRet = dsENT.Tables[0].NewRow();
}
}
catch (Exception e1)
{
GetStuBasisRet = null;
throw;
} // New Exception("kcENT.GetStuBasis: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return GetStuBasisRet;
}
public string SetStuBasisIssueState(string StuBasisNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
{
string SetStuBasisIssueStateRet = default(string);
// 此 Function 將修改IssueState欄位的值
// 傳入值: IssueState修改後的值及VendorNo
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblENTStuBasis 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 StuBasisNo ='" + StuBasisNo + "'";
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
// 呼叫執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
}
// //Return success
SetStuBasisIssueStateRet = "success";
}
catch (Exception e1)
{
SetStuBasisIssueStateRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.SetStuBasisIssueState: " & e1.Message)
return SetStuBasisIssueStateRet;
}
public string AddStuBasisCont(string StuBasisNo, string TeacherName,string Description = defString, string AdditionalXml = "", string Creator = defString, DateTime CreateDate = default(DateTime))
{
string AddStuBasisContRet = default(string);
// 此 Function 將新增一筆資料
// 傳入值: 各欄位新增值
// 傳回值: success(成功), fail(失敗)
try
{
strSQLAddField = "Insert into tblENTStuBasisCont (StuBasisNo, ContactorName";
strSQLAddValue = " Values ('" + StuBasisNo + "','" + TeacherName + "'";
if ((Description ?? "") != defString)
{
strSQLAddField += ",Description";
strSQLAddValue += ",'" + Description + "'";
}
if (Creator != defString)
{
strSQLAddField = strSQLAddField + ",Creator";
strSQLAddValue = strSQLAddValue + ",'" + Creator + "'";
}
if (CreateDate != defDateTime)
{
strSQLAddField = strSQLAddField + ",CreateDate";
strSQLAddValue = strSQLAddValue + ", To_Date('" + Strings.Format(CreateDate, "yyyy/MM/dd HH:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')";
}
if (string.IsNullOrEmpty(AdditionalXml))
{
// 當沒有額外的欄位時,直接給定strSQL
strSQL = strSQLAddField + ")" + strSQLAddValue + ")";
}
else
{
// 加上additional的field & value 後傳回
strSQL = SeparateAddXML_Add(ref strSQLAddField, ref strSQLAddValue, AdditionalXml);
}
// //執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
// //Return success
AddStuBasisContRet = "success";
}
catch (Exception e1)
{
AddStuBasisContRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.AddStuBasisCont: " & e1.Message)
return AddStuBasisContRet;
}
public string EditStuBasisCont(string StuBasisNo, string ContactorName, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
{
string EditStuBasisContRet = default(string);
// 此 Function 將修改一筆資料
// 傳入值: 各欄位修改值
// 傳回值: success(成功), fail(失敗)
try
{
// 先給定strSQL一定有的欄位
strSQL = "Update tblENTStuBasisCont Set ";
if ((TelNo ?? "") != defString)
{
strSQL += "TelNo = '" + TelNo + "',";
}
if ((FaxNo ?? "") != defString)
{
strSQL += "FaxNo = '" + FaxNo + "',";
}
if ((Title ?? "") != defString)
{
strSQL += "Title = '" + Title + "',";
}
if ((Address ?? "") != defString)
{
strSQL += "Address = '" + Address + "',";
}
if ((EMail ?? "") != defString)
{
strSQL += "EMail = '" + EMail + "',";
}
if ((Description ?? "") != defString)
{
strSQL += "Description = '" + Description + "',";
}
if (Reviser != defString)
strSQL = strSQL + "Reviser = '" + Reviser + "',";
if (ReviseDate != defDateTime)
strSQL = strSQL + "ReviseDate = To_Date('" + Strings.Format(ReviseDate, "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS'),";
if (DataStamp != defInteger)
strSQL = strSQL + "DataStamp = DataStamp + 1 ,";
// 有額外的欄位時再Append進原來的strSQL中
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的field & value
strSQL += SeparateAddXML_Edit(AdditionalXml);
}
// 去除strSQL中最後一個 ","
if (Strings.InStr(1, strSQL, ",") != 0) // 表示有要修改的欄位
{
if (Strings.Right(strSQL, 1) == ",")
{
strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1);
}
strSQL += " Where StuBasisNo = '" + StuBasisNo + "'" + " And ContactorName ='" + ContactorName + "'";
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
// 有額外的條件式時再Append進原來的strSQL中
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// 呼叫執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
}
// //Return success
EditStuBasisContRet = "success";
}
catch (Exception e1)
{
EditStuBasisContRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.EditStuBasisCont: " & e1.Message)
return EditStuBasisContRet;
}
public string DelStuBasisCont(string StuBasisNo, string ContactorName = defString, string AdditionalXml = "")
{
string DelStuBasisContRet = default(string);
// 此 Function 將刪除資料
// 傳入值: 刪除的索引值
// 傳回值: success(成功), fail(失敗)
try
{
strSQL = "Delete From tblENTStuBasisCont " + " Where StuBasisNo='" + StuBasisNo + "'";
if ((ContactorName ?? "") != defString)
{
strSQL += " And ContactorName = '" + ContactorName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// 呼叫執行SQL指令
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
// //Return success
DelStuBasisContRet = "success";
}
catch (Exception e1)
{
DelStuBasisContRet = "fail";
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
throw;
} // New Exception("kcENT.DelStuBasisCont: " & e1.Message)
return DelStuBasisContRet;
}
public string LoadStuBasisCont(string StuBasisNo = defString, string TeacherName = defString, string AdditionalXml = "")
{
string LoadStuBasisContRet = default(string);
// 此 Function 將資料以XML方式取出
// 傳入值: 索引值
// 傳回值: XML(成功), fail(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblTeaBasis_21685 Where StuBasisNo Is Not Null";
// 有傳入StuBasisNo表示只取該StuBasisNo之資料
if ((StuBasisNo ?? "") != defString)
{
strSQL += " And StuBasisNo = '" + StuBasisNo + "'";
}
if ((TeacherName ?? "") != defString)
{
strSQL += " And TeacherName = '" + TeacherName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblTeaBasis_21685", cnnTemp);
// //Combine return value
LoadStuBasisContRet = CombineXMLReturnValue("loadStuBasiscont", "tblTeaBasis_21685", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
}
catch (Exception e1)
{
LoadStuBasisContRet = "fail";
throw;
} // New Exception("kcENT.LoadStuBasisCont: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return LoadStuBasisContRet;
}
public DataSet ShowStuBasisCont(string StuBasisNo = defString, string ContactorName = defString, string AdditionalXml = "")
{
DataSet ShowStuBasisContRet = default(DataSet);
// 此 Function 將資料以 Dataset 方式取出
// 傳入值: 索引值
// 傳回值: Dataset(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTStuBasisCont Where StuBasisNo Is Not Null";
if ((StuBasisNo ?? "") != defString)
{
strSQL += " And StuBasisNo = '" + StuBasisNo + "'";
}
if ((ContactorName ?? "") != defString)
{
strSQL += " And ContactorName = '" + ContactorName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTStuBasisCont", cnnTemp);
// //Return data
ShowStuBasisContRet = dsENT;
}
catch (Exception e1)
{
ShowStuBasisContRet = null;
throw;
} // New Exception("kcENT.ShowStuBasisCont: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return ShowStuBasisContRet;
}
public DataRow GetStuBasisCont(string StuBasisNo = defString, string ContactorName = defString, string AdditionalXml = "")
{
DataRow GetStuBasisContRet = default(DataRow);
// 此 Function 將資料以 DataRow 方式取出
// 傳入值: 索引值
// 傳回值: DataRow(成功), Nothing(失敗)
var dsENT = default(DataSet);
IDbConnection cnnTemp = null;
try
{
// //Create connection
cnnTemp = CreateConnection(strConnectionString);
strSQL = "Select * From tblENTStuBasisCont Where StuBasisNo Is Not Null";
if ((StuBasisNo ?? "") != defString)
{
strSQL += " And StuBasisNo = '" + StuBasisNo + "'";
}
if ((ContactorName ?? "") != defString)
{
strSQL += " And ContactorName = '" + ContactorName + "'";
}
if (!string.IsNullOrEmpty(AdditionalXml))
{
// 加上additional的condition
strSQL += SeparateAddXML_Condition(AdditionalXml);
}
// //Select data
dsENT = new DataSet();
ExecuteSQLQuery_Adapter(strSQL, dsENT, "tblENTStuBasisCont", cnnTemp);
// //Return data
if (dsENT.Tables[0].Rows.Count > 0)
{
GetStuBasisContRet = dsENT.Tables[0].Rows[0];
}
else
{
GetStuBasisContRet = dsENT.Tables[0].NewRow();
}
}
catch (Exception e1)
{
GetStuBasisContRet = null;
throw;
} // New Exception("kcENT.GetStuBasisCont: " & e1.Message)
finally
{
CloseConnection(cnnTemp);
if (dsENT != null)
{
dsENT.Dispose();
}
}
return GetStuBasisContRet;
}
#endregion
}
}

View File

@ -1 +1 @@
[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40115")]
[assembly: System.Reflection.AssemblyFileVersion("6.0.5.40117")]

View File

@ -10,7 +10,7 @@
<AssemblyName>wsSXS</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<TargetFrameworkProfile />
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
@ -147,6 +147,7 @@
</Compile>
<Compile Include="wsWIP\wsWIP.cs" />
<Compile Include="wxENT\wsENT.cs" />
<Compile Include="wxENT_21685\ws_21685.cs" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Resources.resx">

File diff suppressed because it is too large Load Diff