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

    [Resolvido]Inserir registro à partir de formulário contínuo...

    avatar
    jpaulorh
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 62
    Registrado : 04/02/2010

    [Resolvido]Inserir registro à partir de formulário contínuo... Empty [Resolvido]Inserir registro à partir de formulário contínuo...

    Mensagem  jpaulorh 4/10/2014, 22:55

    Question Caros amigos do fórum, boa noite!
    Tenho uma agenda onde ficam pré-agendados os pacientes, e à medida que os mesmos vão chegando a recepcionista confirma no flag "chegada", conforme grifado na imagem. Acontece que nesse momento deverá ser adicionado em uma nova tabela dados que darão origem a ficha de avaliação do paciente e será visualizada pelo profissional na sala de atendimento da fisioterapia.
    Uma observação, se por acaso a recepcionista marcar errado e desmarcar, esses dados também deverão ser deletados.
    Fiz e funciona direitinho com um porém, como se trata de um formulário contínuo percebi que não está sendo considerado o registro do ponteiro ou melhor o selecionado, ele está inserindo sempre a Id do primeiro cliente.
    No exemplo da imagem, ao marcar o flag do cliente ABSALAO, inseriu os dados do primeiro cliente ABELARDO.

    [Resolvido]Inserir registro à partir de formulário contínuo... 2056r0x

    [Resolvido]Inserir registro à partir de formulário contínuo... K4w2nq

    Código:
    Private Sub Ag_Chegada_Click()

    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

    Dim SQL As String
    Dim db As Database, rs As Recordset
    Dim Data As Date
    Dim Agenda As Integer
    Dim Paciente As Integer
    Dim Secao As Integer

    Data = Me.Ag_Data
    Agenda = Me.IdAgenda
    Paciente = Me.Ag_Paciente
    Secao = Me.Secao

    If IsNull(Me.Ag_HoraChegada) Then
    '-------------------------------------------------------------------------
    Set db = CurrentDb()
    Set rs = db.OpenRecordset("TblAvaliacao") 'Abre tabela parcelas
    '-------------------------------------------------------------------------
    Me.Ag_HoraChegada = Format(Time(), "hh:mm")
    Me.Status = "Aguardando"
    DoCmd.Requery
    Forms!frmAgenda!frmAgendaResumo.Requery

    If Secao = 1 Then

        rs.AddNew
        
        rs("IdCliente") = Me.Ag_Paciente
        rs("AvData") = Me.Ag_Data
        rs("AvIdAgenda") = Me.Ag_CodAgenda
        rs("AvSessoes") = Me.Secao
        rs("AVSexo") = Me.Sexo
        rs("AvConvenio") = Me.Ag_Convenio
        rs("AvCODTRAT") = Me.Ag_Servico
        
        rs.Update
        
        rs.Close
        db.Close
        
    End If

    Else

    'Deleta o registro na tabela avaliação
    CurrentDb.Execute "DELETE * FROM TblAvaliacao WHERE IdCliente = " & Paciente & " And AvIdAgenda = " & Agenda & "" ' And AvData = " & Data & ""
          
            MsgBox "Operação cancelada com sucesso!", vbInformation, "Agendamento"
    Me.Ag_HoraChegada = Null

    End If
    End Sub
    Dilson
    Dilson
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Inserir registro à partir de formulário contínuo... Empty Re: [Resolvido]Inserir registro à partir de formulário contínuo...

    Mensagem  Dilson 10/10/2014, 16:09

    Olá,

    Isso ocorre porque não filtrou os dados atuais para depois transferir à outra tabela.

    A solução é instanciar outro recordset com os dados do form continuo referenciando a chave primária e logo em seguida alimentar a tabela avaliação, mais ou menos assim:

    Set rs1 = db.OpenRecordset("SELECT * FROM TabelaDoFormContinuo WHERE ID=" & TextBoxID)
    Set rs = db.OpenRecordset("TblAvaliacao") 'Abre tabela parcelas
    '-------------------------------------------------------------------------
    Me.Ag_HoraChegada = Format(Time(), "hh:mm")
    Me.Status = "Aguardando"
    DoCmd.Requery
    Forms!frmAgenda!frmAgendaResumo.Requery

    If Secao = 1 Then

       rs.AddNew
       
       rs("IdCliente") = rs1("ID")
       rs("AvData") = rs1("CampoData")
       rs("AvIdAgenda") = rs1("CampoIdAgenda")

    e assim sucessivamente.
    avatar
    jpaulorh
    Intermediário
    Intermediário

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 62
    Registrado : 04/02/2010

    [Resolvido]Inserir registro à partir de formulário contínuo... Empty Re: [Resolvido]Inserir registro à partir de formulário contínuo...

    Mensagem  jpaulorh 7/11/2014, 20:11

    Desculpa amigo depois de tanto tento está dando a resposta. É que estive com projeto parado por razões de trabalho.
    Mas foi resolvido!

    Obrigado!
    avatar
    rodolfocoelho1988
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5
    Registrado : 02/01/2019

    [Resolvido]Inserir registro à partir de formulário contínuo... Empty Re: [Resolvido]Inserir registro à partir de formulário contínuo...

    Mensagem  rodolfocoelho1988 21/4/2019, 18:32

    amigo, teria como disponibilizar o sistema para estudo?
    obrigado.

      Data/hora atual: 25/7/2021, 04:29