(現在 過去ログ90 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

No13431 の記事


■13431 / )  Re[4]: レポートの動的な項目名について
□投稿者/ ONnoji -(2022/07/30(Sat) 01:05:09)
    添付ファイルは後日削除しますので、イベント処理のリストを掲載しておきます。

    名札  メイン



    手続き定義開始 cmdテキストデータ出力Click( )
     変数宣言 自動,文字列{ &title = "cmdテキストデータ出力Click( )", &msg }
     変数宣言 自動,文字列{ &studentName }
     変数宣言 自動,文字列{ &year }
     変数宣言 自動,文字列{ &indexTblName = #一括パス名 + "index" }
     変数宣言 自動,文字列{ &outputTxtName = #一括パス名 + "test.txt" }
     変数宣言 自動,整数 { &multiTblNum }
     変数宣言 自動,整数 { &index }
     変数宣言 自動,整数 { &status }
     変数宣言 自動,整数 { &done }
     変数宣言 自動,整数 { &ans }
     変数宣言 自動,長整数{ &longError }

     編集表 &hwindow
     多重化
     &multiTblNum = #is表
    ┌if ( &multiTblNum )

    │ *----- begin インデクス作成 -----*
    │ 並べ替え { [生徒氏名] 昇順, [修得時期] 昇順 }

    │ ジャンプ 行番号 = 先頭
    │┌if ( .not #eof )
    ││
    ││ &studentName = [生徒氏名]
    ││ &year    = [修得時期]
    ││ &index    = 1
    ││
    ││ 行訂正 [インデックス] = &index
    ││ **トレース出力 _#行番号, "  ", &studentName, "  ", _&year, "  ", _&index
    │└end

    │┌繰り返し ( .not #eof )
    ││ ジャンプ 行番号 = 次行
    ││
    ││┌if ( .not #eof )
    │││
    │││┌if ( [生徒氏名] = &studentName )
    ││││
    ││││┌if ( [修得時期] <> &year )
    │││││ &index = &index + 1
    ││││└end
    │││├else
    ││││
    ││││ &index = 1
    │││└end
    │││
    │││ 行訂正 [インデックス] = &index
    │││ **トレース出力 _#行番号, "  ", &studentName, "  ", _&year, "  ", _&index
    │││
    │││ &studentName = [生徒氏名]
    │││ &year    = [修得時期]
    ││└end
    ││
    │└繰り返し終了
    │ *----- end  インデクス作成 -----*

    │ *----- begin インデクスファイル書き出し -----*
    │ 絞り込み 単一化 = { [生徒氏名], [修得時期], [インデックス] }
    │ 書き出し  表, &indexTblName, 終了状態 = &status, { [生徒氏名], [修得時期], [インデックス] }
    │ トレース出力 _&status
    │ 絞り込み解除 *
    │ *----- end  インデクスファイル書き出し -----*

    │ *----- begin テキストファイル作成 -----*
    │ 印字終了
    │ 印字開始 &outputTxtName, 終了状態 = &status
    │ トレース出力 _&status
    │┌if ( &status = 1 )
    ││
    ││ ジャンプ 行番号 = 先頭
    ││ &studentName = [生徒氏名]
    ││ &done    = 0
    ││┌繰り返し ( .not #eof )
    │││
    │││┌if ( [生徒氏名] <> &studentName )
    ││││ &done = 0
    ││││ &studentName = [生徒氏名]
    │││└end
    │││
    │││┌if ( [インデックス] = 1 .and .not &done )
    ││││ 手続き実行 prc見出し印字( &indexTblName, &studentName )
    ││││ &done = 1
    │││└end
    │││ 編集表 &multiTblNum
    │││
    │││ 印字 [生徒氏名], _09, [科目名], _09, #cond( [インデックス] = 1, [評価] ), _09, #cond( [インデックス] = 2, [評価] ), _09, #cond( [インデックス] = 3, [評価] ), _13, _10,
    │││ **トレース出力 [生徒氏名], " _09 ", [科目名], " _09 ", #cond( [インデックス] = 1, [評価] ), " _09 ", #cond( [インデックス] = 2, [評価] ), " _09 ", #cond( [インデックス] = 3, [評価] ), " _13, _10"
    │││
    │││ ジャンプ 行番号 = 次行
    ││└繰り返し終了
    ││
    ││ 印字終了
    ││ &msg =     "タブ区切り形式のテキストファイルを出力しました"
    ││ &msg = &msg + "\n\n&outputTxtName = " + #文字置換( &outputTxtName, "\", "\\" )
    ││ &msg = &msg + "\n\nファイルを見ますか?"
    ││ メッセージボックス &title, &msg, アイコン = i, ボタン指定 = 5, 制御文字展開 = する, &ans
    ││┌if ( &ans = 6 )
    │││ シェル実行 &outputTxtName, &longError
    ││└end
    │├else
    ││
    ││ &msg =     "コマンドの実行に失敗しました"
    ││ &msg = &msg + "\n\n印字開始 &outputTxtName, 終了状態 = &status
    ││ &msg = &msg + "\n\n&outputTxtName = " + #文字置換( &outputTxtName, "\", "\\" )
    ││ &msg = &msg + "\n\n&status = " + #str( &status )
    ││ メッセージボックス &title, &msg, アイコン = e, ボタン指定 = 1, 制御文字展開 = する, &ans
    │└end
    │ *----- end  テキストファイル作成 -----*

    │ 終了 表 &multiTblNum
    └end
     編集表 &hwindow

     &msg =     "done"
     **メッセージボックス &title, &msg, アイコン = i, ボタン指定 = 1, 制御文字展開 = する

    手続き定義終了

    手続き定義開始 prc見出し印字( 文字列 &indexTblName, 文字列 &studentName )
     変数宣言 自動,文字列{ &title = "prc見出し印字( )", &msg }
     変数宣言 自動,文字列{ &expression, &WQ = #jis( #hex("22") ) }
     変数宣言 自動,整数 { &tblNum }
     変数宣言 自動,整数 { &reccount }

     表 &indexTblName
     解除 *
     &tblNum = #is表

     &expression = &WQ + &studentName + &WQ
     絞り込み [生徒氏名]_&expression
     &reccount = &選択件数
    ┌繰り返し ( .not #eof )

    │┌if ( #行番号 = 1 )
    ││
    ││ 印字 [生徒氏名], _09, "科目名",
    ││ **トレース出力 [生徒氏名], " _09 ", "科目名"
    │└end
    │ 印字 _09, [修得時期],
    │ **トレース出力  " _09 ", [修得時期]

    │ ジャンプ 行番号 = 次行
    └繰り返し終了
     印字 _13, _10,
     **トレース出力 " _13, _10"

     終了 表 &tblNum

     &msg =     #文字置換( &indexTblName, "\", "\\" )
     &msg = &msg + "\n\n" + &studentName
     **メッセージボックス &title, &msg, アイコン = i, ボタン指定 = 1, 制御文字展開 = する

    手続き定義終了

返信 [メール受信/OFF] 削除キー/


Mode/  Pass/

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -