Rateio
Rateio
TBRAT("SDINV") = CSINV
TBRAT("SDSOC") = CSSOC
TBRAT("SDFDO") = CSFDO
TBRAT("SBINV") = CBINV
TBRAT("SBSOC") = CBSOC
TBRAT("SBFDO") = CBFDO
TBRAT("RSINV") = rsINV
TBRAT("RSSOC") = RSSOC
TBRAT("RSFDO") = RSFDO
TBRAT("RFINV") = RFINV
TBRAT("RFSOC") = RFSOC
TBRAT("RFFDO") = RFFDO
TBRAT.Update
MsgBox "Operação realizada com sucesso!", vbExclamation + vbOKOnly, "Parabéns!!!!"
AtComandos
End If
End If
End Sub
End Sub
'- FILIAL
SQL = "SELECT TPMOV, SBMOV, SUM(IIF(NTDOC='C',VLDOC,-VLDOC)) as VLD FROM Movimento " & _
"WHERE CDUNI<>'00' AND DTMOV >=#" & Format(DTINI, "mm/dd/yyyy") & "# AND " & _
"DTMOV <=#" & Format(DTFIM, "mm/dd/yyyy") & "# AND " & _
"INSTR('RC/DS',TPMOV) AND SBMOV='ZR' GROUP BY TPMOV, SBMOV"
'SQL = "SELECT TPMOV, SBMOV, SUM(IIF(NTDOC='C',VLDOC,-VLDOC)) as VLD FROM Movimento " & _
"WHERE CDUNI<>'00' AND " & _
"DTMOV <=#" & Format(DTFIM, "mm/dd/yyyy") & "# AND " & _
"INSTR('RC/DS',TPMOV) AND SBMOV='ZR' GROUP BY TPMOV, SBMOV"
Set rs = Banco.OpenRecordset(SQL, dbOpenSnapshot)
While Not rs.EOF
Select Case rs("TPMOV") & rs("SBMOV")
Case "RCZR"
RCOPE = -rs("VLD")
Case "RCDV"
RCDIV = RCDIV + rs("VLD")
Case "DSZR"
DSOPE = rs("VLD")
Case "DSDV"
DSDIV = DSDIV + rs("VLD")
Case Else
MsgBox "Receita/Despesa desconhecida (" & rs("TPMOV") + rs("SBMOV") & ") - " &
rs("VLD"), vbOKOnly + vbCritical, "Erro"
RCDIV = RCDIV + rs("VLD")
End Select
rs.MoveNext
Wend
'RCOPE = 5434.96
'RCDIV = 0
'DSOPE = -39.4
'DSDIV = 0
rs.Close
End Sub
'Gera Socios/Capitais
If rsCap.RecordCount > 0 Then rsCap.MoveFirst
While Not rsCap.EOF
SQL = "SELECT DTMOV, VLDOC, NTDOC FROM Movimento " & _
"WHERE CDUNI='00' AND TPOPE='" & kOPCAP & "' AND " & _
"CDOPE = '" & rsCap("CDOPE") & "' AND " & _
"DTMOV > #" & DtI & "# AND DTMOV < #" & DtF & "# " & _
"ORDER BY DTMOV"
'Debug.Print "2 - " & SQL
Set rsMes = Banco.OpenRecordset(SQL, dbOpenSnapshot)
vlSld = rsCap!vlSld
vlBas = rsCap!VLANT + MetSaldo(rsMes, 1)
TBTMP.AddNew
TBTMP!CDUNI = "00"
TBTMP!dtMOV = pDTOPE
TBTMP!TPOPE = kOPCAP
TBTMP!TPMOV = CDMRT
TBTMP!SBMOV = kRTSC
TBTMP!CDMOV = Right(rsCap!CDOPE, 2)
TBTMP!CDOPE = rsCap!CDOPE
TBTMP!DOCUM = CDRAT
TBTMP!VLDOC = 0
TBTMP!NTDOC = kNTCRE
TBTMP!DESCR = Format(vlSld, "0000000.00;-000000.00") & Format(vlBas, "0000000.00;-000000.00")
TBTMP.Update
rsCap.MoveNext
Wend
rsCap.Close
'Insere Investidores/Rendimentos
SQL = "INSERT INTO MOVTEMP SELECT * FROM MOVIMENTO WHERE DOCUM = '" & CDRAT & "' AND SBMOV = '" &
kRTIV & "'"
Banco.Execute SQL
'Converte Natureza - CAMPO -> VALOR
SQL = "Update MOVTEMP SET VLDOC = -VLDOC WHERE NTDOC = '" & kNTDEB & "'"
Banco.Execute SQL
'- Rendimento
VLZER = RFINV
NTZER = kNTDEB
If VLZER <> 0 Then
TBTMP.AddNew
TBTMP("CDUNI") = "00"
TBTMP("DTMOV") = pDTOPE
TBTMP("TPOPE") = kOPCAP
TBTMP("TPMOV") = CDMRT
TBTMP("SBMOV") = SBMZR
'TBTMP("CDMOV") = Format(DRat, "dd")
TBTMP("CDOPE") = "0000"
TBTMP("DOCUM") = CDRAT
'TBTMP("DESCR") = Format(vlSLD, "0000000.00") & Format(vlBAS, "0000000.00")
TBTMP("VLDOC") = VLZER
TBTMP("NTDOC") = NTZER
TBTMP.Update
End If
'- Receita
VLZER = Abs(RCOPE + RCDIV)
NTZER = IIf(RCOPE + RCDIV > 0, kNTDEB, kNTCRE)
If VLZER <> 0 Then
TBTMP.AddNew
TBTMP("CDUNI") = "00"
TBTMP("DTMOV") = pDTOPE
TBTMP("TPOPE") = kTPREC
TBTMP("TPMOV") = CDMRT
TBTMP("SBMOV") = SBMZR
TBTMP("CDMOV") = Left(Incor, 2)
TBTMP("CDOPE") = Right(Incor, 4)
TBTMP("DOCUM") = CDRAT
TBTMP("VLDOC") = VLZER
TBTMP("NTDOC") = NTZER
TBTMP.Update
End If
'- Despesa
VLZER = Abs(DSOPE + DSDIV)
NTZER = IIf(DSOPE + DSDIV > 0, kNTDEB, kNTCRE)
If VLZER <> 0 Then
TBTMP.AddNew
TBTMP("CDUNI") = "00"
TBTMP("DTMOV") = pDTOPE
TBTMP("TPOPE") = kTPDES
TBTMP("TPMOV") = CDMRT
TBTMP("SBMOV") = SBMZR
TBTMP("CDMOV") = Left(Incor, 2)
TBTMP("CDOPE") = Right(Incor, 4)
TBTMP("DOCUM") = CDRAT
TBTMP("VLDOC") = VLZER
TBTMP("NTDOC") = NTZER
TBTMP.Update
End If
End Sub
lblDOP.Caption = NTVal(DSOPE)
lblDDV.Caption = NTVal(DSDIV)
DSTOT = DSOPE + DSDIV
lblDTT.Caption = NTVal(DSTOT)
'- Capital
lblICP.Caption = NTVal(CSINV)
lblIBS.Caption = NTVal(CBINV)
lblSCP.Caption = NTVal(CSSOC)
lblSBS.Caption = NTVal(CBSOC)
lblFCP.Caption = NTVal(CSFDO)
lblFBS.Caption = NTVal(CBFDO)
'- Lucro
lblLB.Caption = NTVal(LCBRU)
mskTXA.Text = TXADM
mskTXE.Text = TXEMP
lblCP.Caption = NTVal(CPBAS)
lblLC.Caption = NTVal(LCBRU)
lblADM.Caption = NTVal(PGADM)
lblEMP.Caption = NTVal(PGEMP)
lblLL.Caption = NTVal(LCLIQ)
lblSPS.Caption = FmTax(TXRAT)
lblSVS.Caption = NTVal(RFSOC - rsINV)
lblFPS.Caption = FmTax(TXRAT)
lblFVS.Caption = NTVal(RSFDO)
lblSPF.Caption = FmTax(TXSOC)
lblSVF.Caption = NTVal(RFSOC)
lblFPF.Caption = FmTax(TXSOC)
lblFVF.Caption = NTVal(RFFDO)
End Sub
End Sub
rsINV = 0
RFINV = 0
RSSOC = 0
RFSOC = 0
RSFDO = 0
RFFDO = 0
CPBAS = 0
CPSLD = 0
RCOPE = 0
RCDIV = 0
RCTOT = 0
DSOPE = 0
DSDIV = 0
DSTOT = 0
TXADM = 0
TXEMP = 0
PGADM = 0
PGEMP = 0
TXRAT = 0
TXSOC = 0
TXINV = 0
LCBRU = 0
LCLIQ = 0
LCSLD = 0
'-
CDRAT = TBRAT("CDRAT")
TXADM = TBRAT("TXADM")
TXEMP = TBRAT("TXEMP")
'TXINV = TBRAT("TXINV")
CDADM = TBRAT("CDADM")
End Sub