283cks
1
dataOptionの設定を4(セットアップデータ)と
1(通常データ)で、取得できるできないデータが
あったので、どうしても理由が分からずに質問します。
JVOpenでdataSpecを"RACE"設定し、dataOptionを4、
fromDateを"20250101000000"として
JVReadで取得データを読み込むと、
払戻データ(HRVM2025**99)の月毎データ件数が1件
のみ、それのみがデータベース登録できています。
その後、dataOptionを1にして(他は全く同じ)
再度実行すると払戻データも複数件きちんと取得できて
データベースにも登録できています。
原因が分からず途方に暮れており、質問いたしました。
これだけで情報が足りるかどうかわかりませんが、
理由がわかればご教授願います。
よろしくお願いいたします。
1件というのは1ファイルということでしょうか?
それであれば正常で、option=4(セットアップ)は先月分のデータを1ファイルにまとめていて、その中に1ヶ月分すべてのレコードが入っているはずです。
option=1(通常データ)は開催日ごとにファイルになっているので、セットアップに比べてファイル数が多くなると思います。
283cks
3
ファイル数ではなくレコード数ですね。
略式でコードを書くと以下の通りです。
dataSpec = ["RACE",]; //本来は他のデータ種別もあります
fromData = "20250101000000";
dataOption = 4;
foreach(var dataItem in dataSpec)
{
code = _jvlink.JVOpen(dataItem, fromDate, dataOption, ref readCount, ref downloadCount, out lastFileTimeStamp);
if(readCount > 0)
{
var returnCode = _jvlink.JVRead(out strData, out buffSize, out buffName);
do
{
switch(returnCode)
{
}
} while(true)
}
_jvlink.JVClose();
}
これを行なうと、
HR(VM20250199): 1件
JG(VM20250199):4547件
O1(VM20250199): 240件
RA(VM20250199): 505件
SE(VM20250199):6459件
のレコード件数DB登録されます。
1月の中央競馬レース数が240件なので
HR以外は取得できていると思っています。
(票数は取得しないのでSkipさせています)
takeshiさん、コメントありがとうございました。
そうなるとわからないですね。
HRもRAやSEと同じようにJVRead/JVGetsで1レコードずつ読み取れると思うので、誤ってJVSkipしているとかでしょうか?
ご存知かもしれませんが、データ検証ツールで当該ファイルのレコードは確認できるので、今データベースに登録できているデータと見比べてみてはどうでしょうか?
283cks
5
お手数をおかけしました。自己解決。
自分が悪かったです。
takeshiさんはじめ、みなさん申し訳ございませんでした。
「いいね!」 1