JV-Link 質問箱 |
タイトル | : RACE取得時、JGのデータしか取得できない |
記事No | : 9932 |
投稿日 | : 2017/02/20(Mon) 01:52 |
投稿者 | : oga |
|
DataLab300.pdfに書かれているサンプルをもとにデータを取得したところ、 RACE情報が一部(JGのデータ)しか取得できないです。 version は 4.5.1 になります。
現在利用料を課金されている状態ですので、至急回答をください。
C#で作成していて、 JVOpen時に下記のように設定しています。 JVInitは実施済みです。
string Data_Spec = "RACE"; //データ 種別に「レース情報」を設定 string From_Time = "20170101000000"; //Fromタ イムに2003年1月1日を設定 int Option_Flag = 2; //オプションに「今週 データ」を設定 int ReadCount = 0; int DownloadCount = 0; string LastTime;
retVal = this.axJVLink1.JVOpen(Data_Spec, From_Time, Option _Flag, ref ReadCount, ref DownloadCount, out LastTime);
この後JVReadを実行していますが、JGのデータしか取得できません。 |
|
タイトル | : Re: RACE取得時、JGのデータしか取得できない |
記事No | : 9950 |
投稿日 | : 2017/02/20(Mon) 15:06 |
投稿者 | : hide |
|
JRA-VANソフトサポートではないですが、
JVReadをループで全ファイル読み込み終了まで実行していますか? おそらく先頭のJGを取得して終了してるような気がします。 |
|
タイトル | : Re^2: RACE取得時、JGのデータしか取得できない |
記事No | : 9965 |
投稿日 | : 2017/02/21(Tue) 05:46 |
投稿者 | : oga <oga33cross@gmail.com> |
|
ループですべて読み込んでいます。
> JRA-VANソフトサポートではないですが、 > > JVReadをループで全ファイル読み込み終了まで実行していますか? > おそらく先頭のJGを取得して終了してるような気がします。 |
|
タイトル | : Re^3: RACE取得時、JGのデータしか取得できない |
記事No | : 9966 |
投稿日 | : 2017/02/21(Tue) 07:12 |
投稿者 | : hide |
|
> ループですべて読み込んでいます。
そうでしたか…
ちなみにJGしか取れないとのことですが、 JGのレコードは複数件取れてるんでしょうか? |
|
タイトル | : Re^4: RACE取得時、JGのデータしか取得できない |
記事No | : 9967 |
投稿日 | : 2017/02/21(Tue) 23:14 |
投稿者 | : oga |
|
> ちなみにJGしか取れないとのことですが、 > JGのレコードは複数件取れてるんでしょうか?
ReadCountが68件の時に68件とれていて、それぞれ別のデータになって慰安す。 が、すべてJGのみです。 |
|
タイトル | : Re^5: RACE取得時、JGのデータしか取得できない |
記事No | : 9968 |
投稿日 | : 2017/02/21(Tue) 23:19 |
投稿者 | : oga |
|
InitからCloseまでのソースを載せます。
int retVal = axJVLink1.JVInit("UNKNOWN"); if ( retVal != 0 ) { MessageBox.Show("Error = " + retVal); return; } string Data_Spec = "RACE"; //データ 種別に「レース情報」を設定 string From_Time = "20170101000000"; //Fromタ イムに2003年1月1日を設定 int Option_Flag = 1; //オプションに「今週 データ」を設定 int ReadCount = 10; int DownloadCount = 0; string LastTime;
retVal = this.axJVLink1.JVOpen(Data_Spec, From_Time, Option _Flag, ref ReadCount, ref DownloadCount, out LastTime);
MessageBox.Show("該当するデータがありません。" + ReadCount + " / " + DownloadCount + " / " + LastTime );
JVData_Struct.JV_RA_RACE race = new JVData_Struct.JV_RA_RAC E();
int bufsize = 1500; string buff = null; string name;
for ( int i = 0; i < ReadCount; i++) { while (axJVLink1.JVRead(out buff, out bufsize, out name ) == -3) ;
string RecordSpec = buff.Substring(0, 2); MessageBox.Show(i + " / " + buff); if (RecordSpec == "RA") {
race.SetDataB(ref buff);
textBox1.AppendText(race.id.Year + "/" + race.id.MonthDay + " " + race.id.JyoCD + " " + race.id.Kaiji + " " + race.id.Nichiji + " " + race.id.RaceNum + " " + race.RaceInfo.Hondai + "\n"); } }
axJVLink1.JVClose();
} |
|
タイトル | : Re^6: RACE取得時、JGのデータしか取得できない |
記事No | : 9969 |
投稿日 | : 2017/02/22(Wed) 07:24 |
投稿者 | : hide |
|
ReadCountでループしてるからではないでしょうか?
JVReadの戻り値が0(全ファイル読み込み終了)になるまで にすれば大丈夫だと思います。
> InitからCloseまでのソースを載せます。 > > > > int retVal = axJVLink1.JVInit("UNKNOWN"); > if ( retVal != 0 ) > { > MessageBox.Show("Error = " + retVal); > return; > } > string Data_Spec = "RACE"; // データ > 種別に「レース情報」を設定 > string From_Time = "20170101000000"; //Fr omタ > イムに2003年1月1日を設定 > int Option_Flag = 1; //オプションに 「今週 > データ」を設定 > int ReadCount = 10; > int DownloadCount = 0; > string LastTime; > > retVal = this.axJVLink1.JVOpen(Data_Spec, From_Time, O ption > _Flag, ref ReadCount, ref DownloadCount, out LastTime); > > > MessageBox.Show("該当するデータがありません。&quo t; + > ReadCount + " / " + DownloadCount + " / " + La stTime > ); > > JVData_Struct.JV_RA_RACE race = new JVData_Struct.JV_R A_RAC > E(); > > int bufsize = 1500; > string buff = null; > string name; > > for ( int i = 0; i < ReadCount; i++) > { > while (axJVLink1.JVRead(out buff, out bufsize, out name > ) == -3) ; > > string RecordSpec = buff.Substring(0, 2); > MessageBox.Show(i + " / " + buff); > if (RecordSpec == "RA") > { > > race.SetDataB(ref buff); > > textBox1.AppendText(race.id.Year + "/&quo t; + > race.id.MonthDay + " " + > race.id.JyoCD + " " + > race.id.Kaiji + " " + > race.id.Nichiji + " " + > race.id.RaceNum + " " + > race.RaceInfo.Hondai + "\n") ; > } > } > > axJVLink1.JVClose(); > > } |
|
タイトル | : Re^7: RACE取得時、JGのデータしか取得できない |
記事No | : 9973 |
投稿日 | : 2017/02/22(Wed) 22:29 |
投稿者 | : oga |
|
すばらしい! ReadCountはレコード数だと思い込んでいました。 ファイル数だったのですね。
ありがとうございました!!
> ReadCountでループしてるからではないでしょうか? > > JVReadの戻り値が0(全ファイル読み込み終了)になるまで > にすれば大丈夫だと思います。 > > > InitからCloseまでのソースを載せます。 > > > > > > > > int retVal = axJVLink1.JVInit("UNKNOWN" ); > > if ( retVal != 0 ) > > { > > MessageBox.Show("Error = " + retVal ); > > return; > > } > > string Data_Spec = "RACE"; // > データ > > 種別に「レース情報」を設定 > > string From_Time = "20170101000000"; //Fr > omタ > > イムに2003年1月1日を設定 > > int Option_Flag = 1; //オプショ ンに > 「今週 > > データ」を設定 > > int ReadCount = 10; > > int DownloadCount = 0; > > string LastTime; > > > > retVal = this.axJVLink1.JVOpen(Data_Spec, From_Ti me, O > ption > > _Flag, ref ReadCount, ref DownloadCount, out LastTime); > > > > > > MessageBox.Show("該当するデータがありません 。&quo > t; + > > ReadCount + " / " + DownloadCount + " / " + La > stTime > > ); > > > > JVData_Struct.JV_RA_RACE race = new JVData_Struct .JV_R > A_RAC > > E(); > > > > int bufsize = 1500; > > string buff = null; > > string name; > > > > for ( int i = 0; i < ReadCount; i++) > > { > > while (axJVLink1.JVRead(out buff, out bufsize , out > name > > ) == -3) ; > > > > string RecordSpec = buff.Substring(0, 2); > > MessageBox.Show(i + " / " + buff); > > if (RecordSpec == "RA") > > { > > > > race.SetDataB(ref buff); > > > > textBox1.AppendText(race.id.Year + " /&quo > t; + > > race.id.MonthDay + " " + > > race.id.JyoCD + " " + > > race.id.Kaiji + " " + > > race.id.Nichiji + " " + > > race.id.RaceNum + " " + > > race.RaceInfo.Hondai + "\n&q uot;) > ; > > } > > } > > > > axJVLink1.JVClose(); > > > > } |
|
|
|
copyright ©2007 JRA SYSTEM SERVICE CO.,LTD. All Rights Reserved.
|
|
|