CREATE PROCEDURE fz_bank
@swcode varchar(6)
AS
declare @date1 varchar(20)
declare @date2 varchar(20)
declare @date3 varchar(20)
set @date1 = left(@swcode,4)+'-01-01'; /**2010-01-01**/
set @date2 = left(@swcode,4)+'-'+right(@swcode,2)+'-01'; /**2010-06-01**/
set @date3 = left(@swcode,4)+'-'+convert(varchar,(cast(right(@swcode,2) as int)+1))+'-01';
create table #bank
(
domain varchar(20),
gbcode0 varchar(20), /**付款人常驻国家(地区)代码**/
gbcode_bankname0 varchar(30),/** 付款国别名称 **/
sk_date0 varchar(30),/**收款日期**/
bicode0 varchar(30),/**币种**/
jsfs0 varchar(30),/**结算方式**/
sk_je_month numeric(15,2),/** 付款总金额本月**/
sk_je_year numeric(15,2),/** 付款总金额累计**/
bg_je_month numeric(15,2),/** 已报关付款金额本月**/
bg_je_year numeric(15,2),/** 已报关付款金额累计**/
ys_je_month numeric(15,2),/** 预付款金额本月**/
ys_je_year numeric(15,2),/** 预付款金额年份**/
tp_je_month numeric(15,2),/** 退赔款金额本月**/
tp_je_year numeric(15,2),/** 退赔款金额年份**/
my_je_month numeric(15,2),/** 退贸易从属费用金额本月**/
my_je_year numeric(15,2),/** 贸易从属费用金额年份**/
note0 varchar(200)
)
insert into #bank( gbcode0,gbcode_bankname0,domain,jsfs0)
select distinct gbcode,name,'合计' as domain,jsfs from gbcode_bank g,history_zcxx h where g.asicode=h.gbcode
/** 付款总金额本月**/
update #bank
set sk_je_month = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(Fk_je ) as fk_jeSum
from history_zcxx where fk_date>=@date2 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 付款总金额year**/
update #bank
set sk_je_year = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(Fk_je ) as fk_jeSum
from history_zcxx where fk_date>=@date1 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 已报关付款金额本月**/
update #bank
set bg_je_month = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(bg_je) as fk_jeSum
from history_zcxx where fk_date>=@date2 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 已报关付款金额本年**/
update #bank
set bg_je_year = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(bg_je) as fk_jeSum
from history_zcxx where fk_date>=@date1 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 预付款金额本月**/
update #bank
set ys_je_month = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(Yfk_je) as fk_jeSum
from history_zcxx where fk_date>=@date2 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 预付款金额本年**/
update #bank
set ys_je_year = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(Yfk_je) as fk_jeSum
from history_zcxx where fk_date>=@date1 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 退赔款金额本月**/
update #bank
set tp_je_month = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(tp_je) as fk_jeSum
from history_zcxx where fk_date>=@date2 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 退赔款金额本年**/
update #bank
set tp_je_year = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(tp_je) as fk_jeSum
from history_zcxx where fk_date>=@date1 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 退贸易从属费用金额本月**/
update #bank
set my_je_month = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(my_je) as fk_jeSum
from history_zcxx where fk_date>=@date2 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
/** 退贸易从属费用金额本年**/
update #bank
set my_je_year = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, sum(my_je) as fk_jeSum
from history_zcxx where fk_date>=@date1 and fk_date<@date3 and bicode ='156' group by gbcode) a
on #bank.gbcode0 = a.gbcode
update #bank
set note0 = a.fk_jeSum
from #bank
inner join
(select distinct gbcode as gbcode, note as fk_jeSum
from history_zcxx group by gbcode,note) a
on #bank.gbcode0 = a.gbcode
select distinct gbcode0,gbcode_bankname0, sk_je_month, sk_je_year,bg_je_month,bg_je_year,ys_je_month,ys_je_year,tp_je_month,tp_je_year,my_je_month,my_je_year,note0,jsfs0 from #bank;
GO
分享到:
相关推荐
在SQL Server数据库管理系统中,存储过程是预编译的SQL语句集合,它们可以用于执行复杂的数据库操作,包括报表数据的生成。存储过程是数据库设计中的一个重要组成部分,它提供了提高性能、安全性和代码重用的机会。...
标题“sql2000 利用存储过程导出excel”指的是在SQL Server 2000中使用存储过程来生成Excel文件的过程。这个技术在数据处理和分析时非常有用,因为它允许用户直接从数据库中导出数据到Excel格式,方便进一步的数据...
其中,"迷你SQL2000"是针对小型企业或个人用户设计的一个精简版本,它在保留核心功能的同时,降低了硬件需求和安装复杂度,更适合于那些资源有限但需要稳定数据库服务的环境。 **主要特性** 1. **轻量级数据库引擎...
SQL2000是微软公司推出的SQL Server 2000版本,专为中文环境设计,提供了全面的数据管理和分析...无论是数据存储、查询、复制、安全还是报表生成,SQL2000都提供了全方位的解决方案,满足了企业级应用的高标准需求。
迷你SQL2000是微软公司推出的一种关系型数据库管理系统(RDBMS),全称为Microsoft SQL Server 2000。这款产品以其高效、稳定和易用性在IT行业中广泛应用于数据存储和管理。尽管“迷你”版可能指的是精简或简化版,...
1. 数据库创建与管理:用户可以通过迷你SQL2000快速创建新的数据库,设定存储位置和大小,同时可以管理已有的数据库,包括修改数据库属性、备份和恢复数据库等操作。 2. 表的创建与管理:在数据库中,用户可以创建...
SQL存储过程详解 SQL存储过程是数据库管理系统中的一种重要组件,它是一组为了完成特定功能的 SQL 语句,集经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数来执行它。本文将对 SQL存储过程进行详细...
在实际的业务场景中,有时我们需要调用数据库中的存储过程来获取或处理数据,本篇将详细介绍如何在润乾报表中调用Oracle存储过程。 首先,我们要在Oracle数据库中创建存储过程。以下是一个简单的存储过程示例,名为...
在报表设计过程中,你可能需要添加存储过程中的查询参数,这些参数可以动态地改变SQL语句的行为。同时,为查询结果列命名,这将决定报表中显示的列标题。 继续设置查询条件,这是报表过滤数据的关键步骤。你可以...
### iFIX连接SQL数据库读写数据与制作Excel报表教程 #### 一、iFIX简介与应用场景 iFIX是一款广泛应用于工业自动化领域的监控与数据采集(SCADA)系统软件。它能够帮助用户实现对生产过程的数据采集、监控以及数据...
4. 输入报表SQL格式,格式为“存储过程名|存放数据表”,例如`sp_test|TEMP_0_ProcReport`。 5. 填写菜单标题和报表名称,然后保存报表配置。 在使用存储过程生成报表时,有几点需要注意: 1. 存储过程的参数应与...
在SQL Server中,存储过程是一种预编译的SQL语句集合,它可以接受输入参数,执行一系列操作,并可能返回结果。存储过程是数据库管理中的重要工具,可以提高性能、增加代码重用性,以及提供安全控制。以下是针对"SQL...
压缩包子文件的文件名称列表中,"SQL2000开发版+SP4(支持WIN10安装)"很可能是安装文件的主程序,用户只需按照上述步骤即可完成安装过程。 总的来说,SQL Server 2000开发版+SP4是针对Windows 10用户的一个重要...
迷你SQL2000系统是针对SQL Server 2000的一个精简版本,它保留了核心功能,便于在资源有限或对系统需求较低的环境中使用。SQL Server 2000是微软公司推出的一款关系型数据库管理系统(RDBMS),在当时广泛应用于企业...
存储过程是预编译的SQL语句集合,可以封装复杂的业务逻辑,提高数据处理效率,并通过参数传递数据。在与帆软报表集成时,正确理解和调用存储过程能极大地增强报表功能和性能。 总结起来,"帆软报表Oracle存储过程...
7. **存储过程调用**:BIRT支持调用数据库的存储过程,并将返回的结果用作报表数据源。你可以通过动态SQL参数化存储过程,根据需要改变其行为。 学习BIRT的动态SQL,需要掌握SQL语法、参数化查询的概念以及一定的...
迷你SQL2000_v1.29.zip是一款专为简单工作环境设计的轻量级SQL Server版本。作为一款绿色版数据库系统,它无需安装,用户可以直接运行,大大简化了部署流程,尤其适合那些需要快速启动数据库服务或者对系统资源有...
"UAP报表中调用存储过程" UAP报表是当前流行的报表开发工具之一,通过UAP使用自定义报表可以实现复杂的业务逻辑。最新的U872版本中,UAP报表可以调用存储过程,实现更加复杂的数据处理和计算。本文将详细介绍如何在...
c#调用存储过程两种方法 - - c# sql .net asp.net