DECLARE @C_CDSUBGRPROD   VARCHAR(10);
DECLARE @C_NMSUBGRPROD  VARCHAR(40);
DECLARE @C_CDGRUPPROD VARCHAR(10);
DECLARE @C_CDPRODUTO   VARCHAR(10);

BEGIN 
   DECLARE CUR_TABELA_KIT CURSOR FOR
      SELECT S.CDSUBGRPROD, S.NMSUBGRPROD
      FROM SUBGRUPPROD S, PARAMORCAEVE P
      WHERE P.CDGRPRODKITORCA = S.CDGRUPPROD
      ORDER BY S.CDSUBGRPROD;
   OPEN CUR_TABELA_KIT;

   FETCH NEXT FROM CUR_TABELA_KIT INTO @C_CDSUBGRPROD, @C_NMSUBGRPROD;
 
   WHILE (@@FETCH_STATUS = 0)
   BEGIN
      /*insere a tabela SUBGRUPPROD*/
      INSERT INTO KITORCAEVEN
         (CDKITORCAEVEN, NMKITORCAEVEN)
      VALUES
         (@C_CDSUBGRPROD, @C_NMSUBGRPROD);
      FETCH NEXT FROM CUR_TABELA_KIT INTO @C_CDSUBGRPROD, @C_NMSUBGRPROD;
   END;
   CLOSE CUR_TABELA_KIT;
   DEALLOCATE CUR_TABELA_KIT;

   DECLARE CUR_TABELA_PRODKIT CURSOR FOR
     SELECT DISTINCT S.CDGRUPPROD, N.CDSUBGRPROD, N.CDPRODUTO
     FROM NVSUBGRPROD N,KITORCAEVEN K, PARAMORCAEVE P, SUBGRUPPROD S
     WHERE P.CDGRPRODKITORCA = S.CDGRUPPROD
     AND S.CDGRUPPROD = N.CDGRUPPROD
     AND S.CDSUBGRPROD = N.CDSUBGRPROD
     ORDER BY S.CDGRUPPROD, N.CDSUBGRPROD, N.CDPRODUTO;
   OPEN CUR_TABELA_PRODKIT;

   FETCH NEXT FROM CUR_TABELA_PRODKIT INTO @C_CDGRUPPROD,@C_CDSUBGRPROD, @C_CDPRODUTO;

   WHILE (@@FETCH_STATUS =0)
   BEGIN
      /*insere a tabela NVSUBGRPROD*/
      INSERT INTO PRODKITORCAEVEN
         (CDKITORCAEVEN, CDPRODUTO)
      VALUES
         (@C_CDSUBGRPROD, @C_CDPRODUTO);
      FETCH NEXT FROM CUR_TABELA_PRODKIT INTO @C_CDGRUPPROD,@C_CDSUBGRPROD, @C_CDPRODUTO;
   END;
   CLOSE CUR_TABELA_PRODKIT;
   DEALLOCATE CUR_TABELA_PRODKIT;
END;
GO

-- VERSAO --
EXEC ATUVEROBJ 'ORE_ALTERA_KIT','5.05.020';
GO

