REVELAR

Fórum erro em Store Procedure: Column does not belong to reference #56900

13/09/2006

0

recebo este erro ao tentar compilar esta SP:
begin

  if ((select count(COD_PRODUTO) from ESTOQUES_PRODUTOS where COD_PRODUTO = :Cod_Produto) > 0) then
  begin
    if (:tamanho_1_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_1_QTD = TAMANHO_1_QTD + :tamanho_1_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_2_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_2_QTD = TAMANHO_2_QTD + :tamanho_2_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_3_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_3_QTD = TAMANHO_3_QTD + :tamanho_3_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_4_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_4_QTD = TAMANHO_4_QTD + :tamanho_4_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_5_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_5_QTD = TAMANHO_5_QTD + :tamanho_5_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_6_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_6_QTD = TAMANHO_6_QTD + :tamanho_6_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_7_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_7_QTD = TAMANHO_7_QTD + :tamanho_7_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_8_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_8_QTD = TAMANHO_8_QTD + :tamanho_8_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_9_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_9_QTD = TAMANHO_9_QTD + :tamanho_9_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_10_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_10_QTD = TAMANHO_10_QTD + :tamanho_10_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_11_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_11_QTD = TAMANHO_11_QTD + :tamanho_11_qtd where COD_PRODUTO = :Cod_Produto;
    if (:tamanho_12_qtd is null) then
      update ESTOQUES_PRODUTOS set TAMANHO_12_QTD = TAMANHO_12_QTD + :tamanho_12_qtd where COD_PRODUTO = :Cod_Produto;

  end

  suspend;
end



Raserafim

Raserafim

Responder

Posts

15/09/2006

Raserafim

já solucionei o problema.

o erro estava logo na primeira linha, no if. pelo que percebi não posso colocar um select como condição.

então tive quer criar uma variável, e então atribuuir o resultado do select a esta variável, para só então colocar a variável como condição

ficou assim:
:Qtd = (select count(COD_PRODUTO) from ESTOQUES_PRODUTOS where COD_PRODUTO = :Cod_Produto)

if :Qtd > 0 then
...
...


tive tb que quase que o código todo, mas o erro esta apenas no início.


Responder

Gostei + 0

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

Aceitar