mesa-fab-approval/Programmability/Stored Procedures/ECNInsertEmergencyECNApprovers.sql
Mike Phares ab800974b7 Programmability objects from database
Removed commented code
Added fn_GetExpiredTECNByOriginator
2024-12-12 12:15:46 -07:00

99 lines
2.3 KiB
Transact-SQL

USE [FabApprovalSystem]
GO
/****** Object: StoredProcedure [dbo].[ECNInsertEmergencyECNApprovers] Script Date: 11/21/2024 11:29:04 AM ******/
SET
ANSI_NULLS ON
GO
SET
QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE [dbo].[ECNInsertEmergencyECNApprovers] @ECNNumber INT,
@Step INT,
@UserID INT,
@DocumentTypeID INT,
@SubRoleCategoryName VARCHAR(100),
@Email VARCHAR(50) OUTPUT AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET
NOCOUNT ON;
DECLARE @RoleID INT DECLARE @RoleName VARCHAR(50) DECLARE @SubRoleID INT DECLARE @SubRoleName VARCHAR(50) DECLARE @ApprovalType TINYINT DECLARE @WorkFlowNumber INT
SELECT
@WorkFlowNumber = WorkFlowNumber
FROM
ECN
WHERE
ECNNumber = @ECNNumber -- Get the approval type of the current step
SET
@ApprovalType = (
SELECT
Top 1 WS.ApprovalType
FROM
SubRoleCategory SRC
INNER JOIN SubRole SR ON SRC.SubRoleCategoryID = SR.SubRoleCategoryID
INNER JOIN Role R ON SR.RoleID = R.RoleID
INNER JOIN WorkflowSteps WS ON R.RoleID = WS.RoleID
INNER JOIN Workflows W ON WS.WorkflowID = W.DocumentTypeID
WHERE
SRC.SubRoleCategoryItem = 'Engineering'
AND W.DocumentTypeID = @DocumentTypeID
)
SELECT
Top 1 @ApprovalType = WS.ApprovalType,
@RoleID = R.RoleID,
@RoleName = R.RoleName,
@SubRoleID = SR.SubRoleID,
@SubRoleName = SR.SubRole
FROM
SubRoleCategory SRC
INNER JOIN SubRole SR ON SRC.SubRoleCategoryID = SR.SubRoleCategoryID
INNER JOIN Role R ON SR.RoleID = R.RoleID
INNER JOIN WorkflowSteps WS ON R.RoleID = WS.RoleID
INNER JOIN Workflows W ON WS.WorkflowID = W.DocumentTypeID
AND WorkFlowNumber = @WorkFlowNumber
WHERE
SRC.SubRoleCategoryItem = @SubRoleCategoryName
AND W.DocumentTypeID = @DocumentTypeID
INSERT INTO
Approval (
IssueID,
RoleName,
SubRole,
UserID,
SubRoleID,
ItemStatus,
Step,
AssignedDate,
NotifyDate,
RoleAssignedDate,
ApprovalType,
DocumentTypeID
)
VALUES
(
@ECNNumber,
@RoleName,
@SubRoleName,
@UserID,
@SubRoleID,
0,
@Step,
GETDATE(),
GETDATE(),
GETDATE(),
@ApprovalType,
@DocumentTypeID
)
SELECT
@Email = Email
FROM
Users
WHERE
UserID = @UserID
END
GO