MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Colocar a diferença de divisão na primeira parcela

    marcelo marques
    marcelo marques
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 724
    Registrado : 12/04/2016

    [Resolvido]Colocar a diferença de divisão na primeira parcela Empty [Resolvido]Colocar a diferença de divisão na primeira parcela

    Mensagem  marcelo marques em 9/11/2019, 16:29

    Boa tarde a todos eu aqui mais uma vez preciso da ajuda de vocês tenho um código para parcelamento porém gostaria de saber como colocar o resto da divisão na primeira parcela exemplo vendi 100,00 e fiz o parcelamento em 3x que ficaria
    33.3333333 mais neste código abaixo fica assim  3x 33.33 eu ate coloquei o código para arredondar mais não achei muito legal como devo fazer para lançar a diferença na primeira parcela isso é se estiver diferença


    Set db = CurrentDb()
       Set rs = db.OpenRecordset("Tbl_ContasAreceber") 'Abre Tbl_ContasAreceber
       valor_Parcela = Me.txt_TotalVenda / Me.QtdeParcelas 'Valor de cada Parcela
     For i = 1 To Me.QtdeParcelas  'Insere as Parcela na Tbl_ContasAreceber
           rs.AddNew
           rs("Cod_TabVenda") = Me.CodVenda
           rs("Parcelas") = i & "/" & Me.QtdeParcelas
           rs("Valor_Parcela") = valor_Parcela
           rs("Dt_Vencimento") = DateAdd("d", TXT_intervalo, Me.txtDataVenda)  'Calcula as datas de Vencto através da função DateAdd()
           rs.Update
       Next
       rs.Close
       db.Close
       Me.frmSub_ContasAreceber.Requery  'Atualiza o SubForm
       Me.bt_GerarParcelas.Enabled = False



    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2180
    Registrado : 22/11/2016

    [Resolvido]Colocar a diferença de divisão na primeira parcela Empty Re: [Resolvido]Colocar a diferença de divisão na primeira parcela

    Mensagem  DamascenoJr. em 9/11/2019, 18:21

    Código:
    Dim curDif as Currency

       Set db = CurrentDb()
       Set rs = db.OpenRecordset("Tbl_ContasAreceber") 'Abre Tbl_ContasAreceber
       valor_Parcela = Me.txt_TotalVenda \ Me.QtdeParcelas 'Valor de cada Parcela

       For i = 1 To Me.QtdeParcelas  'Insere as Parcela na Tbl_ContasAreceber
             rs.AddNew
             rs("Cod_TabVenda") = Me.CodVenda
             rs("Parcelas") = i & "/" & Me.QtdeParcelas

            curDif = 0
             if i = 1 then
                   curDif = (Round((Me.txt_TotalVenda / Me.QtdeParcelas) - valor_Parcela, 2)) * Me.QtdeParcelas
                   curDif = Round(Me.txt_TotalVenda - (valor_Parcela * Me.QtdeParcelas + curDif), 2) + curDif
             end if

             rs("Valor_Parcela") = valor_Parcela + curDif
             rs("Dt_Vencimento") = DateAdd("d", TXT_intervalo, Me.txtDataVenda)  'Calcula as datas de Vencto através da função DateAdd()
             rs.Update
       Next

       rs.Close: set rs = nothing: set db = nothing
       Me.frmSub_ContasAreceber.Requery  'Atualiza o SubForm
       Me.bt_GerarParcelas.Enabled = False


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    marcelo marques
    marcelo marques
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 724
    Registrado : 12/04/2016

    [Resolvido]Colocar a diferença de divisão na primeira parcela Empty Re: [Resolvido]Colocar a diferença de divisão na primeira parcela

    Mensagem  marcelo marques em 9/11/2019, 19:18

    Boa tarde IvanJr. Obrigado pela resposta fui tentar adaptar aqui ele deu erro

    curDif = (Round((Me.txt_TotalVenda / Me.QtdeParcelas) - valor_Parcela, 2)) * Me.QtdeParcelas
    curDif = Round(Me.txt_TotalVenda - (valor_Parcela * Me.QtdeParcelas + curDif), 2) + curDif

    Deu erro aqui :valor_Parcela, 2)) em nenhuma das duas linha que tem " ,2 (vírgula)" se eu tirar a vírgula é o 2 ele divide arredondando pra cima
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2180
    Registrado : 22/11/2016

    [Resolvido]Colocar a diferença de divisão na primeira parcela Empty Re: [Resolvido]Colocar a diferença de divisão na primeira parcela

    Mensagem  DamascenoJr. em 9/11/2019, 23:09

    Veja o exemplo funcional no link abaixo
    https://www.maximoaccess.com/t36905-parcelador#252110

    Se não conseguir adaptar, sugiro anexar seu projeto aqui.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    marcelo marques
    marcelo marques
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 724
    Registrado : 12/04/2016

    [Resolvido]Colocar a diferença de divisão na primeira parcela Empty Re: [Resolvido]Colocar a diferença de divisão na primeira parcela

    Mensagem  marcelo marques em 10/11/2019, 12:52

    Bom dia Ivan muito obrigado deu certo mais ficaram algumas dúvidas para entender o código qual a diferença desta barra \ para / e também observei que abriu a tabela da seguinte forma
    Set objrs=objbd.openRcordset("nome da tabela ",,Cool
    para que serve este 8 e quando usar este número
    Mais muito obrigado Deus abençoa você e sua família bom fim de semana
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2180
    Registrado : 22/11/2016

    [Resolvido]Colocar a diferença de divisão na primeira parcela Empty Re: [Resolvido]Colocar a diferença de divisão na primeira parcela

    Mensagem  DamascenoJr. em 10/11/2019, 16:29

    Código:
    5 / 2 ::::> 2.5
    5 \ 2 ::::> 2 'barra invertida retorna apenas a parte inteira. É o mesmo que Int(5 / 2)

    ...OpenRecordset("Comando", , 8) 'retorna um recordset que sirva apenas para adição de novos registros.
                                    'apenas questão de ser mais específico


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    marcelo marques
    marcelo marques
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 724
    Registrado : 12/04/2016

    [Resolvido]Colocar a diferença de divisão na primeira parcela Empty Re: [Resolvido]Colocar a diferença de divisão na primeira parcela

    Mensagem  marcelo marques em 10/11/2019, 21:20

    Muito obrigado pela dica


    Abraços

      Data/hora atual: 23/9/2020, 16:30