˪-ii--
来自「本系统为企业进存销管理系统」· 代码 · 共 64 行
TXT
64 行
IF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE NAME='应收账龄分析_PROC' AND TYPE='P')
DROP PROC 应收账龄分析_PROC
GO
create PROC 应收账龄分析_PROC
AS
create table #收款汇总
(发票号码 VARCHAR(20),
发票日期 DATETIME,
借方金额 NUMERIC(18,6),
贷方金额 NUMERIC(18,6),
借贷余额 AS 借方金额-贷方金额)
create table #账龄
(发票号码 INT,
[270天] NUMERIC(18,6)DEFAULT(0.0000),
[180天] NUMERIC(18,6)DEFAULT(0.0000),
[120天] NUMERIC(18,6)DEFAULT(0.0000),
[90天] NUMERIC(18,6)DEFAULT(0.0000),
[60天] NUMERIC(18,6)DEFAULT(0.0000),
[45天] NUMERIC(18,6)DEFAULT(0.0000),
[30天] NUMERIC(18,6)DEFAULT(0.0000),
[15天] NUMERIC(18,6)DEFAULT(0.0000),
[0天] NUMERIC(18,6) DEFAULT(0.0000),)
INSERT INTO #收款汇总 (发票号码,发票日期,借方金额,贷方金额)
SELECT 发票号码,发票日期,SUM(借方金额_原币),SUM(贷方金额_原币) FROM 应收账款明细账
GROUP BY 发票号码, 发票日期
DECLARE @日期 DATETIME
SELECT @日期=发票日期 FROM #收款汇总
IF DATEdiff(DY,@日期,GETDATE())>270
INSERT INTO #账龄(发票号码,[270天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())>180
INSERT INTO #账龄(发票号码,[180天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())>120
INSERT INTO #账龄(发票号码,[120天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())>90
INSERT INTO #账龄(发票号码,[90天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())>60
INSERT INTO #账龄(发票号码,[60天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())>45
INSERT INTO #账龄(发票号码,[45天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())>30
INSERT INTO #账龄(发票号码,[30天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())>15
INSERT INTO #账龄(发票号码,[15天])SELECT 发票号码,借贷余额 FROM #收款汇总
ELSE
IF DATEdiff(DY,@日期,GETDATE())=0
INSERT INTO #账龄(发票号码,[0天])SELECT 发票号码,借贷余额 FROM #收款汇总
SELECT *FROM #账龄
--EXEC
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?