【修改】实习生练习提交
This commit is contained in:
parent
dd4e6c82e6
commit
d769d39552
@ -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"
|
||||
}
|
31
SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.sln
Normal file
31
SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.sln
Normal file
@ -0,0 +1,31 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.34407.143
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor_21710", "ET_Subcontractor_21710.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}"
|
||||
EndProject
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {6D3C286F-62F4-4F6B-BEAD-599D39767969}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
194
SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.vbproj
Normal file
194
SRC/MESWin/SYS2/ET_Subcontractor/ET_Subcontractor_21710.vbproj
Normal 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>ET_Subcontractor_21710</RootNamespace>
|
||||
<AssemblyName>ET_Subcontractor_21710</AssemblyName>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<MyType>Windows</MyType>
|
||||
<TargetFrameworkVersion>v4.6.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>ET_Subcontractor_21710.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>ET_Subcontractor_21710.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="frmTest.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="frmTestContDef.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="frmTestDef.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="frmTest.resx">
|
||||
<DependentUpon>frmTest.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="frmTestContDef.resx">
|
||||
<DependentUpon>frmTestContDef.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="frmTestDef.resx">
|
||||
<DependentUpon>frmTestDef.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>
|
@ -0,0 +1,39 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.25123.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ET_Subcontractor", "ET_Subcontractor.vbproj", "{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}"
|
||||
EndProject
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Test", "..\..\Test\Test.vbproj", "{C4A48E3F-38E4-4E88-A47D-FA5510686E57}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Debug|x86.Build.0 = Debug|x86
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.ActiveCfg = Release|x86
|
||||
{D6EE7B96-F10E-44E2-9731-162B70B4C8DD}.Release|x86.Build.0 = Release|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Debug|x86.Build.0 = Debug|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.ActiveCfg = Release|x86
|
||||
{C4A48E3F-38E4-4E88-A47D-FA5510686E57}.Release|x86.Build.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(TeamFoundationVersionControl) = preSolution
|
||||
SccNumberOfProjects = 3
|
||||
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
|
||||
SccTeamFoundationServer = http://tfs.imestech.com:8080/tfs/messeries6
|
||||
SccProjectUniqueName0 = ET_Subcontractor.vbproj
|
||||
SccLocalPath0 = .
|
||||
SccProjectUniqueName1 = ..\\..\\Test\\Test.vbproj
|
||||
SccProjectName1 = ../../Test
|
||||
SccLocalPath1 = ..\\..\\Test
|
||||
SccLocalPath2 = .
|
||||
EndGlobalSection
|
||||
EndGlobal
|
13
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.Designer.vb
generated
Normal file
13
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Application.Designer.vb
generated
Normal file
@ -0,0 +1,13 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' 此代码由工具生成。
|
||||
' 运行时版本:4.0.30319.42000
|
||||
'
|
||||
' 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
' 重新生成代码,这些更改将会丢失。
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
@ -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>
|
35
SRC/MESWin/SYS2/ET_Subcontractor/My Project/AssemblyInfo.vb
Normal file
35
SRC/MESWin/SYS2/ET_Subcontractor/My Project/AssemblyInfo.vb
Normal 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")>
|
||||
|
@ -0,0 +1 @@
|
||||
<Assembly: Reflection.AssemblyFileVersion("6.0.5.40117")>
|
63
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.Designer.vb
generated
Normal file
63
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.Designer.vb
generated
Normal 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("ET_Subcontractor_21710.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
|
117
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.resx
Normal file
117
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Resources.resx
Normal 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>
|
73
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.Designer.vb
generated
Normal file
73
SRC/MESWin/SYS2/ET_Subcontractor/My Project/Settings.Designer.vb
generated
Normal 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.ET_Subcontractor_21710.My.MySettings
|
||||
Get
|
||||
Return Global.ET_Subcontractor_21710.My.MySettings.Default
|
||||
End Get
|
||||
End Property
|
||||
End Module
|
||||
End Namespace
|
@ -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>
|
@ -0,0 +1,7 @@
|
||||
Infragistics.Win.Misc.UltraButton, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb
|
||||
Infragistics.Win.UltraWinEditors.UltraRadioButton, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb
|
||||
Infragistics.Win.UltraWinEditors.UltraComboEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb
|
||||
Infragistics.Win.Misc.UltraGroupBox, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb
|
||||
Infragistics.Win.UltraWinEditors.UltraTextEditor, Infragistics4.Win.UltraWinEditors.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb
|
||||
Infragistics.Win.Misc.UltraLabel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb
|
||||
Infragistics.Win.Misc.UltraPanel, Infragistics4.Win.Misc.v19.1, Version=19.1.20191.294, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb
|
120
SRC/MESWin/SYS2/ET_Subcontractor/frmTest.resx
Normal file
120
SRC/MESWin/SYS2/ET_Subcontractor/frmTest.resx
Normal 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>
|
1129
SRC/MESWin/SYS2/ET_Subcontractor/frmTest.vb
Normal file
1129
SRC/MESWin/SYS2/ET_Subcontractor/frmTest.vb
Normal file
File diff suppressed because it is too large
Load Diff
120
SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.resx
Normal file
120
SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.resx
Normal 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>
|
656
SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.vb
Normal file
656
SRC/MESWin/SYS2/ET_Subcontractor/frmTestContDef.vb
Normal file
@ -0,0 +1,656 @@
|
||||
Imports iMESExceptionManager
|
||||
|
||||
Public Class frmTestContDef
|
||||
|
||||
Inherits COM_Kit.frmDefTemplat
|
||||
|
||||
'//Public Variables
|
||||
Public EditDataRow As DataRow
|
||||
Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy
|
||||
|
||||
Public SubcontractorNo As String = defString
|
||||
Public PrivFunNo As String = defString
|
||||
|
||||
'//Web Service相關變數
|
||||
' 2016 YF, Dim wsENT As New wsENT.wsENT
|
||||
Dim InXml As String
|
||||
Dim OutXml As String
|
||||
|
||||
Dim strIdentity As String
|
||||
Dim strParameter As String
|
||||
Dim intDataStamp As Integer '紀錄DataStamp
|
||||
|
||||
#Region " Windows Form Designer generated code "
|
||||
|
||||
Public Sub New()
|
||||
MyBase.New()
|
||||
|
||||
'This call is required by the Windows Form Designer.
|
||||
InitializeComponent()
|
||||
|
||||
'Add any initialization after the InitializeComponent() call
|
||||
|
||||
End Sub
|
||||
|
||||
'Form overrides dispose to clean up the component list.
|
||||
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
If disposing Then
|
||||
If Not (components Is Nothing) Then
|
||||
components.Dispose()
|
||||
End If
|
||||
End If
|
||||
MyBase.Dispose(disposing)
|
||||
End Sub
|
||||
|
||||
'Required by the Windows Form Designer
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'NOTE: The following procedure is required by the Windows Form Designer
|
||||
'It can be modified using the Windows Form Designer.
|
||||
'Do not modify it using the code editor.
|
||||
Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox
|
||||
Friend WithEvents lblAddress As System.Windows.Forms.Label
|
||||
Friend WithEvents lblEMail As System.Windows.Forms.Label
|
||||
Friend WithEvents lblTitle As System.Windows.Forms.Label
|
||||
Friend WithEvents lblFaxNo As System.Windows.Forms.Label
|
||||
Friend WithEvents lblTelNo As System.Windows.Forms.Label
|
||||
Friend WithEvents lblDescription As System.Windows.Forms.Label
|
||||
Friend WithEvents lblContactorName As System.Windows.Forms.Label
|
||||
Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label
|
||||
Friend WithEvents gbxSubcontractorContData As System.Windows.Forms.GroupBox
|
||||
Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
Friend WithEvents txtContactorName As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
Friend WithEvents txtFaxNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
Friend WithEvents txtEMail As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
Friend WithEvents txtTitle As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
Friend WithEvents txtAddress As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
|
||||
Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance()
|
||||
Me.gbxSubcontractorContData = New System.Windows.Forms.GroupBox()
|
||||
Me.txtAddress = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
Me.txtEMail = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
Me.txtTitle = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
Me.txtFaxNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
Me.lblAddress = New System.Windows.Forms.Label()
|
||||
Me.lblEMail = New System.Windows.Forms.Label()
|
||||
Me.lblTitle = New System.Windows.Forms.Label()
|
||||
Me.lblFaxNo = New System.Windows.Forms.Label()
|
||||
Me.lblTelNo = New System.Windows.Forms.Label()
|
||||
Me.txtDescription = New System.Windows.Forms.RichTextBox()
|
||||
Me.lblDescription = New System.Windows.Forms.Label()
|
||||
Me.lblSubcontractorNo = New System.Windows.Forms.Label()
|
||||
Me.lblContactorName = New System.Windows.Forms.Label()
|
||||
Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
Me.txtContactorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.gbxSubcontractorContData.SuspendLayout()
|
||||
CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'gbxBasisData
|
||||
'
|
||||
Me.gbxBasisData.Location = New System.Drawing.Point(12, 322)
|
||||
Me.gbxBasisData.Size = New System.Drawing.Size(472, 70)
|
||||
'
|
||||
'btnApply
|
||||
'
|
||||
Me.btnApply.Location = New System.Drawing.Point(396, 401)
|
||||
'
|
||||
'btnConfirm
|
||||
'
|
||||
Me.btnConfirm.Location = New System.Drawing.Point(208, 401)
|
||||
'
|
||||
'btnClose
|
||||
'
|
||||
Me.btnClose.Location = New System.Drawing.Point(302, 401)
|
||||
'
|
||||
'gbxSubcontractorContData
|
||||
'
|
||||
Me.gbxSubcontractorContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
|
||||
Or System.Windows.Forms.AnchorStyles.Left) _
|
||||
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtAddress)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtEMail)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtTitle)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtFaxNo)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblAddress)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblEMail)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblTitle)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblFaxNo)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblTelNo)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtDescription)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblDescription)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblSubcontractorNo)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.lblContactorName)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtSubcontractorNo)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtContactorName)
|
||||
Me.gbxSubcontractorContData.Controls.Add(Me.txtTelNo)
|
||||
Me.gbxSubcontractorContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.gbxSubcontractorContData.Location = New System.Drawing.Point(15, 8)
|
||||
Me.gbxSubcontractorContData.Name = "gbxSubcontractorContData"
|
||||
Me.gbxSubcontractorContData.Size = New System.Drawing.Size(469, 306)
|
||||
Me.gbxSubcontractorContData.TabIndex = 0
|
||||
Me.gbxSubcontractorContData.TabStop = False
|
||||
Me.gbxSubcontractorContData.Text = "ENT Subcontractor Contactor Data"
|
||||
'
|
||||
'txtAddress
|
||||
'
|
||||
Me.txtAddress.Location = New System.Drawing.Point(120, 152)
|
||||
Me.txtAddress.Name = "txtAddress"
|
||||
Me.txtAddress.Size = New System.Drawing.Size(336, 22)
|
||||
Me.txtAddress.TabIndex = 13
|
||||
'
|
||||
'txtEMail
|
||||
'
|
||||
Me.txtEMail.Location = New System.Drawing.Point(320, 120)
|
||||
Me.txtEMail.Name = "txtEMail"
|
||||
Me.txtEMail.Size = New System.Drawing.Size(136, 22)
|
||||
Me.txtEMail.TabIndex = 11
|
||||
'
|
||||
'txtTitle
|
||||
'
|
||||
Me.txtTitle.Location = New System.Drawing.Point(120, 120)
|
||||
Me.txtTitle.Name = "txtTitle"
|
||||
Me.txtTitle.Size = New System.Drawing.Size(114, 22)
|
||||
Me.txtTitle.TabIndex = 9
|
||||
'
|
||||
'txtFaxNo
|
||||
'
|
||||
Me.txtFaxNo.Location = New System.Drawing.Point(320, 88)
|
||||
Me.txtFaxNo.Name = "txtFaxNo"
|
||||
Me.txtFaxNo.Size = New System.Drawing.Size(136, 22)
|
||||
Me.txtFaxNo.TabIndex = 7
|
||||
'
|
||||
'lblAddress
|
||||
'
|
||||
Me.lblAddress.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblAddress.Location = New System.Drawing.Point(24, 154)
|
||||
Me.lblAddress.Name = "lblAddress"
|
||||
Me.lblAddress.Size = New System.Drawing.Size(86, 14)
|
||||
Me.lblAddress.TabIndex = 12
|
||||
Me.lblAddress.Text = "Address"
|
||||
Me.lblAddress.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblEMail
|
||||
'
|
||||
Me.lblEMail.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblEMail.Location = New System.Drawing.Point(248, 123)
|
||||
Me.lblEMail.Name = "lblEMail"
|
||||
Me.lblEMail.Size = New System.Drawing.Size(64, 14)
|
||||
Me.lblEMail.TabIndex = 10
|
||||
Me.lblEMail.Text = "EMail"
|
||||
Me.lblEMail.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblTitle
|
||||
'
|
||||
Me.lblTitle.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblTitle.Location = New System.Drawing.Point(24, 121)
|
||||
Me.lblTitle.Name = "lblTitle"
|
||||
Me.lblTitle.Size = New System.Drawing.Size(86, 14)
|
||||
Me.lblTitle.TabIndex = 8
|
||||
Me.lblTitle.Text = "Title"
|
||||
Me.lblTitle.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblFaxNo
|
||||
'
|
||||
Me.lblFaxNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblFaxNo.Location = New System.Drawing.Point(248, 90)
|
||||
Me.lblFaxNo.Name = "lblFaxNo"
|
||||
Me.lblFaxNo.Size = New System.Drawing.Size(64, 14)
|
||||
Me.lblFaxNo.TabIndex = 6
|
||||
Me.lblFaxNo.Text = "FaxNo"
|
||||
Me.lblFaxNo.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblTelNo
|
||||
'
|
||||
Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblTelNo.Location = New System.Drawing.Point(24, 90)
|
||||
Me.lblTelNo.Name = "lblTelNo"
|
||||
Me.lblTelNo.Size = New System.Drawing.Size(86, 14)
|
||||
Me.lblTelNo.TabIndex = 4
|
||||
Me.lblTelNo.Text = "TelNo"
|
||||
Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'txtDescription
|
||||
'
|
||||
Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.txtDescription.Location = New System.Drawing.Point(120, 184)
|
||||
Me.txtDescription.Name = "txtDescription"
|
||||
Me.txtDescription.Size = New System.Drawing.Size(336, 108)
|
||||
Me.txtDescription.TabIndex = 15
|
||||
Me.txtDescription.Text = ""
|
||||
'
|
||||
'lblDescription
|
||||
'
|
||||
Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblDescription.Location = New System.Drawing.Point(24, 186)
|
||||
Me.lblDescription.Name = "lblDescription"
|
||||
Me.lblDescription.Size = New System.Drawing.Size(86, 14)
|
||||
Me.lblDescription.TabIndex = 14
|
||||
Me.lblDescription.Text = "Description"
|
||||
Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblSubcontractorNo
|
||||
'
|
||||
Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblSubcontractorNo.Location = New System.Drawing.Point(14, 29)
|
||||
Me.lblSubcontractorNo.Name = "lblSubcontractorNo"
|
||||
Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 14)
|
||||
Me.lblSubcontractorNo.TabIndex = 0
|
||||
Me.lblSubcontractorNo.Text = "Subcontractor No"
|
||||
Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblContactorName
|
||||
'
|
||||
Me.lblContactorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblContactorName.Location = New System.Drawing.Point(24, 59)
|
||||
Me.lblContactorName.Name = "lblContactorName"
|
||||
Me.lblContactorName.Size = New System.Drawing.Size(86, 14)
|
||||
Me.lblContactorName.TabIndex = 2
|
||||
Me.lblContactorName.Text = "Contactor Name"
|
||||
Me.lblContactorName.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'txtSubcontractorNo
|
||||
'
|
||||
Me.txtSubcontractorNo.Location = New System.Drawing.Point(120, 24)
|
||||
Me.txtSubcontractorNo.Name = "txtSubcontractorNo"
|
||||
Me.txtSubcontractorNo.ReadOnly = True
|
||||
Me.txtSubcontractorNo.Size = New System.Drawing.Size(114, 22)
|
||||
Me.txtSubcontractorNo.TabIndex = 1
|
||||
Me.txtSubcontractorNo.TabStop = False
|
||||
'
|
||||
'txtContactorName
|
||||
'
|
||||
Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
|
||||
Me.txtContactorName.Appearance = Appearance1
|
||||
Me.txtContactorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
|
||||
Me.txtContactorName.Location = New System.Drawing.Point(120, 56)
|
||||
Me.txtContactorName.Name = "txtContactorName"
|
||||
Me.txtContactorName.Size = New System.Drawing.Size(160, 22)
|
||||
Me.txtContactorName.TabIndex = 3
|
||||
'
|
||||
'txtTelNo
|
||||
'
|
||||
Me.txtTelNo.Location = New System.Drawing.Point(120, 88)
|
||||
Me.txtTelNo.Name = "txtTelNo"
|
||||
Me.txtTelNo.Size = New System.Drawing.Size(114, 22)
|
||||
Me.txtTelNo.TabIndex = 5
|
||||
'
|
||||
'frmSubcontractorContDef
|
||||
'
|
||||
Me.ClientSize = New System.Drawing.Size(496, 446)
|
||||
Me.Controls.Add(Me.gbxSubcontractorContData)
|
||||
Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.Name = "frmSubcontractorContDef"
|
||||
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
|
||||
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
|
||||
Me.Text = "ENT Subcontractor Contactor Define"
|
||||
Me.Controls.SetChildIndex(Me.btnClose, 0)
|
||||
Me.Controls.SetChildIndex(Me.btnConfirm, 0)
|
||||
Me.Controls.SetChildIndex(Me.btnApply, 0)
|
||||
Me.Controls.SetChildIndex(Me.gbxBasisData, 0)
|
||||
Me.Controls.SetChildIndex(Me.gbxSubcontractorContData, 0)
|
||||
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.gbxSubcontractorContData.ResumeLayout(False)
|
||||
Me.gbxSubcontractorContData.PerformLayout()
|
||||
CType(Me.txtAddress, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.txtEMail, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.txtTitle, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.txtFaxNo, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.txtContactorName, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ResumeLayout(False)
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
Private Sub frmSubcontractorContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
||||
|
||||
Cursor.Current = Cursors.WaitCursor
|
||||
|
||||
Select Case DefMode
|
||||
Case 0
|
||||
Me.Text = Me.Text & "(ADD)"
|
||||
Case 1
|
||||
Me.Text = Me.Text & "(EDIT)"
|
||||
Case 2
|
||||
Me.Text = Me.Text & "(Copy)"
|
||||
Case Else
|
||||
Me.Text = Me.Text & "(Unknown)"
|
||||
End Select
|
||||
|
||||
'做為MainForm判斷是否重新LoadData的依據()
|
||||
gReturnKeyValue = ""
|
||||
|
||||
' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString)
|
||||
' 2016 YF, wsENT.EnableDecompression = True
|
||||
If DefMode = 0 Or DefMode = 2 Then
|
||||
SetCreateDate(Now)
|
||||
SetCreator(gUserNo)
|
||||
End If
|
||||
If Not EditDataRow Is Nothing Then '修改 or Copy
|
||||
txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString
|
||||
txtContactorName.Text = EditDataRow.Item("ContactorName").ToString
|
||||
txtTelNo.Text = EditDataRow.Item("TelNo").ToString
|
||||
txtFaxNo.Text = EditDataRow.Item("FaxNo").ToString
|
||||
txtTitle.Text = EditDataRow.Item("Title").ToString
|
||||
txtAddress.Text = EditDataRow.Item("Address").ToString
|
||||
txtEMail.Text = EditDataRow.Item("EMail").ToString
|
||||
'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料)
|
||||
txtDescription.Text = EditDataRow.Item("Description").ToString
|
||||
If DefMode = 1 Then
|
||||
If (Not IsDBNull(EditDataRow("Creator"))) Then
|
||||
SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate")))
|
||||
SetCreator(EditDataRow.Item("Creator").ToString)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
If DefMode = 0 Then 'Add
|
||||
txtSubcontractorNo.Text = SubcontractorNo
|
||||
SetCreateDate(Now)
|
||||
SetCreator(gUserNo)
|
||||
ElseIf DefMode = 1 Then 'Edit
|
||||
txtContactorName.ReadOnly = True
|
||||
SetReviseDate(Now)
|
||||
SetReviser(gUserNo)
|
||||
intDataStamp = EditDataRow.Item("DataStamp")
|
||||
End If
|
||||
|
||||
btnApplyEnabled = False
|
||||
|
||||
'語系切換
|
||||
Call ExeChangeResource(Me, gLanguageMode)
|
||||
ExeGroupControlPriv(Me, PrivFunNo)
|
||||
|
||||
Cursor.Current = Cursors.Default
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub frmSubcontractorContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated
|
||||
If DefMode = 0 Or DefMode = 2 Then
|
||||
txtContactorName.Focus()
|
||||
Else
|
||||
txtTelNo.Focus()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
||||
|
||||
Cursor.Current = Cursors.WaitCursor
|
||||
|
||||
If funAddorEdit(sender) < 0 Then Exit Sub
|
||||
|
||||
Me.Close()
|
||||
|
||||
Cursor.Current = Cursors.Default
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
||||
Me.Close()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
||||
|
||||
Cursor.Current = Cursors.WaitCursor
|
||||
|
||||
If funAddorEdit(sender) < 0 Then Exit Sub
|
||||
|
||||
If DefMode = 0 Or DefMode = 2 Then
|
||||
txtContactorName.Focus()
|
||||
Else
|
||||
txtTelNo.Focus()
|
||||
End If
|
||||
|
||||
txtEMail.Text = ""
|
||||
btnApplyEnabled = False
|
||||
Cursor.Current = Cursors.Default
|
||||
|
||||
End Sub
|
||||
|
||||
#Region "Control KeyPress"
|
||||
|
||||
Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click
|
||||
txtSubcontractorNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter
|
||||
txtSubcontractorNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Click
|
||||
txtContactorName.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Enter
|
||||
txtContactorName.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtContactorName.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave
|
||||
If txtContactorName.Text <> "" And txtEMail.Text = "" Then
|
||||
txtEMail.Text = txtContactorName.Text & "@"
|
||||
End If
|
||||
txtContactorName.Text = UCase(txtContactorName.Text)
|
||||
End Sub
|
||||
|
||||
Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click
|
||||
txtTelNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter
|
||||
txtTelNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtFaxNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Click
|
||||
txtFaxNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtFaxNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.Enter
|
||||
txtFaxNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtFaxNo.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtFaxNo.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Click
|
||||
txtTitle.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtTitle_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.Enter
|
||||
txtTitle.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTitle.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTitle.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtEMail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Click
|
||||
txtEMail.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtEMail_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.Enter
|
||||
txtEMail.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtEMail_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtEMail.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtEMail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEMail.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtAddress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Click
|
||||
txtAddress.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtAddress_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.Enter
|
||||
txtAddress.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtAddress.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAddress.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click
|
||||
txtDescription.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter
|
||||
txtDescription.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "Others"
|
||||
|
||||
Private Function funAddorEdit(sender As Object) As Integer
|
||||
|
||||
funAddorEdit = -1
|
||||
|
||||
'******************************************************************************
|
||||
'1.基本檢查()
|
||||
'******************************************************************************
|
||||
If txtSubcontractorNo.Text = "" Then
|
||||
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text)
|
||||
txtSubcontractorNo.Focus()
|
||||
Exit Function
|
||||
End If
|
||||
If txtContactorName.Text = "" Then
|
||||
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%ContactorName%]"), MsgBoxStyle.Exclamation, Me.Text)
|
||||
txtContactorName.Focus()
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
'******************************************************************************
|
||||
'2.寫回資料庫()
|
||||
'******************************************************************************
|
||||
Dim XmlDoc As New XmlDocument
|
||||
|
||||
Try
|
||||
strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow())
|
||||
strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "")
|
||||
strParameter = strParameter & CombineXMLParameter("contactorname", "ContactorName", "String", CInput(txtContactorName.Text), "")
|
||||
strParameter = strParameter & CombineXMLParameter("telno", "TelNo", "String", txtTelNo.Text, "")
|
||||
strParameter = strParameter & CombineXMLParameter("faxno", "FaxNo", "String", txtFaxNo.Text, "")
|
||||
strParameter = strParameter & CombineXMLParameter("title", "Title", "String", CInput(txtTitle.Text), "")
|
||||
strParameter = strParameter & CombineXMLParameter("address", "Address", "String", CInput(txtAddress.Text), "")
|
||||
strParameter = strParameter & CombineXMLParameter("email", "EMail", "String", CInput(txtEMail.Text), "")
|
||||
strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "")
|
||||
|
||||
|
||||
If DefMode = 0 Or DefMode = 2 Then 'Add or Copy
|
||||
strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "")
|
||||
InXml = CombineXMLRequest(strIdentity, strParameter)
|
||||
' 2016 YF, OutXml = wsENT.AddSubcontractorCont(InXml)
|
||||
OutXml = InvokeSrv("SXS.wsENT.AddSubcontractorCont", InXml)
|
||||
|
||||
Else 'Edit
|
||||
' 增加Datastamp
|
||||
strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "")
|
||||
InXml = CombineXMLRequest(strIdentity, strParameter)
|
||||
' 2016 YF, OutXml = wsENT.EditSubcontractorCont(InXml)
|
||||
OutXml = InvokeSrv("SXS.wsENT.EditSubcontractorCont", InXml)
|
||||
|
||||
End If
|
||||
|
||||
XmlDoc.LoadXml(OutXml)
|
||||
If ChkExecutionSuccess(XmlDoc) Then
|
||||
gReturnKeyValue = txtContactorName.Text
|
||||
|
||||
funAddorEdit = 0
|
||||
If sender.Equals(btnApply) Then
|
||||
intDataStamp += 1
|
||||
End If
|
||||
Else
|
||||
ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc))
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation)
|
||||
ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace)
|
||||
End Try
|
||||
|
||||
XmlDoc = Nothing
|
||||
|
||||
End Function
|
||||
#End Region
|
||||
|
||||
|
||||
Private Sub frmSubcontractorContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
|
||||
' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose()
|
||||
End Sub
|
||||
End Class
|
||||
|
120
SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.resx
Normal file
120
SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.resx
Normal 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>
|
421
SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.vb
Normal file
421
SRC/MESWin/SYS2/ET_Subcontractor/frmTestDef.vb
Normal file
@ -0,0 +1,421 @@
|
||||
Imports iMESExceptionManager
|
||||
|
||||
Public Class frmTestDef
|
||||
|
||||
Inherits COM_Kit.frmDefTemplat
|
||||
|
||||
'//Public Variables
|
||||
Public EditDataRow As DataRow
|
||||
Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy
|
||||
Public PrivFunNo As String = defString
|
||||
|
||||
'//Web Service相關變數
|
||||
' 2016 YF, Dim wsENT As New wsENT.wsENT
|
||||
Dim InXml As String
|
||||
Dim OutXml As String
|
||||
|
||||
Dim strIdentity As String
|
||||
Dim strParameter As String
|
||||
Dim intDataStamp As Integer '紀錄DataStamp
|
||||
|
||||
#Region " Windows Form Designer generated code "
|
||||
|
||||
Public Sub New()
|
||||
MyBase.New()
|
||||
|
||||
'This call is required by the Windows Form Designer.
|
||||
InitializeComponent()
|
||||
|
||||
'Add any initialization after the InitializeComponent() call
|
||||
|
||||
End Sub
|
||||
|
||||
'Form overrides dispose to clean up the component list.
|
||||
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
If disposing Then
|
||||
If Not (components Is Nothing) Then
|
||||
components.Dispose()
|
||||
End If
|
||||
End If
|
||||
MyBase.Dispose(disposing)
|
||||
End Sub
|
||||
|
||||
'Required by the Windows Form Designer
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'NOTE: The following procedure is required by the Windows Form Designer
|
||||
'It can be modified using the Windows Form Designer.
|
||||
'Do not modify it using the code editor.
|
||||
Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox
|
||||
Friend WithEvents lblDescription As System.Windows.Forms.Label
|
||||
Friend WithEvents lblSubcontractorNo As System.Windows.Forms.Label
|
||||
Friend WithEvents lblSubcontractorName As System.Windows.Forms.Label
|
||||
Friend WithEvents gbxSubcontractorData As System.Windows.Forms.GroupBox
|
||||
Friend WithEvents txtSubcontractorNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
Friend WithEvents txtSubcontractorName As Infragistics.Win.UltraWinEditors.UltraTextEditor
|
||||
<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()
|
||||
Me.gbxSubcontractorData = New System.Windows.Forms.GroupBox()
|
||||
Me.txtDescription = New System.Windows.Forms.RichTextBox()
|
||||
Me.lblDescription = New System.Windows.Forms.Label()
|
||||
Me.lblSubcontractorNo = New System.Windows.Forms.Label()
|
||||
Me.lblSubcontractorName = New System.Windows.Forms.Label()
|
||||
Me.txtSubcontractorNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
Me.txtSubcontractorName = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
|
||||
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.gbxSubcontractorData.SuspendLayout()
|
||||
CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'gbxBasisData
|
||||
'
|
||||
Me.gbxBasisData.Location = New System.Drawing.Point(12, 185)
|
||||
Me.gbxBasisData.Size = New System.Drawing.Size(479, 70)
|
||||
'
|
||||
'btnApply
|
||||
'
|
||||
Me.btnApply.Location = New System.Drawing.Point(403, 264)
|
||||
'
|
||||
'btnConfirm
|
||||
'
|
||||
Me.btnConfirm.Location = New System.Drawing.Point(215, 264)
|
||||
'
|
||||
'btnClose
|
||||
'
|
||||
Me.btnClose.Location = New System.Drawing.Point(309, 264)
|
||||
'
|
||||
'gbxSubcontractorData
|
||||
'
|
||||
Me.gbxSubcontractorData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
|
||||
Or System.Windows.Forms.AnchorStyles.Left) _
|
||||
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
|
||||
Me.gbxSubcontractorData.Controls.Add(Me.txtDescription)
|
||||
Me.gbxSubcontractorData.Controls.Add(Me.lblDescription)
|
||||
Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorNo)
|
||||
Me.gbxSubcontractorData.Controls.Add(Me.lblSubcontractorName)
|
||||
Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorNo)
|
||||
Me.gbxSubcontractorData.Controls.Add(Me.txtSubcontractorName)
|
||||
Me.gbxSubcontractorData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.gbxSubcontractorData.Location = New System.Drawing.Point(12, 8)
|
||||
Me.gbxSubcontractorData.Name = "gbxSubcontractorData"
|
||||
Me.gbxSubcontractorData.Size = New System.Drawing.Size(479, 169)
|
||||
Me.gbxSubcontractorData.TabIndex = 7
|
||||
Me.gbxSubcontractorData.TabStop = False
|
||||
Me.gbxSubcontractorData.Text = "Subcontractor Data"
|
||||
'
|
||||
'txtDescription
|
||||
'
|
||||
Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.txtDescription.Location = New System.Drawing.Point(128, 86)
|
||||
Me.txtDescription.Name = "txtDescription"
|
||||
Me.txtDescription.Size = New System.Drawing.Size(334, 67)
|
||||
Me.txtDescription.TabIndex = 2
|
||||
Me.txtDescription.Text = ""
|
||||
'
|
||||
'lblDescription
|
||||
'
|
||||
Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblDescription.Location = New System.Drawing.Point(56, 88)
|
||||
Me.lblDescription.Name = "lblDescription"
|
||||
Me.lblDescription.Size = New System.Drawing.Size(64, 14)
|
||||
Me.lblDescription.TabIndex = 13
|
||||
Me.lblDescription.Text = "Description"
|
||||
Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblSubcontractorNo
|
||||
'
|
||||
Me.lblSubcontractorNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblSubcontractorNo.Location = New System.Drawing.Point(24, 24)
|
||||
Me.lblSubcontractorNo.Name = "lblSubcontractorNo"
|
||||
Me.lblSubcontractorNo.Size = New System.Drawing.Size(96, 32)
|
||||
Me.lblSubcontractorNo.TabIndex = 5
|
||||
Me.lblSubcontractorNo.Text = "Subcontractor No"
|
||||
Me.lblSubcontractorNo.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'lblSubcontractorName
|
||||
'
|
||||
Me.lblSubcontractorName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.lblSubcontractorName.Location = New System.Drawing.Point(8, 56)
|
||||
Me.lblSubcontractorName.Name = "lblSubcontractorName"
|
||||
Me.lblSubcontractorName.Size = New System.Drawing.Size(112, 32)
|
||||
Me.lblSubcontractorName.TabIndex = 9
|
||||
Me.lblSubcontractorName.Text = "Subcontractor Name"
|
||||
Me.lblSubcontractorName.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'txtSubcontractorNo
|
||||
'
|
||||
Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
|
||||
Me.txtSubcontractorNo.Appearance = Appearance1
|
||||
Me.txtSubcontractorNo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
|
||||
Me.txtSubcontractorNo.Location = New System.Drawing.Point(128, 24)
|
||||
Me.txtSubcontractorNo.Name = "txtSubcontractorNo"
|
||||
Me.txtSubcontractorNo.Size = New System.Drawing.Size(152, 22)
|
||||
Me.txtSubcontractorNo.TabIndex = 0
|
||||
'
|
||||
'txtSubcontractorName
|
||||
'
|
||||
Appearance2.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
|
||||
Me.txtSubcontractorName.Appearance = Appearance2
|
||||
Me.txtSubcontractorName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
|
||||
Me.txtSubcontractorName.Location = New System.Drawing.Point(128, 55)
|
||||
Me.txtSubcontractorName.Name = "txtSubcontractorName"
|
||||
Me.txtSubcontractorName.Size = New System.Drawing.Size(334, 22)
|
||||
Me.txtSubcontractorName.TabIndex = 1
|
||||
'
|
||||
'frmSubcontractorDef
|
||||
'
|
||||
Me.ClientSize = New System.Drawing.Size(503, 309)
|
||||
Me.Controls.Add(Me.gbxSubcontractorData)
|
||||
Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
|
||||
Me.Name = "frmSubcontractorDef"
|
||||
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
|
||||
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
|
||||
Me.Text = "ENT Subcontractor Define"
|
||||
Me.Controls.SetChildIndex(Me.btnClose, 0)
|
||||
Me.Controls.SetChildIndex(Me.btnConfirm, 0)
|
||||
Me.Controls.SetChildIndex(Me.btnApply, 0)
|
||||
Me.Controls.SetChildIndex(Me.gbxBasisData, 0)
|
||||
Me.Controls.SetChildIndex(Me.gbxSubcontractorData, 0)
|
||||
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.gbxSubcontractorData.ResumeLayout(False)
|
||||
Me.gbxSubcontractorData.PerformLayout()
|
||||
CType(Me.txtSubcontractorNo, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.txtSubcontractorName, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ResumeLayout(False)
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
Private Sub frmSubcontractorDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
||||
|
||||
Cursor.Current = Cursors.WaitCursor
|
||||
|
||||
Select Case DefMode
|
||||
Case 0
|
||||
Me.Text = Me.Text & "(ADD)"
|
||||
Case 1
|
||||
Me.Text = Me.Text & "(EDIT)"
|
||||
Case 2
|
||||
Me.Text = Me.Text & "(Copy)"
|
||||
Case Else
|
||||
Me.Text = Me.Text & "(Unknown)"
|
||||
End Select
|
||||
|
||||
'做為MainForm判斷是否重新LoadData的依據
|
||||
gReturnKeyValue = ""
|
||||
|
||||
' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString)
|
||||
' 2016 YF, wsENT.EnableDecompression = True
|
||||
|
||||
If Not EditDataRow Is Nothing Then
|
||||
txtSubcontractorNo.Text = EditDataRow.Item("SubcontractorNo").ToString
|
||||
txtSubcontractorName.Text = EditDataRow.Item("SubcontractorName").ToString
|
||||
'txtDescription是RichTextBox Control,因為TextBox無法正常顯示多行換行的資料
|
||||
txtDescription.Text = EditDataRow.Item("Description").ToString
|
||||
End If
|
||||
|
||||
If DefMode = 0 Or DefMode = 2 Then 'Add or Copy
|
||||
SetCreator(gUserNo)
|
||||
SetCreateDate(Now)
|
||||
ElseIf DefMode = 1 Then 'Edit
|
||||
txtSubcontractorNo.ReadOnly = True
|
||||
SetCreator(EditDataRow.Item("Creator").ToString)
|
||||
SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate")))
|
||||
SetReviser(gUserNo)
|
||||
SetReviseDate(Now)
|
||||
intDataStamp = EditDataRow.Item("DataStamp")
|
||||
End If
|
||||
|
||||
btnApplyEnabled = False
|
||||
|
||||
'語系切換
|
||||
Call ExeChangeResource(Me, gLanguageMode)
|
||||
ExeGroupControlPriv(Me, PrivFunNo)
|
||||
|
||||
Cursor.Current = Cursors.Default
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub frmSubcontractorDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated
|
||||
If DefMode = 0 Or DefMode = 2 Then
|
||||
txtSubcontractorNo.Focus()
|
||||
Else
|
||||
txtSubcontractorName.Focus()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
||||
|
||||
Cursor.Current = Cursors.WaitCursor
|
||||
|
||||
If funAddorEdit(sender) < 0 Then Exit Sub
|
||||
|
||||
Me.Close()
|
||||
|
||||
Cursor.Current = Cursors.Default
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
||||
Me.Close()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
||||
|
||||
Cursor.Current = Cursors.WaitCursor
|
||||
|
||||
If funAddorEdit(sender) < 0 Then Exit Sub
|
||||
|
||||
If DefMode = 0 Or DefMode = 2 Then
|
||||
txtSubcontractorNo.Focus()
|
||||
Else
|
||||
txtSubcontractorName.Focus()
|
||||
|
||||
End If
|
||||
|
||||
Cursor.Current = Cursors.Default
|
||||
btnApplyEnabled = False
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub frmSubcontractorDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
|
||||
' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose()
|
||||
End Sub
|
||||
|
||||
#Region "Control KeyPress"
|
||||
|
||||
Private Sub txtSubcontractorNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Click
|
||||
txtSubcontractorNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Enter
|
||||
txtSubcontractorNo.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorNo.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorNo_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.Leave
|
||||
txtSubcontractorNo.Text = UCase(txtSubcontractorNo.Text)
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorNo.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Click
|
||||
txtSubcontractorName.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.Enter
|
||||
txtSubcontractorName.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSubcontractorName.KeyPress
|
||||
If e.KeyChar = Convert.ToChar(13) Then
|
||||
SendKeys.Send("{TAB}")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub txtSubcontractorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSubcontractorName.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click
|
||||
txtDescription.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter
|
||||
txtDescription.SelectAll()
|
||||
End Sub
|
||||
|
||||
Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged
|
||||
btnApplyEnabled = True
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "Others"
|
||||
|
||||
Private Function funAddorEdit(sender As Object) As Integer
|
||||
|
||||
funAddorEdit = -1
|
||||
|
||||
'******************************************************************************
|
||||
'1.基本檢查
|
||||
'******************************************************************************
|
||||
If txtSubcontractorNo.Text = "" Then
|
||||
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorNo%]"), MsgBoxStyle.Exclamation, Me.Text)
|
||||
txtSubcontractorNo.Focus()
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
If txtSubcontractorName.Text = "" Then
|
||||
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%SubcontractorName%]"), MsgBoxStyle.Exclamation, Me.Text)
|
||||
txtSubcontractorName.Focus()
|
||||
Exit Function
|
||||
End If
|
||||
|
||||
'2.
|
||||
'******************************************************************************
|
||||
'寫回資料庫
|
||||
'******************************************************************************
|
||||
Dim XmlDoc As New XmlDocument
|
||||
|
||||
Try
|
||||
strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow())
|
||||
strParameter = CombineXMLParameter("subcontractorno", "SubcontractorNo", "String", CInput(txtSubcontractorNo.Text), "")
|
||||
strParameter = strParameter & CombineXMLParameter("subcontractorname", "SubcontractorName", "String", CInput(txtSubcontractorName.Text), "")
|
||||
strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "")
|
||||
|
||||
If DefMode = 0 Or DefMode = 2 Then 'Add or Copy
|
||||
strParameter = strParameter & CombineXMLParameter("creator", "Creator", "String", gUserNo, "")
|
||||
strParameter = strParameter & CombineXMLParameter("createdate", "CreateDate", "DateTime", Format(Now, "yyyy/MM/dd HH:mm:ss"), "")
|
||||
InXml = CombineXMLRequest(strIdentity, strParameter)
|
||||
|
||||
' 2016 YF, OutXml = wsENT.AddSubcontractor(InXml)
|
||||
OutXml = InvokeSrv("wsENT.AddSubcontractor", InXml)
|
||||
|
||||
Else
|
||||
'修改
|
||||
strParameter = strParameter & CombineXMLParameter("issuestate", "IssueState", "String", EditDataRow.Item("IssueState").ToString, "")
|
||||
' 增加Datastamp
|
||||
strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "")
|
||||
InXml = CombineXMLRequest(strIdentity, strParameter)
|
||||
|
||||
' 2016 YF, OutXml = wsENT.EditSubcontractor(InXml)
|
||||
OutXml = InvokeSrv("wsENT.EditSubcontractor", InXml)
|
||||
|
||||
End If
|
||||
|
||||
XmlDoc.LoadXml(OutXml)
|
||||
If ChkExecutionSuccess(XmlDoc) Then
|
||||
gReturnKeyValue = txtSubcontractorNo.Text
|
||||
|
||||
funAddorEdit = 0
|
||||
If sender.Equals(btnApply) Then
|
||||
intDataStamp += 1
|
||||
End If
|
||||
Else
|
||||
ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc))
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
'MsgBox("Unexpected Error. Add or Edit ENT Subcontractor Failed!," & e1.Message, MsgBoxStyle.Exclamation)
|
||||
ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace)
|
||||
End Try
|
||||
|
||||
XmlDoc = Nothing
|
||||
|
||||
End Function
|
||||
|
||||
#End Region
|
||||
|
||||
End Class
|
||||
|
BIN
SRC/MESWin/SYS2/ET_Subcontractor/iMES.snk
Normal file
BIN
SRC/MESWin/SYS2/ET_Subcontractor/iMES.snk
Normal file
Binary file not shown.
963
SRC/MEStc_SXS/tcENT_21710/tcENT_21710.cs
Normal file
963
SRC/MEStc_SXS/tcENT_21710/tcENT_21710.cs
Normal file
@ -0,0 +1,963 @@
|
||||
using iMESCore.Settings;
|
||||
using Microsoft.VisualBasic;
|
||||
using Microsoft.VisualBasic.CompilerServices;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using static iMESCore.Base.iMESComSubroutine;
|
||||
using static iMESCore.Base.iMESComXML;
|
||||
using static iMESCore.Base.iMESConst;
|
||||
using static iMESCore.DataBase.iMESSql;
|
||||
|
||||
namespace MEStc_SXS
|
||||
{
|
||||
public class clsENT_21710 : IDisposable
|
||||
{
|
||||
|
||||
/*不使用modXX,不再使用OleDb
|
||||
* 資料庫相關(建立連線/讀取資料/異動資料),使用data_access_service.dll
|
||||
* 設定檔相關,使用iMESAppSetting
|
||||
* Xml相關,使用iMESComXML.dll
|
||||
* 常數相關,使用iMESConst.dll
|
||||
* 簡易副程式,使用iMESComSubroutine.dll
|
||||
*/
|
||||
|
||||
|
||||
private AppSettings objSetting = new AppSettings();
|
||||
private string strConnectionString; // Connection string
|
||||
private string strDataBaseType; // DataBase Type:oracle, mysql, access
|
||||
private string strMQType; // MessageQueue Type:TIBCO, MQSeries, MSMQ
|
||||
private bool disposed = false; // To detect redundant calls
|
||||
private string strSQL = "";
|
||||
private string strSQLAddField;
|
||||
private string strSQLAddValue;
|
||||
|
||||
#region --- Initial Object ---
|
||||
|
||||
public clsENT_21710()
|
||||
{
|
||||
// Get database type
|
||||
strDataBaseType = objSetting.GetDataBaseType();
|
||||
// Get connection string
|
||||
strConnectionString = objSetting.GetConnectionString(strDataBaseType);
|
||||
// Get Message Queue Type
|
||||
strMQType = objSetting.GetMQType();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region --- Property ---
|
||||
|
||||
// //Property--------------------------------------------------------------------------------------------------------------------------------
|
||||
public string ConnectionString
|
||||
{
|
||||
get
|
||||
{
|
||||
return strConnectionString;
|
||||
}
|
||||
}
|
||||
|
||||
public string DataBaseType
|
||||
{
|
||||
get
|
||||
{
|
||||
return strDataBaseType;
|
||||
}
|
||||
}
|
||||
|
||||
public string MQType
|
||||
{
|
||||
get
|
||||
{
|
||||
return strMQType;
|
||||
}
|
||||
}
|
||||
|
||||
// 2003/03/22,sammi.
|
||||
// 因TC可能呼叫KC,在整個Function中,必須要使用同一個Reverse物件,如此在產生AddReverseUpdateContent的資料時,ReverseOrder才不會重覆.
|
||||
// 若KC再往下呼叫UD,則必須將Reverse物件傳遞予UD.
|
||||
//public object ReverseObj
|
||||
//{
|
||||
// get
|
||||
// {
|
||||
// //return objReverse;
|
||||
// // ReverseObj = objReverse
|
||||
// }
|
||||
//}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region IDisposable Support
|
||||
private bool disposedValue; // 偵測多餘的呼叫
|
||||
|
||||
// IDisposable
|
||||
protected virtual void Dispose(bool disposing)
|
||||
{
|
||||
if (!disposedValue)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
// TODO: 處置 Managed 狀態 (Managed 物件)。
|
||||
}
|
||||
|
||||
// TODO: 釋放 Unmanaged 資源 (Unmanaged 物件) 並覆寫下面的 Finalize()。
|
||||
// TODO: 將大型欄位設定為 null。
|
||||
}
|
||||
disposedValue = true;
|
||||
}
|
||||
|
||||
// TODO: 只有當上面的 Dispose(ByVal disposing As Boolean) 有可釋放 Unmanaged 資源的程式碼時,才覆寫 Finalize()。
|
||||
// Protected Overrides Sub Finalize()
|
||||
// ' 請勿變更此程式碼。在上面的 Dispose(ByVal disposing As Boolean) 中輸入清除程式碼。
|
||||
// Dispose(False)
|
||||
// MyBase.Finalize()
|
||||
// End Sub
|
||||
|
||||
// 由 Visual Basic 新增此程式碼以正確實作可處置的模式。
|
||||
public void Dispose()
|
||||
{
|
||||
// 請勿變更此程式碼。在以上的 Dispose 置入清除程式碼 (ByVal 視為布林值處置)。
|
||||
Dispose(true);
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region --- Subcontractor 外包商 ---
|
||||
|
||||
|
||||
public string AddSubcontractor(string CNo, string CNAME, string Description = defString, string Creator = defString, DateTime CreateDate = default(DateTime), string AdditionalXml = "")
|
||||
{
|
||||
string AddSubcontractorRet = default(string);
|
||||
// 此 Function 將新增一筆資料
|
||||
// 傳入值: 各欄位新增值
|
||||
// 傳回值: success(成功), fail(失敗)
|
||||
|
||||
if (CreateDate == defDateTime)
|
||||
CreateDate = DateTime.Now;
|
||||
|
||||
try
|
||||
{
|
||||
strSQLAddField = "Insert into TBLENTBASIS21710 (CNo, CNAME, IssueState";
|
||||
strSQLAddValue = " Values ('" + CNo + "','" + CNAME + "', 0";
|
||||
|
||||
if ((Description ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",Description";
|
||||
strSQLAddValue += ",'" + Description + "'";
|
||||
}
|
||||
if ((Creator ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",Creator";
|
||||
strSQLAddValue += ",'" + Creator + "'";
|
||||
}
|
||||
if (CreateDate != defDateTime)
|
||||
{
|
||||
strSQLAddField += ",CreateDate";
|
||||
strSQLAddValue += ", To_Date('" + Strings.Format(Conversions.ToDate(CreateDate), "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')";
|
||||
}
|
||||
|
||||
if (string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 當沒有額外的欄位時,直接給定strSQL
|
||||
strSQL = strSQLAddField + ")" + strSQLAddValue + ")";
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
// 加上additional的field & value 後傳回
|
||||
strSQL = SeparateAddXML_Add(ref strSQLAddField, ref strSQLAddValue, AdditionalXml);
|
||||
|
||||
}
|
||||
|
||||
// //執行SQL指令
|
||||
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
|
||||
|
||||
// //Return success
|
||||
AddSubcontractorRet = "success";
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
AddSubcontractorRet = "fail";
|
||||
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
|
||||
throw;
|
||||
|
||||
} // New Exception("kcENT.AddSubcontractor: " & e1.Message)
|
||||
|
||||
return AddSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
public string EditSubcontractor(string CNo, string CNAME = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
|
||||
{
|
||||
string EditSubcontractorRet = default(string);
|
||||
// 此 Function 將修改一筆資料
|
||||
// 傳入值: 各欄位修改值
|
||||
// 傳回值: success(成功), fail(失敗)
|
||||
|
||||
try
|
||||
{
|
||||
// 先給定strSQL一定有的欄位
|
||||
strSQL = "Update TBLENTBASIS21710 Set ";
|
||||
|
||||
if ((CNAME ?? "") != defString)
|
||||
{
|
||||
strSQL += "CNAME = '" + CNAME + "',";
|
||||
}
|
||||
if ((Description ?? "") != defString)
|
||||
{
|
||||
strSQL += "Description = '" + Description + "',";
|
||||
}
|
||||
|
||||
if (Reviser != defString)
|
||||
strSQL = strSQL + "Reviser = '" + Reviser + "',";
|
||||
|
||||
if (ReviseDate != defDateTime)
|
||||
strSQL = strSQL + "ReviseDate = To_Date('" + Strings.Format(ReviseDate, "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS'),";
|
||||
|
||||
if (DataStamp != defInteger)
|
||||
strSQL = strSQL + "DataStamp = DataStamp + 1 ,";
|
||||
|
||||
// 有額外的欄位時再Append進原來的strSQL中
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的field & value
|
||||
strSQL += SeparateAddXML_Edit(AdditionalXml);
|
||||
}
|
||||
|
||||
// 去除strSQL中最後一個 ","
|
||||
if (Strings.InStr(1, strSQL, ",") != 0) // 表示有要修改的欄位
|
||||
{
|
||||
if (Strings.Right(strSQL, 1) == ",")
|
||||
{
|
||||
strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1);
|
||||
}
|
||||
|
||||
strSQL += " Where CNo ='" + CNo + "'";
|
||||
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
|
||||
|
||||
// 有額外的條件式時再Append進原來的strSQL中
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// 呼叫執行SQL指令
|
||||
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
|
||||
}
|
||||
|
||||
// //Return success
|
||||
EditSubcontractorRet = "success";
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
EditSubcontractorRet = "fail";
|
||||
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
|
||||
throw;
|
||||
|
||||
} // New Exception("kcENT.EditSubcontractor: " & e1.Message)
|
||||
|
||||
return EditSubcontractorRet;
|
||||
|
||||
}
|
||||
public string DelSubcontractor(string CNo, string AdditionalXml = "")
|
||||
{
|
||||
string DelSubcontractorRet = default(string);
|
||||
// 此 Function 將刪除資料
|
||||
// 傳入值: 刪除的索引值
|
||||
// 傳回值: success(成功), fail(失敗)
|
||||
var CollectionSQL = new Collection();
|
||||
|
||||
try
|
||||
{
|
||||
// 1. 刪除Contactor
|
||||
strSQL = "Delete From TBLENTBASIS21710Cont " + "Where CNo='" + CNo + "'";
|
||||
CollectionSQL.Add(strSQL);
|
||||
|
||||
// 2. 刪除主檔
|
||||
strSQL = "Delete From TBLENTBASIS21710 " + " Where CNo ='" + CNo + "'";
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
CollectionSQL.Add(strSQL);
|
||||
|
||||
// 呼叫執行SQL指令
|
||||
ExecuteSQLNoneQuery_UPD(Conversions.ToString(DataBaseType), strConnectionString, CollectionSQL);
|
||||
|
||||
// //Return success
|
||||
DelSubcontractorRet = "success";
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
DelSubcontractorRet = "fail";
|
||||
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
|
||||
throw;
|
||||
|
||||
} // New Exception("kcENT.DelSubcontractor: " & e1.Message)
|
||||
|
||||
return DelSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
public string LoadSubcontractor(string CNo = defString, int IssueState = defInteger, string AdditionalXml = "")
|
||||
{
|
||||
string LoadSubcontractorRet = default(string);
|
||||
// 此 Function 將資料以XML方式取出
|
||||
// 傳入值: 索引值
|
||||
// 傳回值: XML(成功), fail(失敗)
|
||||
|
||||
var dsENT = default(DataSet);
|
||||
IDbConnection cnnTemp = null;
|
||||
|
||||
try
|
||||
{
|
||||
// //Create connection
|
||||
cnnTemp = CreateConnection(strConnectionString);
|
||||
|
||||
strSQL = "Select * From TBLENTBASIS21710 Where CNo Is Not Null";
|
||||
|
||||
if ((CNo ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNo = '" + CNo + "'";
|
||||
}
|
||||
if (IssueState != defInteger)
|
||||
{
|
||||
strSQL += " And IssueState = " + IssueState;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// //Select data
|
||||
dsENT = new DataSet();
|
||||
ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710", cnnTemp);
|
||||
|
||||
// //Combine return value
|
||||
LoadSubcontractorRet = CombineXMLReturnValue("loadSubcontractor", "TBLENTBASIS21710", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
LoadSubcontractorRet = "fail";
|
||||
throw;
|
||||
} // New Exception("kcENT.LoadSubcontractor: " & e1.Message)
|
||||
|
||||
finally
|
||||
{
|
||||
CloseConnection(cnnTemp);
|
||||
if (dsENT != null)
|
||||
{
|
||||
dsENT.Dispose();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return LoadSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
public DataSet ShowSubcontractor(string CNo = defString, int IssueState = defInteger, string AdditionalXml = "")
|
||||
{
|
||||
DataSet ShowSubcontractorRet = default(DataSet);
|
||||
// 此 Function 將資料以 Dataset 方式取出
|
||||
// 傳入值: 索引值
|
||||
// 傳回值: Dataset(成功), Nothing(失敗)
|
||||
|
||||
var dsENT = default(DataSet);
|
||||
IDbConnection cnnTemp = null;
|
||||
|
||||
try
|
||||
{
|
||||
// //Create connection
|
||||
cnnTemp = CreateConnection(strConnectionString);
|
||||
|
||||
strSQL = "Select * From TBLENTBASIS21710 Where CNo Is Not Null";
|
||||
|
||||
if ((CNo ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNo = '" + CNo + "'";
|
||||
}
|
||||
if (IssueState != defInteger)
|
||||
{
|
||||
strSQL += " And IssueState = " + IssueState;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// //Select data
|
||||
dsENT = new DataSet();
|
||||
ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710", cnnTemp);
|
||||
|
||||
// //Return data
|
||||
ShowSubcontractorRet = dsENT;
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
ShowSubcontractorRet = null;
|
||||
throw;
|
||||
} // New Exception("kcENT.ShowSubcontractor: " & e1.Message)
|
||||
|
||||
finally
|
||||
{
|
||||
CloseConnection(cnnTemp);
|
||||
if (dsENT != null)
|
||||
{
|
||||
dsENT.Dispose();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return ShowSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
public DataRow GetSubcontractor(string CNo = defString, int IssueState = defInteger, string AdditionalXml = "")
|
||||
{
|
||||
DataRow GetSubcontractorRet = default(DataRow);
|
||||
// 此 Function 將資料以 DataRow 方式取出
|
||||
// 傳入值: 索引值
|
||||
// 傳回值: DataRow(成功), Nothing(失敗)
|
||||
|
||||
var dsENT = default(DataSet);
|
||||
IDbConnection cnnTemp = null;
|
||||
|
||||
try
|
||||
{
|
||||
// //Create connection
|
||||
cnnTemp = CreateConnection(strConnectionString);
|
||||
|
||||
strSQL = "Select * From TBLENTBASIS21710 Where CNo Is Not Null";
|
||||
|
||||
if ((CNo ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNo = '" + CNo + "'";
|
||||
}
|
||||
if (IssueState != defInteger)
|
||||
{
|
||||
strSQL += " And IssueState = " + IssueState;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// //Select data
|
||||
dsENT = new DataSet();
|
||||
ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710", cnnTemp);
|
||||
|
||||
// //Return data
|
||||
if (dsENT.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
GetSubcontractorRet = dsENT.Tables[0].Rows[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
GetSubcontractorRet = dsENT.Tables[0].NewRow();
|
||||
}
|
||||
}
|
||||
catch (Exception e1)
|
||||
{
|
||||
GetSubcontractorRet = null;
|
||||
throw;
|
||||
} // New Exception("kcENT.GetSubcontractor: " & e1.Message)
|
||||
|
||||
finally
|
||||
{
|
||||
CloseConnection(cnnTemp);
|
||||
if (dsENT != null)
|
||||
{
|
||||
dsENT.Dispose();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return GetSubcontractorRet;
|
||||
|
||||
}
|
||||
public string SetSubcontractorIssueState(string CNo, int IssueState, int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
|
||||
{
|
||||
string SetSubcontractorIssueStateRet = default(string);
|
||||
// 此 Function 將修改IssueState欄位的值
|
||||
// 傳入值: IssueState修改後的值及VendorNo
|
||||
// 傳回值: success(成功), fail(失敗)
|
||||
|
||||
try
|
||||
{
|
||||
// 先給定strSQL一定有的欄位
|
||||
strSQL = "Update TBLENTBASIS21710 Set IssueState = " + IssueState + ",";
|
||||
|
||||
if (Reviser != defString)
|
||||
strSQL = strSQL + "Reviser = '" + Reviser + "',";
|
||||
|
||||
if (ReviseDate != defDateTime)
|
||||
strSQL = strSQL + "ReviseDate = To_Date('" + Strings.Format(ReviseDate, "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS'),";
|
||||
|
||||
if (DataStamp != defInteger)
|
||||
strSQL = strSQL + "DataStamp = DataStamp + 1 ,";
|
||||
|
||||
if (Strings.InStr(1, strSQL, ",") != 0) // 表示有要修改的欄位
|
||||
{
|
||||
if (Strings.Right(strSQL, 1) == ",")
|
||||
{
|
||||
strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1);
|
||||
}
|
||||
|
||||
strSQL = strSQL + " Where CNo ='" + CNo + "'";
|
||||
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
|
||||
|
||||
// 呼叫執行SQL指令
|
||||
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
|
||||
}
|
||||
|
||||
// //Return success
|
||||
SetSubcontractorIssueStateRet = "success";
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
SetSubcontractorIssueStateRet = "fail";
|
||||
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
|
||||
throw;
|
||||
|
||||
} // New Exception("kcENT.SetSubcontractorIssueState: " & e1.Message)
|
||||
|
||||
return SetSubcontractorIssueStateRet;
|
||||
|
||||
}
|
||||
|
||||
|
||||
public string AddSubcontractorCont(string CNo, string CNAME, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description = defString, string AdditionalXml = "", string Creator = defString, DateTime CreateDate = default(DateTime))
|
||||
{
|
||||
string AddSubcontractorContRet = default(string);
|
||||
// 此 Function 將新增一筆資料
|
||||
// 傳入值: 各欄位新增值
|
||||
// 傳回值: success(成功), fail(失敗)
|
||||
|
||||
try
|
||||
{
|
||||
strSQLAddField = "Insert into TBLENTBASIS21710Cont (CNo, CNAME";
|
||||
strSQLAddValue = " Values ('" + CNo + "','" + CNAME + "'";
|
||||
|
||||
if ((TelNo ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",TelNo";
|
||||
strSQLAddValue += ",'" + TelNo + "'";
|
||||
}
|
||||
if ((FaxNo ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",FaxNo";
|
||||
strSQLAddValue += ",'" + FaxNo + "'";
|
||||
}
|
||||
if ((Title ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",Title";
|
||||
strSQLAddValue += ",'" + Title + "'";
|
||||
}
|
||||
if ((Address ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",Address";
|
||||
strSQLAddValue += ",'" + Address + "'";
|
||||
}
|
||||
if ((EMail ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",EMail";
|
||||
strSQLAddValue += ",'" + EMail + "'";
|
||||
}
|
||||
if ((Description ?? "") != defString)
|
||||
{
|
||||
strSQLAddField += ",Description";
|
||||
strSQLAddValue += ",'" + Description + "'";
|
||||
}
|
||||
if (Creator != defString)
|
||||
{
|
||||
strSQLAddField = strSQLAddField + ",Creator";
|
||||
strSQLAddValue = strSQLAddValue + ",'" + Creator + "'";
|
||||
}
|
||||
if (CreateDate != defDateTime)
|
||||
{
|
||||
strSQLAddField = strSQLAddField + ",CreateDate";
|
||||
strSQLAddValue = strSQLAddValue + ", To_Date('" + Strings.Format(CreateDate, "yyyy/MM/dd HH:mm:ss") + "','YYYY/MM/DD HH24:MI:SS')";
|
||||
}
|
||||
|
||||
if (string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 當沒有額外的欄位時,直接給定strSQL
|
||||
strSQL = strSQLAddField + ")" + strSQLAddValue + ")";
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
// 加上additional的field & value 後傳回
|
||||
strSQL = SeparateAddXML_Add(ref strSQLAddField, ref strSQLAddValue, AdditionalXml);
|
||||
|
||||
}
|
||||
|
||||
// //執行SQL指令
|
||||
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
|
||||
|
||||
// //Return success
|
||||
AddSubcontractorContRet = "success";
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
AddSubcontractorContRet = "fail";
|
||||
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
|
||||
throw;
|
||||
|
||||
} // New Exception("kcENT.AddSubcontractorCont: " & e1.Message)
|
||||
|
||||
return AddSubcontractorContRet;
|
||||
|
||||
}
|
||||
|
||||
|
||||
public string EditSubcontractorCont(string CNo, string CNAME, string TelNo = defString, string FaxNo = defString, string Title = defString, string Address = defString, string EMail = defString, string Description = defString, string AdditionalXml = "", int DataStamp = defInteger, string Reviser = defString, DateTime ReviseDate = default(DateTime))
|
||||
{
|
||||
string EditSubcontractorContRet = default(string);
|
||||
|
||||
// 此 Function 將修改一筆資料
|
||||
// 傳入值: 各欄位修改值
|
||||
// 傳回值: success(成功), fail(失敗)
|
||||
|
||||
try
|
||||
{
|
||||
// 先給定strSQL一定有的欄位
|
||||
strSQL = "Update TBLENTBASIS21710Cont Set ";
|
||||
|
||||
if ((TelNo ?? "") != defString)
|
||||
{
|
||||
strSQL += "TelNo = '" + TelNo + "',";
|
||||
}
|
||||
if ((FaxNo ?? "") != defString)
|
||||
{
|
||||
strSQL += "FaxNo = '" + FaxNo + "',";
|
||||
}
|
||||
if ((Title ?? "") != defString)
|
||||
{
|
||||
strSQL += "Title = '" + Title + "',";
|
||||
}
|
||||
if ((Address ?? "") != defString)
|
||||
{
|
||||
strSQL += "Address = '" + Address + "',";
|
||||
}
|
||||
if ((EMail ?? "") != defString)
|
||||
{
|
||||
strSQL += "EMail = '" + EMail + "',";
|
||||
}
|
||||
if ((Description ?? "") != defString)
|
||||
{
|
||||
strSQL += "Description = '" + Description + "',";
|
||||
}
|
||||
|
||||
if (Reviser != defString)
|
||||
strSQL = strSQL + "Reviser = '" + Reviser + "',";
|
||||
|
||||
if (ReviseDate != defDateTime)
|
||||
strSQL = strSQL + "ReviseDate = To_Date('" + Strings.Format(ReviseDate, "yyyy/MM/dd H:mm:ss") + "','YYYY/MM/DD HH24:MI:SS'),";
|
||||
|
||||
if (DataStamp != defInteger)
|
||||
strSQL = strSQL + "DataStamp = DataStamp + 1 ,";
|
||||
|
||||
// 有額外的欄位時再Append進原來的strSQL中
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的field & value
|
||||
strSQL += SeparateAddXML_Edit(AdditionalXml);
|
||||
}
|
||||
|
||||
// 去除strSQL中最後一個 ","
|
||||
if (Strings.InStr(1, strSQL, ",") != 0) // 表示有要修改的欄位
|
||||
{
|
||||
if (Strings.Right(strSQL, 1) == ",")
|
||||
{
|
||||
strSQL = Strings.Mid(strSQL, 1, Strings.Len(strSQL) - 1);
|
||||
}
|
||||
|
||||
strSQL += " Where CNo = '" + CNo + "'" + " And CNAME ='" + CNAME + "'";
|
||||
strSQL = strSQL + " And DataStamp = '" + DataStamp + "'";
|
||||
|
||||
// 有額外的條件式時再Append進原來的strSQL中
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// 呼叫執行SQL指令
|
||||
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL, 1, true);
|
||||
}
|
||||
|
||||
// //Return success
|
||||
EditSubcontractorContRet = "success";
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
EditSubcontractorContRet = "fail";
|
||||
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
|
||||
throw;
|
||||
|
||||
} // New Exception("kcENT.EditSubcontractorCont: " & e1.Message)
|
||||
|
||||
return EditSubcontractorContRet;
|
||||
|
||||
}
|
||||
|
||||
public string DelSubcontractorCont(string CNo, string CNAME = defString, string AdditionalXml = "")
|
||||
{
|
||||
string DelSubcontractorContRet = default(string);
|
||||
// 此 Function 將刪除資料
|
||||
// 傳入值: 刪除的索引值
|
||||
// 傳回值: success(成功), fail(失敗)
|
||||
|
||||
try
|
||||
{
|
||||
strSQL = "Delete From TBLENTBASIS21710Cont " + " Where CNo='" + CNo + "'";
|
||||
|
||||
if ((CNAME ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNAME = '" + CNAME + "'";
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// 呼叫執行SQL指令
|
||||
ExecuteSQLNoneQuery(Conversions.ToString(DataBaseType), strConnectionString, ref strSQL);
|
||||
|
||||
// //Return success
|
||||
DelSubcontractorContRet = "success";
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
DelSubcontractorContRet = "fail";
|
||||
// 發生錯誤時丟回本身的Function Name及系統錯誤訊息
|
||||
throw;
|
||||
|
||||
} // New Exception("kcENT.DelSubcontractorCont: " & e1.Message)
|
||||
|
||||
return DelSubcontractorContRet;
|
||||
|
||||
}
|
||||
|
||||
public string LoadSubcontractorCont(string CNo = defString, string CNAME = defString, string AdditionalXml = "")
|
||||
{
|
||||
string LoadSubcontractorContRet = default(string);
|
||||
// 此 Function 將資料以XML方式取出
|
||||
// 傳入值: 索引值
|
||||
// 傳回值: XML(成功), fail(失敗)
|
||||
|
||||
var dsENT = default(DataSet);
|
||||
IDbConnection cnnTemp = null;
|
||||
|
||||
try
|
||||
{
|
||||
// //Create connection
|
||||
cnnTemp = CreateConnection(strConnectionString);
|
||||
|
||||
strSQL = "Select * From TBLENTBASIS21710Cont Where CNo Is Not Null";
|
||||
|
||||
// 有傳入CNo表示只取該CNo之資料
|
||||
if ((CNo ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNo = '" + CNo + "'";
|
||||
}
|
||||
if ((CNAME ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNAME = '" + CNAME + "'";
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// //Select data
|
||||
dsENT = new DataSet();
|
||||
ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710Cont", cnnTemp);
|
||||
|
||||
// //Combine return value
|
||||
LoadSubcontractorContRet = CombineXMLReturnValue("loadSubcontractorcont", "TBLENTBASIS21710Cont", "DataSet", FormatXMLSchema(dsENT.GetXmlSchema()), dsENT.GetXml(), "");
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
LoadSubcontractorContRet = "fail";
|
||||
throw;
|
||||
} // New Exception("kcENT.LoadSubcontractorCont: " & e1.Message)
|
||||
|
||||
finally
|
||||
{
|
||||
CloseConnection(cnnTemp);
|
||||
if (dsENT != null)
|
||||
{
|
||||
dsENT.Dispose();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return LoadSubcontractorContRet;
|
||||
|
||||
}
|
||||
|
||||
public DataSet ShowSubcontractorCont(string CNo = defString, string CNAME = defString, string AdditionalXml = "")
|
||||
{
|
||||
DataSet ShowSubcontractorContRet = default(DataSet);
|
||||
// 此 Function 將資料以 Dataset 方式取出
|
||||
// 傳入值: 索引值
|
||||
// 傳回值: Dataset(成功), Nothing(失敗)
|
||||
|
||||
|
||||
var dsENT = default(DataSet);
|
||||
IDbConnection cnnTemp = null;
|
||||
|
||||
try
|
||||
{
|
||||
// //Create connection
|
||||
cnnTemp = CreateConnection(strConnectionString);
|
||||
|
||||
strSQL = "Select * From TBLENTBASIS21710Cont Where CNo Is Not Null";
|
||||
if ((CNo ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNo = '" + CNo + "'";
|
||||
}
|
||||
if ((CNAME ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNAME = '" + CNAME + "'";
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// //Select data
|
||||
dsENT = new DataSet();
|
||||
ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710Cont", cnnTemp);
|
||||
|
||||
// //Return data
|
||||
ShowSubcontractorContRet = dsENT;
|
||||
}
|
||||
|
||||
catch (Exception e1)
|
||||
{
|
||||
ShowSubcontractorContRet = null;
|
||||
throw;
|
||||
} // New Exception("kcENT.ShowSubcontractorCont: " & e1.Message)
|
||||
|
||||
finally
|
||||
{
|
||||
CloseConnection(cnnTemp);
|
||||
if (dsENT != null)
|
||||
{
|
||||
dsENT.Dispose();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return ShowSubcontractorContRet;
|
||||
|
||||
}
|
||||
|
||||
public DataRow GetSubcontractorCont(string CNo = defString, string CNAME = defString, string AdditionalXml = "")
|
||||
{
|
||||
DataRow GetSubcontractorContRet = default(DataRow);
|
||||
// 此 Function 將資料以 DataRow 方式取出
|
||||
// 傳入值: 索引值
|
||||
// 傳回值: DataRow(成功), Nothing(失敗)
|
||||
|
||||
|
||||
var dsENT = default(DataSet);
|
||||
IDbConnection cnnTemp = null;
|
||||
|
||||
try
|
||||
{
|
||||
// //Create connection
|
||||
cnnTemp = CreateConnection(strConnectionString);
|
||||
|
||||
strSQL = "Select * From TBLENTBASIS21710Cont Where CNo Is Not Null";
|
||||
if ((CNo ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNo = '" + CNo + "'";
|
||||
}
|
||||
if ((CNAME ?? "") != defString)
|
||||
{
|
||||
strSQL += " And CNAME = '" + CNAME + "'";
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(AdditionalXml))
|
||||
{
|
||||
// 加上additional的condition
|
||||
strSQL += SeparateAddXML_Condition(AdditionalXml);
|
||||
}
|
||||
|
||||
// //Select data
|
||||
dsENT = new DataSet();
|
||||
ExecuteSQLQuery_Adapter(strSQL, dsENT, "TBLENTBASIS21710Cont", cnnTemp);
|
||||
|
||||
// //Return data
|
||||
if (dsENT.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
GetSubcontractorContRet = dsENT.Tables[0].Rows[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
GetSubcontractorContRet = dsENT.Tables[0].NewRow();
|
||||
}
|
||||
}
|
||||
catch (Exception e1)
|
||||
{
|
||||
GetSubcontractorContRet = null;
|
||||
throw;
|
||||
} // New Exception("kcENT.GetSubcontractorCont: " & e1.Message)
|
||||
|
||||
finally
|
||||
{
|
||||
CloseConnection(cnnTemp);
|
||||
if (dsENT != null)
|
||||
{
|
||||
dsENT.Dispose();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return GetSubcontractorContRet;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
}
|
1333
SRC/MEStc_SXS/tcENT_21710_02/clsENT_21710_02.cs
Normal file
1333
SRC/MEStc_SXS/tcENT_21710_02/clsENT_21710_02.cs
Normal file
File diff suppressed because it is too large
Load Diff
634
SRC/wsSXS/wxENT_21710_02/wsENT_21710_02.cs
Normal file
634
SRC/wsSXS/wxENT_21710_02/wsENT_21710_02.cs
Normal file
@ -0,0 +1,634 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Web.Services;
|
||||
using Microsoft.VisualBasic;
|
||||
using Microsoft.VisualBasic.CompilerServices;
|
||||
using static iMESCore.Base.iMESComXML;
|
||||
using static iMESCore.Base.iMESConst;
|
||||
using static iMESCore.Base.iMESComSubroutine;
|
||||
namespace wsSXS
|
||||
{
|
||||
public class wsENT_21710_02
|
||||
{
|
||||
private MEStc_SXS.clsENT_21710_02 objTest = new MEStc_SXS.clsENT_21710_02();
|
||||
private kcSYS.clsSYSUserLog objSYS = new kcSYS.clsSYSUserLog(); // 宣告Sys的物件
|
||||
//private kcBasis_UPD.clsBasis_UPD objBasis = new kcBasis_UPD.clsBasis_UPD(); //主檔優化
|
||||
//private kcBasis_Query.clsBasis_Query objQuery = new kcBasis_Query.clsBasis_Query(); //主檔優化
|
||||
private System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); // 用以讀取Xml字串
|
||||
private DateTime ArriveTime; // 送達時間
|
||||
private string strIdentity; // Identity XML字串
|
||||
private string strReturnValue; // ReturnValue XML字串
|
||||
private string strException; // Exception XML字串
|
||||
private string strResult; // Result XML字串
|
||||
private string strMessage; // Message XML字串
|
||||
private iMESCore.Settings.AppSettings objSetting = new iMESCore.Settings.AppSettings();
|
||||
private string strResourceDir = "Resources";
|
||||
|
||||
public wsENT_21710_02()
|
||||
{
|
||||
try
|
||||
{
|
||||
strResourceDir = System.IO.Path.Combine("wsUpdateResource", objSetting["ResourceDir"].ToString());
|
||||
}
|
||||
catch (Exception)
|
||||
{ }
|
||||
}
|
||||
|
||||
#region --- Subcontractor 外包商 ---
|
||||
|
||||
[WebMethod(Description = "Load Subcontractor Data")]
|
||||
public string LoadSubcontractor(string InXml)
|
||||
{
|
||||
string LoadSubcontractorRet = default(string);
|
||||
|
||||
// 先給預設值,以判斷是否有傳入該參數
|
||||
string SubcontractorNo = defString;
|
||||
int IssueState = 2;
|
||||
|
||||
ArriveTime = DateTime.Now;
|
||||
string AdditionalXml = "";
|
||||
try
|
||||
{
|
||||
// 讀取InXml字串
|
||||
xmlDoc.LoadXml(InXml);
|
||||
// 組Identity字串
|
||||
strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime));
|
||||
|
||||
// 判斷是否有傳入Subcontractor,若有,表示要依Subcontractor查詢
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
}
|
||||
// 判斷是否有傳入IssueState,若有,表示要依IssueState查詢
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText);
|
||||
}
|
||||
}
|
||||
|
||||
// 呼叫副程式處理查詢條件與Additional格式
|
||||
AdditionalXml = CombineXMLQueryAdditional(xmlDoc);
|
||||
|
||||
// 呼叫Dll執行
|
||||
strReturnValue = objTest.LoadTest(SubcontractorNo, IssueState, AdditionalXml);
|
||||
strException = "";
|
||||
strResult = "success";
|
||||
}
|
||||
|
||||
catch (iMESException.MESException ex)
|
||||
{
|
||||
strReturnValue = "";
|
||||
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Show Subcontractor Failed!!", ex.StackTrace);
|
||||
strResult = "fail";
|
||||
}
|
||||
|
||||
catch (Exception ex)
|
||||
{
|
||||
strReturnValue = "";
|
||||
strException = CombineXMLException(defWSErrCode, ex.Message, "Show Subcontractor Failed!!", ex.StackTrace);
|
||||
strResult = "fail";
|
||||
}
|
||||
|
||||
finally
|
||||
{
|
||||
// 將各部份之XML字串組起來並傳出
|
||||
LoadSubcontractorRet = CombineXMLResponse(strIdentity, strReturnValue, strException, strResult, "");
|
||||
|
||||
}
|
||||
|
||||
return LoadSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
[WebMethod(Description = "Add Subcontractor data")]
|
||||
public string AddSubcontractor(string InXml)
|
||||
{
|
||||
string AddSubcontractorRet = default(string);
|
||||
|
||||
// 先給預設值,以判斷是否有傳入該參數
|
||||
var SubcontractorNo = default(string);
|
||||
string SubcontractorName;
|
||||
string Description = defString;
|
||||
string Creator = defString;
|
||||
|
||||
ArriveTime = DateTime.Now;
|
||||
|
||||
try
|
||||
{
|
||||
// 讀取InXml字串
|
||||
xmlDoc.LoadXml(InXml);
|
||||
|
||||
// 組Identity字串
|
||||
strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime));
|
||||
|
||||
// 開始解譯InXml字串
|
||||
// Subcontractor一定要傳入
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorName Not Found!");
|
||||
}
|
||||
// Description
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
}
|
||||
// Creator
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
}
|
||||
|
||||
// 呼叫Dll執行新增資料
|
||||
objTest.AddTest(SubcontractorNo, SubcontractorName, Description, Creator);
|
||||
|
||||
strException = "";
|
||||
strResult = "success";
|
||||
|
||||
objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "AddSubcontractor");
|
||||
}
|
||||
|
||||
catch (iMESException.MESException ex)
|
||||
{
|
||||
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Add Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode));
|
||||
}
|
||||
|
||||
catch (Exception ex)
|
||||
{
|
||||
strException = CombineXMLException(defWSErrCode, ex.Message, "Add Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode);
|
||||
}
|
||||
|
||||
finally
|
||||
{
|
||||
// 將各部份之XML字串組起來並傳出
|
||||
AddSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, "");
|
||||
|
||||
}
|
||||
|
||||
return AddSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
[WebMethod(Description = "Edit Specified Subcontractor Data")]
|
||||
public string EditSubcontractor(string InXml)
|
||||
{
|
||||
string EditSubcontractorRet = default(string);
|
||||
|
||||
// 參數先給預設值,以判斷是否有傳入該參數
|
||||
var SubcontractorNo = default(string);
|
||||
int IssueState = defInteger;
|
||||
string SubcontractorName = defString;
|
||||
string Description = defString;
|
||||
|
||||
int DataStamp = defInteger;
|
||||
string AdditionalXml = "";
|
||||
|
||||
ArriveTime = DateTime.Now;
|
||||
|
||||
try
|
||||
{
|
||||
// 讀取InXml字串
|
||||
xmlDoc.LoadXml(InXml);
|
||||
// 組Identity字串
|
||||
strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime));
|
||||
|
||||
// 開始解譯InXml字串
|
||||
// Subcontractor一定要傳入
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
// IssueState一定要傳入
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "[%IssueState%]");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "[%IssueState%]");
|
||||
}
|
||||
// SubcontractorName不可空白
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
SubcontractorName = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorname").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
if (string.IsNullOrEmpty(SubcontractorName))
|
||||
{
|
||||
throw new iMESException.MESException("0000-200001", "SubcontractorName is empty!");
|
||||
}
|
||||
}
|
||||
}
|
||||
// Description
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("description").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("description").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
Description = xmlDoc.DocumentElement.GetElementsByTagName("description").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
}
|
||||
|
||||
// AdditionalXml
|
||||
GetXMLTagValue(ref AdditionalXml, xmlDoc, "additionalxml");
|
||||
|
||||
// DataStamp
|
||||
GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true);
|
||||
|
||||
if (IssueState == 0) // Unfrozen時才可修改
|
||||
{
|
||||
// 有修改欄位值時
|
||||
if ((SubcontractorName ?? "") != defString | (Description ?? "") != defString)
|
||||
{
|
||||
// 呼叫Dll執行修改
|
||||
objTest.EditTest(SubcontractorNo, SubcontractorName, Description, AdditionalXml, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime);
|
||||
}
|
||||
}
|
||||
|
||||
strException = "";
|
||||
strResult = "success";
|
||||
|
||||
objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "EditSubcontractor");
|
||||
}
|
||||
|
||||
catch (iMESException.MESException ex)
|
||||
{
|
||||
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Edit Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode));
|
||||
}
|
||||
|
||||
catch (Exception ex)
|
||||
{
|
||||
strException = CombineXMLException(defWSErrCode, ex.Message, "Edit Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode);
|
||||
}
|
||||
|
||||
finally
|
||||
{
|
||||
// 將各部份之XML字串組起來並傳出
|
||||
EditSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, "");
|
||||
}
|
||||
|
||||
return EditSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
[WebMethod(Description = "Delete Subcontractor By Specified Subcontractor")]
|
||||
public string DelSubcontractor(string InXml)
|
||||
{
|
||||
string DelSubcontractorRet = default(string);
|
||||
|
||||
var SubcontractorNo = default(string);
|
||||
int IssueState;
|
||||
string strDelState; // 寫入tblSysEventLog中的訊息,0:未簽核刪除,2:已簽核刪除,-1:不使用刪除
|
||||
int DataStamp = defInteger;
|
||||
|
||||
ArriveTime = DateTime.Now;
|
||||
|
||||
try
|
||||
{
|
||||
// 讀取InXml字串
|
||||
xmlDoc.LoadXml(InXml);
|
||||
// 組Identity字串
|
||||
strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime));
|
||||
|
||||
// 開始解譯InXml字串
|
||||
// Subcontractor一定要傳入
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
// IssueState一定要傳入
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "[%IssueState%]");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "[%IssueState%]");
|
||||
}
|
||||
|
||||
// DataStamp
|
||||
GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true);
|
||||
|
||||
switch (IssueState)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
objTest.DelTest(SubcontractorNo);
|
||||
strDelState = "未簽核刪除";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
objTest.SetSubcontractorIssueState(SubcontractorNo, -1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime);
|
||||
strDelState = "已簽核刪除";
|
||||
break;
|
||||
}
|
||||
case -1:
|
||||
{
|
||||
objTest.DelTest(SubcontractorNo);
|
||||
strDelState = "不使用刪除";
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
{
|
||||
throw new iMESException.MESException("0000-200021", "[%IssueState%]");
|
||||
}
|
||||
}
|
||||
|
||||
strException = "";
|
||||
strResult = "success";
|
||||
|
||||
objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "DelSubcontractor:" + strDelState);
|
||||
}
|
||||
|
||||
catch (iMESException.MESException ex)
|
||||
{
|
||||
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Delete Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode));
|
||||
}
|
||||
|
||||
catch (Exception ex)
|
||||
{
|
||||
strException = CombineXMLException(defWSErrCode, ex.Message, "Delete Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode);
|
||||
}
|
||||
|
||||
finally
|
||||
{
|
||||
DelSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, "");
|
||||
|
||||
}
|
||||
|
||||
return DelSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
[WebMethod(Description = "Approve Specified Subcontractor Data")]
|
||||
public string ApproveSubcontractor(string InXml)
|
||||
{
|
||||
string ApproveSubcontractorRet = default(string);
|
||||
|
||||
string IssueNo = "SUBCONTRACTOR BASIS"; // 簽核編號:SUBCONTRACTOR BASIS.若找不到,表示直接將狀態改為Active.
|
||||
var SubcontractorNo = default(string);
|
||||
int IssueState;
|
||||
var objIssue = new kcISSUE.clsIssue();
|
||||
DataRow IssueDR;
|
||||
int DataStamp = defInteger;
|
||||
|
||||
ArriveTime = DateTime.Now;
|
||||
|
||||
try
|
||||
{
|
||||
// 讀取InXml字串
|
||||
xmlDoc.LoadXml(InXml);
|
||||
// 組Identity字串
|
||||
strIdentity = CombineXMLIdentity(Environment.MachineName, GetXMLCurUserNo(xmlDoc), Conversions.ToString(ArriveTime));
|
||||
|
||||
// 開始解譯InXml字串
|
||||
// Subcontractor一定要傳入
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
SubcontractorNo = xmlDoc.DocumentElement.GetElementsByTagName("subcontractorno").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "SubcontractorNo Not Found!");
|
||||
}
|
||||
// IssueState一定要傳入
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
IssueState = Conversions.ToInteger(xmlDoc.DocumentElement.GetElementsByTagName("issuestate").Item(0).SelectNodes("value").Item(0).InnerText);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "[%IssueState%]");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new iMESException.MESException("0000-200002", "[%IssueState%]");
|
||||
}
|
||||
|
||||
// DataStamp
|
||||
GetXMLTagValue(ref DataStamp, xmlDoc, "datastamp", true);
|
||||
|
||||
if (IssueState == 0) // 當狀態為Unfrozen時才作
|
||||
{
|
||||
// 去IssueManagement中找核准的方式
|
||||
IssueDR = objIssue.GetIssueJobMap(IssueNo);
|
||||
|
||||
// 找不到表示bypass直接核准
|
||||
if (IssueDR["JobNo"] is DBNull)
|
||||
{
|
||||
// 直接核准
|
||||
objTest.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime);
|
||||
objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveTest");
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
// 檢查JobNo是否有定義Detail檔,沒有Detail檔則直接核准
|
||||
DataRow tmpDR;
|
||||
tmpDR = objIssue.GetIssueJobDetail(Conversions.ToString(IssueDR["JobNo"]));
|
||||
if (tmpDR["JobNo"] is DBNull)
|
||||
{
|
||||
objTest.SetSubcontractorIssueState(SubcontractorNo, 2, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime);
|
||||
objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor");
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
// 將狀態改為Pending,且應以找到的JobNo來進入簽核
|
||||
// 填入簽核現況檔之Initial
|
||||
var ApproveSQL = new Collection();
|
||||
var RejectSQL = new Collection();
|
||||
string tmpSQL;
|
||||
string IssueSubject;
|
||||
string IssueMasterNo;
|
||||
|
||||
// 核准後應將狀態改為Active
|
||||
tmpSQL = "Update tblENTSubcontractor Set IssueState = 2 Where SubcontractorNo = '" + SubcontractorNo + "'";
|
||||
ApproveSQL.Add(tmpSQL);
|
||||
// 退回則應將狀態回復到Unfrozen
|
||||
tmpSQL = "Update tblENTSubcontractor Set IssueState = 0 Where SubcontractorNo = '" + SubcontractorNo + "'";
|
||||
RejectSQL.Add(tmpSQL);
|
||||
|
||||
// Creator未傳入表示以目前的User
|
||||
string Creator;
|
||||
if (xmlDoc.DocumentElement.GetElementsByTagName("creator").Count > 0)
|
||||
{
|
||||
if (xmlDoc.GetElementsByTagName("creator").Item(0).SelectNodes("value").Count > 0)
|
||||
{
|
||||
Creator = xmlDoc.DocumentElement.GetElementsByTagName("creator").Item(0).SelectNodes("value").Item(0).InnerText;
|
||||
}
|
||||
else
|
||||
{
|
||||
Creator = GetXMLCurUserNo(xmlDoc);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Creator = GetXMLCurUserNo(xmlDoc);
|
||||
}
|
||||
|
||||
IssueSubject = "SubcontractorNo: " + SubcontractorNo;
|
||||
IssueMasterNo = objIssue.InitIssueMasterNo();
|
||||
// 此筆資料進入Issue流程
|
||||
objIssue.StartIssueProcess(IssueMasterNo, ApproveSQL, RejectSQL, IssueNo, IssueDR["JobNo"].ToString(), IssueSubject, Creator);
|
||||
// 將狀態改為Pending
|
||||
objTest.SetSubcontractorIssueState(SubcontractorNo, 1, DataStamp: DataStamp, Reviser: GetXMLCurUserNo(xmlDoc), ReviseDate: ArriveTime);
|
||||
|
||||
objSYS.AddEventLog("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, "ApproveSubcontractor");
|
||||
|
||||
// 發Email給JobSerialNo=1之負責群組
|
||||
objIssue.SendEmailToFirstGroup(IssueMasterNo, IssueSubject);
|
||||
}
|
||||
}
|
||||
}
|
||||
strException = "";
|
||||
strResult = "success";
|
||||
}
|
||||
|
||||
|
||||
catch (iMESException.MESException ex)
|
||||
{
|
||||
strException = CombineXMLException(Conversions.ToString(ex.ErrorCode), TranslateMsg(ex.Message, GetXMLLanguageMode(xmlDoc), strResourceDir), "Approve Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: Conversions.ToString(ex.ErrorCode));
|
||||
}
|
||||
|
||||
catch (Exception ex)
|
||||
{
|
||||
strException = CombineXMLException(defWSErrCode, ex.Message, "Approve Subcontractor failed!", ex.StackTrace);
|
||||
|
||||
strResult = "fail";
|
||||
|
||||
objSYS.AddErrorLog_ErrorCode("wsENT", GetXMLCurUserNo(xmlDoc), "SubcontractorNo", SubcontractorNo, DateTime.Now, strException, ComputerName: GetXMLCurComputer(xmlDoc), ErrorCode: defWSErrCode);
|
||||
}
|
||||
|
||||
finally
|
||||
{
|
||||
// 將各部份之XML字串組起來並傳出
|
||||
ApproveSubcontractorRet = CombineXMLResponse(strIdentity, "", strException, strResult, "");
|
||||
}
|
||||
|
||||
return ApproveSubcontractorRet;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user