Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

pedrovisk

Como posso atualizar/inseri quando um form tem o mesmo campo varias x?

Recommended Posts

Você já verificou se todos os campos "quantidade" têm valor?

 

Teste esse código e veja se escreve certo a SQL

Produtoz = split(Request("Produto"), ",")	intIDPreOrcamento = cstr(Session("IDPreOrcamento"))	Quantidade = split(Request("Qtd"), ",")I=0	For Each Item in Quantidade			SQL2 = "UPDATE Pedido SET Pedido.Quantidade = "& Item &" WHERE (((Pedido.IDPreOrcamento)= "&intIDPreOrcamento&") AND ((Pedido.IDProduto)="&Produtoz(I)&"));"		Response.Write SQL2 & "<br>"	   ' Response.End()		   ' abredb.Execute(SQL2)i=i+1	Next

Compartilhar este post


Link para o post
Compartilhar em outros sites

ARR, muito obrigado!

 

Mas não deu certo. Peguei o seu exemplo e tentei utilizar o seguinte comando que tirei de uma loja virtual, mas eu tenho mais um campo que tbm varia muito, o ValorUnitario e com o mesmo está gerando o seguinte erro:

Tipo de erro:

Erro de tempo de execução do Microsoft VBScript (0x800A0009)

Subscrito fora do intervalo: 'I'

/fortalmag_2006/Orcamento/Adm_Responde_Orcamento.asp, line 126

 

Aqui está a linha 126: SQL2 = "UPDATE Pedido SET Pedido.Quantidade = "&Request.Form(nome_controle)&", Pedido.ValorUnitario = "&ValorUnitario(I)&",

 

	ValorUnitario = split(Request.Form("ValorUnitario"),",")				I = 0	For Each nome_controle In Request.Form		 If Left(nome_controle,5) = "Quant" And Request.Form(nome_controle) <> "0" Then			nome_controle_cod_prod=Mid(nome_controle,7,5) 'Pega os caracteres a partir do sexto. O Máximo de codigos é 99.999.			SQL2 = "UPDATE Pedido SET Pedido.Quantidade = "&Request.Form(nome_controle)&", Pedido.ValorUnitario = "&ValorUnitario(I)&", Pedido.ValorTotalPedido = "&Request.Form("TotalGeral")&", Pedido.Observacao = '"&Request.Form("Observacoes")&"' WHERE (((Pedido.IDPreOrcamento)= "&intIDPreOrcamento&") AND ((Pedido.IDProduto)="&nome_controle_cod_prod&"));"			'Response.Write SQL2			'Response.End()				abredb.Execute(SQL2)		 End If	I = I+1	Next

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno,

 

Tenho um sistema de Orçamento, no qual o módulo do administrador tem informar o valores. Só que como existe um loop para trazer todos os produtos e para cada produto há um campo chamado Valor Unitário e quantidade, esses dois campos terão os Namea alterados, utilizando o ID do produto no final do Name, no qual o admin terá que informar o valor e quantidade já virá preenchido pelo recordset. Ao preencher os campos e clicar no submit, gera o erro abaixo:

 

Tipo de erro:

Erro de tempo de execução do Microsoft VBScript (0x800A0009)

Subscrito fora do intervalo: 'I'

/fortalmag_2006/Orcamento/Adm_Responde_Orcamento.asp, line 126

 

Aqui está a linha 126: SQL2 = "UPDATE Pedido SET Pedido.Quantidade = "&Request.Form(nome_controle)&", Pedido.ValorUnitario = "&ValorUnitario(I)&",

 

Aqui está o bloco de código da tabela que contem o ASP:

 

ValorUnitario = split(Request.Form("ValorUnitario"),",")				I = 0	For Each nome_controle In Request.Form		 If Left(nome_controle,5) = "Quant" And Request.Form(nome_controle) <> "0" Then			nome_controle_cod_prod=Mid(nome_controle,7,5) 'Pega os caracteres a partir do sexto. O Máximo de codigos é 99.999.			SQL2 = "UPDATE Pedido SET Pedido.Quantidade = "&Request.Form(nome_controle)&", Pedido.ValorUnitario = "&ValorUnitario(I)&", Pedido.ValorTotalPedido = "&Request.Form("TotalGeral")&", Pedido.Observacao = '"&Request.Form("Observacoes")&"' WHERE (((Pedido.IDPreOrcamento)= "&intIDPreOrcamento&") AND ((Pedido.IDProduto)="&nome_controle_cod_prod&"));"			'Response.Write SQL2			'Response.End()				abredb.Execute(SQL2)		 End If	I = I+1	Next

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.