'Listing 33.4  33LIST04.TXT -- Dopisywanie danych do przegldarki


Private Sub BtnSave_Click()
If IsDate(mskDate) Then
    Call save_lineitem
Else
    MsgBox "Date entered is Invalid", vbExclamation, App.Title
End If
End Sub




Public Sub save_lineitem()
Dim chkdep As Integer
Dim grid_text As String
    Tc = Chr$(9)
    If txtChkNum.Text = "" Then
        grid_text = " " & Tc & mskDate.Text
    Else
        grid_text = txtChkNum.Text & Tc & mskDate.Text
    End If
    grid_text = grid_text & Tc & cboPayee.Text
    actkey.Caption = current_account
    memkey.Caption = ""
        If cboPayee.Text = "" Then
            MsgBox "No Payee Selected", vbCritical, App.Title
            Exit Sub
        End If
        SQLSTR = "select * from payee where payeename = '" & cboPayee.Text & "'"
        Set paySet = ChkDb.OpenRecordset(SQLSTR, dbOpenDynaset)
        If paySet.NoMatch Then
            If cboPayee.Text <> "" Then
                paySet.AddNew
                paySet.Edit
                paySet("payeename") = chkreg.grdChkReg.Text
                paySet.Update
                paySet.Close
                Set paySet = ChkDb.OpenRecordset(SQLSTR, dbOpenDynaset)
            End If
            MsgBox "No Payee Information Entered.", vbCritical, App.Title
            paySet.Close
            Exit Sub
        End If
        paykey.Caption = Str(paySet("payeeid"))
        paySet.Close
    If optcheck.Value = True Then
        enttyp.Caption = "C"
        chkdep = -1
        entchk.Caption = mskAmt.Text
        entdep.Caption = "0"
        grid_text = grid_text & Tc & mskAmt.Text & Tc & "0.00" & Tc
    ElseIf optDeposit.Value = True Then
        enttyp.Caption = "D"
        chkdep = 1
        entchk.Caption = "0"
        entdep.Caption = mskAmt.Text
        grid_text = grid_text & Tc & "0.00" & Tc & mskAmt.Text & Tc
    End If
    If chkreg_loaded Then
        If chkreg.grdChkReg.Rows > 2 Then
            chkreg.grdChkReg.Row = chkreg.grdChkReg.Rows - 1
            chkreg.grdChkReg.Col = 6
            bal_amount = (Val(mskAmt.Text) * chkdep) + Val(chkreg.grdChkReg.Text)
            chkreg.grdChkReg.Text = Format(bal_amount, "#,##0.00")
        Else
            bal_amount = (Val(mskAmt.Text) * chkdep) + Val(chkreg.grdChkReg.Text)
            chkreg.grdChkReg.Col = 6
            chkreg.grdChkReg.Text = Format(bal_amount, "#,##0.00")
        End If
        CkBkMain.lblBalance.Caption = Format(bal_amount, "#,##0.00")
        actkey.Caption = Str(current_account)
        SQLSTR = "select * from lineitem"
        Set ChkSet = ChkDb.OpenRecordset(SQLSTR, dbOpenDynaset)
        If ChkSet.EOF And ChkSet.BOF Then
            itmkey.Caption = "1"
        Else
            ChkSet.MoveLast
            itmkey.Caption = Str(ChkSet("itemkey") + 1)
        End If
        ChkSet.Close
        grid_text = grid_text & Format(bal_amount, "#,##0.00")
        chkreg.grdChkReg.AddItem itmkey.Caption & Tc & grid_text
    End If
    dbPayee.Recordset.Update
    dbPayee.Recordset.MoveLast
    MsgBox "Entry Saved", vbExclamation, App.Title
    CommitTrans
    mskAmt.Text = ""
    cboPayee.Text = ""
    BeginTrans
    lineitem.dbPayee.Recordset.AddNew

End Sub
