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]Falha na conversão de tipo de dado

    avatar
    JamesBond
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 17
    Registrado : 29/09/2011

    [Resolvido]Falha na conversão de tipo de dado Empty [Resolvido]Falha na conversão de tipo de dado

    Mensagem  JamesBond 19/10/2011, 11:56

    Olá pessoal,

    Fiz uma funcionalidade no formulário para realizar update nos dados. E estes dados são: Tarefa (Texto), Descrição (Texto), Data Início (Data/Hora) e Data Fim (Data/Hora).
    Os dados são atualizados perfeitamente.. O problema é que aparece um alerta quando são atualizadas a Data Início ou Data Fim.. Segue abaixo a mensagem do alerta:


    O Microsoft Access não pode atualizar todos os registros na consulta atualização.

    O Microsoft Access não atualizou 1 campo(s) devido a uma falha na conversão de tipo, 0 registro(s) devido a violações de chave, 0 registro(s) devido a violações de bloqueio e 0 registro(s) devido a violações de regra de validação.
    Deseja continuar a execução desse tipo de consulta ação assim mesmo?
    Clique em Sim para ignorar o(s) erro(s) e executar a consulta.
    Clique em Ajuda para obter uma explicação das causas das violações.

    Quando eu clico em Sim, os dados são atualizados perfeitamente. O problema é que fica aparecendo esse alerta toda vez que vou atualizar a Data Início ou Data Fim..
    Fiz um teste.. Removi a ação de update na Data Inicio e Data Fim, realizando update apenas na Tarefa e Descrição.. E o alerta não apareceu. Ou seja, o alerta descrito acima só aparece quando atualiza as datas..

    Ao meu ver, me parece falha de conversão das datas ..
    Na tabela os atributos Data Início e Data Fim são do tipo Data/Hora. E os campos para atualização são caixa de texto, mascarado especificamente para datas.

    Segue abaixo uma parte do código update:
    Código:

    strSql = "UPDATE Tarefas"
    strSql = strSql & " SET Tarefas.[Tarefa] = '" & [Forms]![Formulário de Navegação]![SubformuláriodeNavegação]![TxtTarefa] & "',"
    strSql = strSql & " Tarefas.[Descricao] = '" & [Forms]![Formulário de Navegação]![SubformuláriodeNavegação]![TxtDescricao] & "',"
    strSql = strSql & " Tarefas.[Data Inicio] = '" & [Forms]![Formulário de Navegação]![SubformuláriodeNavegação]![TxtDataInicio] & "',"
    strSql = strSql & " Tarefas.[Data Fim] = '" & [Forms]![Formulário de Navegação]![SubformuláriodeNavegação]![TxtDataFim] & "'"
    strSql = strSql & " WHERE ... ;"

    Alguém poderia me dar uma luz?!


    Obrigado!!


    Última edição por JamesBond em 19/10/2011, 12:29, editado 1 vez(es)
    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]Falha na conversão de tipo de dado Empty Re: [Resolvido]Falha na conversão de tipo de dado

    Mensagem  criquio 19/10/2011, 12:04

    Tente substituir as aspas simples por pipes(#) nas linhas de data ou hora:

    strSql = strSql & " Tarefas.[Data Fim] = #" & [Forms]![Formulário de Navegação]![SubformuláriodeNavegação]![TxtDataFim] & "#"


    .................................................................................
    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
    JamesBond
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 17
    Registrado : 29/09/2011

    [Resolvido]Falha na conversão de tipo de dado Empty Re: [Resolvido]Falha na conversão de tipo de dado

    Mensagem  JamesBond 19/10/2011, 12:10

    criquio,

    Não funcionou.
    Aparece uma mensagem de erro.


    Erro em tempo de execução '3075':

    Erro de sintaxe na data na expressão de consulta '#'.
    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]Falha na conversão de tipo de dado Empty Re: [Resolvido]Falha na conversão de tipo de dado

    Mensagem  criquio 19/10/2011, 12:17

    Tente usar o CurrentDb.Execute

    CurrentDb.Execute "UPDATE Tarefas SET Tarefa='" & [Forms]![Formulário de Navegação]![SubformuláriodeNavegação]![TxtTarefa] & "', [Descricao] = '" & [Forms]![Formulário de Navegação]![SubformuláriodeNavegação]![TxtDescricao] & "'... WHERE...


    ou então coloque antes do seu código:

    On Error GoTo Erro

    e depois do código:

    Erro:
    If Err.Number = número do erro que aparece na mensagem Then
    Resume Next
    End if


    .................................................................................
    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
    JamesBond
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 17
    Registrado : 29/09/2011

    [Resolvido]Falha na conversão de tipo de dado Empty Re: [Resolvido]Falha na conversão de tipo de dado

    Mensagem  JamesBond 19/10/2011, 12:28

    criquio,

    Como sempre nos ajudando!!!
    A sua sugestão para usar CurrentDb.Execute funcionou que nem uma beleza!!

    Eu estava usando DoCmd.RunSQL strSql


    Mais uma vez, obrigado! E continue assim!

    Abraço
    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]Falha na conversão de tipo de dado Empty Re: [Resolvido]Falha na conversão de tipo de dado

    Mensagem  criquio 19/10/2011, 12:57

    Fico feliz que tenha dado tudo certo. Sucesso!


    .................................................................................
    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.


      Data/hora atual: 10/8/2022, 17:43