CREATE PROCEDURE ENPRISE_CUSTOM_FORMSETTINGSTRANSFER @REFERENCE_USER NVARCHAR(30), @DEST_USER NVARCHAR(30) AS BEGIN DECLARE @REFERENCE_USERID INT, @DEST_USERID INT SELECT @REFERENCE_USERID=OUSR.USERID FROM OUSR WHERE USER_CODE = @REFERENCE_USER IF @DEST_USER='' OR @DEST_USER IS NULL SET @DEST_USERID = -1 ELSE BEGIN SELECT @DEST_USERID=OUSR.USERID FROM OUSR WHERE USER_CODE = @DEST_USER END IF @REFERENCE_USERID IS NOT NULL BEGIN IF @DEST_USERID=-1 BEGIN DELETE FROM ENPRISE_SETUP_FORM WHERE USERSIGN<>@REFERENCE_USERID DECLARE USER_CURS CURSOR FOR SELECT USERID FROM OUSR JOIN ENPRISE_ADDON_USERS EAU ON OUSR.USER_CODE=EAU.SAPUSER AND EAU.APPID=501 WHERE OUSR.USERID<>@REFERENCE_USERID OPEN USER_CURS FETCH NEXT FROM USER_CURS INTO @DEST_USERID WHILE @@FETCH_STATUS=0 BEGIN INSERT INTO ENPRISE_SETUP_FORM ( USERSIGN,FORMID,ITEMID,COLID,CAPTION,VISINFORM,EDITINFORM, ENABLED,WIDTH,VISUALINDEX,CHANGEDBYUSER ) SELECT @DEST_USERID,FORMID,ITEMID,COLID,CAPTION,VISINFORM,EDITINFORM, ENABLED,WIDTH,VISUALINDEX,CHANGEDBYUSER FROM ENPRISE_SETUP_FORM WHERE USERSIGN=@REFERENCE_USERID FETCH NEXT FROM USER_CURS INTO @DEST_USERID END CLOSE USER_CURS DEALLOCATE USER_CURS END ELSE BEGIN DELETE FROM ENPRISE_SETUP_FORM WHERE USERSIGN=@DEST_USERID INSERT INTO ENPRISE_SETUP_FORM ( USERSIGN,FORMID,ITEMID,COLID,CAPTION,VISINFORM,EDITINFORM, ENABLED,WIDTH,VISUALINDEX,CHANGEDBYUSER ) SELECT @DEST_USERID,FORMID,ITEMID,COLID,CAPTION,VISINFORM,EDITINFORM, ENABLED,WIDTH,VISUALINDEX,CHANGEDBYUSER FROM ENPRISE_SETUP_FORM WHERE USERSIGN=@REFERENCE_USERID END END END