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]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo

    avatar
    flaviocdcastro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 06/08/2015

    [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo Empty [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo

    Mensagem  flaviocdcastro em 16/7/2020, 22:12

    Caros,

    Boa tarde a todos.

    Sou novo aqui no forum e intermediário no Access.

    Estou com um código VBA para introduzir registros em uma tabela que me retorna o erro: O Sisbovinho definiu 1 Campo como Nulo devido a uma falha na conversão de tipo.

    Já vasculhei meu código e não consigo detectar esse problema. Será que alguem consegue me ajudar?
    Agradeço desde já.

    O String final resulta em:
    Código:
    INSERT INTO Individuos ([Num_Boton], [Num_Brinco], [Ind_Marca], [Ind_Raca], [Ind_Nasc], [Ind_Fazenda], [Ind_Dt_Ident], [Ind_Sexo], [Ind_GTA_Num], [Ind_GTA_Serie], [Ind_GTA_Lote], [Ind_Origem])
    VALUES ('A',2,"CD","NELORE","#01/01/2019#","FPA","#16/07/2020 08:44:05#","M",1,"A",'C99','NENHUM')

    Minha tabela para inserção é assim:
    Código:

    ID_RecordNum - AutoNum
    Num_Boton - Texto Curto - Não Requerido
    Num_Brinco - Número Longo - Requerido
    Ind_Marca - Texto Curto - Requerido
    Ind_Raca - Texto Curto - Não Requerido
    Ind_Nasc - Data - Requerido (Formato Data Abreviada)
    Ind_Origem - Texto Curto - Não Requerido
    Ind_Preço_Aq - Numero - Não Requerido
    Ind_Lote - Texto Curto - Não requerido
    Ind_Fazenda - Texto Curto - Requerido
    Ind_Dt_Ident - Data - Requerido
    Ind_Sexo - Texto Curto - Requerido
    Ind_Capado - Sim/Não
    Ind_GTA_Num - Numero Grande - Não requerido
    Ind_GTA_Serie - Texto Curto - Não requerido
    Ind_Pasto_Ult - texto curto - Não requerido
    Ind_Status - Texto Curto - Não Requerido
    Ind_Dt_Status - Data - Não requerido

    A chave primaria (única) é composta por Ind_Marca + Num_brinco

    Aqui vai o código:

    [code]

    Private Function BrincaLote()
    Dim srtSQL As String
    Dim brinco_ini As Long
    Dim VMARCA As String
    Dim GTA_Sel As Long
    Dim Linha_ As Long
    Dim Qt_Lote As Long
    Dim Sx_Lote As String
    Dim Era_Lote As Long
    Dim Raca_Lote As String
    Dim Dt_GTA_Lote As Date
    Dim Faz_Gta_Lote As String
    Dim dt_hoje As Date
    Dim Serie_GTA_Lote As String

    VMARCA = Me.Sel_marca.Value
    GTA_Sel = Me.GTA_Pick.Value
    Linha_ = Me.GTA_Detalhe.Value
    dt_hoje = Now


    Qt_Lote = DLookup("GTA_Qtde", "tab_gta_linhas", "id_compra = " & Linha_ & "")
    Sx_Lote = DLookup("GTA_Sexo", "tab_gta_linhas", "id_compra = " & Linha_ & "")
    Era_Lote = DLookup("GTA_Era", "tab_gta_linhas", "id_compra = " & Linha_ & "")
    Raca_Lote = DLookup("GTA_Raca", "tab_gta_linhas", "id_compra = " & Linha_ & "")
    Dt_GTA_Lote = DLookup("Compra_GTA_Data", "tab_gta", "Compra_Marca = '" & VMARCA & "' and Compra_GTA = " & GTA_Sel & "")
    Faz_Gta_Lote = DLookup("Compra_GTA_Destino", "tab_gta", "Compra_Marca = '" & VMARCA & "' and Compra_GTA = " & GTA_Sel & "")
    Serie_GTA_Lote = DLookup("Compra_GTA_Serie", "tab_gta", "Compra_Marca = '" & VMARCA & "' and Compra_GTA = " & GTA_Sel & "")

    Dim NascDate As Date
    Dim Idade_em_Meses As Integer
    Idade_em_Meses = Era_Lote
    NascDate = DateAdd("m", "-" & Idade_em_Meses, Dt_GTA_Lote)

    brinco_ini = InputBox("informe o brinco inicial", "Brinco Inicial")

    Dim BrNumIni As Long, NumVezes As Integer
    NumVezes = (Qt_Lote)
    BrNumIni = (brinco_ini - 1)

    For i = 1 To NumVezes
               BrNumIni = BrNumIni + 1
               xxx = MsgBox(BrNumIni & "," & VMARCA & "," & Raca_Lote & "," & NascDate & "," & Faz_Gta_Lote & "," & dt_hoje & "," & Sx_Lote & "," & GTA_Sel & "," & Serie_GTA_Lote)
               srtSQL = "INSERT INTO Individuos ([NUM_BOTON], [Num_Brinco], [Ind_Marca], [Ind_Raca], [Ind_Nasc], [Ind_Fazenda], [Ind_Dt_Ident], [Ind_Sexo], [Ind_GTA_Num], [Ind_GTA_Serie], [ind_lote], [IND_ORIGEM]) VALUES ('A'," _
               & BrNumIni & ",""' & VMARCA & '"",""" & Raca_Lote & """, ""#" & NascDate & "#"", """ & Faz_Gta_Lote & """, ""#" & dt_hoje & "#"", """ & Sx_Lote & """," & GTA_Sel & ",""" & Serie_GTA_Lote & """, 'C99', 'NENHUM')"
               zzz = MsgBox(srtSQL, vbOKOnly)
               DoCmd.RunSQL srtSQL
    Next i

    Dim acabou As VbMsgBoxResult
    acabou = MsgBox("Individuos Cadastrados", vbOKOnly)

    End Function
    [/code]


    Última edição por flaviocdcastro em 17/7/2020, 14:06, editado 3 vez(es)

    flaviocdcastro gosta desta mensagem

    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3187
    Registrado : 21/04/2011

    [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo Empty Re: [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo

    Mensagem  Marcelo David em 17/7/2020, 12:25

    Bom dia e seja bem vindo ao Fórum!

    Antes de postar, por favor, leia nas nossas https://www.maximoaccess.com/t48-regras-do-forum.

    Observe que o título da sua postagem não atende a regra 12:

    Regras do Fórum

    1. Tenha paciência com quem coloca aqui as suas duvidas.
    2. Clareza nos títulos dos tópicos e duvidas, evite a linguagem MSN.
    3. Não colocar diversas vezes a mesma dúvida.
    4. Explicar detalhadamente o problema e informar a versão do seu Office + Sistema Operativo.
    5. Retorne sempre se deu certo, esse retorno é muito importante.
    6. Respeite toda a equipe Staff e demais membros deste fórum.
    7. Use sempre o botão Busca, sempre que tiver uma dúvida e antes de abrir tópicos.
    8. Não usar palavras como "Urgente". O fórum é livre e ninguém é obrigado a responder com urgência.
    9. A publicidade é proíbida e só pode ser feita pelo Administrador ou depois de aprovada pelo Administrador.
    10. Se o seu tópico não for respondido, tem o direito de fazer um Up ao final de 24horas!
    11. A colocação de Códigos ou Exemplos, devem constar sempre os créditos de quem o elaborou.
    12. Fale, não GRITE! Só letras Maiúsculas, na Internet é o mesmo que gritar!
    13. É proibido tirar duvidas nas Salas de Repositório, devem abrir um novo tópico nas salas de duvidas, relacionando o Exemplo em causa.
    14. É proibido adicionar links externos nos tópicos, que redirecionem para outros sites ("backlinks"), excepto DropBox ou do próprio fórum.
    15. É permitido adicionar links externos, nos códigos VBA dentro das Base de Dados.

    Por gentileza, corrija para dar continuidade a sua questão.


    .................................................................................
    Marcelo David
    https://www.freetool.dev (em construção)

    flaviocdcastro gosta desta mensagem

    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7737
    Registrado : 05/11/2009

    [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo Empty Re: [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo

    Mensagem  Alexandre Neves em 17/7/2020, 17:11

    Boa tarde e bem-vindo ao fórum
    Adapte o código para que a string final seja
    INSERT INTO Individuos ([Num_Boton], [Num_Brinco], [Ind_Marca], [Ind_Raca], [Ind_Nasc], [Ind_Fazenda], [Ind_Dt_Ident], [Ind_Sexo], [Ind_GTA_Num], [Ind_GTA_Serie], [Ind_GTA_Lote], [Ind_Origem])
    VALUES ('A',2,'CD','NELORE',#01/01/2019#,'FPA',#16/07/2020 08:44:05#,'M',1,'A','C99','NENHUM')


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    flaviocdcastro gosta desta mensagem

    avatar
    flaviocdcastro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 06/08/2015

    [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo Empty [Resolvido]Insert Into - Campo Nulo Devido a Falha de Conversão de Tipo

    Mensagem  flaviocdcastro em 16/8/2020, 02:24

    Obrigado Alexandre, fiz a alteração que resultou no código, que funcionou, mas o problema estava no formato do campo da tabela.

    Obrigado, seu código está perfeito.

      Data/hora atual: 21/10/2020, 11:54