Files
hallasanup/쿼리/Template/회계장부_판관_원가_증빙조회.sql
2026-06-22 20:28:21 +09:00

68 lines
3.7 KiB
Transact-SQL

-- ==========================================
-- 작업일자: YYYY-MM-DD [쿼리 작성 및 실행 날짜를 기록합니다.]
-- 작 성 자: [실행자 이름을 기록합니다.]
-- 작업목적: [회계년도에 대한 원가, 판관비 전표를 조회하여 다량의 자료를 엑셀파일로 제공합니다.]
-- 요청자/티켓번호: [회계부서의 요청에 따라 제공합니다.]
-- ==========================================
declare @fr_date char(8), @to_date char(8)
-- [0] 변경할 데이터 설정
select @fr_date = '20240101', @to_date = '20241231'
-- [1] 해당 기간의 경비와 판관비 전표 내역을 조회
select
a.apvdate, a.apvnum, a.apvseq, a.dtcode, dtname=(select dept_nm from HRM.dbo.hr_dept where dept_cd = a.dtcode), a.acntcode
, acntname = (select replace(acntname, ' ', '') from ACC.dbo.t23c10 where c10_yy = '2024' and substring(a.acntcode, 1, 5)+'00' = acntcode)
, acntname = (select replace(acntname, ' ', '') from ACC.dbo.t23c10 where c10_yy = '2024' and a.acntcode = acntcode)
, a.apvdramt, a.apvcramt
, replace(a. slpfree, '"',''), a.pjtno
, pjtname=(select pjt_name from HPOIMS.dbo.ys_project where a.pjtno = pjt_no)
, a.vendorcd, venname=(select replace(ven_name,'"','') from HPOIMS.dbo.gm_vendor where a.vendorcd = ven_code)
, case when a.billchk = '1' then '영수증' when a.billchk = '2' then '세금계산서' when a.billchk = '3' then '기타증빙' else '증빙없음' end billchk_nm
from
ACC.dbo.t23a10 a
where
a.area = '9'
and a.apvdate between @fr_date and @to_date
and a.acntcode is not null
and substring(a.acntcode,1,1) in ('6','9')
order by
a.apvdate, a.apvnum, a.apvseq
-- [2] 해당 기간의 경비 전표 내역을 조회
select
a.apvdate, a.apvnum, a.apvseq, a.dtcode, dtname=(select dept_nm from HRM.dbo.hr_dept where dept_cd = a.dtcode), a.acntcode
, acntname = (select replace(acntname, ' ', '') from ACC.dbo.t23c10 where c10_yy = '2024' and substring(a.acntcode, 1, 5)+'00' = acntcode)
, acntname = (select replace(acntname, ' ', '') from ACC.dbo.t23c10 where c10_yy = '2024' and a.acntcode = acntcode)
, a.apvdramt, a.apvcramt
, replace(a. slpfree, '"',''), a.pjtno
, pjtname=(select pjt_name from HPOIMS.dbo.ys_project where a.pjtno = pjt_no)
, a.vendorcd, venname=(select replace(ven_name,'"','') from HPOIMS.dbo.gm_vendor where a.vendorcd = ven_code)
, case when a.billchk = '1' then '영수증' when a.billchk = '2' then '세금계산서' when a.billchk = '3' then '기타증빙' else '증빙없음' end billchk_nm
from
ACC.dbo.t23a10 a
where
a.area = '9'
and a.apvdate between @fr_date and @to_date
and a.acntcode is not null
and a.acntcode like '9%'
order by
a.apvdate, a.apvnum, a.apvseq
-- [3] 해당 기간의 법인카드 전표 내역을 증빙으로 구분하여 조회
select
a.apvdate, a.apvnum, a.apvseq, a.dtcode, dtname=(select dept_nm from HRM.dbo.hr_dept where dept_cd = a.dtcode), a.acntcode
, acntname = (select replace(acntname, ' ', '') from ACC.dbo.t23c10 where c10_yy = '2024' and substring(a.acntcode, 1, 5)+'00' = acntcode)
, acntname = (select replace(acntname, ' ', '') from ACC.dbo.t23c10 where c10_yy = '2024' and a.acntcode = acntcode)
, a.apvdramt, a.apvcramt
, replace(a. slpfree, '"',''), a.pjtno
, pjtname=(select pjt_name from HPOIMS.dbo.ys_project where a.pjtno = pjt_no)
, a.vendorcd, venname=(select replace(ven_name,'"','') from HPOIMS.dbo.gm_vendor where a.vendorcd = ven_code)
, case when a.billchk = '1' then '영수증' when a.billchk = '2' then '세금계산서' when a.billchk = '3' then '기타증빙' else '증빙없음' end billchk_nm
from
ACC.dbo.t23a10 a
where
area+apvdate+apvnum in (select area+apvdate+apvnum from ACC.dbo.t23a10 where area = '9' and apvdate between @fr_date and @to_date and acntcode = '2100502' and dr_cr = '2')
and dr_cr = '1'