FORM开发基本内容整理Word格式.docx

上传人:b****3 文档编号:16447069 上传时间:2022-11-23 格式:DOCX 页数:15 大小:21.93KB
下载 相关 举报
FORM开发基本内容整理Word格式.docx_第1页
第1页 / 共15页
FORM开发基本内容整理Word格式.docx_第2页
第2页 / 共15页
FORM开发基本内容整理Word格式.docx_第3页
第3页 / 共15页
FORM开发基本内容整理Word格式.docx_第4页
第4页 / 共15页
FORM开发基本内容整理Word格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

FORM开发基本内容整理Word格式.docx

《FORM开发基本内容整理Word格式.docx》由会员分享,可在线阅读,更多相关《FORM开发基本内容整理Word格式.docx(15页珍藏版)》请在冰豆网上搜索。

FORM开发基本内容整理Word格式.docx

FND_ORG.CHOOSE_ORG;

五、设置WINDOW的TITLE

1.根据把ChooseORG加在FORM上还是BLOCK上定将以下语句写在其中一个触发器中,WHEN-NEW-FORM-INSTANCE或者WHEN-NEW-BLOCK-INSTANCE:

APP_WINDOW.SET_TITLE('

RESULT'

:

PARAMETER.ORG_CODE);

或者:

SET_WINDOW_PROPERTY(window_name,title,'

你要写的标题'

六、记录指示器

1.新增ITEM,设置ITEM的属性:

子类信息:

设成DRILLDOWN_RECORD_INDICATOR,数据库项:

否.

七、客制化菜单

1.增加一个自定义Form级的触发器(SPECIAL11)

--名字必须定义为“SPECIAL+数字”,否则会报错。

并且数字的大小决定了菜单出现的先后顺序。

数字还有更大作用就是决定了,自定义菜单选项放在哪个主菜单下。

  SPECIAL1—SPECIAL15在“工具”主菜单下。

  SPECIAL16—SPECIAL30在“报表”主菜单下。

SPECIAL31—SPECIAL45在“活动”主菜单下。

2.在Form级触发器WHEN-NEW-FORM-INSTANCE中添加如下代码进行调用:

APP_SPECIAL.INSTANTIATE('

菜单触发器名'

菜单显示名称'

'

TRUE,'

LINE'

--可根据不同数据块,实现客制化菜单是否可用,语句:

app_special.enable('

SPECIAL11'

property_off);

八、客制化右键菜单

1.在FROM级增加自定义触发器(名字规则为:

POPUP+N)

2.在右键菜单所在的ITEM或BLOCK的“PRE-POPUP-MENU”触发器上初始化菜单,增加代码如下:

APP_POPUP.INSTANTIATE('

POPUP10'

TRUE,'

POPUP3'

FALSE,NULL);

九、实现手电筒查找的功能

1.打开标准FORM---APPSTAND.fmb。

将对象组中的QUERY_FIND拖至待开发的FORM中。

继承为子类。

将FORM的第一个导航块及控制台窗口设成QUERY_FIND。

2.打开QUERY_FIND画布,改写“新建”、“查找”两个按钮WHEN-BUTTON-PRESS之中的代码:

NEW代码:

APP_FIND.NEW('

查询的数据块名'

FIND代码:

:

PARAMETER.G_QUERY_FIND:

='

TRUE'

;

APP_FIND.FIND('

FALSE'

3.设置QUERY_FIND数据块的“前一导航数据块”为要实现询查功能的数据块。

4.修改QUERY_FIND数据块KEY-NXTBLK触发器代码如下:

APP_FIND.FIND('

5.修改QUERY_FIND窗口的标题及尺寸,并在QUERY_FIND画布上创建要查找的条件ITEM。

6.在要实现查询的数据块,创建PRE-QUERY触发器,将各查询条件的值赋给块上的item,如下:

If:

parameter.g_query_find='

then

APP_FIND.QUERY_RANGE(:

query_find.dept,:

query_find.dept,'

test_livia.test_dept'

APP_FIND.QUERY_RANGE(:

query_find.in_date_from,:

query_find.in_date_to,'

test_livia.test_indate'

endif;

  --注:

APP_FIND.QUERY_RANGE参数前两个是QUERY_FIND中的item(主要用于范围参数form/to),后一个是查询块中的item。

7.在要实现查询的数据块,再创建QUERY_FIND触发器,增加代码如下:

APP_FIND.QUERY_FIND('

QUERY_FIND'

一十、文件夹功能(注意每个对象都要设子类信息)

1.完成普通界面的各个对象设置;

2.在同一窗口打开标准的Form和我们自己客制的Form,并且选择APPSTAND.FMB的ObjectGroupsSTANDARD_FOLDER然后用鼠标拖动至我们自己的Form的ObjectGroups,继承为子类。

不要关闭APPSTAND.FMB。

3.做完上面的步骤后,检查一下Attachedlibraries里面有没有APPFLDR。

如果没有,我们需要从resource中手工添加进来。

4.增加StackedCanvas‘FOLDER_STACK’这一步是必须的,而且你期望实现Folder拖动功能的那些Item都是放在这个Canvas里面,这个StackedCanvas又是放在前面我们建立的正常主Canvas上面。

5.创建控制块MY_FOLDER_PROMPT,设置块的属性(子类信息:

block;

数据库数据块:

否);

6.在控制块新增ITEM,即要在stacked-canvas上实现拖动的ITEM的列名。

设置item属性(对象类型:

显示项;

FOLDER_PROMPT_MULTIROW;

默认值:

即显示的列名)

7.在控制块增加相关的item:

Item

Property

Value

ORDER_BY1

ORDER_BY2

ORDER_BY3

ItemType

PushButton

SubclassInformation

FOLDER_ORDERBY

Canvas

MY_FOLDER

X/Yposition、Width、Height

0(此四项0是这是这个Item不需要显示出来,是因为目前我们不需要利用几个Button.)

FOLDER_OPEN

TriggerWHEN-BUTTON_PRESSED

copy('

OPEN'

global.folder_action'

execute_trigger('

folder_action'

FOLDER_TITLE

DisplayItem

DYNAMICTITLE

FOLDER_DUMMY

TextItem

TOOLBAR

8.增加FORM级和BLOCK级的相关trigger。

Level

Trigger

Event

Form

FOLDER_ACTION

app_folder.event(:

global.folder_action);

WHEN-NEW-FORM-INSTANCE

app_folder.define_folder_block

('

MY_FOLDER'

--'

ObjectName'

(一般是该form的名称,有多个文件夹时,在form名称后加下划线接01,如:

MY_FOLDER_01)

'

folder_block'

MY_FOLDER_PROMPT'

prompt_block'

FOLDER_STACK'

stacked_canvas'

window'

NULL--'

disabledfunctions'

);

/*有多个文件夹时,在每个app_folder.define_folder_block语句后面加上下面的一行代码:

app_folder.event('

INSTANTIATE'

*/

Block

PRE-BLOCK

PRE-BLOCK'

POST-BLOCK

POST-BLOCK'

WHEN-NEW-BLOCK-INSTANCE

WHEN-NEW-BLOCK-INSTANCE'

PRE-QUERY

PRE-QUERY'

KEY-EXEQRY

KEY-EXEQRY'

KEY-NEXT-ITEM

KEY-NEXT-ITEM'

KEY-PREV-ITEM

KEY-PREV-ITEM'

备注

最简单的方式是直接把标准Form‘APPSTAND.fmb’中的Block‘SAMPLE_FOLDER’中的各个Triger复制过来

一十一、说明性弹性域

1.创建数据表:

使用说明性弹性域的数据表,必须含有ATTRIBUTE_CATEGORY及若干ATTRIBUT字段。

ATTRIBUTE_CATEGORY字段:

指弹性域的CONTEXT字段。

ATTRIBUT字段:

指各弹性栏位实际使用的字段。

2.注册弹性域表

register_table(p_appl_short_nameinvarchar2,

p_tab_nameinvarchar2,

p_tab_typeinvarchar2,

p_next_extentinnumberdefault512,

p_pct_freeinnumberdefault10,

p_pct_usedinnumberdefault70);

3.注册弹性域列

register_column(p_appl_short_nameinvarchar2,

p_tab_nameinvarchar2,

p_col_nameinvarchar2,

p_col_seqinnumber,

p_col_typeinvarchar2,

p_col_widthinnumber,

p_nullableinvarchar2,

p_translateinvarchar2,

p_precisioninnumberdefaultnull,

p_scaleinnumberdefaultnull);

4.注册弹性域列,操作路径:

应用开发员=>

弹性域=>

说明性=>

注册。

5.注册弹性域段,操作路径:

段(注意global是共有栏位)。

6.在FORM中启用说明性弹性域:

首先,修改FORM级的一些触发器;

●POST-FORM:

APP_STANDARD.EVENT('

POST-FORM'

●PRE-QUERY:

FND_FLEX.EVENT('

●POST-QUERY:

POST-QUERY'

●PRE-INSERT:

PRE-INSERT'

●PRE-UPDATE:

PRE-UPDATE'

●WHEN-VALIDATE-RECORD:

WHEN-VALIDATE-RECORD'

●WHEN-NEW-FORM-INSTANCE:

fnd_descr_flex.define(BLOCK=>

<

BLOCK_NAME>

FIELD=>

DISPLAYFIELDNAME>

APPL_SHORT_NAME=>

APPL_SHORT_NAME>

DESC_FLEX_NAME=>

DESC_FLEX_NAME>

7.然后在需要使用弹性域的BLOCK增加弹性域的item,设置item属性;

(子类信息:

TEXT_ITEM_DESC_FLEX,数据库项:

否)。

设置DESC_FLEX项的以下触发器:

●WHEN-VALIDATE-ITEM:

FND_FLEX.EVENT('

WHEN-VALIDATE-ITEM'

●WHEN-NEW-ITEM-INSTANCE:

WHEN-NEW-ITEM-INSTANCE'

●KEY–EDIT:

APP_STANDARD.EVENT('

KEY-EDIT'

●KEY–LISTVAL:

KEY-LISTVAL'

一十二、附件功能

1.注册表和列

2.定义单据实体

3.定义单据类型:

●短文本类型,存放表:

FND_DOCUMENTS_SHORT_TEXT

●长文本类型,存放表:

FND_DOCUMENTS_LONG_TEXT

●Web页类型,存放表:

FND_DOCUMENTS_TL

●文件类型,存放表:

FND_LOBS

4.定义附件功能

一十三、表单个性化

1.操作菜单路径:

Help=>

diagnostics=>

CustomCode=>

personalize

一十四、LOV及联动

多个item调用同一个LOV时,删除联动:

可以调用APP_FIELD.clear_dependent_fields和APP_FIELD.set_dependent_field来将两个(或多个)Item建立关联,当一个为空时,另一个不可录入,反正,可录入,且父ItemField变化时,子Fields清空。

----------------------------------------------------------------------------------------------------------------------------------

APP_FIELD.clear_dependent_fields(

master_fieldVARCHAR2,

field1VARCHAR2,

field2VARCHAR2DEFAULTNULL,

field3VARCHAR2DEFAULTNULL,

field4VARCHAR2DEFAULTNULL,

field5VARCHAR2DEFAULTNULL,

field6VARCHAR2DEFAULTNULL,

field7VARCHAR2DEFAULTNULL,

field8VARCHAR2DEFAULTNULL,

field9VARCHAR2DEFAULTNULL,

field10VARCHAR2DEFAULTNULL)

实现:

如果master_field为空,则清空后续所有fieldn.

一十五、常用接口表或API

模块

业务表

标准请求

接口表

公开发布API

PO采购单

PO_VENDORS、PO_HEADERS_ALL、

PO_LINES_ALL、PO_LINE_LOCATIONS_ALL、

PO_DISTRIBUTIONS_ALL、PO_REQUISITION_HEADERS_ALL、

PO_REQUISITION_LINES_ALL、

PO_REQ_DISTRIBUTIONS_ALL

ImportStandardPurchaseOrders、

ImportPriceCatalogs

po_headers_interface

po_lines_interface

po_distributions_interface

错误:

po_interface_errors

po_change_api1_s.record_acceptance

po_change_api1_s.update_po

po_document_control_pub.control_document

OM销售单

OE_ORDER_HEADERS_ALL、OE_ORDER_LINES_ALL、WSH_DELIVERY_ASSIGNMENTS、WSH_DELIVERY_DETAILS

OrderImport

oe_headers_iface_all

oe_lines_iface_all

oe_actions_iface_all

oe_order_pub.process_order

APINVOICE应付发票

AP_INVOICES_ALL、AP_INVOICE_DISTRIBUTIONS_ALL、

AP_PAYMENT_SCHEDULES_ALL

PayablesOpenInterfaceImport

ap_invoices_interface、ap_invoice_lines_interface、

ap_interface_rejections

ARTRANSACTIONS应收发票

RA_CUSTOMER_TRX_ALL、

RA_CUSTOMER_TRX_LINES_ALL、

AR_PAYMENT_SCHEDULES_ALL、

RA_CUST_TRX_LINE_GL_DIST_ALL

AutoinvoiceMasterProgram

ra_interface_lines_all、

ra_interface_salescredits_all、

ra_interface_distributions、

ra_interface_errors_all

AR_INVOICE_API_PUB

BOM物料清单

MTL_SYSTEM_ITEMS_B、

BOM_INVENTORY_COMPONENTS、

BOM_OPERATION_SEQUENCES

BillandRoutingInterface

bom_bill_of_mtls_interface、

bom_inventory_comps_interface、

mtl_interface_errors

bom_bo_pub.process_bom

BOMROUTINGS工艺路线

BOM_DEPARTMENTS、BOM_RESOURCES、

BOM_DEPARTMENT_RESOURCES

bom_op_routings_interface、

bom_op_sequences_interface、

bom_op_resources_interface、

bom_rtg_pub.process_rtg

INVItems物料

MTL_SYSTEM_ITEMS_B、MTL_SYSTEM_ITEMS_TL、

MTL_MATERIAL_TRANSACTIONS、

MTL_SECONDARY_INVENTORIES、

MTL_ITEM_SUB_INVENTORIES、

MTL_ITEM_LOCATIONS

ImportItems

mtl_system_items_interface

mtl_item_revisions_interface

inv_item_grp.create_item

INVItemCategories物料类别

MTL_ITEM_CATEGORIES

ItemCategoryAssignmentOpenInterface

mtl_item_categories_interface

inv_item_category_pub

APSuppliers供应商

AP_SUPPLIERS、

AP_SUPPLIER_SITES、

AP_SUPPLIER_CONTACTS

SupplierOpenInterfaceImport

ap_suppliers_int、

ap_supplier_sites_int、

ap_sup_site_contact_int、

ap_po_v

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 远程网络教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1