SET QUOTED_IDENTIFIER OFF
GO
create procedure al_reblock
as
begin
declare @license_id int
declare @license_metric_id int
declare @product_uuid binary(16)
delete from al_license_block
delete from al_link_lic_metric_block
delete from al_link_product_block
DECLARE add_cursor CURSOR FOR select al_license_metric.license_id, al_license_metric.license_metric_id, product_uuid
from al_product_rights, al_metric_covered_product, al_license_metric
where al_license_metric.license_metric_id = al_metric_covered_product.license_metric_id and
al_metric_covered_product.product_rights_id = al_product_rights.product_rights_id and al_license_metric.license_id > 1000005
OPEN add_cursor
FETCH NEXT FROM add_cursor
INTO @license_id, @license_metric_id, @product_uuid
WHILE @@FETCH_STATUS = 0
BEGIN
exec al_link_prod_to_lic_metric @license_id, @license_metric_id, @product_uuid, 0
FETCH NEXT FROM add_cursor
INTO @license_id, @license_metric_id, @product_uuid
END
CLOSE add_cursor
DEALLOCATE add_cursor
DECLARE add_cursor2 CURSOR FOR select al_license.license_id, al_product_rights.product_uuid
from al_license left join al_license_metric on al_license_metric.license_id = al_license.license_id
join al_product_rights on al_license.license_id = al_product_rights.license_id
where al_license_metric.license_metric_id is null and al_license.license_id > 1000005
OPEN add_cursor2
FETCH NEXT FROM add_cursor2
INTO @license_id, @product_uuid
WHILE @@FETCH_STATUS = 0
BEGIN
exec al_link_prod_to_lic @license_id, @product_uuid, 0
FETCH NEXT FROM add_cursor2
INTO @license_id, @product_uuid
END
CLOSE add_cursor2
DEALLOCATE add_cursor2
end
GO