<<2021/04/24追記>>
本稿にてネタとしたツールは、現在、Index2Markの名称でJRA-Data Labに登録され一般公開されています。詳細は下記リンクから辿って下さい。
前回の続きです。
アプリケーションプログラムの大まかな流れを検討しました。概ね、次の様な制御で良いかと思います。
main()
{
●グローバル変数を初期化する
●INIファイルを読み込んで、前回終了時の値にコンポーネントのプロパティを設定する処理
do {
●ユーザはコンポーネントを操作して作業内容を設定する
if(JRA-VAN設定ボタン押下された) {
●JRA-VANアカウント情報設定処理
}
if(変換実行ボタンが押下された) {
●JRA-VANへの接続処理
if(JRA-VAN接続正常終了) {
●設定値に論理異常値が指定されていないか検証する処理
if(設定値に異常値は見つからない) {
●変換対象期間に該当する指数ファイルをファイル名から検索する処理
if(該当ファイルが見つかった) {
for (i=0; i<該当する指数ファイルの数; i++ ) {
●i番目の指数ファイルをオープンする処理
●オープンした指数ファイルの全ての行を配列変数に取り込む処理
for (j=0; j<オープンした指数ファイルの行数; j++) {
●j番目の行の競馬場、回次、レース番号、全頭の指数値を変数に読み込む処理
●指数値の大小関係と設定条件から全頭の馬印を決定し、馬印変数に保存する処理
●競馬場と回次から、対応する馬印ファイルをオープンする処理
if(馬印ファイルが見つからない) {
●初期馬印ファイルを新規作成して、それをオープンする処理
}
●レース番号と馬印変数の情報を用いて、馬印ファイルを更新する処理
}
if(中断ボタンが押下された) {
●Yes/Noダイアログボックス表示(変換処理を中断して良いですか?)
if(変換処理を中断する) break;
}
●プログレスバーの更新処理
}
}
else {
●エラーメッセージ表示(対象指数ファイルがありません)
}
}
else{
●エラーメッセージ表示(設定内容に誤りがあります)
}
}
else {
●エラーメッセージ表示(JRA-VANに接続できません)
}
}
} while(メインフォームがクローズされない)
●コンポーネントのプロパティの一部の値をINIファイルに保存する処理
}
次回に続く。