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


2 participantes

    [Resolvido]Gerar Parcelas

    Rasec
    Rasec
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 19/12/2015

    [Resolvido]Gerar Parcelas Empty [Resolvido]Gerar Parcelas

    Mensagem  Rasec 20/4/2016, 16:13

    Bom dia amigos tenho este código para gerar parcelas.

    If MsgBox("Confirma a Operação?", vbYesNo + vbCritical, "Atenção!!!") = vbYes Then
    Set Db = CurrentDb()
    Set rs = Db.OpenRecordset("Tabela_ContasAreceber") 'Abre Tbl_ContasAreceber

    Valor_Parcela = Me.TotalGeral / Me.QuantParcelas 'Valor de cada Parcela

    For I = 1 To Me.QuantParcelas 'Insere as Parcela na Tbl_ContasAreceber
    rs.AddNew
    rs("Cod_TabVenda") = Me.ID_Vendas
    rs("Parcelas") = I
    rs("Valor_Parcela") = Valor_Parcela
    rs("DataVencimento") = DateAdd("m", I - 1, Me.Vencimento) '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
    Else
    Me.Recalc


    End If

    O que eu estou tentando fazer é adapta-lo para um sistema de ponto. Onde tenho os seguintes campos, Data,Situação.
    Exemplo: 7 dias de atestado. Eu quero que o botão gerar parcelas gere sete dias corridos e 7 vezes a situação de atestado por exemplo.
    Já tentei mexer mas sem sucesso. Grato pela ajuda.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Gerar Parcelas Empty Re: [Resolvido]Gerar Parcelas

    Mensagem  FabioPaes 20/4/2016, 20:14

    Mais ou menos o que vc precisa...
    https://www.maximoaccess.com/t26056-resolvidoduplicar-registro-com-numero-sequencial

    Um exemplo pra vc ter uma ideia de como fazer!
    https://www.dropbox.com/s/i649xks801bh661/Atestado.rar?dl=0
    Rasec
    Rasec
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 19/12/2015

    [Resolvido]Gerar Parcelas Empty Re: [Resolvido]Gerar Parcelas

    Mensagem  Rasec 23/4/2016, 06:52

    Estou tentando adaptar neste subformulário, mas sem sucesso, em tabelas separadas ele esta funcionando, mas preciso que ele insira os valores no subformulário. Segue link até onde consegui ir. se você puder dar uma olhada eu agradeço.
    https://www.dropbox.com/s/3cg909itpugijdc/Ponto%20-%20C%C3%B3pia.rar?dl=0
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Gerar Parcelas Empty Re: [Resolvido]Gerar Parcelas

    Mensagem  FabioPaes 23/4/2016, 14:26

    Ficou Assim:

    Código:

    '---------------------------
    'Criado por Fabio Paes
    'Para o MaximoAccess.com
    'Data 23/04/2016
    'Livre para o aprendizado.
    '---------------------------
    DoCmd.RunCommand acCmdSaveRecord
    Set db = CurrentDb()
        Set rs = db.OpenRecordset("DetalheMovimento")
      
        For i = 1 To Me.txtDias  'Calcula o Loop
            'Campos e valores a serem preenchidos
            rs.AddNew
            rs("[Data1]") = (Me.Data_Ent_Sai - 1) + i
            rs("[CodMovimentação]") = Me.ID_Movimento
            rs("CodFuncionario") = Me.CaixaCombinação14.Column(0)
            rs("EM") = "00:00"
            rs("SM") = "00:00"
            rs("ET") = "00:00"
            rs("ST") = "00:00"
            rs("EN") = "00:00"
            rs("SN") = "00:00"
            'O motivo esta na tabela com Numero, Entao nao sei como vc queria fazer...
            'Mas basta apontar aqui Me.txtMotivo para o nome do campo onde tem o Motivo.
            'rs("Motivo") = Me.txtMotivo
            rs.Update
        Next
        rs.Close
        db.Close
        Me.DetalheMovimento_subformulário.Requery
        MsgBox Me.txtDias & " Dias de Atestado Lançado para: " & Me.CaixaCombinação14.Column(1), vbInformation


    Outra coisa, o vinculo entre o Formulario e o Subformulario estava errado... Tinha tres campos... O correto, acredito eu que seja dessa forma:

    [Resolvido]Gerar Parcelas 2nkm8o1
    Talvez fosse ate esse o Motivo de nao esta conseguindo....

    O mais complicado acontece aqui:  rs("[Data1]") = (Me.Data_Ent_Sai - 1) + i, Ele pega a data do atestado, diminui um dia e soma o valor de i, para lançar as datas corretamente.


    https://www.dropbox.com/s/6atvrlqzya5ywrj/Ponto%20-%20Corrigido.zip?dl=0
    Rasec
    Rasec
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 19/12/2015

    [Resolvido]Gerar Parcelas Empty Re: [Resolvido]Gerar Parcelas

    Mensagem  Rasec 23/4/2016, 20:58

    Vou dar um super resolvido. Valeu pela ajuda.

    Conteúdo patrocinado


    [Resolvido]Gerar Parcelas Empty Re: [Resolvido]Gerar Parcelas

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 20:41