Project

General

Profile

TR_BUDGET_CHECK_LIMIT_MONTH_HIST_Byid.txt

Luc Tran Van, 02/28/2023 10:08 AM

 
1

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

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