在Oracle EBS系统中,随处可见金额的显示格式,通常情况下都具有千分位符,同时有一定位数的精度,让我们先来看看一些现成的例子

  

上面这些列子中的金额都显示了千分位符,同时具备以2位小数,难道这个格式就是程序写死的?答案显然是否定的。

让我们来看看这个金额的格式是如何来确定的:

1,正数显示的格式由预置文件:Currency:Positive Format来确定
2,负数显示的格式由预置文件:Currency:Negative Format来确定
3,是否显示千分位由预置文件:Currency:Thousands Separator的值来确定
4,而精度则是由币种的精度设置来决定的(在总帐模块进行设置)

从上面的描述可以知道要格式化金额显示的前提条件是:币种,如果没有明确的币种可以选择本位币

下面来看看在我们自己开发的程序中,如何实现上述的功能:

1,Form界面中控制金额的显示

只要在能够确定币种的时候使用Oralce提供的币种格式化函数 fnd_currency.get_format_mask 来进行Item格式掩码属性的设置即可

? PLSQL
1
2
3
4
5
6
7
8
9
10
11
app_item_property.set_property(
'headers.amount_total', FORMAT_MASK,
fnd_currency.get_format_mask(
:headers.currency_code,
get_item_property('headers.amount_total',MAX_LENGTH)))
-- headers.amount_total 需要格式化金额对应的Item
-- :headers.currency_code 币种对应的字段
-- 如果数据中没有币种可以通过下面代码取得本位币
SELECT sob.currency_code
FROM gl_sets_of_books sob
WHERE sob.set_of_books_id = fnd_profile.value('GL_SET_OF_BKS_ID');

2,在数据库的PLSQL中格式化金额

如果编写的数据库PLSQL程序中需要格式化输出金额,Oracle提供了服务端的fnd_currency.get_format_mask 方法,可以使用如下的代码来格式化:

? PLSQL

1
2
3
4
5
l_amount_char    varchar2(100);
l_amount number := 100000;
l_currency_code varchar2(30) := 'USD';   l_amount_char := to_char(amount, fnd_currency.get_format_mask(l_currency_code,30))

3,在Report报表中格式化金额

对于在Report报表中格式化金额,Oracle专门提供了用户出口函数来解决这个问题,相对步骤更加复杂一些,就留作其它文章再描述吧。

http://oracleseeker.com/2009/08/20/format_amount_mask_using_dynamic_currency_in_oracle_ebs/

Oracle EBS客户化程序中格式化金额的更多相关文章

  1. Oracle EBS Web ADI 中的术语

    Oracle EBS Web ADI 中的术语 (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) 异步调用异步调用是这样子的,和引入接口表中的数 ...

  2. Oracle EBS的BIP报表中显示特殊字体

    http://oracleseeker.com/2009/08/25/font_mapping_setup_for_special_character_print_in_oracle_ebs_bip/ ...

  3. MYSQL 、Oracle、SQLServer 数据库中时间的格式化输出

    在MYSQL 中格式化输出 date_forma t(date,'yyyyMMddHHmmss') Oracle 中格式化输出 to_char(time ,'yyyyMMddHHmmss') SQL ...

  4. 在net安装程序中部署oracle客户端全攻略

    在net安装程序中部署oracle客户端全攻略 主要的是要做三件工作: 打包文件,写注册表,注册环境变量说明:我的oracle版本为9, 在2000 advanced server 上测试通过,可以正 ...

  5. Oracle EBS中分类账和法人实体 的关系(有sql语句实例)

    Oracle EBS中分类账和法人实体 的关系(有sql语句实例) 2012-12-06 16:05 2822人阅读 评论(0) 收藏 举报  分类: Oracle EBS(12)  Oracle数据 ...

  6. Oracle EBS应用笔记整理 (转自IT++ flyingkite)

    ***************************************************** Author: Flyingkite Blog:   http://space.itpub. ...

  7. Oracle Ebs R12 SLA与GL关系变化

    http://www.cnblogs.com/bruce_zhao/p/3809886.html Oracle Ebs R12 SLA与GL关系变化 SLA概念:SLA(Subledger Accou ...

  8. Oracle EBS R12经验谈(二)

    作者: jianping.ni    时间: 2009-2-13 12:52     标题: Oracle EBS R12经验谈(二) OAF页面:银行帐户开户人LOV值列表无值    在输入 应付超 ...

  9. Oracle EBS R12多组织(多OU)访问架构

    Oracle EBS R12多组织访问架构 多组织架构实现了经营单位(OU)的数据安全性,在底层数据表中有一列ORG_ID来记录数据所属的经营单一,所有多OU的基表都是以"_ALL" ...

随机推荐

  1. 02 - Unit09:动态SQL

    动态SQL 什么是? 系统运行过程中,动态生成的SQL语句 为什么? 当我们不能确定用户操作,所要使用的具体SQL的时候. 案例: 搜索笔记功能 按用户名 笔记本名 笔记名 搜索 搜索功能 按用户 A ...

  2. 【并发编程】Executor架构介绍

    要点总结 Executor表示的任务类型 主要有3种: Runnable: 无返回值,无异常抛出: Callable:有返回值,可以异常抛出: Future任务: 表示异步计算,可取消: 通过newT ...

  3. Java 判断是否包含指定的子串 contains()

    Java 手册 contains public boolean contains(CharSequence s) 当且仅当此字符串包含指定的 char 值序列时,返回 true. 参数: s - 要搜 ...

  4. OPENVPN2.3配置文档官方说明

    openvpn Section: Maintenance Commands (8)Index NAME openvpn - secure IP tunnel daemon. SYNOPSIS open ...

  5. java之压缩流(ZipOutputStream)

    一.文件压缩,是很有必要的,我们在进行文件,传输过程中,很多时候都是,都是单个文件单个文件发送接收,但是当数据量特别大,或者文件数量比较多的时候,这个时候就可以考虑文件压缩. 二.优势:文件压缩过后, ...

  6. 由浅入深了解Thrift(1,2,3)

    由浅入深了解Thrift(一)——Thrift介绍与用法 由浅入深了解Thrift(二)——Thrift工作原理 由浅入深了解Thrift(三)——Thrift server端的几种工作模式分析

  7. ggplot2 texts : Add text annotations to a graph in R software

    http://www.sthda.com/english/wiki/ggplot2-texts-add-text-annotations-to-a-graph-in-r-software Instal ...

  8. springcloud(六) Hystrix 熔断,限流

    Hystrix 熔断: 首先仍然启动Eureka,这里就不说了. OrderController.java: package com.tuling.cloud.study.user.controlle ...

  9. TCP接入层的负载均衡、高可用、扩展性架构

    一.web-server的负载均衡 互联网架构中,web-server接入一般使用nginx来做反向代理,实施负载均衡.整个架构分三层: 上游调用层,一般是browser或者APP 中间反向代理层,n ...

  10. Grapher

    [Grapher] You use Grapher to visualize and analyze implicit and explicit equations. You can graph eq ...