2017-11-09 4 views
0

以下のコードスニペットは、より大きな手順のものです。 TOADでこの手続きを手動で実行すると、予想どおりエラーなく動作します。Oracle 12c PLSQL MERGEエラー

私は現在、ユーザーのフォームに入れようとしていますが、コンパイルしようとすると、MERGE行に次のエラーが表示されます。 "次のいずれかを予期しているときに" INTO " :=(%@;」

MERGE INTO count_balance cb 
USING (select location_code, product_code, closing_stock 
     from trd_stock_closing ts 
     where period = gen.add_periods(p_period, -1) 
     and exists (select null 
         from ag_product_view 
        where product_code = ts.product_code 
         and group_code = 'Q')) cs 
ON (cb.location_code = cs.location_code AND cb.product_code = cs.product_code) 
WHEN MATCHED THEN 
UPDATE SET cb.opening_stock = cs.closing_stock 
WHEN NOT MATCHED THEN 
INSERT (location_code, product_code, opening_stock) 
VALUES (cs.location_code, cs.product_code, cs.closing_stock); 

誰かが助言することができ

+0

スキーマですべてのテーブル名を完全修飾することがあります。 –

答えて

2

あなたがすべてでMERGE文はサポートしていない、古き良きオラクル*フォームを、使用しようとしているように見えます試してみてください。?。新しいバージョンのFormsを使用するか、このコードをストアドプロシージャにラップします。

関連する問題