マルチクロスレポート使用時のサンプルを以下に示します。
サンプルの内容は以下を含みます。
マルチクロスレポートの問い合わせファイルの読み込み
表側におかれた管理ポイントの削除
時間フィールドにおかれた時間型管理ポイントの期間の種類を変更
問い合わせの実行
集計結果を結合してExcel 形式で保存
【例】
========================================= Sub MyFunc( ) Dim rc As Integer Dim hCatalog As Integer Dim page As Integer Dim hCPoint As Integer Dim number As Integer Call NaviOpenSession ( rc, "userid", "password", "server") Call NaviConnectOracle (rc, "oracle_userid", "oracle_password" ) Call NaviConnectResourceNoAuth(rc) hCatalog = NaviOpenCatalog ( rc, "filepath") page = 2 Call NaviSetActiveDocPage (hCatalog, rc, page ) ' マルチクロスレポート中のアクティブにするページを指定 ' hCatalog : 問い合わせファイルのハンドル ' rc : 返却コード ' page : アクティブにするページ番号 hCPoint = NaviGetControlPoint (hCatalog, rc, "label", NAVI_SIDE, 0) ' 管理ポイントのハンドルを取得 ' hCatalog : 問い合わせファイルのハンドル ' rc : 返却コード ' "label" : 管理ポイントの項目名 ' NAVI_SIDE : 表側として指定されている管理ポイント ' 0 : 同じ管理ポイントがある場合は、最初に見つかった管理ポイント Call NaviRemoveControlPoint (hCatalog, hCPoint, rc) ' 管理ポイントの削除(表側の場合、すべてのページの管理ポイントが削除されます) ' hCatalog : 問い合わせファイルのハンドル ' hCPoint : 管理ポイントへのハンドル ' rc : 返却コード Call NaviChangePeriodKind (hCatalog, rc, NAVI_PERIOD_STARTEND) ' 時間型管理ポイントの期間の種類を「開始期から終了期まで」に変更 ' (アクティブに指定したページの管理ポイントのみ変更されます) ' hCatalog : 問い合わせファイルのハンドル ' rc : 返却コード Call NaviExecuteCatalog ( hCatalog, rc, number, NAVI_DOWNLOADNOW, 0 ) ' すべてのページの問い合わせが実行されます Call NaviSaveData (hCatalog, rc, "xlsx_filepath", NAVI_XLSX+NAVI_MULTI_UNITED, NAVI_NOCHANGE) ' すべてのページの集計結果を結合してExcel 形式でファイル出力 Call NaviCloseCatalog (hCatalog) '問い合わせファイルをクローズします Call NaviCloseSession 'ログオフ End Sub =========================================