📄 frmxssod.frm
字号:
Public Sub LetDocno(vDocno As String)
On Error GoTo Errorhandle
Text(TxtXsSodhDocno).Text = vDocno
Text_LostFocus TxtXsSodhDocno
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub Combo_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
On Error GoTo Errorhandle
gPublicFunction.FormKeyDown Me, KeyCode, Shift, Combo(Index)
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Combo_LostFocus(Index As Integer)
On Error GoTo Errorhandle
If Tlbaction(TlbXsSod).Tag = "" Then
Exit Sub
End If
Select Case Index
Case CBxXsSodh_KhCode
If Trim(Combo(CBxXsSodh_KhCode).Text) <> "" Then
oXsSodh.XsSodh_KhCode = Combo(CBxXsSodh_KhCode).Text
Combo(CBxXsSodh_CwBzCode).Text = oXsSodh.XsSodh_CwBzCode
End If
End Select
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Flex_AfterEdit(Index As Integer, ByVal Row As Long, ByVal Col As Long)
On Error GoTo Errorhandle
SetControlToFlex
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Flex_BeforeEdit(Index As Integer, ByVal Row As Long, ByVal Col As Long, Cancel As Boolean)
On Error GoTo Errorhandle
If Tlbaction(TlbXsSod).Tag = "" Then
Cancel = True
End If
If oXsSodh Is Nothing Then
Cancel = True
End If
mCurColOldValue = Trim(Flex(FlexXsSod).TextMatrix(Flex(FlexXsSod).Row, Flex(FlexXsSod).Col))
Select Case Flex(FlexXsSod).ColKey(Col)
Case "HWBMCODE"
Case "XSSOD_HWDWCONV", "XSSODQTY", "XSSODPRICE", "XSSODAMT", "XSSODDDAT", "XSSODBZ"
If oXsSod Is Nothing Then
Cancel = True
End If
Case "HWDWCODE"
If oXsSod Is Nothing Then
Cancel = True
End If
Case "CWSMCODE"
If oXsSod Is Nothing Then
Cancel = True
End If
Case Else
Cancel = True
End Select
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Flex_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
On Error GoTo Errorhandle
gPublicFunction.FlexKeyDown Flex(Index), KeyCode
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Flex_KeyDownEdit(Index As Integer, ByVal Row As Long, ByVal Col As Long, KeyCode As Integer, ByVal Shift As Integer)
On Error GoTo Errorhandle
gPublicFunction.FlexKeyDown Flex(Index), KeyCode
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Flex_KeyPressEdit(Index As Integer, ByVal Row As Long, ByVal Col As Long, KeyAscii As Integer)
On Error GoTo Errorhandle
gPublicFunction.FlexInputCheck Me, Flex(Index), KeyAscii
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Form_Activate()
On Error GoTo Errorhandle
Text(TxtXsSodhDocno).SetFocus
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub Form_Load()
On Error GoTo Errorhandle
Flex(FlexXsSod).Editable = flexEDKbdMouse
Flex(FlexXsSod).ColKey(1) = "HWBMCODE"
Flex(FlexXsSod).ColKey(2) = "HWBMMC"
Flex(FlexXsSod).ColKey(3) = "HWDWCODE"
Flex(FlexXsSod).ColKey(4) = "XSSOD_HWDWCONV"
Flex(FlexXsSod).ColKey(5) = "XSSODQTY"
Flex(FlexXsSod).ColKey(6) = "XSSODPRICE"
Flex(FlexXsSod).ColKey(7) = "XSSODAMT"
Flex(FlexXsSod).ColKey(8) = "CWSMCODE"
Flex(FlexXsSod).ColKey(9) = "XSSODDDAT"
Flex(FlexXsSod).ColKey(10) = "XSSODBZ"
gPublicFunction.LoadFormSet Me, Tlbaction(TlbXsSod), Img(ImgXsSod), SBar(SbarXsSod)
gPublicCommon.gForms(UCase(Me.Name)).ControlBegEnds.Add "XsSod", "TXTXSSODHDOCNO", "CBXSALERCODE"
gPublicCommon.gForms(UCase(Me.Name)).ControlStatus.Add "", Flex(FlexXsSod), Text(TxtXsSodhDocno)
gPublicCommon.gForms(UCase(Me.Name)).ControlStatus.Add "ADD", Text(TxtTotalQty), Text(TxtTotalAmt)
gPublicCommon.gForms(UCase(Me.Name)).ControlStatus.Add "CHG", Text(TxtTotalQty), Text(TxtTotalAmt)
gPublicCommon.PublicFunction.EnableControl Me, ""
gPublicFunction.FillComboWithSql Me, Combo(CBxXsSodh_KhCode), "SELECT KHCODE,KHNO FROM KHREC WHERE KHTYPE=1 ORDER BY KHCODE", "KHNO", 0
gPublicFunction.FillComboWithSql Me, Combo(CBxXsSodh_CwBzCode), "SELECT CwBzCODE,CwBzNO FROM CwBzREC ORDER BY CwBzCODE", "CWBZNO", 0
gPublicFunction.FillComboWithSql Me, Combo(CbxXsSodh_SalerCode), "SELECT SalerCODE,SalerNO FROM SalerREC ORDER BY SalerCODE", "SalerNO", 0
Exit Sub
Errorhandle:
MsgBox Err.Description
End Sub
Private Sub LoadDataIntoGrid(Index As String)
Dim ItemStr As String
Dim mXsSodh As XsSodh
Dim mXsSod As XsSod
On Error GoTo Errorhandle
Select Case UCase(Index)
Case "XSSOD"
Flex(FlexXsSod).Rows = 1
Flex(FlexXsSod).AddItem ""
oXsSodh.XsSods.FillbyDb oXsSodh
For Each mXsSod In oXsSodh.XsSods
ItemStr = vbTab & mXsSod.XsSod_HwBmCode & vbTab & mXsSod.XsSod_HwBmMc
ItemStr = ItemStr & vbTab & mXsSod.XsSod_HwDwCode & vbTab & mXsSod.XsSod_HwDwConv
ItemStr = ItemStr & vbTab & mXsSod.XsSodQty & vbTab & mXsSod.XsSodPrice & vbTab & mXsSod.XsSodAmt
ItemStr = ItemStr & vbTab & mXsSod.XsSod_CwSmCode & vbTab & gPublicFunction.ConvStringToDate(mXsSod.XsSodDDat) & vbTab & mXsSod.XsSodBz
Flex(FlexXsSod).AddItem ItemStr, Flex(FlexXsSod).Rows - 1
Flex(FlexXsSod).RowData(Flex(FlexXsSod).Rows - 2) = mXsSod.XsSodKey
Next
If Flex(FlexXsSod).Rows > 2 Then
Flex(FlexXsSod).Row = 1
Set oXsSod = oXsSodh.XsSods(CStr(Flex(FlexXsSod).RowData(1)))
Else
Set oXsSod = Nothing
End If
gPublicFunction.SumFlexQtyAmt Flex(FlexXsSod), "XsSodQTY,XsSodAMT", Text(TxtTotalQty), Text(TxtTotalAmt)
End Select
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub AddRecord(RecordName As String)
On Error GoTo Errorhandle
Set oXsSodh = New XsSodh
Set oXsSod = Nothing
Clearcontrol
Text(TxtXsSodhDocno).SetFocus
If Text(TxtXsSodhDat).Text = "" Then
Text(TxtXsSodhDat).Text = gPublicCommon.PublicSysDatas("SYSTEMDATE").SysDataValue
End If
gPublicFunction.SetToolbarStatu Me, Tlbaction(TlbXsSod), RecordName
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub ChgRecord(RecordName As String)
On Error GoTo Errorhandle
If oXsSodh Is Nothing Then
Exit Sub
End If
Text(TxtXsSodhDocno).SetFocus
gPublicFunction.SetToolbarStatu Me, Tlbaction(TlbXsSod), RecordName
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub CancelRecord(RecordName As String)
On Error GoTo Errorhandle
If oXsSodh.XsSodhId = -1 Then
Clearcontrol
Set oXsSod = Nothing
Set oXsSodh = Nothing
Else
oXsSodh.Requery oXsSodh.XsSodhDocno
SetValueToControl
End If
gPublicFunction.SetToolbarStatu Me, Tlbaction(TlbXsSod), RecordName
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub Clearcontrol()
On Error GoTo Errorhandle
Text(TxtXsSodhDocno).Text = ""
Combo(CBxXsSodh_KhCode).Text = ""
Combo(CBxXsSodh_CwBzCode).Text = ""
Combo(CbxXsSodh_SalerCode).Text = ""
Text(TxtTotalQty).Text = ""
Text(TxtTotalAmt).Text = ""
Flex(FlexXsSod).Rows = 1
Flex(FlexXsSod).AddItem ""
Text(TxtXsSodhDocno).SetFocus
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub SaveRecord(RecordName As String)
On Error GoTo Errorhandle
SetValueToObject
oXsSodh.Save
gPublicFunction.SetToolbarStatu Me, Tlbaction(TlbXsSod), RecordName
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub SetValueToObject()
Dim mXsSod As XsSod
Dim I As Integer
On Error GoTo Errorhandle
oXsSodh.XsSodhDocno = Trim(Text(TxtXsSodhDocno).Text)
oXsSodh.XsSodhDat = gPublicFunction.ConvDateToString(Text(TxtXsSodhDat).Text)
oXsSodh.XsSodh_KhCode = Trim(Combo(CBxXsSodh_KhCode).Text)
oXsSodh.XsSodh_CwBzCode = Trim(Combo(CBxXsSodh_CwBzCode).Text)
oXsSodh.XsSodh_SalerCode = Trim(Combo(CbxXsSodh_SalerCode).Text)
oXsSodh.XsSodhForm = UCase(Me.Name)
For I = 1 To Flex(FlexXsSod).Rows - 2
Set mXsSod = oXsSodh.XsSods(CStr(Flex(FlexXsSod).RowData(I)))
mXsSod.XsSod_HwBmCode = Trim(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("HWBMCODE")))
mXsSod.XsSod_HwDwCode = Trim(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("HWDWCODE")))
mXsSod.XsSod_HwDwConv = Val(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("XSSOD_HWDWCONV")))
mXsSod.XsSodQty = Val(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("XSSODQTY")))
mXsSod.XsSodPrice = Val(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("XSSODPRICE")))
mXsSod.XsSodAmt = Val(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("XSSODAMT")))
mXsSod.XsSod_CwSmCode = Trim(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("CWSMCODE")))
mXsSod.XsSodDDat = Trim(gPublicFunction.ConvDateToString(Trim(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("XSSODDDAT")))))
mXsSod.XsSodBz = Trim(Flex(FlexXsSod).TextMatrix(I, Flex(FlexXsSod).ColIndex("XSSODBZ")))
Next
Exit Sub
Errorhandle:
Err.Raise vbObjectError + 1, , Err.Description
End Sub
Private Sub DelRecord(RecordName As String)
On Error GoTo Errorhandle
Select Case UCase(RecordName)
Case "DEL"
If oXsSodh Is Nothing Then
Err.Raise vbObjectError + 1, , "无单据,不能进行删除!"
Exit Sub
End If
If MsgBox("您真的要删除当前整张单据吗?", vbYesNo + vbQuestion) = vbYes Then
oXsSodh.Del
Set oXsSod = Nothing
Set oXsSodh = Nothing
Clearcontrol
End If
Case "DEF"
If Flex(FlexXsSod).Row = Flex(FlexXsSod).Rows - 1 Then
Exit Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -