-- =============================================
--
-- =============================================
-- Drop stored procedure if it already exists
IF EXISTS (
SELECT *
FROM INFORMATION_SCHEMA.ROUTINES
WHERE SPECIFIC_SCHEMA = N'dbo'
AND SPECIFIC_NAME = N'brsExtender_Merge'
)
DROP PROCEDURE dbo.brsExtender_Merge
GO
CREATE PROCEDURE dbo.brsExtender_Merge
-- brsExtender_Merge 'steveitem2','UD1X','certypeX', 'certclaimX', 'fscpgX','fsctypX'
@ITEMNMBR CHAR(31),
--FOREST Cert window
@FORESTCERT char(255), --100
@CERTCLAIM char(255), --101
@FSCPRODGP char(255), --102
@FSCPRODTYPE char(255),--103
--HTC window
@HTC char(255), --104
@COO char(255), --106
@DECOMP char(255)-- 105
AS
--select * from ext01100 WHERE Extender_Key_Values_1 = 'STEVEITEM2'
--select * from ext01101 WHERE EXTENDER_RECORD_ID IN (select EXTENDER_RECORD_ID from ext01100 WHERE Extender_Key_Values_1 = 'STEVEITEM2')
DECLARE @Extender_Record_ID int,
@dtDate date
select @dtDate = getdate()
--get the key field for the header table for HTC
SELECT @Extender_Record_ID = Extender_Record_ID FROM EXT01100 WHERE Extender_Window_ID = 'HTC' AND Extender_Key_Values_1 = @ITEMNMBR
IF @Extender_Record_ID IS NULL BEGIN
select @Extender_Record_ID = max(Extender_Record_ID) + 1
from ext01100
--insert a new header record
insert into ext01100 ( Extender_Record_ID, Extender_Window_ID , Extender_Key_Values_1, Extender_Key_Values_2, Extender_Key_Values_3, Extender_Key_Values_4, Extender_Key_Values_5,noteindx, modifdt, mdfusrid, creatddt, CRUSRID)
values (@Extender_Record_ID, 'HTC' , @ITEMNMBR , '' , '' , '' , '' ,0 , @dtDate, 'IGIS' ,@dtDate , 'IGIS')
END
--insert field records
exec brsEXT01101_Merge @Extender_Record_ID,@HTC, 104
exec brsEXT01101_Merge @Extender_Record_ID,@DECOMP, 105
exec brsEXT01101_Merge @Extender_Record_ID,@COO, 106
SET @Extender_Record_ID = NULL
SELECT @Extender_Record_ID = Extender_Record_ID FROM EXT01100 WHERE Extender_Window_ID = 'FOREST CERT' AND Extender_Key_Values_1 = @ITEMNMBR
IF @Extender_Record_ID IS NULL BEGIN
select @Extender_Record_ID = max(Extender_Record_ID) + 1
from ext01100
insert into ext01100 ( Extender_Record_ID, Extender_Window_ID , Extender_Key_Values_1, Extender_Key_Values_2, Extender_Key_Values_3, Extender_Key_Values_4, Extender_Key_Values_5,noteindx, modifdt, mdfusrid, creatddt, CRUSRID)
values (@Extender_Record_ID, 'FOREST CERT' , @ITEMNMBR , '' , '' , '' , '' ,0 , @dtDate, 'IGIS' ,@dtDate , 'IGIS')
END
--insert field records
exec brsEXT01101_Merge @Extender_Record_ID, @FORESTCERT, 100
exec brsEXT01101_Merge @Extender_Record_ID, @CERTCLAIM, 101
exec brsEXT01101_Merge @Extender_Record_ID, @FSCPRODGP, 102
exec brsEXT01101_Merge @Extender_Record_ID, @FSCPRODTYPE, 103
GO
grant exec on brsExtender_Merge to public
-- Drop stored procedure if it already exists
IF EXISTS (
SELECT *
FROM INFORMATION_SCHEMA.ROUTINES
WHERE SPECIFIC_SCHEMA = N'dbo'
AND SPECIFIC_NAME = N'brsEXT01101_Merge'
)
DROP PROCEDURE dbo.brsEXT01101_Merge
GO
CREATE PROCEDURE dbo.brsEXT01101_Merge
-- brsEXT01101_Merge 'steveitem2','UD1X','certypeX', 'certclaimX', 'fscpgX','fsctypX'
@Extender_Record_ID int,
@STRGA255 char(255),
@FIELD_ID int
AS
if not exists (select 1 from ext01101 where Extender_Record_ID = @Extender_Record_ID and Field_ID = @FIELD_ID) begin
INSERT INTO EXT01101 (Extender_Record_ID , FIELD_ID , STRGA255)
VALUES (@Extender_Record_ID, @FIELD_ID, @STRGA255 )
end else begin
UPDATE EXT01101 SET STRGA255 = @STRGA255
WHERE Extender_Record_ID = @Extender_Record_ID AND Field_ID = @FIELD_ID
END
GO
grant exec on brsEXT01101_Merge to public