定义弹性地址验证
您可以使用弹性地址格式功能来输入并验证特定国家/地区格式的地址。请参阅:弹性地址
您可以为每一种地址格式定义国家/地区特定的验证,此验证可控制您在某些地址要素中输入的信息。例如,您可以将法国地址的城市限制在一个预定义的列表中,或将邮政编码限制在某个数字范围之内。
验证的形式可以是简单的值列表,也可以是地址要素之间的复杂父子(上下层)关系。本节将讨论如何通过弹性地址格式来执行值列表验证。有关复杂验证的信息,请参阅《Oracle 应用程序弹性域指南》。
本节使用南欧式地址格式来输入西班牙或法国地址,以向您示范如何设置地址格式值列表。假定您要在此弹性域中通过“城市”字段来输入值列表,取决于所输入地址的国家/地区,此字段将列出西班牙或法国的城市。有关南欧和其它地址格式的详情,请参阅:地址格式映射
前提条件
要定义弹性地址格式验证,请执行以下步骤:
此实例使用以下地点:法国、西班牙、波尔多、巴塞罗那、里昂、巴尔博亚、巴黎和马德里。
4. 请注意双字符简码,此简码可以识别您要对照值列表以进行验证的每个国家/地区。
注意:标识正确的国家/地区代码非常重要。否则,值列表将不返回这些国家/地区的数据,您将无法在该指定数值的地址要素中输入任何信息。
警告:所有地址弹性域之间的地址格式均应相同。如果格式不相同,则您创建的地址将不能兼容于不同的窗口。
创建地址要素的有效值列表
要创建您要验证的每个地址要素的有效值列表,请执行以下步骤:
1. 使用应用开发者责任,定位至“特殊快速编码”窗口。
快速编码应属于应用对象程序库,并应具有系统访问级别。
您应统一所有弹性地址快速编码的名称以避免混淆。例如,FAF_<column_name>。此处 <column_name> 是您要指定其值列表选项的地址栏名。在此实例中,您可以将快速编码类型称为 FAF_CITY。
注意:如果使用特定地址格式的国家/地区多于一个,则每个地址要素只能具有一个快速编码类型。例如,所有使用北欧地址格式的国家只能具有一个城市快速编码类型。建议您将此方法用于所有的快速编码类型。鉴于这些快速编码较易维护,在使用时您可以不管国家/地区数目的多少。
3. 输入有效地点列表。您仅需要输入三则信息:语言、代码和含义。
代码是一个唯一标识,它可以使系统在显示值列表时识别要选择的城市。因此,代码栏必须命名为 <country_code><n>,此处 <country_code> 是您所输入的国家/地区之地址信息的双字符简码,<n> 是一个序号,可用以确保您的代码是唯一的。
|
ES1
| 巴塞罗那
|
ES2
| 巴尔博亚
|
ES3
| 马德里
|
FR1
| 波尔多
|
FR2
| 里昂
|
FR3
| 巴黎
|
定义值集
要定义列出地点值的值集,请执行以下步骤:
例如,FAF_<address_column>。此处 <address_column> 是您要附加到值集的栏名。在此实例中,您应将值集称为 FAF_CITY。
3. 确保格式类型和最大大小与您填入此值集的栏类型和大小相对应。
7. 输入 FND_LOOKUP_VALUES 作为表名。
WHERE LOOKUP_TYPE = '<QuickCode_name>' AND SUBSTR(LOOKUP_CODE,1,2) =:WORLD.FAF_COUNTRY
此处 <QuickCode_name> 是您定义的快速编码名,它包括了您要纳入值列表的有效值。请参阅:创建地址要素的有效值列表
WHERE LOOKUP_TYPE = 'FAF_CITY' AND SUBSTR(LOOKUP_CODE,1,2) =:WORLD.FAF_COUNTRY
字段:WORLD.COUNTRY 存在于使用弹性地址的所有窗口中,并包含您当前输入地址的国家/地区双字符简码。您可以使用此简码,在可供许多国家和地区使用的弹性域内开发特定的国家/地区验证。
指定值集至地址要素
在此实例中,我们将以南欧地址格式为地点地址说明性弹性域指定城市段的值集。
要为说明性弹性域中的相应地址要素指定值集,请执行以下步骤:
1. 使用应用开发者责任,定位至“说明性弹性域段”窗口。
2. 查询相应的地址说明性弹性域,然后撤消选定“冻结弹性域定义”复选框。
|
银行地址
| 银行
|
汇款地址
| 汇入地址、客户
|
支票地址
| 付款汇总、付款概览
|
地点地址
| 供应商
|
3. 定位至“上下文字段值”备选区域,然后选择您要对其指定值集的地址格式。
5. 输入您创建的值集名(此实例中为 FAF_CITY)。
6. 返回“说明性弹性域”窗口,并选定“冻结弹性域定义”复选框。
8. 遵循以上步骤,为每个地址说明性弹性域设置相同的验证。
所有地址弹性域之间的地址格式均应相同。如果格式不相同,则您创建的地址将不能兼容于不同的窗口。
警告:如果使用此弹性域的任何国家/地区没有在快速编码中定义任何数据,则不要指定弹性域的值集。使用值列表将不会返回这些国家/地区的数据,您也将无法在使用值集的地址要素中输入任何信息。
另请参阅
弹性地址
地址格式映射
设置弹性地址
创建自定义地址格式
输入弹性地址
维护国家和地区