OAF知識の統合

1、processFormRequestはwebBeanのプロパティを変更することはできません。

2、row.setNewRowState(行。STATUS_NEW / STATUS_INITIALIZED)。

二つの状態の違い:

  a.STATUS_NEW新しい行を効果的に検証すると、必要に応じて、内に充填されていない場合、新たな故障を、
    しかしSTATUS_INITIALIZEDが検証されない
  Bを。セットSTATUS_INITIALIZED状態を新しいした後、新しい行が発現されます状態外し、コミットトランザクションに参加しない、検証に参加していません、
ページが更新されるまで、その後、OAフレームワークは自動的に再従事し、物事を検証するために、状態STATUS_NEWに戻って設定します


VO文の増加:

EmployeesVOImpl VO =(EmployeesVOImpl)getEmployeesVO1( ); // VOを受ける
IFが行われたか否か//(vo.isPreparedForExecution()!)を決定する
{
  Vo.executeQuery(); //最初VO行わなければならない
}
(行行= vo.createRow ); //新しい行を作成
row.setNewRowState(Row.STATUS_NEW); //タイプに割り当てるために、新しい行を作成
//はVOに新しく作成された行に参加します。vo.insertRow(行)
//ここでVO(データ・キャッシュ)、状態が状態(データベースに直接提出した後、保存)永続的で
新しい列は、一般的にアイコンを削除していない、あなただけのクエリを実行するので、VOのアイコンプラスのデフォルト値を削除する必要が削除される
列の割り当てをまたはcreateRow();値row.setAttribute( "deleteFlag"、true)を設定した後 。



VOの文を削除します:

1)、得到行:行の 
行=(XXXVORowImpl)deleteIter.getRowAtRangeIndex(I);
或行[] =行のvo.getFilteredRows( "OutPlanDetId"、detailId); //行[i]は
2)删除并其提交
行。削除();
getTransaction()(コミット)。



3、プロパティ項目がtrueに設定されて無効にします

のみグリップタブ未満の値を得る;(pageContext.getParameter(「techTrialDate」))インターフェースは、コード値が得られない、変更することができません


図4に示すように、ドロップダウンボックス及び値に対応する制御LOV値を隠し

この構成は、HTMLタグを形成しないので、入力の値を得ることができないので、プロパティにCSSを設定するために、またはPGがformvalueある設定項目のスタイル

OAMessageTextInputBean sAppPropCodeValue = 
            (OAMessageTextInputBean)webBean.findChildRecursive( "SAppPropCodeValue")。
sAppPropCodeValue.setRendered(偽);


5、命名規則:cux.oracle.apps.inv001(これはオンデマンドで略語です)***。 

INV先代、実行したときので、対応するアプリケーションモジュールINV見つけるために、データベースに行く

6を、表の各フィールドはVOのマッピングを持っている必要があり、制御が必要であることを意味するyesに設定が必要でした。

7、一般的に3つのイベントで使用されるLOV:lovPrepare、lovFilter、lovUpdate 

lovPrepare:クエリのアイコン(懐中電灯)トリガーイベントをクリックします(通常はここで渡されたパラメータは、顧客のフィルタ条件値)
lovFilter:それは多くの場合、クライアントのフィルタ基準に追加されたトリガイベントの[スタート]ボタンのポップアップページをクリックします。
lovUpdate:メインデータページトリガーページに戻るクエリ結果を選択した後


        の文字列イベント= pageContext.getParameter(「イベント」);
        IF(pageContext.isLovEvent()){[//// lovUpdateこのLovInputページからデータを選択するか否かを判定するメインページのページ・トリガに戻した後
            OAMessageLovInputBean SCategory = 
                (OAMessageLovInputBean)webBean.findChildRecursive( "SCategory");
            ハッシュテーブルlovResults = 
                pageContext.getLovResultsFromSession( "CategoryLOV");


            OAMessageLovInputBean SForm = 
                (OAMessageLovInputBean)webBean.findChildRecursive( "SForm")。
            ShapeVOImpl formVO =(ShapeVOImpl)am.findViewObject( "ShapeVO1")。


            IF( "类别1" .equals(lovResults.get( "説明"))){
                formVO.setWhereClause( "( '形态1'、 '形态2')でFlexValue")。
                formVO.executeQuery();
            }
        }

8、JDeveloperのデータベース接続

ビジネス・コンポーネントは、Oracle Applicationsの和

図9は、別のメソッドを呼び出していています

ApplicationModule SS = am.findApplicationModule( "SubInvLovAM1")。
SubInvOrgLovVOImplのVO =(SubInvOrgLovVOImpl)ss.findViewObject( "SubInvOrgLovVO1")。



10、機能およびインベントリビューの組織CUX_INV_USE_UNIT_V

。am.getOADBTransaction()getResponsibilityId() -責任
am.getOADBTransaction()getResponsibilityApplicationId() -アプリケーション開発者

11、関数を呼び出します:

String sqlStr="{? = call cux_common_wyb_pkg.outbillcancelchecksatus(?,?)}";
CallableStatement proc = null;
String v_result = null;
OADBTransaction tr = getOADBTransaction();
proc = tr.createCallableStatement(funcStr, 1);
try {
//注册返回类型
proc.registerOutParameter(1, Types.VARCHAR);
proc.setString(2, idOne);
proc.setString(3, idTwo);
proc.execute(); //执行
v_result = proc.getString(1); //获得结果
proc.close();
} catch (SQLException e) {
throw new OAException("执行存储过程出现错误:" + funcStr, OAException.ERROR);
}

12、调用数据库存储过程用这种方式         

CallableStatement st = null;                               
String x_succ_flag;                      
String x_error_msg;
String stmt = "begin " + strImportPkg + "(p_file_id => :1," +
"p_template_id => :2, " +
"x_succ_flag => :3, " +
"x_error_msg => :4); " + "end;";    
OADBTransaction tr = getOADBTransaction();
st = tr.createCallableStatement(stmt, 1);     

try 
{
 // Bind the input parameters
 //Integer.parseInt
 st.setString(1, fileId);
 st.setString(2, templateCode);
 // Register return variables
 st.registerOutParameter(3, Types.VARCHAR);
 st.registerOutParameter(4, Types.VARCHAR);
 st.execute();
 // Assign returned values to variables
 x_succ_flag = st.getString(3);
 x_error_msg = st.getString(4);
 st.close();
} catch (SQLException e)
{
 //throw OAException.wrapperException(e);
 throw new OAException("执行存储过程出现错误:" + stmt, OAException.ERROR);

13、提示消息

EO方面字段验证抛出异常http://www.cnblogs.com/eastsea/p/4729709.html

OAException(String appShortName,//应用短名

                  String messageName, //消息名称

                    MessageToken[] messageTokens,//消息参数

                     byte messageType, //异常类型

                      Exception[] details)//异常明细

可以省略其中部分参数,例如: OAException(String messageName)

                          OAException(String messageName, byte messageType)

                          OAException(String messageName, MessageToken[],byte messagType)

OAException message =

   new OAException("messageStr", OAException.CONFIRMATION);

pageContext.putDialogMessage(message);

//提示消息(类似抛出异常消息)

String msg =am.getOADBTransaction().getMessage("CUX","CUX_SELECT_ONE_DATA",null);

//msg可以直接是中文

throw new OAException(msg,OAException.WARNING);


消息定义都建在CUX应用产品下面:

throw new OAException("AK","FWK_TBX_CATEGORY_NOT_FOUND");最简单方式



select * from fnd_application whereapplication_short_name ='CUX'

update Fnd_New_Messages set application_id=20003 where message_name like'CUX%';

一个是查application_id查到了以后就update)

 

同时消息提示可以传入参数

MessageToken[] tokens = { new MessageToken("COLNAME","仓库") };       

throw new OAException(shortName, infoName,tokens, OAException.WARNING,null);

1)、CuxMsgUtils.actWarningInfo("OP","发送

","CUX",CuxMsgConstants.CUX_MSG_OPERATE_SUCCEED);

//只有状态为1(登录)、3(待转发仓库)、A(打回采购中心)的数据可以发送                2)、CuxMsgUtils.actWarningInfo("STATUS","登录、待转发仓库、打回采购中心","CUX",CuxMsgConstants.CUX_MSG_ONLY_STATUS_OPERATE);



14、webBean子类:
OAMessageTextInputBean
OAMessageLovInputBean
OAMessageDateFieldBean
OAFormValueBean
OAMessageCheckBoxBean
OAMessageChoiceBean
OAMessageStyledTextBean
OASubmitButtonBean
OAButtonBean
OABodyBean


15、各大网站
http://www.codepub.com/源代码

http://docs.oracle.com/cd/A97337_01/ias102_otn/buslog.102/bc4j/jboerrormessages.html#55003  JBO错误上这个地址一下就知道是什么错误的还有解决办法


おすすめ

転載: www.cnblogs.com/AI-xiaocai/p/11482098.html