1
|
DECLARE @p_USER_LOGIN VARCHAR(250) = NULL,
|
2
|
@p_BRANCH_ID VARCHAR(15) = NULL,
|
3
|
@p_YEAR VARCHAR(15) = NULL
|
4
|
|
5
|
DECLARE @RESULT TABLE (
|
6
|
TYPE_ID VARCHAR(15),
|
7
|
TOTAL_COUNT FLOAT
|
8
|
)
|
9
|
DECLARE @BRANCH_LOGIN varchar(15) ='', @DEP_LOGIN varchar(15) =''
|
10
|
SELECT @DEP_LOGIN = SECUR_CODE, @BRANCH_LOGIN = TLSUBBRID FROM TL_USER WHERE TLNANME = @p_USER_LOGIN
|
11
|
|
12
|
IF(NOT EXISTS(SELECT * FROM CM_DEPARTMENT cd WHERE cd.BRANCH_ID = @BRANCH_LOGIN AND cd.DEP_ID = @DEP_LOGIN AND (cd.DEP_CODE = '0690604' OR cd.DEP_CODE = '0690802' OR cd.DEP_CODE = '0690803')))
|
13
|
BEGIN
|
14
|
IF(@BRANCH_LOGIN = 'DV0001') SET @p_BRANCH_ID = @DEP_LOGIN
|
15
|
ELSE SET @p_BRANCH_ID = @BRANCH_LOGIN
|
16
|
END
|
17
|
|
18
|
|
19
|
INSERT INTO @RESULT
|
20
|
SELECT A.TYPE_ID AS TYPE_ID, COUNT(A.TYPE_ID) AS TOTAL_COUNT
|
21
|
FROM ASS_MASTER A
|
22
|
WHERE 1=1 AND A.RECORD_STATUS = '1' AND A.AUTH_STATUS = 'A' AND A.ENTRY_BOOKED = 'Y'
|
23
|
AND (A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '' OR A.DEPT_ID = @p_BRANCH_ID OR (A.TYPE_ID ='TSCD' AND ISNULL(A.BRANCH_CREATE,'') =@p_BRANCH_ID) )
|
24
|
AND (YEAR(A.BUY_DATE_KT) <= @p_YEAR OR @p_YEAR IS NULL OR @p_YEAR = '' )
|
25
|
AND ((A.[TYPE_ID] = 'TSCD' AND YEAR(A.LIQUIDATION_DT) >= @p_YEAR OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT ='')
|
26
|
OR (A.[TYPE_ID] = 'CCLD' AND A.AMORT_STATUS <> 'VNM' AND YEAR(A.LIQUIDATION_DT) > @p_YEAR OR A.LIQUIDATION_DT IS NULL OR A.LIQUIDATION_DT =''))
|
27
|
AND (YEAR(USE_DATE_KT) <=@p_YEAR OR (A.TYPE_ID ='TSCD' AND (A.USE_DATE_KT IS NULL OR A.USE_DATE_KT ='')))
|
28
|
GROUP BY A.TYPE_ID
|
29
|
------------------------
|
30
|
-------Chuyển từ số lượng sang % -------------
|
31
|
--DECLARE @SUM_TOTAL_COUNT INT = 0
|
32
|
--SELECT @SUM_TOTAL_COUNT = SUM(TOTAL_COUNT) FROM @RESULT
|
33
|
--UPDATE @RESULT SET TOTAL_COUNT = ROUND(TOTAL_COUNT * 100 / @SUM_TOTAL_COUNT, 2)
|
34
|
-------Chuyển từ số lượng sang % -------------
|
35
|
SELECT * FROM @RESULT
|