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]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    avatar
    Convidado
    Convidado


    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  Convidado 14/11/2013, 16:31

    Boa tarde colegas.. Realmente não consigo exergar o erro neste problema.. Talvez possam me ajudar.


    Tenho  Um case para executar uma insercão na tabela.
    As intruções são identicas.


    As duas primeiras quando executadas não estão inserindo os valores (Em azul)


        MSG = MsgBox("Este lançamento será efetuado total no caixa," _
                    & vbNewLine & "Deseja prosseguir?", vbYesNo + vbQuestion, "LANÇAMENTO NO CAIXA")
        Select Case MSG
            Case vbYes
                Select Case Me.ContaID
                    'ENTRADAS
                    Case 1
                        CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID, cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & Me.Vl_Bruto.Value & """,""" & intNum & """," _
                                        & "'','1','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"
                    'SAÍDAS
                    Case 2
                        CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID,cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & intNum & """,""" & Me.Vl_Bruto.Value & """," _
                                        & "'','2','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"

                End Select
                DoCmd.Close acForm, "Cadastro_Parcelas"
            Case vbNo
                Exit Sub
        End Select
    Else
        If Me.Vl_Entrada <> 0 Then
                Select Case Me.ContaID
                    'ENTRADAS
                    Case 1
                        CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID, cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & Me.Vl_Entrada.Value & """,""" & intNum & """," _
                                        & "'','1','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"
                    'SAÍDAS
                    Case 2
                        CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID,cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & intNum & """,""" & Me.Vl_Entrada.Value & """," _
                                        & "'','2','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"
                End Select
                DoCmd.Close acForm, "Cadastro_Parcelas"
        End If
    End If


    O interessante é que são idêticas às duas logo abaixo... não depura para erro algum..

    Se puderem observar fico grato.

    Cumprimentos.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  JPaulo 14/11/2013, 17:39

    Penso que a sequencia não está igual ao primeiro Case

    Tem intNum e só depois o Me.Vl_Bruto.Value

    Porque não copia o de cima e altera apenas para '2' ?


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Folder_announce_new Instruções SQL como utilizar...
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  criquio 14/11/2013, 17:42

    Ué velhinho, se são idênticas, porque repeti-las? E se a questão está apenas nas duas primeiras, talvez tenha que verificar se o problema não está na passagem da primeira condição If. Pode ser por aí talvez né? HEHEHE.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  criquio 14/11/2013, 17:43

    Desculpe JP, respondemos quase ao mesmo tempo, hehehe.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    Convidado
    Convidado


    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  Convidado 14/11/2013, 18:00

    Vamos la...

    JP lembra-se do seu exemplo de parcelas? Pois bem é nele que estou utilizando..
    Criquio, apesar de serem identicas.. Necessito do case Msg para avisar ao usuário se está lançando o valor total ou apenas a entrada.


    Neste formulário eu cadastro contas a pagar ou receber (Entrada e Saida) por isso intNum = 0 de acordo com o lançamento e fica invertido

    Se Saída:
    CpEntrada - CpSaida (""" & intNum & """,""" & Me.Vl_Bruto.Value & """)
    Se Entrada:
    CpEntrada - CpSaida (""" & Me.Vl_Bruto.Value & """,""" & intNum & """)

    Mesmo se copiar as instruções de baixo e as colar encima.. mesmo assim o código passa por elas porém não insere..
    avatar
    Convidado
    Convidado


    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  Convidado 14/11/2013, 18:17

    Não seria por estar um case dentro de outro?

    cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  Convidado 14/11/2013, 18:25

    Não tem haver com um case contendo outro.

    Olha que interessante. Isolei toda a parte de cima..

    E agora mesmo na de baixo, não inseriu.


    '----------------------------------------------------------------------------------
    'Verifica se não foram lançada parcelas para emitir aviso de entrada total no caixa
    'Caso contrário lança a entrada/saída se houver
    '----------------------------------------------------------------------------------
    'If DCount("*", "tblParcelas", "ID_Conta = " & Me.Num_OR & "") = 0 Then
        Dim MSG As String
    '    MSG = MsgBox("Este lançamento será efetuado total no caixa," _
                    & vbNewLine & "Deseja prosseguir?", vbYesNo + vbQuestion, "LANÇAMENTO NO CAIXA")
    '    Select Case MSG
    '        Case vbYes
    '            If Me.ContaID = 1 Then
                    'ENTRADAS
    '                    CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID, cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & Me.Vl_Bruto.Value & """,""" & intNum & """," _
                                        & "'','1','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"
                    'SAÍDAS
    '             ElseIf Me.ContaID = 2 Then
    '                    CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID,cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & intNum & """,""" & Me.Vl_Bruto.Value & """," _
                                        & "'','2','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"
    '            End If
    '            DoCmd.Close acForm, "Cadastro_Parcelas"
    '        Case vbNo
    '            Exit Sub
    '    End Select
    'Else
        'If Me.Vl_Entrada <> 0 Then
                Select Case Me.ContaID
                    'ENTRADAS
                    Case 1
                        CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID, cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & Me.Vl_Entrada.Value & """,""" & intNum & """," _
                                        & "'','1','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"
                    'SAÍDAS
                    Case 2
                        CurrentDb.Execute "INSERT INTO tblMovimento(IdCaixa, DataMovimento, NumDoc,Historico, ValorCredito, ValorDebito, Fechado,TipoDoc," _
                                        & "NumSeqParcela, ContasPagarRec_ID,cpContaID, CpTipoID)" _
                                        & "Values ('24',""" & Me.Data_Emissão.Value & """,""" & lngNumDoc & """," _
                                        & """" & StrTMP & """,""" & intNum & """,""" & Me.Vl_Entrada.Value & """," _
                                        & "'','2','',""" & Me.Num_OR & """,""" & Me.ContaID & """,""" & Me.TipoID & """)"
                End Select
                DoCmd.Close acForm, "Cadastro_Parcelas"
        'End If
    'End If



    Uma observação JP:

    A parte de cima é executada quando não há parcelamentos feitos..
    avatar
    Convidado
    Convidado


    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  Convidado 14/11/2013, 18:30

    Bem...Olha que interessante...

    Ao ser executada a instrução.. todos os objetos levam os valores para a instrução.. ou seja. se pousar o mouse sobre a instrução Insert Into nos respectivos campos.. exibe que a caixa texto ou variável está carregada com o valor..Mesmo assim não os insere.

    Quando faço parcelamentos, os valores são inseridos... Ai estava a origem do problema.
    No botão de efetua o parcelamento tem comando para salvar o registro.

    Adicionei o comando antes da instrução  e resolveu:  DoCmd.RunCommand acCmdSaveRecord

    Agora sinceramente não sei porque ao não salvar o registro a instrução não executa a inserção posto que as variáveis e objetos estão carregados.

    Obrigado pela atenção.

    Conteúdo patrocinado


    [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,. Empty Re: [Resolvido]Comando com CurrentDb.Execute "Insert Into... eu um dos casos não funciona,.

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/4/2024, 05:00