Project

General

Profile

[TR_BUDGET_CHECK_LIMIT_MONTH_HIST_Byid].txt

Luc Tran Van, 03/24/2023 02:50 PM

 
1
ALTER PROCEDURE [dbo].[TR_BUDGET_CHECK_LIMIT_MONTH_HIST_Byid]
2
@p_GD_ID	varchar(20)  = NULL,
3
@p_GD_CODE	varchar(20)  = NULL,
4
@p_BRANCH_ID varchar(20)  = NULL,
5
@p_DEP_ID	varchar(20)  = NULL,
6
@p_BUDGET_MONTH varchar(20) = NULL,
7
@p_BUDGET_YEAR varchar(20) = NULL,
8
@p_BRANCH_KIND varchar(20) = NULL,
9
@p_TOP INT = 100
10
AS
11
BEGIN -- PAGING
12
	SET @p_TOP = NULL
13

    
14
	IF(@p_TOP IS NULL OR @p_TOP=0)
15
	BEGIN  
16
-- PAGING BEGIN
17
        SELECT A.BUDGET_MONTH_LIMIT_DETAIL_ID, C.REQ_PAY_ID, C.REQ_PAY_CODE, CM.BRANCH_NAME, DP.DEP_NAME,
18
        trpb.AMT_EXE AS 'REQ_AMT',
19
        --C.REQ_AMT, 
20
        trpb.REASON AS 'REQ_REASON',
21
        --C.REQ_REASON,
22
        C.CREATE_DT AS PAYMENT_CREATE_DT, TL1.TLFullName AS GDV, TL2.TLFullName AS KSV, C.APPROVE_DT_KT
23
-- SELECT END
24
        FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A
25
		--LEFT JOIN TR_REQ_BUDGET_YEAR_LIMIT B ON A.BRANCH_ID = B.BRANCH_ID AND A.DEP_ID = B.DEP_ID AND A.GD_ID = B.GD_ID
26
		LEFT JOIN TR_REQ_PAYMENT C ON A.REQ_PAY_ID = C.REQ_PAY_ID
27
    LEFT JOIN TR_REQ_PAY_BUDGET trpb ON trpb.REQ_PAY_ID = C.REQ_PAY_ID AND trpb.BUDG_ID = A.BUDG_ID --AND trpb.BRANCH_KIND = @p_BRANCH_KIND AND trpb.BRANCH_KIND = @p_BRANCH_KIND AND (trpb.AMT_EXE = A.M1+A.M2+A.M3+A.M4+A.M5+A.M6+A.M7+A.M8+A.M9+A.M10+A.M11+A.M12)
28
		LEFT JOIN TL_USER TL1 ON C.MAKER_ID_KT = TL1.TLNANME
29
		LEFT JOIN TL_USER TL2 ON C.CHECKER_ID_KT = TL2.TLNANME
30
		LEFT JOIN CM_BRANCH CM ON A.BRANCH_ID = CM.BRANCH_ID
31
		LEFT JOIN CM_DEPARTMENT DP ON A.DEP_ID = DP.DEP_ID
32
        WHERE 1=1
33
			AND A.GD_ID = @p_GD_ID 
34
			AND A.BRANCH_ID = @p_BRANCH_ID 
35
			AND (A.DEP_ID = @p_DEP_ID OR  A.BRANCH_ID <> 'DV0001')
36
			AND A.RECORD_STATUS = '1'
37
			AND A.BUDGET_YEAR = @p_BUDGET_YEAR
38
			AND (  ( M1 <> 0  AND @p_BUDGET_MONTH = 'M1' )
39
				OR ( M2 <> 0  AND @p_BUDGET_MONTH = 'M2' )
40
				OR ( M3 <> 0  AND @p_BUDGET_MONTH = 'M3' )
41
				OR ( M4 <> 0  AND @p_BUDGET_MONTH = 'M4' )
42
				OR ( M5 <> 0  AND @p_BUDGET_MONTH = 'M5' )
43
				OR ( M6 <> 0  AND @p_BUDGET_MONTH = 'M6' )
44
				OR ( M7 <> 0  AND @p_BUDGET_MONTH = 'M7' )
45
				OR ( M8 <> 0  AND @p_BUDGET_MONTH = 'M8' )
46
				OR ( M9 <> 0  AND @p_BUDGET_MONTH = 'M9' )
47
				OR ( M10 <> 0 AND @p_BUDGET_MONTH = 'M10')
48
				OR ( M11 <> 0 AND @p_BUDGET_MONTH = 'M11')
49
				OR ( M12 <> 0 AND @p_BUDGET_MONTH = 'M12')
50
			)
51
      AND A.BRANCH_KIND = @p_BRANCH_KIND
52
    GROUP BY A.BUDGET_MONTH_LIMIT_DETAIL_ID, C.REQ_PAY_ID, C.REQ_PAY_CODE, CM.BRANCH_NAME, DP.DEP_NAME,trpb.AMT_EXE,trpb.REASON,
53
    C.CREATE_DT, TL1.TLFullName, TL2.TLFullName, C.APPROVE_DT_KT,A.CREATE_DT
54
		ORDER BY A.CREATE_DT DESC
55
-- PAGING END
56
    END;
57
    ELSE 
58
	BEGIN
59
-- PAGING BEGIN
60
        SELECT TOP(CONVERT(INT, @p_TOP)) A.BUDGET_MONTH_LIMIT_DETAIL_ID, C.REQ_PAY_ID, C.REQ_PAY_CODE, CM.BRANCH_NAME, DP.DEP_NAME, 
61
        trpb.AMT_EXE AS 'REQ_AMT',
62
        --C.REQ_AMT, 
63
        trpb.REASON AS 'REQ_REASON',
64
        --C.REQ_REASON, 
65
        C.CREATE_DT AS PAYMENT_CREATE_DT, TL1.TLFullName AS GDV, TL2.TLFullName AS KSV, C.APPROVE_DT_KT
66
-- SELECT END
67
        FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A
68
		--LEFT JOIN TR_REQ_BUDGET_YEAR_LIMIT B ON A.BRANCH_ID = B.BRANCH_ID AND A.DEP_ID = B.DEP_ID AND A.GD_ID = B.GD_ID
69
		LEFT JOIN TR_REQ_PAYMENT C ON A.REQ_PAY_ID = C.REQ_PAY_ID
70
    LEFT JOIN TR_REQ_PAY_BUDGET trpb ON trpb.REQ_PAY_ID = C.REQ_PAY_ID AND trpb.BUDG_ID = A.BUDG_ID --AND trpb.BRANCH_KIND = @p_BRANCH_KIND AND (trpb.AMT_EXE = A.M1+A.M2+A.M3+A.M4+A.M5+A.M6+A.M7+A.M8+A.M9+A.M10+A.M11+A.M12)
71
		LEFT JOIN TL_USER TL1 ON C.MAKER_ID_KT = TL1.TLNANME
72
		LEFT JOIN TL_USER TL2 ON C.CHECKER_ID_KT = TL2.TLNANME
73
		LEFT JOIN CM_BRANCH CM ON A.BRANCH_ID = CM.BRANCH_ID
74
		LEFT JOIN CM_DEPARTMENT DP ON A.DEP_ID = DP.DEP_ID
75
        WHERE 1=1
76
			AND A.GD_ID = @p_GD_ID 
77
			AND A.BRANCH_ID = @p_BRANCH_ID 
78
			AND (A.DEP_ID = @p_DEP_ID OR  A.BRANCH_ID <> 'DV0001')
79
			AND A.RECORD_STATUS = '1'
80
			AND A.BUDGET_YEAR = @p_BUDGET_YEAR
81
			AND (  ( M1 <> 0  AND @p_BUDGET_MONTH = 'M1' )
82
				OR ( M2 <> 0  AND @p_BUDGET_MONTH = 'M2' )
83
				OR ( M3 <> 0  AND @p_BUDGET_MONTH = 'M3' )
84
				OR ( M4 <> 0  AND @p_BUDGET_MONTH = 'M4' )
85
				OR ( M5 <> 0  AND @p_BUDGET_MONTH = 'M5' )
86
				OR ( M6 <> 0  AND @p_BUDGET_MONTH = 'M6' )
87
				OR ( M7 <> 0  AND @p_BUDGET_MONTH = 'M7' )
88
				OR ( M8 <> 0  AND @p_BUDGET_MONTH = 'M8' )
89
				OR ( M9 <> 0  AND @p_BUDGET_MONTH = 'M9' )
90
				OR ( M10 <> 0 AND @p_BUDGET_MONTH = 'M10')
91
				OR ( M11 <> 0 AND @p_BUDGET_MONTH = 'M11')
92
				OR ( M12 <> 0 AND @p_BUDGET_MONTH = 'M12')
93
			)
94
      AND A.BRANCH_KIND = @p_BRANCH_KIND
95
      GROUP BY A.BUDGET_MONTH_LIMIT_DETAIL_ID, C.REQ_PAY_ID, C.REQ_PAY_CODE, CM.BRANCH_NAME, DP.DEP_NAME,trpb.AMT_EXE,trpb.REASON,
96
        C.CREATE_DT, TL1.TLFullName, TL2.TLFullName, C.APPROVE_DT_KT,A.CREATE_DT
97
		ORDER BY A.CREATE_DT DESC
98
-- PAGING END
99
    END;
100
END -- PAGING