RUN-TIME ERROR [ô]94[ô] INVALID USE OF NULL

RAFAELSB2107 04/10/2017 12:34:08
#476955
Bom dia!

tenho um sistema feito em visual basic com base access depois foi migrado para sql server e que, sem nenhuma manutenção, começou a aparecer a mensagem quando se tenta inserir um contrato vinculado a uma pasta. é digitado um número de pasta, por exemplo: 122.4.05 ou 122.4.09 + ENTER e clica-se em Incluir Contrato, digita-se um cnpj, por exemplo: 929851700549 ou 929821608016 e ao clicar no botão SELECIONAR o erro aparece.
Os fontes seguem no anexo. Como posso corrigir este erro? Alguém teria uma dica ou orientação?
KERPLUNK 04/10/2017 13:35:40
#476959
Desculpe, mas não é necessário TODO o código fonte. Seria interessante somente a parte em que o erro ocorre. Excluí o código para sua própria segurança...
RAFAELSB2107 04/10/2017 14:58:31
#476967
Citação:

:
Desculpe, mas não é necessário TODO o código fonte. Seria interessante somente a parte em que o erro ocorre. Excluí o código para sua própria segurança...




Ok mas você entendeu o erro que acontece? posso colocar um print da tela ou somente o código da tela onde ocorre o erro.
KERPLUNK 04/10/2017 15:30:40
#476970
O print da tela de erro não adianta muito. O caso é que [Ô]null[Ô] é com certeza algum registro/campo que está com esse valor no seu banco de dados.
RAFAELSB2107 05/10/2017 12:11:45
#477008
O código está assim na inserção na tabela:

Set comIns.ActiveConnection = oCnn [ô]DE.connCofre
comIns.CommandType = adCmdText
comIns.CommandText = [Ô]INSERT INTO Contrato [Ô] _
& [Ô] (CódContrato, CGCCPF, CódLC, IndLiquidação) [Ô] _
& [Ô] VALUES (?,?,?,?)[Ô]
comIns.Parameters.Refresh
KERPLUNK 05/10/2017 13:14:41
#477010
Você sabe fazer depuração?
RAFAELSB2107 05/10/2017 13:29:25
#477012
Abri o Visual Basic mas não consegui debuggar. Estou vendo nos Inserts onde tem null mas todo jogam null para as tabelas.
sSql = [Ô]INSERT INTO LinhadeCrédito [Ô] _
& [Ô] (CódLC,NomeLC) [Ô] _
& [Ô] VALUES [Ô] _
& [Ô] ([ô][Ô] & Mid(sLinha, 1, 3) & [Ô][ô], [Ô] _
& [Ô][ô][Ô] & Mid(sLinha, 4, 35) & [Ô][ô])[Ô]


Set comIns.ActiveConnection = oCnn [ô]DE.connCofre
comIns.CommandType = adCmdText
comIns.CommandText = [Ô]INSERT INTO Contrato [Ô] _
& [Ô] (CódContrato, CGCCPF, CódLC, IndLiquidação) [Ô] _
& [Ô] VALUES (?,?,?,?)[Ô]

Set comIns.ActiveConnection = oCnn [ô]DE.connCofre
comIns.CommandType = adCmdText
comIns.CommandText = [Ô]INSERT INTO Empresa [Ô] _
& [Ô] (CGCCPF, IndPessoa, NomeEmpresa) [Ô] _
& [Ô] VALUES (?,?,?)[Ô]
comIns.Parameters.Refresh


sSql = [Ô]INSERT INTO LinhadeCrédito [Ô] _
& [Ô] (CódLC,NomeLC) [Ô] _
& [Ô] VALUES [Ô] _
& [Ô] ([ô][Ô] & Mid(sLinha, 1, 3) & [Ô][ô], [Ô] _
& [Ô][ô][Ô] & Mid(sLinha, 4, 35) & [Ô][ô])[Ô]
DE.connCofre.Execute sSql

Devo incluir os Mid no insert da tabela Contrato??
RAFAELSB2107 05/10/2017 18:25:09
#477029
Na tabela Contrato, que é onde é inserido e está ocorrendo o erro, a última coluna indLiquidação está quase sempre null.
RAFAELSB2107 05/10/2017 18:37:31
#477030
Abri toda uma pasta do ambiente de desenvolvimento, com fontes e formulários. Quando fui debuggar: Compile error: User-defined type not defined.
Faça seu login para responder