2017-11-09 13 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); 

누군가가 조언을 할 수

전혀 MERGE 문에 대한 지원이없는 좋은 오래된 오라클 * 양식을 사용하려는 것 같습니다
+0

스키마로 모든 테이블 이름을 완전히 한정해볼 수 있습니다. –

답변

2

시도 최신 버전의 Forms를 사용하거나이 코드를 저장 프로 시저에 랩핑하십시오.