sábado, 5 de dezembro de 2009

Macro Registar dados noutra tabela

REM  *****  BASIC  *****

sub onAfterRecordAction( oEv as object )
    dim cncField
    'if oEv.Action = com.sun.star.sdb.RowChangeAction.UPDATE then
        cncField = oEv.Source.getByName( "txtTransaction type" ).BoundField
        if cncField.getString = "Deposit" then
            ' insert if needed   
            insertDeposit( oEv.Source )
        else
            insertWithdrawall( oEv.Source )
       
    end if
end sub



sub insertDeposit( aDataForm as variant )
    dim stmt
    dim prepStmt
    dim rs
        ' frist see if it is already in the table   
   
        stmt = aDataForm.ActiveConnection.CreateStatement
        stmt.executeUpdate( "INSERT INTO ""tDeposit"" ( SELECT ""Account_Name"", ""Date"", ""Transaction type"", ""Category"", ""Remark"", ""Amount"", ""Currency"", ""ID"", ""Payee"" from ""tTransactions"" ""tTransactions"" where ""ID"" = " & aDataForm.Columns.getByName( "ID" ).getString & ")" )
   
end sub

sub insertWithdrawall( aDataForm as variant )
    dim stmt
    dim prepStmt
    dim rs
        ' frist see if it is already in the table   
   
        stmt = aDataForm.ActiveConnection.CreateStatement
        stmt.executeUpdate( "INSERT INTO ""tWithdrawall"" ( SELECT ""Account_Name"", ""Date"", ""Transaction type"", ""Category"", ""Remark"", ""Amount"", ""Currency"", ""ID"", ""Payee"" from ""tTransactions"" ""tTransactions"" where ""ID"" = " & aDataForm.Columns.getByName( "ID" ).getString & ")" )
   
end sub

Mensagem 1

Como o titulo indica a primeira mensagem