This repo is archived. You can view files and clone it, but cannot push or open issues or pull requests.
SXS20240115/SRC/MESWin/SYS1/ENT_21685/frmSubcontractorContDef.vb
2024-01-17 16:03:04 +08:00

508 lines
21 KiB
VB.net

Imports iMESExceptionManager
Public Class frmStuBasisContDef
Inherits COM_Kit.frmDefTemplat
'//Public Variables
Public EditDataRow As DataRow
Public DefMode As Integer = 0 '0. ADD, 1.Edit, 2. Copy
Public StuBasisNo As String = defString
Public PrivFunNo As String = defString
'//Web Service相關變數
' 2016 YF, Dim wsENT As New wsENT.wsENT
Dim InXml As String
Dim OutXml As String
Dim strIdentity As String
Dim strParameter As String
Dim intDataStamp As Integer '紀錄DataStamp
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
Friend WithEvents txtDescription As System.Windows.Forms.RichTextBox
Friend WithEvents lblTelNo As System.Windows.Forms.Label
Friend WithEvents lblDescription As System.Windows.Forms.Label
Friend WithEvents lblTeacherName As System.Windows.Forms.Label
Friend WithEvents lblStuBasisNo As System.Windows.Forms.Label
Friend WithEvents gbxStuBasisContData As System.Windows.Forms.GroupBox
Friend WithEvents txtStuBasisNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
Friend WithEvents txtTeacherName As Infragistics.Win.UltraWinEditors.UltraTextEditor
Friend WithEvents txtTelNo As Infragistics.Win.UltraWinEditors.UltraTextEditor
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim Appearance1 As Infragistics.Win.Appearance = New Infragistics.Win.Appearance()
Me.gbxStuBasisContData = New System.Windows.Forms.GroupBox()
Me.lblTelNo = New System.Windows.Forms.Label()
Me.txtDescription = New System.Windows.Forms.RichTextBox()
Me.lblDescription = New System.Windows.Forms.Label()
Me.lblStuBasisNo = New System.Windows.Forms.Label()
Me.lblTeacherName = New System.Windows.Forms.Label()
Me.txtStuBasisNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
Me.txtTeacherName = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
Me.txtTelNo = New Infragistics.Win.UltraWinEditors.UltraTextEditor()
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).BeginInit()
Me.gbxStuBasisContData.SuspendLayout()
CType(Me.txtStuBasisNo, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.txtTeacherName, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'gbxBasisData
'
Me.gbxBasisData.Location = New System.Drawing.Point(12, 322)
Me.gbxBasisData.Size = New System.Drawing.Size(472, 70)
'
'btnApply
'
Me.btnApply.Location = New System.Drawing.Point(396, 401)
'
'btnConfirm
'
Me.btnConfirm.Location = New System.Drawing.Point(208, 401)
'
'btnClose
'
Me.btnClose.Location = New System.Drawing.Point(302, 401)
'
'gbxStuBasisContData
'
Me.gbxStuBasisContData.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.gbxStuBasisContData.Controls.Add(Me.lblTelNo)
Me.gbxStuBasisContData.Controls.Add(Me.txtDescription)
Me.gbxStuBasisContData.Controls.Add(Me.lblDescription)
Me.gbxStuBasisContData.Controls.Add(Me.lblStuBasisNo)
Me.gbxStuBasisContData.Controls.Add(Me.lblTeacherName)
Me.gbxStuBasisContData.Controls.Add(Me.txtStuBasisNo)
Me.gbxStuBasisContData.Controls.Add(Me.txtTeacherName)
Me.gbxStuBasisContData.Controls.Add(Me.txtTelNo)
Me.gbxStuBasisContData.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.gbxStuBasisContData.Location = New System.Drawing.Point(15, 8)
Me.gbxStuBasisContData.Name = "gbxStuBasisContData"
Me.gbxStuBasisContData.Size = New System.Drawing.Size(469, 306)
Me.gbxStuBasisContData.TabIndex = 0
Me.gbxStuBasisContData.TabStop = False
Me.gbxStuBasisContData.Text = "ENT StuBasis Contactor Data"
'
'lblTelNo
'
Me.lblTelNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblTelNo.Location = New System.Drawing.Point(24, 90)
Me.lblTelNo.Name = "lblTelNo"
Me.lblTelNo.Size = New System.Drawing.Size(86, 14)
Me.lblTelNo.TabIndex = 4
Me.lblTelNo.Text = "TelNo"
Me.lblTelNo.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'txtDescription
'
Me.txtDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtDescription.Location = New System.Drawing.Point(120, 138)
Me.txtDescription.Name = "txtDescription"
Me.txtDescription.Size = New System.Drawing.Size(336, 108)
Me.txtDescription.TabIndex = 15
Me.txtDescription.Text = ""
'
'lblDescription
'
Me.lblDescription.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblDescription.Location = New System.Drawing.Point(28, 138)
Me.lblDescription.Name = "lblDescription"
Me.lblDescription.Size = New System.Drawing.Size(86, 14)
Me.lblDescription.TabIndex = 14
Me.lblDescription.Text = "Description"
Me.lblDescription.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'lblStuBasisNo
'
Me.lblStuBasisNo.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStuBasisNo.Location = New System.Drawing.Point(14, 29)
Me.lblStuBasisNo.Name = "lblStuBasisNo"
Me.lblStuBasisNo.Size = New System.Drawing.Size(96, 14)
Me.lblStuBasisNo.TabIndex = 0
Me.lblStuBasisNo.Text = "StuBasis No"
Me.lblStuBasisNo.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'lblTeacherName
'
Me.lblTeacherName.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblTeacherName.Location = New System.Drawing.Point(24, 59)
Me.lblTeacherName.Name = "lblTeacherName"
Me.lblTeacherName.Size = New System.Drawing.Size(86, 14)
Me.lblTeacherName.TabIndex = 2
Me.lblTeacherName.Text = "Teacher Name"
Me.lblTeacherName.TextAlign = System.Drawing.ContentAlignment.TopRight
'
'txtStuBasisNo
'
Me.txtStuBasisNo.Location = New System.Drawing.Point(120, 24)
Me.txtStuBasisNo.Name = "txtStuBasisNo"
Me.txtStuBasisNo.ReadOnly = True
Me.txtStuBasisNo.Size = New System.Drawing.Size(114, 22)
Me.txtStuBasisNo.TabIndex = 1
Me.txtStuBasisNo.TabStop = False
'
'txtTeacherName
'
Appearance1.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtTeacherName.Appearance = Appearance1
Me.txtTeacherName.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer))
Me.txtTeacherName.Location = New System.Drawing.Point(120, 56)
Me.txtTeacherName.Name = "txtTeacherName"
Me.txtTeacherName.Size = New System.Drawing.Size(160, 22)
Me.txtTeacherName.TabIndex = 3
'
'txtTelNo
'
Me.txtTelNo.Location = New System.Drawing.Point(120, 88)
Me.txtTelNo.Name = "txtTelNo"
Me.txtTelNo.Size = New System.Drawing.Size(114, 22)
Me.txtTelNo.TabIndex = 5
'
'frmStuBasisContDef
'
Me.ClientSize = New System.Drawing.Size(496, 446)
Me.Controls.Add(Me.gbxStuBasisContData)
Me.Font = New System.Drawing.Font("Times New Roman", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Name = "frmStuBasisContDef"
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "ENT StuBasis Contactor Define"
Me.Controls.SetChildIndex(Me.btnClose, 0)
Me.Controls.SetChildIndex(Me.btnConfirm, 0)
Me.Controls.SetChildIndex(Me.btnApply, 0)
Me.Controls.SetChildIndex(Me.gbxBasisData, 0)
Me.Controls.SetChildIndex(Me.gbxStuBasisContData, 0)
CType(Me.gbxBasisData, System.ComponentModel.ISupportInitialize).EndInit()
Me.gbxStuBasisContData.ResumeLayout(False)
Me.gbxStuBasisContData.PerformLayout()
CType(Me.txtStuBasisNo, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtTeacherName, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtTelNo, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
#End Region
Private Sub frmStuBasisContDef_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Cursor.Current = Cursors.WaitCursor
Select Case DefMode
Case 0
Me.Text = Me.Text & "(ADD)"
Case 1
Me.Text = Me.Text & "(EDIT)"
Case 2
Me.Text = Me.Text & "(Copy)"
Case Else
Me.Text = Me.Text & "(Unknown)"
End Select
'做為MainForm判斷是否重新LoadData的依據()
gReturnKeyValue = ""
' 2016 YF, wsENT.Url = LocalizeWebService(wsENT.Url.ToString)
' 2016 YF, wsENT.EnableDecompression = True
If DefMode = 0 Or DefMode = 2 Then
SetCreateDate(Now)
SetCreator(gUserNo)
End If
If Not EditDataRow Is Nothing Then '修改 or Copy
txtStuBasisNo.Text = EditDataRow.Item("StuBasisNo").ToString
txtTeacherName.Text = EditDataRow.Item("ContactorName").ToString
txtTelNo.Text = EditDataRow.Item("TelNo").ToString
'txtDescription是RichTextBox(Control, 因為TextBox無法正常顯示多行換行的資料)
txtDescription.Text = EditDataRow.Item("Description").ToString
If DefMode = 1 Then
If (Not IsDBNull(EditDataRow("Creator"))) Then
SetCreateDate(Convert.ToDateTime(EditDataRow.Item("CreateDate")))
SetCreator(EditDataRow.Item("Creator").ToString)
End If
End If
End If
If DefMode = 0 Then 'Add
txtStuBasisNo.Text = StuBasisNo
SetCreateDate(Now)
SetCreator(gUserNo)
ElseIf DefMode = 1 Then 'Edit
txtTeacherName.ReadOnly = True
SetReviseDate(Now)
SetReviser(gUserNo)
intDataStamp = EditDataRow.Item("DataStamp")
End If
btnApplyEnabled = False
'語系切換
Call ExeChangeResource(Me, gLanguageMode)
ExeGroupControlPriv(Me, PrivFunNo)
Cursor.Current = Cursors.Default
End Sub
Private Sub frmStuBasisContDef_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated
If DefMode = 0 Or DefMode = 2 Then
txtTeacherName.Focus()
Else
txtTelNo.Focus()
End If
End Sub
Protected Overrides Sub btnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Cursor.Current = Cursors.WaitCursor
If funAddorEdit(sender) < 0 Then Exit Sub
Me.Close()
Cursor.Current = Cursors.Default
End Sub
Protected Overrides Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Me.Close()
End Sub
Protected Overrides Sub btnApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Cursor.Current = Cursors.WaitCursor
If funAddorEdit(sender) < 0 Then Exit Sub
If DefMode = 0 Or DefMode = 2 Then
txtTeacherName.Focus()
Else
txtTelNo.Focus()
End If
btnApplyEnabled = False
Cursor.Current = Cursors.Default
End Sub
#Region "Control KeyPress"
Private Sub txtStuBasisNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.Click
txtStuBasisNo.SelectAll()
End Sub
Private Sub txtStuBasisNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.Enter
txtStuBasisNo.SelectAll()
End Sub
Private Sub txtStuBasisNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtStuBasisNo.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtStuBasisNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtStuBasisNo.TextChanged
btnApplyEnabled = True
End Sub
Private Sub txtContactorName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.Click
txtTeacherName.SelectAll()
End Sub
Private Sub txtContactorName_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.Enter
txtTeacherName.SelectAll()
End Sub
Private Sub txtContactorName_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTeacherName.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
'Private Sub txtContactorName_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtContactorName.Leave
'xtContactorName.Text <> "" And txtEMail.Text = "" Then
' txtEMail.Text = txtContactorName.Text & "@"
'End If
' txtContactorName.Text = UCase(txtContactorName.Text)
'End Sub
Private Sub txtContactorName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTeacherName.TextChanged
btnApplyEnabled = True
End Sub
Private Sub txtTelNo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Click
txtTelNo.SelectAll()
End Sub
Private Sub txtTelNo_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.Enter
txtTelNo.SelectAll()
End Sub
Private Sub txtTelNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtTelNo.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtTelNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTelNo.TextChanged
btnApplyEnabled = True
End Sub
Private Sub txtFaxNo_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtFaxNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
btnApplyEnabled = True
End Sub
Private Sub txtTitle_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtTitle_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
btnApplyEnabled = True
End Sub
Private Sub txtAddress_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtAddress_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
btnApplyEnabled = True
End Sub
Private Sub txtDescription_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Click
txtDescription.SelectAll()
End Sub
Private Sub txtDescription_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDescription.Enter
txtDescription.SelectAll()
End Sub
Private Sub txtDescription_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDescription.KeyPress
If e.KeyChar = Convert.ToChar(13) Then
SendKeys.Send("{TAB}")
End If
End Sub
Private Sub txtDescription_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDescription.TextChanged
btnApplyEnabled = True
End Sub
#End Region
#Region "Others"
Private Function funAddorEdit(sender As Object) As Integer
funAddorEdit = -1
'******************************************************************************
'1.基本檢查()
'******************************************************************************
If txtStuBasisNo.Text = "" Then
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%StuBasisNo%]"), MsgBoxStyle.Exclamation, Me.Text)
txtStuBasisNo.Focus()
Exit Function
End If
If txtTeacherName.Text = "" Then
iMESExceptionManager.ExceptionManager.iMESMsgBoxShowDialog(ChgTranslateName_Msg("0000-200001", "[%TeacherName%]"), MsgBoxStyle.Exclamation, Me.Text)
txtTeacherName.Focus()
Exit Function
End If
'******************************************************************************
'2.寫回資料庫()
'******************************************************************************
Dim XmlDoc As New XmlDocument
Try
strIdentity = CombineXMLIdentity(gComputerName, gUserNo, GetNow())
strParameter = CombineXMLParameter("stubasisno", "StuBasisNo", "String", CInput(txtStuBasisNo.Text), "")
strParameter = strParameter & CombineXMLParameter("teachername", "teachername", "String", CInput(txtTeacherName.Text), "")
strParameter = strParameter & CombineXMLParameter("description", "Description", "String", CInput(txtDescription.Text), "")
If DefMode = 0 Or DefMode = 2 Then 'Add or Copy
strParameter += CombineXMLParameter("creator", "Creator", "String", gUserNo, "")
InXml = CombineXMLRequest(strIdentity, strParameter)
' 2016 YF, OutXml = wsENT.AddStuBasisCont(InXml)
OutXml = InvokeSrv("SXS.ws_21685.AddStuBasisCont", InXml)
Else 'Edit
' 增加Datastamp
strParameter += CombineXMLParameter("datastamp", "Datastamp", "Integer", intDataStamp, "")
InXml = CombineXMLRequest(strIdentity, strParameter)
' 2016 YF, OutXml = wsENT.EditStuBasisCont(InXml)
OutXml = InvokeSrv("SXS.ws_21685.EditStuBasisCont", InXml)
End If
XmlDoc.LoadXml(OutXml)
If ChkExecutionSuccess(XmlDoc) Then
gReturnKeyValue = txtTeacherName.Text
funAddorEdit = 0
If sender.Equals(btnApply) Then
intDataStamp += 1
End If
Else
ExceptionManager.iMESShowDialog(GetExceptionCode(XmlDoc), GetExceptionSysMsg(XmlDoc), GetExceptionStack(XmlDoc))
End If
Catch ex As Exception
'MsgBox("Unexpected Error. Add or Edit ENT StuBasis Contactor Failed!," & e1.Message, MsgBoxStyle.Exclamation)
ExceptionManager.iMESShowDialog(defWinErrCode, ex.Message, ex.StackTrace)
End Try
XmlDoc = Nothing
End Function
#End Region
Private Sub frmStuBasisContDef_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
' 2016 YF, If Not wsENT Is Nothing Then wsENT.Dispose()
End Sub
End Class