Fórum Delphi.NET ASP.NET Bdp.NET #65823
17/01/2007
0
Olá pessoal,
Por favor me ajud...?
Eu não consigo encontrar o erro... Por favor verifique o que há errado?
Veja anexo abaixo (pascal) que está executando SQL para gerar o Próximo Código da Tabela e apareceu erro: ´ Object reference not set to an instance of an object ´...
//
// Função.....: Responsável por Calcular o Próximo Código de Registro à Ser Gravado na Tabela (Banco de Dados)
// Parâmetros.: p_sNome_Tabela => [Nome do Objeto (Tabela)]
// p_sChave_Tabela => [Chave do Objeto (Tabela) no Banco de Dados]
// Exemplo..........: Empresa=1 and Campus=1 and Aluno=123456 and Disciplina=123 (etc...)
//
Function TWebFrmPeIndex.lGerar_Codigo(p_sNome_Tabela: String; p_sChave_Tabela: String): LongInt;
Var lProximo_Codigo: String;
Var sSql: String;
Var BdpComm: BdpCommand;
Var BdpRead: BdpDataReader;
Begin
Result := -1;
//
// Introdução [SQL]: Executando a Stored Procedure -> [Sp_Ultimo] no Banco de Dados
//
Try
Try
BCNX_Univag.Open;
sSql := ´´;
sSql := sSql + ´ DECLARE @lProximo_Codigo INTEGER ´;
sSql := sSql + ´ EXEC @lProximo_Codigo = SP_ULTIMO ´ + QuotedStr(p_sNome_Tabela) + ´, ´ + QuotedStr(p_sChave_Tabela);
sSql := sSql + ´ SELECT @lProximo_Codigo AS Proximo_Codigo ´;
sSql := sSql + ´ ´;
BDA_Gerar_Codigo.SelectCommand.CommandText := ´´;
BDA_Gerar_Codigo.SelectCommand.CommandText := sSql;
BDA_Gerar_Codigo.SelectCommand.Connection := BCNX_Univag;
BDA_Gerar_Codigo.Fill(DS_Gerar_Codigo, ´DS_GERAR_CODIGO´);
lProximo_Codigo := DS_Gerar_Codigo.Tables[´DS_GERAR_CODIGO´].Rows[0][´Proximo_Codigo´].ToString;
Except On E: Exception Do
MessageBox.ShowMessage(E.Message);
End;
Finally
BCNX_Univag.Close;
End;
Result := Convert.ToInt32(lProximo_Codigo);
End;
Sem mais,
Atenciosamente,
Matheus Vinícios Gentile Fernandes
Desenvolvimento de WebSite (PHP e DELPHI.NET - ASP.NET)
Por favor me ajud...?
Eu não consigo encontrar o erro... Por favor verifique o que há errado?
Veja anexo abaixo (pascal) que está executando SQL para gerar o Próximo Código da Tabela e apareceu erro: ´ Object reference not set to an instance of an object ´...
//
// Função.....: Responsável por Calcular o Próximo Código de Registro à Ser Gravado na Tabela (Banco de Dados)
// Parâmetros.: p_sNome_Tabela => [Nome do Objeto (Tabela)]
// p_sChave_Tabela => [Chave do Objeto (Tabela) no Banco de Dados]
// Exemplo..........: Empresa=1 and Campus=1 and Aluno=123456 and Disciplina=123 (etc...)
//
Function TWebFrmPeIndex.lGerar_Codigo(p_sNome_Tabela: String; p_sChave_Tabela: String): LongInt;
Var lProximo_Codigo: String;
Var sSql: String;
Var BdpComm: BdpCommand;
Var BdpRead: BdpDataReader;
Begin
Result := -1;
//
// Introdução [SQL]: Executando a Stored Procedure -> [Sp_Ultimo] no Banco de Dados
//
Try
Try
BCNX_Univag.Open;
sSql := ´´;
sSql := sSql + ´ DECLARE @lProximo_Codigo INTEGER ´;
sSql := sSql + ´ EXEC @lProximo_Codigo = SP_ULTIMO ´ + QuotedStr(p_sNome_Tabela) + ´, ´ + QuotedStr(p_sChave_Tabela);
sSql := sSql + ´ SELECT @lProximo_Codigo AS Proximo_Codigo ´;
sSql := sSql + ´ ´;
BDA_Gerar_Codigo.SelectCommand.CommandText := ´´;
BDA_Gerar_Codigo.SelectCommand.CommandText := sSql;
BDA_Gerar_Codigo.SelectCommand.Connection := BCNX_Univag;
BDA_Gerar_Codigo.Fill(DS_Gerar_Codigo, ´DS_GERAR_CODIGO´);
lProximo_Codigo := DS_Gerar_Codigo.Tables[´DS_GERAR_CODIGO´].Rows[0][´Proximo_Codigo´].ToString;
Except On E: Exception Do
MessageBox.ShowMessage(E.Message);
End;
Finally
BCNX_Univag.Close;
End;
Result := Convert.ToInt32(lProximo_Codigo);
End;
Sem mais,
Atenciosamente,
Matheus Vinícios Gentile Fernandes
Desenvolvimento de WebSite (PHP e DELPHI.NET - ASP.NET)
Hostcuiaba
Curtir tópico
+ 0
Responder
Posts
17/01/2007
Otto
após abrir o BdpRead e antes de pegar o valor dele, faça um
BdpRead.Read();
:)
BdpRead.Read();
:)
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)