Editar registro no Delphi 2006 ASP.Net e Firebird

30/11/2006

0

Shalom Delphiamos...

Estou com dificuldade de editar registros em BDS 2006 ASP.Net e Firebird, gostaria de selecionar um registro via DBGrid, até funciona, porem quando altero os registro, não grava, ou dá erro, em:

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index

Source Error:


Line 207: begin
Line 208:
Line 209: Parameters[´@DESCRICAO´].Value := txtDescricao.Text; <erro aqui
Line 210: Parameters[´@NOTA_FISCAL´].Value := txtNotaFiscal.Text;
Line 211: Parameters[´@FORNECEDOR´].Value := txtFornecedor.Text;

Já tentei de tudo, mas acho que chegou no meumlimite de conhecimento, estou recorrendo a vcs. grato

Paulo F.


Pauloroger

Pauloroger

Responder

Posts

02/01/2007

Maikel

Olá amigo...

Não sei qual sua estrutura de componentes ai... eu sempre faço os comandos de edit somente via código... assim:

BdpCom:=FbCommand.Create(´UPDATE MARCA SET MARCA= ?, STATUS= ? WHERE (ID_MARCA = ?)´,dados.CONEXAO);
BdpCom.Parameters.Clear;
BdpCom.Parameters.Add(´MARCA´,BdpType.&String);
BdpCom.Parameters.Add(´STATUS´,BdpType.&String);
BdpCom.Parameters.Add(´ID_MARCA´,BdpType.&String);
//------------------------------------------
BdpCom.Parameters[´MARCA´].Value := MARCA;
BdpCom.Parameters[´STATUS´].Value := STATUS;
BdpCom.Parameters[´ID_MARCA´].Value := ID_MARCA;
if BdpCom.ExecuteNonQuery > 0 Then
begin
RETORNO:=´O registro foi alterado com Sucesso!´;
Result := True;
end;

Onde BpdCom:FbCommand
BdpRead=FbDataReader;

No seu caso ai... podem ser dois os casos de erro... você tem certeza que esta passando os parametros de forma correta...?? Esse ´@´ ai existe... tente passar sem ele.... ou... na hora de pegar o valor que tem em um textBox.... não use NomeTextBox.Text, mas use Request[´NomeTextBox´].ToString;
Em alguns casos o delphi não consegue recuperar os valores que foram jogados a um textbox pelo sistema....

Tente ver isso ai.... qualquer coisa... poste de novo..

T+


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar