frmcgpod.frm

来自「制造业产供销与往来系统源码」· FRM 代码 · 共 1,378 行 · 第 1/4 页

FRM
1,378
字号
         If Flex(FlexCgPod).Row = Flex(FlexCgPod).Rows - 1 Then
            Exit Sub
         End If
      
         If MsgBox("您真的要删除单据当前行吗?", vbYesNo + vbQuestion) = vbYes Then
            oCgPodh.CgPods.Remove CStr(oCgPod.CgPodKey)
            Flex(FlexCgPod).RemoveItem Flex(FlexCgPod).Row
            If Flex(FlexCgPod).Rows = 2 Then
               Set oCgPod = Nothing
               Set oCgPodh = Nothing
               Clearcontrol
               gPublicFunction.SetToolbarStatu Me, Tlbaction(TlbCgPod), "CAN"
            Else
               If Flex(FlexCgPod).Row = Flex(FlexCgPod).Rows - 1 Then
                  Flex(FlexCgPod).Row = Flex(FlexCgPod).Row - 1
               End If
               Set oCgPod = oCgPodh.CgPods(CStr(Flex(FlexCgPod).RowData(Flex(FlexCgPod).Row)))
            End If
         End If
      
   End Select
   
Exit Sub
Errorhandle:
   Err.Raise vbObjectError + 1, , Err.Description
End Sub

Private Sub Flex_RowColChange(Index As Integer)
On Error GoTo Errorhandle
   
   If Flex(FlexCgPod).Row <> Flex(FlexCgPod).Rows - 1 Then
      Set oCgPod = oCgPodh.CgPods(CStr(Flex(FlexCgPod).RowData(Flex(FlexCgPod).Row)))
   Else
      Set oCgPod = Nothing
   End If
   
Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub SetValueToControl()
On Error GoTo Errorhandle

   Text(TxtCgPodhDocno).Text = oCgPodh.CgPodhDocno
   Text(TxtCgPodhDat).Text = gPublicFunction.ConvStringToDate(oCgPodh.CgPodhDat)
   Combo(CBxCgPodh_KhCode).Text = oCgPodh.Kh.KhCode
   Combo(CBxCgPodh_CwBzCode).Text = oCgPodh.CwBz.CwBzCode
   Combo(CbxCgPodh_BuyerCode).Text = oCgPodh.CgPodh_BuyerCode
   LoadDataIntoGrid "CgPod"
   
Exit Sub
Errorhandle:
   Err.Raise vbObjectError + 1, , Err.Description
End Sub

Private Sub Form_Unload(Cancel As Integer)
On Error GoTo Errorhandle

   Set oCgPodh = Nothing
   Set oCgPod = Nothing
   
   gPublicFunction.SaveFormSet Me
    
Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub Text_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
On Error GoTo Errorhandle

gPublicFunction.FormKeyDown Me, KeyCode, Shift, Text(Index)

Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub Text_KeyPress(Index As Integer, KeyAscii As Integer)
On Error GoTo Errorhandle

   gPublicFunction.InputCheck Me, Text(Index), KeyAscii

Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub SetControlToFlex()
   Dim mCurCol As Integer
   Dim mCurRow As Integer
On Error GoTo Errorhandle
   
   If Tlbaction(TlbCgPod).Tag = "" Then
      Exit Sub
   End If

   mCurRow = Flex(FlexCgPod).Row
   mCurCol = Flex(FlexCgPod).Col
   
   Select Case Flex(FlexCgPod).ColKey(Flex(FlexCgPod).Col)
   Case "HWBMCODE"
         If oCgPod Is Nothing Then
            AddNewRecord
         Else
            oCgPod.CgPod_HwBmCode = Trim(Flex(FlexCgPod).TextMatrix(mCurRow, mCurCol))
            Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).ColIndex("HWBMMC")) = oCgPod.CgPod_HwBmMc
            Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).ColIndex("HWDWCODE")) = oCgPod.CgPod_HwDwCode
            Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).ColIndex("CGPOD_HWDWCONV")) = oCgPod.CgPod_HwDwConv
         End If
   
   Case "HWDWCODE"
         If Not oCgPod Is Nothing Then
            oCgPod.CgPod_HwDwCode = Trim(Flex(FlexCgPod).TextMatrix(mCurRow, mCurCol))
         End If
         
   Case "CGPOD_HWDWCONV"
         If Not oCgPod Is Nothing Then
            oCgPod.CgPod_HwDwConv = Val(Flex(FlexCgPod).TextMatrix(mCurRow, mCurCol))
         End If
   
   Case "CGPODQTY"
         If Not oCgPod Is Nothing Then
            oCgPod.CgPodQty = Val(Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol))
            Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, Flex(FlexCgPod).ColIndex("CGPODAMT")) = oCgPod.CgPodAmt
         End If
   
   Case "CGPODPRICE"
         If Not oCgPod Is Nothing Then
            oCgPod.CgPodPrice = Val(Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol))
            Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, Flex(FlexCgPod).ColIndex("CGPODAMT")) = oCgPod.CgPodAmt
         End If
   
   Case "CGPODAMT"
         If Not oCgPod Is Nothing Then
            oCgPod.CgPodAmt = Val(Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol))
         End If
  
   Case "CWSMCODE"
         If Not oCgPod Is Nothing Then
            oCgPod.CgPod_CwSmCode = Trim(Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol))
         End If
   
   Case "CGPODDDAT"
         If Not oCgPod Is Nothing Then
            Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol) = gPublicFunction.SetDateFormat(Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol))
            oCgPod.CgPodDDat = Trim(gPublicFunction.ConvDateToString(Trim(Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol))))
         End If
   
   Case "CGPODBZ"
         If Not oCgPod Is Nothing Then
            oCgPod.CgPodBz = Trim(Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, mCurCol))
         End If
   
   End Select
   
   If UCase(Flex(FlexCgPod).ColKey(Flex(FlexCgPod).Col)) = "CGPODQTY" Or UCase(Flex(FlexCgPod).ColKey(Flex(FlexCgPod).Col)) = "CGPODPRICE" Or UCase(Flex(FlexCgPod).ColKey(Flex(FlexCgPod).Col)) = "CGPODAMT" Then
      gPublicFunction.SumFlexQtyAmt Flex(FlexCgPod), "CGPODQTY,CGPODAMT", Text(TxtTotalQty), Text(TxtTotalAmt)
   End If

Exit Sub
Errorhandle:
   Flex(FlexCgPod).TextMatrix(mCurRow, mCurCol) = mCurColOldValue
   Err.Raise vbObjectError + 1, , Err.Description
End Sub

Private Sub AddNewRecord()
   Dim mCurRow As Integer
On Error GoTo Errorhandle

   mCurRow = Flex(FlexCgPod).Row

   If Trim(Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).Col)) <> "" Then
      Set oCgPod = New CgPod
      Set oCgPod.CgPodh = oCgPodh
      oCgPod.CgPod_HwBmCode = Trim(Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).Col))
      Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).ColIndex("HWBMMC")) = oCgPod.CgPod_HwBmMc
      Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).ColIndex("HWDWCODE")) = oCgPod.CgPod_HwDwCode
      Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).ColIndex("CGPOD_HWDWCONV")) = oCgPod.CgPod_HwDwConv
      Flex(FlexCgPod).TextMatrix(mCurRow, Flex(FlexCgPod).ColIndex("CWSMCODE")) = oCgPodh.Kh.Kh_CwSmCode
      oCgPodh.CgPods.Add oCgPod, 0
      Flex(FlexCgPod).RowData(Flex(FlexCgPod).Rows - 1) = oCgPod.CgPodKey
      Flex(FlexCgPod).AddItem ""
   End If

Exit Sub
Errorhandle:
   Set oCgPod = Nothing
   Err.Raise vbObjectError + 1, , Err.Description
End Sub

Private Sub Form_Resize()
On Error GoTo Errorhandle
   gPublicFunction.ResizeForm Me
Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub Text_LostFocus(Index As Integer)
On Error GoTo Errorhandle
   
   Select Case Index
   
   Case TxtCgPodhDat
         If Tlbaction(TlbCgPod).Tag <> "" And Trim(Text(TxtCgPodhDat).Text) <> "" Then
            Text(TxtCgPodhDat).Text = gPublicFunction.SetDateFormat(Text(TxtCgPodhDat).Text)
            oCgPodh.CgPodhDat = gPublicFunction.ConvDateToString(Trim(Text(TxtCgPodhDat).Text))
         End If
         
   Case TxtCgPodhDocno
   
           If Tlbaction(TlbCgPod).Tag = "" Then
               If Trim(Text(Index).Text) = "" Then
                  Exit Sub
               End If
               
               If Not oCgPodh Is Nothing Then
                  If oCgPodh.CgPodhDocno = Text(TxtCgPodhDocno).Text Then
                     Exit Sub
                  End If
               End If
   
               Set oCgPodh = New CgPodh
               If oCgPodh.Requery(Text(TxtCgPodhDocno).Text) = 1 Then
                   SetValueToControl
               Else
                   Set oCgPodh = Nothing
                   Dim vCgPoddocno As String
                   vCgPoddocno = Text(TxtCgPodhDocno).Text
                   AddRecord "ADD"
                   Text(TxtCgPodhDocno).Text = vCgPoddocno
               End If
        End If

   End Select

Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
   Dim mButton As Button
On Error GoTo Errorhandle

   Set mButton = gPublicFunction.GetToolBarButton(Me, KeyCode)
   
   If Not mButton Is Nothing Then
      Tlbaction_ButtonClick TlbCgPod, mButton
   End If
  
Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub Tlbaction_ButtonClick(Index As Integer, ByVal Button As MSComctlLib.Button)
    Dim Action, RecordName As String
On Error GoTo Errorhandle

   Action = (Mid(Button.Key, 1, 3))
   RecordName = Button.Key

   If Trim(Flex(FlexCgPod).EditText) <> "" Then
      Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, Flex(FlexCgPod).Col) = Trim(Flex(FlexCgPod).EditText)
   End If
   
   Select Case Action
       Case "ADD"
            AddRecord RecordName
       Case "CHG"
            ChgRecord RecordName
       Case "CAN"
            CancelRecord RecordName
       Case "SAV"
            SaveRecord RecordName
       Case "DEL", "DEF"
            DelRecord RecordName
       Case "EXI"
            Unload Me
       Case "FIN"
            ShowBmQuery
       Case Else
           
   End Select

Exit Sub
Errorhandle:
   MsgBox Err.Description
End Sub

Private Sub ShowBmQuery()
   Dim mCodeType As String
   Dim mQueryValue As String
On Error GoTo Errorhandle

   If Tlbaction(TlbCgPod).Tag = "" Then
      Exit Sub
   End If

   If Me.ActiveControl Is Nothing Then
      Exit Sub
   End If
      
   If Me.ActiveControl Is Flex(FlexCgPod) Then
   
      Select Case UCase(Flex(FlexCgPod).ColKey(Flex(FlexCgPod).Col))
      Case "HWBMCODE", "HWDWCODE", "CWSMCODE"
            mCodeType = UCase(Flex(FlexCgPod).ColKey(Flex(FlexCgPod).Col))
      End Select
      
      If mCodeType <> "" Then
         mQueryValue = gPublicFunction.GetBmQueryValue(Me, mCodeType)
         If mQueryValue <> "" Then
            Flex(FlexCgPod).TextMatrix(Flex(FlexCgPod).Row, Flex(FlexCgPod).Col) = mQueryValue
            Flex(FlexCgPod).EditCell
            SetControlToFlex
         End If
      End If
      
   Else
   
      Select Case Mid(UCase(Me.ActiveControl.Tag), 4)
      Case "GYSCODE|KHCODE", "CWBZCODE", "BUYERCODE"
            mCodeType = Mid(UCase(Me.ActiveControl.Tag), 4)
      End Select
   
      If mCodeType <> "" Then
         mQueryValue = gPublicFunction.GetBmQueryValue(Me, mCodeType)
         If mQueryValue <> "" Then
            Me.ActiveControl.Text = mQueryValue
         End If
      End If
      
   End If
  
Exit Sub
Errorhandle:
   Err.Raise vbObjectError + 1, , Err.Description
End Sub

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?