MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    Gerar Parcelas com valores diferentes, obedecendo a critérios de porcentagem estabelecidos

    avatar
    Convidado
    Convidado


    Parcela - Gerar Parcelas com valores diferentes, obedecendo a critérios de porcentagem estabelecidos Empty Gerar Parcelas com valores diferentes, obedecendo a critérios de porcentagem estabelecidos

    Mensagem  Convidado 25/10/2012, 14:54

    Em ajuda a um colega do Forum...

    Este exemplo gera parcelas obtendo-as apartir de um valor total, sendo que tais terão valores diferenciados, de acordo com uma porcentagem e numero de parcelas escolhido na combo condicoes.

    Portanto cada parcela terá valor diferenciado, porém a somatória será o valor total estabelecido no form


    Código:


    Private Sub btnGerar_Click()
    Dim I As Integer
    Dim StrDateAdd As Date
    Dim StrValorParc As Double
    Dim Parc As String
    Dim StrValor As Double
    Dim Rs As DAO.Recordset

    'Carrego o recordset com as condições da tbl_CondicoesDet, filtrado pela coluna da combo com o registro de condicão escolhido
    Set Rs = CurrentDb.OpenRecordset("SELECT ID_Det, ID_CondDet, cpCondicao, cpQuantidadeParcelas FROM tbl_CondicoesDet WHERE ID_CondDet = " & Me.cboCond.Column(0) & ";")
    'Carrego a variável com o valor total
    StrValorParc = Me.txtValor_Total
    'Defino a variável X como 1
    X = 1

    'COndição para que se ainda não chegou ao ultimo registro do Recordset
    Do While Not Rs.EOF

    ' Aqui defino o valor da parcela que é o cálculo da porcentagem da mesma.
    ' Observe que é de acordo com a condição do registro selecionado na tbl_CondicoesDet
    ' Este valor será modificado a cada loop
    ' Suponha que o valor total seja 1000 e sejam 3 parcelas com as condições 20%, 30% e 50%
    ' A cada loop o cálculo será o Valor Total * pela condição / 100
    ' Ou seja se a condição for a primeira: 20% então:
    ' A parcela será 1000 * 20 / 100 = 200
    ' Assim o Rs!CpCondição a cada loop será definido com o registo correspondente

    StrValor = Me.txtValor_Total * Rs!cpCondicao / 100
    'A data será a data escolhida adicionada do valor de x, se x for 1 = Adiciona um mes, se 2, adiciona 2 meses e assim sucessivamente
    StrDateAdd = DateAdd("m", X, Format(Me.txtData, "dd/mm/yyyy"))
    'Enumera a parcela
    StrParc = X & "/" & Me.cboCond.Column(2)
    ' Executa a inserção do registro na tabela
    CurrentDb.Execute "INSERT INTO tblExemplo(Compra,CpData,CpValor, cpParcela)" _
    & " Values(""" & Me.txtDescricao.Value & """,#" & Format(StrDateAdd, "mm/dd/yyyy") & "#, """ & StrValor & """, """ & StrParc & """);"
    ' Faz o incremento da variável X
    X = X + 1
    'Vai para o próximo regitro do Recordset
    Rs.MoveNext

    Loop
    ' Faz a atualização da listBox
    Me.lstParcelas.Requery
    End Sub


    https://dl.dropbox.com/u/26441349/GeraParcelas_Diferentes.rar


    Enjoy!!!

      Data/hora atual: 29/3/2024, 00:05