Forms 開發(fā)之常用編碼_第1頁
Forms 開發(fā)之常用編碼_第2頁
Forms 開發(fā)之常用編碼_第3頁
Forms 開發(fā)之常用編碼_第4頁
Forms 開發(fā)之常用編碼_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

一、業(yè)務(wù)實(shí)體的編碼1、PRE-FORM觸發(fā)器DECLAREl_default_org_idNUMBER;l_default_ou_nameVARCHAR2(240);l_ou_countNUMBER;l_no_access_flagVARCHAR2(10);BEGINFND_STANDARD.FORM_INFO('$Revision:120.3$','DefineCategoryForm','INV','$Date:2006/08/1002:48$','$Author:anakas$');app_standard.event('PRE-FORM');app_window.set_window_position('CATEGORY_WINDOW','FIRST_WINDOW');--初始化多組織訪問環(huán)境mo_global.init('DA');mo_utils.get_default_ou(l_default_org_id,l_default_ou_name,l_ou_count);copy(l_default_org_id,'PARAMETER.mo_default_org_id');copy(l_default_org_id,'PARAMETER.mo_default_ou_name');copy(l_default_org_id,'PARAMETER.mo_ou_count');IFl_default_org_idISNOTNULLTHENcopy(l_default_org_id,'PARAMETER.old_org_id');mo_global.set_policy_context('S',l_default_org_id);ELSEmo_global.set_policy_context('M',NULL);ENDIF;/*--獲取默認(rèn)的OU名稱和ID賦給塊中的字段IFname_in('PARAMETER.MO_DEFAULT_ORG_ID')ISNOTNULLTHENcopy(name_in('PARAMETER.MO_DEFAULT_OU_NAME'),'HEADERS.ORGANIZATION_NAME');copy(name_in('PARAMETER.MO_DEFAULT_ORG_ID'),'HEADERS.ORG_ID');ENDIF;*/END;2、塊中的WHEN_CREATE_RECORD觸發(fā)器DECLAREl_org_idNUMBER;l_org_nameVARCHAR2(240);BEGINl_org_id:=name_in('PARAMETER.MO_DEFAULT_ORG_ID');l_org_name:=name_in(PARAMETER.MO_DEFAULT_OU_NAME);IFname_in('PARAMETER.MO_DEFAULT_ORG_ID')ISNOTNULLTHENcopy(l_org_name,'HEADERS.ORGANIZATION_NAME');copy(l_org_id,'HEADERS.ORG_ID');app_item_property.set_property('HEADERS.ORGANIZATION_NAME',ITEM_IS_VALID,PROPERTY_TRUE);ELSEcopy(NULL,'HEADERS.ORGANIZATION_NAME');copy(NULL,'HEADERS.ORG_ID');ENDIF;END;3、OU名稱的LOVSELECTanization_id,organization_nameFROMhr_operating_unitshrWHEREmo_global.check_access(anization_id)='Y'ORDERBYorganization_name9、參數(shù)的定義:二、描述性彈性域1、BLOCK六個(gè)事件1,PRE-INSERTfnd_flex.event('PRE-INSERT');fnd_standard.set_who;2,PRE-UPDATEfnd_flex.event('PRE-UPDATE');fnd_standard.set_who;3,PRE-QUERYfnd_flex.event('PRE-QUERY');4,POST-QUERYfnd_flex.event('POST-QUERY');5,WHEN-NEW-ITEM-INSTANCEfnd_flex.event('WHEN-NEW-ITEM-INSTANCE');6,WHEN-VALIDATE-ITEMfnd_flex.event('WHEN-VALIDATE-ITEM');2、DFITEM2個(gè)事件1,WHEN-NEW-ITEM-INSTANCEfnd_flex.event('WHEN-NEW-ITEM-INSTANCE');2,WHEN-VALIDATE-ITEMfnd_flex.event('WHEN-VALIDATE-ITEM');3、觸發(fā)器WHEN-NEW-FORM-INSTANCE--初始化描述性彈性域FND_DESCR_FLEX.DEFINE( BLOCK=>'HEADER', FIELD=>'DF', APPL_SHORT_NAME=>'CCM', DESC_FLEX_NAME=>'CCM_CREDIT_LETTER_HEADERS' ); FND_DESCR_FLEX.DEFINE( BLOCK=>'CT_LINES', FIELD=>'DF', APPL_SHORT_NAME=>'CCM', DESC_FLEX_NAME=>'CCM_CREDIT_LETTER_CT_LINES' ); FND_DESCR_FLEX.DEFINE( BLOCK=>'PA_LINES', FIELD=>'DF', APPL_SHORT_NAME=>'CCM', DESC_FLEX_NAME=>'CCM_CREDIT_LETTER_PA_LINES' );三、行號的編碼1、建立相關(guān)變量pv_max_line_numP_PV_VALIDATE_FLAGP_RESET_PV_LINE_NUM新建一item:val_rec_fired_flag(N)2、需要在塊的下列觸發(fā)器事件中編碼2.1,pre_query.line_num('PRE-QUERY');2.2,post_queryDA_PV.line_num('POST-QUERY');2.3,when_create_recordif:PARAMETER.P_RESET_PV_LINE_NUM='Y'thencopy('1',:PARAMETER.pv_max_line_num);:PARAMETER.p_RESET_pv_LINE_NUM:='N';endif;DA_PV.line_num('INIT');2.4,WHEN-VALIDATE-RECORDDA_PV.line_num('WHEN-VALIDATE-RECORD');2.5,WHEN-NEW-RECORD-INSTANCEDA_PV.line_num('WHEN-NEW-RECORD-INSTANCE');2.6,ON-CLEAR-DETAILSIF:system.cursor_block='PV'ANDnvl(:system.coordination_operation,'X')in('CREATE_RECORD','NEXT_RECORD')THENcopy('Y',:PARAMETER.P_RESET_PV_LINE_NUM);ENDIF;3、需要在line_numitem一級的下列觸發(fā)器事件中編碼3.1WHEN-VALIDATE-ITEMunique_line_num.pv_line_num_unique;DA_PV.line_num('WHEN-VALIDATE-ITEM');4、有關(guān)行號唯一性的檢查line_numitem的編碼4.1、WHEN-VALIDATE-ITEMunique_line_num.pv_line_num_unique;line_num所在塊的編碼4.2、pre_insertunique_line_num.pv_line_num_unique;4.3、pre_updateunique_line_num.pv_line_num_unique;5、相關(guān)存儲過程的編碼:PROCEDUREpv_line_num_uniqueISnrecsnumber;BEGINselectcount(1)intonrecsfromda_budget_lines_allawherea.line_type=1anda.budget_header_id=:header.budget_header_idanda.LINE_NUM=:PV.LINE_NUManda.budget_line_id!=:PV.budget_line_id;if(nrecs>0)then Fnd_Message.Set_Name('FND','DA_ENTER_UNIQUE_LINE_NUM'); Fnd_Message.Error;raiseform_trigger_failure;endif;END;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ PROCEDUREline_num(eventVARCHAR2)IS x_max_line_numNUMBER:=0; x_lines_curr_maxNUMBER; BEGIN IF(event='WHEN-VALIDATE-ITEM')THEN DA_VISA_CONTROL_PKG.check_budget_unique('1',:HEADER.BUDGET_HEADER_ID,:PV.BUDGET_LINE_ID,:PV.LINE_NUM,:PARAMETER.P_PV_VALIDATE_FLAG); IF(to_number(name_in('PV.line_num'))<=0)THEN da_show_message('DA_ALL_ENTER_VALUE_GT_ZERO'); FND_MESSAGE.ERROR; RAISEFORM_TRIGGER_FAILURE; ENDIF; if:PARAMETER.P_PV_VALIDATE_FLAG='N'then da_show_message('DA_ENTER_UNIQUE_LINE_NUM'); fnd_message.error; raiseform_trigger_failure; endif; ELSIF(event='INIT')THEN IFNVL(to_number(name_in('PARAMETER.pv_max_line_num')),0)=0THEN DA_VISA_CONTROL_PKG.get_budget_max_num('1',to_number(name_in('HEADER.BUDGET_HEADER_ID')),X_max_line_num); IFX_max_line_numISNULLTHEN X_max_line_num:=0; ENDIF; copy(to_char(1+x_max_line_num),'PARAMETER.pv_max_line_num'); ENDIF; /* **IFthedatabaseMax.is>themaxlinenumberstoredinPARAMETER.max_line_num,then **copy1+thedatabaseMax.toLINES.line_num. */ x_lines_curr_max:=NVL(to_number(name_in('PARAMETER.pv_max_line_num')),0); IF(x_max_line_num>=x_lines_curr_max)THEN copy(to_char(1+x_max_line_num),'PV.line_num'); ELSE copy(to_char(x_lines_curr_max),'PV.line_num'); ENDIF; ELSIF(event='PRE-QUERY')THEN COPY(to_char(0),'PARAMETER.pv_max_line_num'); --ELSIF(event='PRE-QUERY')THEN --COPY(to_char(0),'PARAMETER.pv_max_line_num'); ELSIF(event='WHEN-VALIDATE-RECORD')THEN IFNVL(NAME_IN('PV.val_rec_fired_flag'),'N')!='Y'THEN copy(to_char(1+to_number(name_in('PARAMETER.pv_max_line_num'))),'PARAMETER.pv_max_line_num'); copy('Y','PV.val_rec_fired_flag'); ENDIF; ELSIF(event='POST-QUERY')THEN copy('Y','PV.val_rec_fired_flag'); ELSIF(event='WHEN-NEW-RECORD-INSTANCE')then ifupper(get_block_property('PV',status))=upper('NEW')and:System.Mode<>'ENTER-

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論