create or replace 
PROCEDURE EXPORTA_MARCA_PRODUCTO
IS 
   V_CDPRODUTO VARCHAR2(10);
   V_CDARVPROD VARCHAR2(20);
   V_CDMARCA   VARCHAR2(5);
   V_CDPRODSAP VARCHAR2(18);
   V_UOMSAPALT VARCHAR2(5);
   V_MENSERRO  VARCHAR2(300);
   V_SEQUENCIAL INTEGER;
   V_NMPRODUTO VARCHAR2(50);
   V_SGUNIDADE VARCHAR2(5);
   V_NMMARCA   VARCHAR2(50);
   V_VRFATOCONV FLOAT;
   
   CURSOR C_MARCPROD IS
      (SELECT M.CDPRODUTO, P.CDARVPROD, M.CDMARCA, M.CDPRODSAP, M.UOMSAPALT,
              P.NMPRODUTO, P.SGUNIDADE, MA.NMMARCA, P.VRFATOCONV
         FROM MARCPROD M, PRODUTO P, MARCA MA
        WHERE M.CDPRODUTO = P.CDPRODUTO
          AND M.CDMARCA   = MA.CDMARCA
          AND M.USR_DTEXPORTSAP IS NULL
          AND M.CDPRODSAP IS NOT NULL);
BEGIN
   OPEN C_MARCPROD;
   LOOP
      FETCH C_MARCPROD INTO V_CDPRODUTO, V_CDARVPROD, V_CDMARCA, V_CDPRODSAP, V_UOMSAPALT,
                            V_NMPRODUTO, V_SGUNIDADE, V_NMMARCA, V_VRFATOCONV;
      EXIT WHEN C_MARCPROD%NOTFOUND;
      
      INSERT INTO USR_SAP_MARCPROD(CDARVPROD, CDMARCA, CDPRODSAP, UOMSAPALT,
                                   NMPRODUTO, SGUNIDADE, NMMARCA, VRFATOCONV)
      VALUES(V_CDARVPROD, V_CDMARCA, V_CDPRODSAP, V_UOMSAPALT,
             V_NMPRODUTO, V_SGUNIDADE, V_NMMARCA, V_VRFATOCONV);
      
      UPDATE MARCPROD
         SET USR_DTEXPORTSAP = SYSDATE
       WHERE CDPRODUTO = V_CDPRODUTO
         AND CDMARCA   = V_CDMARCA;
   END LOOP;
   
   CLOSE C_MARCPROD;
   COMMIT;
END;
/

-- VERSAO --
BEGIN ATUVEROBJ('EXPORTA_MARCA_PRODUCTO','6.05.xxx'); END;
/