CREATE OR REPLACE PROCEDURE REPLICA_PRODUTO_PRODFILI(
    P_CDPRODUTO  IN VARCHAR2,
    P_CDARVPROD  IN VARCHAR2)
IS
   V_TAM                FLOAT;
   V_IDREPLICPRODATIV   VARCHAR2(01);
BEGIN
   V_TAM   := 0;

   SELECT LENGTH(REPLACE(CDPICTPROD,'.',NULL)), DECODE(NVL(IDREPLICPRODATIV,'S'), 'S', 'A', 'I')
     INTO V_TAM, V_IDREPLICPRODATIV
     FROM PARAMGERAL
    WHERE CDPARGERAL = '0001';

   IF LENGTH(P_CDARVPROD) = V_TAM THEN

      INSERT INTO PRODFILI
         (CDFILIAL, CDPRODUTO, IDCNTRESTOQ, IDUTCTRLLOTE, IDPRODATIV, DTULTATUPRFIL)
         (SELECT F.CDFILIAL, P_CDPRODUTO, NVL(P.IDCTRLESTQ,'S'), P.IDUTILLOTE, V_IDREPLICPRODATIV, SYSDATE
            FROM FILIAL F, PARAMFILIAL P
           WHERE F.CDFILIAL = P.CDFILIAL
             AND NVL(F.IDCNTRRESC,'N') = 'N');
   END IF;
   COMMIT;
END;
/

