⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 应收账龄分析_proc.sql

📁 SQL server 进销存软件数据库设计。大家积极下载
💻 SQL
字号:
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 + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -