LLAMAR PORCEDIMIENT(CREADO EN UN PAQUETE) DESDE UN BLOQUE

tema enviado por tiqui_loquito en ORACLE
tema iniciado el 21/05/2009
TENGO ESTE PAQUETE Q CREA UN PROCEDIMEITNO Q INSERTA UN NUEVO PEDIDO EN LA TABLA ORD. PRO NO SE PQ ME DICE Q TENGO UN ERROS AL LLAMAR EL PROCEDIMIENTO DESDE EL BLOQUE ANONIMO...AYUDA PLIS SET SERVEROUTPUT ON SET VERIFY OFF SELECT * FROM ORD; CREATE OR REPLACE PACKAGE paqOrdenes IS V_PRODID NUMBER:=0; V_DESCRIP VARCHAR(30); V_ORDID ORD.ORDID%TYPE; V_ORDERDATE ORD.ORDERDATE%TYPE; V_COMMPLAN ORD.COMMPLAN%TYPE; V_CUSTID ORD.CUSTID%TYPE; V_SHIPDATE ORD.SHIPDATE%TYPE; V_TOTAL ORD.TOTAL%TYPE; v_contador NUMBER(1); PROCEDURE Nueva_Orden(ORDID NUMBER, ORDERDATE DATE, COMMPLAN VARCHAR2, CUSTID NUMBER, SHIPDATE DATE, TOTAL NUMBER); END paqOrdenes; / CREATE OR REPLACE PACKAGE BODY paqOrdenes IS PROCEDURE Nueva_Orden(ORDID NUMBER, ORDERDATE DATE, COMMPLAN VARCHAR2, CUSTID NUMBER, SHIPDATE DATE, TOTAL NUMBER) IS BEGIN -- INSERT INTO ORD VALUES (V_ORDID,V_ORDERDATE,V_COMMPLAN,V_CUSTID, V_SHIPDATE,V_TOTAL); --SELECT ORDID, ORDERDATE, COMMPLAN, CUSTID, SHIPDATE, TOTAL -- INTO V_ORDID,V_ORDERDATE,V_COMMPLAN,V_CUSTID, V_SHIPDATE,V_TOTAL -- FROM ORD -- WHERE ORDID = V_ORDID; SELECT COUNT(*) INTO v_contador FROM ord WHERE ordid = v_ordid; IF v_contador = 0 THEN INSERT INTO ORD VALUES(V_ORDID,V_ORDERDATE,V_COMMPLAN,V_CUSTID, V_SHIPDATE,V_TOTAL); END IF; END Nueva_Orden; END paqOrdenes; / DECLARE V_ORDID NUMBER(4):=&Id_Orden; V_ORDERDATE DATE:='&Fec_Orden'; V_COMMPLAN VARCHAR(1):='&Tipo_plan'; V_CUSTID NUMBER(6):=&Cod_Vendedor; V_SHIPDATE DATE:='&Fec_entrega'; V_TOTAL NUMBER(8,2):=&Total; --PROCEDURE --Nueva_Orden(V_ORDID,V_ORDERDATE,V_COMMPLAN,V_CUSTID,V_SHIPDATE, --V_TOTAL); BEGIN Nueva_Orden(V_ORDID => V_ORDID, V_ORDERDATE => V_ORDERDATE, V_COMMPLAN => V_COMMPLAN, V_CUSTID => V_CUSTID, V_SHIPDATE => V_SHIPDATE, V_TOTAL=> V_TOTAL); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('REGISTRO NO ENCONTRADO'); END; /