Form_Form Builder Export导出为Excel(案例)

简介: 2014-01-09 Created By BaoXinjian  一、摘要 以下是关于解决EBS标准导出功能无法导出主从关系数据的方法。 解决思路: 1. 在form上增加一个导出按钮,或者在工具栏注册一个菜单项。

2014-01-09 Created By BaoXinjian

 一、摘要


以下是关于解决EBS标准导出功能无法导出主从关系数据的方法。

解决思路:

1. 在form上增加一个导出按钮,或者在工具栏注册一个菜单项。

2. 用制作一个报表,或者模仿系统标准的导出功能。然后用上面的按钮或者菜单项直接调用。

这里主要介绍模仿系统标准导出功能

 

二、开发


Step1. 直接修改form级trigger EXPORT,把默认的 app_standard.event('EXPORT')注释掉。把下面的代码复制进去。

 

Step2. 具体代码

DECLARE
   --以上五个变量照搬即可
   URL                 VARCHAR2 (2000);
   DB_FILE             NUMBER;
   WEB_SERVER_PREFIX   VARCHAR2 (255);
   RES                 BOOLEAN;
   MIME_TYPE           VARCHAR2 (255);
   L_ORGANZIATION_ID   NUMBER;

   --定义一个包含主从关系数据的CURSOR
   CURSOR CSR ( V_ORGANIZATION_ID   IN            NUMBER)
   IS
        SELECT   CST.COST_GROUP_CODE,
                 CST.COST_GROUP_DESCRIPTION,
                 CST.COST_GROUP_DISABLE_DATE,
                 CAP.CAPABILITY,
                 EQP.EQP_CAP_DESC DESCRIPTION,
                 CAP.ACTIVE
          FROM   CUX2_CST_COST_GROUP_ALL CST,
                 CUX2_CST_COST_GROUP_EQPS_ALL CAP,
                 CUX2_BOM_EQP_CAP_TYPE EQP
         WHERE       CAP.COST_GROUP_ID(+) = CST.COST_GROUP_ID
                 AND EQP.EQP_CAP_CODE(+) = CAP.CAPABILITY
                 AND EQP.ORGANIZATION_ID(+) = CAP.ORGANIZATION_ID
                 AND CAP.ORGANIZATION_ID(+) = CST.ORGANIZATION_ID
                 AND CST.ORGANIZATION_ID = V_ORGANIZATION_ID
      ORDER BY   CST.ORGANIZATION_ID, CST.COST_GROUP_CODE, CAP.CAPABILITY;
BEGIN
   --获取Organzition_id
   L_ORGANZIATION_ID := FND_PROFILE.VALUE ('MFG_ORGANIZATION_ID');
   --更改鼠标式样:漏斗鼠标(忙状态)
   SET_APPLICATION_PROPERTY (CURSOR_STYLE, 'BUSY');
   --显示进度条窗口,并设置进度为0
   APP_WINDOW.PROGRESS (0);
   --创建数据包,并设置文件头类型。
   DB_FILE :=
      FND_GFM.FILE_CREATE (CONTENT_TYPE   => 'text/html',
                           PROGRAM_NAME   => 'export');
   --输出题头行 注:chr(9) 为 tab键
   FND_GFM.FILE_WRITE_LINE (
      DB_FILE,'Cost Group Code'|| CHR (9)|| 'Cost Group Description'|| CHR (9)|| 'Cost Group Disable Date'|| CHR (9)
|| 'Capability'|| CHR (9)|| 'Description'|| CHR (9)|| 'Active'
); --循环数据行 FOR R IN CSR (L_ORGANZIATION_ID) LOOP FND_GFM.FILE_WRITE_LINE ( DB_FILE,R.COST_GROUP_CODE|| CHR (9)|| R.COST_GROUP_DESCRIPTION|| CHR (9)|| TO_CHAR (R.COST_GROUP_DISABLE_DATE, 'YYYY-MM-DD HH24:MI:SS')
|| CHR (9)|| R.CAPABILITY|| CHR (9)|| R.DESCRIPTION|| CHR (9)|| R.ACTIVE
);
END LOOP; --关闭数据包 DB_FILE := FND_GFM.FILE_CLOSE (DB_FILE); --将数据包提交给客户端 URL := FND_GFM.CONSTRUCT_DOWNLOAD_URL (WEB_SERVER_PREFIX, DB_FILE, TRUE); --DBMS_OUTPUT.PUT_LINE(URL); --打开URL地址下载 FND_UTILITIES.OPEN_URL (URL); --更改鼠标式样:默认指针(常规状态) SET_APPLICATION_PROPERTY (CURSOR_STYLE, 'DEFAULT'); APP_WINDOW.PROGRESS (1); --显示进度条窗口,并设置进度为1(100%) END;

Step3. 导出Execl

 

 Step4. 导出条形图

 

Step5.  导出的Execel

 

Thanks and Regards

参考:kawontony - http://blog.itpub.net/24627116/viewspace-754506/

参考:kawontony - http://blog.itpub.net/24627116/viewspace-754513/

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
1月前
|
前端开发
实现Excel文件和其他文件导出为压缩包,并导入
实现Excel文件和其他文件导出为压缩包,并导入
31 1
|
1月前
|
数据格式 UED
记录一次NPOI库导出Excel遇到的小问题解决方案
【11月更文挑战第16天】本文记录了使用 NPOI 库导出 Excel 过程中遇到的三个主要问题及其解决方案:单元格数据格式错误、日期格式不正确以及合并单元格边框缺失。通过自定义单元格样式、设置数据格式和手动添加边框,有效解决了这些问题,提升了导出文件的质量和用户体验。
182 3
|
1月前
|
Java API Apache
|
1月前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
74 4
|
2月前
|
JavaScript 前端开发 数据处理
Vue导出el-table表格为Excel文件的两种方式
Vue导出el-table表格为Excel文件的两种方式
116 6
|
3月前
|
SQL C# 数据库
EPPlus库的安装和使用 C# 中 Excel的导入和导出
本文介绍了如何使用EPPlus库在C#中实现Excel的导入和导出功能。首先,通过NuGet包管理器安装EPPlus库,然后提供了将DataGridView数据导出到Excel的步骤和代码示例,包括将DataGridView转换为DataTable和使用EPPlus将DataTable导出为Excel文件。接着,介绍了如何将Excel数据导入到数据库中,包括读取Excel文件、解析数据、执行SQL插入操作。
EPPlus库的安装和使用 C# 中 Excel的导入和导出
|
2月前
|
easyexcel Java UED
SpringBoot中大量数据导出方案:使用EasyExcel并行导出多个excel文件并压缩zip后下载
在SpringBoot环境中,为了优化大量数据的Excel导出体验,可采用异步方式处理。具体做法是将数据拆分后利用`CompletableFuture`与`ThreadPoolTaskExecutor`并行导出,并使用EasyExcel生成多个Excel文件,最终将其压缩成ZIP文件供下载。此方案提升了导出效率,改善了用户体验。代码示例展示了如何实现这一过程,包括多线程处理、模板导出及资源清理等关键步骤。
|
2月前
|
前端开发 JavaScript
💥【exceljs】纯前端如何实现Excel导出下载和上传解析?
本文介绍了用于处理Excel文件的库——ExcelJS,相较于SheetJS,ExcelJS支持更高级的样式自定义且易于使用。表格对比显示,ExcelJS在样式设置、内存效率及流式操作方面更具优势。主要适用于Node.js环境,也支持浏览器端使用。文中详细展示了如何利用ExcelJS实现前端的Excel导出下载和上传解析功能,并提供了示例代码。此外,还提供了在线调试的仓库链接和运行命令,方便读者实践。
454 5
|
2月前
|
前端开发 JavaScript Java
导出excel的两个方式:前端vue+XLSX 导出excel,vue+后端POI 导出excel,并进行分析、比较
这篇文章介绍了使用前端Vue框架结合XLSX库和后端结合Apache POI库导出Excel文件的两种方法,并对比分析了它们的优缺点。
909 0
|
3月前
|
存储 Java
java的Excel导出,数组与业务字典匹配并去掉最后一个逗号
java的Excel导出,数组与业务字典匹配并去掉最后一个逗号
64 2