1

現在、テーブル ID のみを使用できますが、これは数値であるため意味がありません。少しのコード例は本当に素晴らしいでしょう。

4

1 に答える 1

3

新しいRunBaseReportクラスを作成し、メソッドでSysDatabaseLogレポートに名前を付けることを忘れないでください。lastValueElementName

dialogメソッドでテーブル名を入力します。拡張データ型を使用してTableNameルックアップを有効にします。

Object dialog() 
{
    DialogRunbase dlg = super();
    ;
    dialogTableName = dlg.addFieldValue(typeId(TableName),tableId2Name(tableId));      
    return dlg;  
}

を呼び出した後queryRun.query()、メソッド内ののテーブルID範囲を更新します。関数を使用してテーブルIDに変換します。getFromDialogsuper()tableName2Id

boolean getFromDialog()
{
    boolean ret = super();
    ;
    tableId = tableName2Id(dialogTableName.value());
    this.queryrun().dataSourceNo(1).findRange(fieldNum(SysDatabaseLog,Table)).value(queryValue(tableId));
    return ret;
}

このvalidateメソッドで、テーブル名が有効であることを検証します(テーブルIDが0でない、テーブルが一時的でないなど)。

最後に、レポートではなくクラスを指すように出力メニュー項目を変更します。

警告:コードはテストされていません!

于 2009-09-03T08:36:51.323 に答える