## 環境
- JV-Link バージョン: 4.9.0 (2026-04-08に再インストール済み)
- SID: 非公開とします
- OS: Windows 11
- 開発言語: Python 3.11 (32bit) + pywin32
- データ保存先: C:\ProgramData\JRA-VAN\Data Lab
## 症状
JVOpen(“RACE”, fromtime, option) → JVRead のループで、RA/SE/HR/O1〜O6 のレコードが一切返されず、H1とJGのみが返されます。
### 再現手順
```python
import win32com.client
jv = win32com.client.Dispatch(“JVDTLab.JVLink”)
jv.JVInit([SID])
result = jv.JVOpen(“RACE”, “20210101000000”, 1, 0, 0, “”)
# → readcount=1364, dlcount=1025
while True:
r = jv.JVRead(" " \* 200000, 200000, "")
rc = r\[0\]
data = r\[1\]
if rc == -1: break # EOF
31
if rc == -3: continue # DL中
if rc <= 0: continue
print(data\[:2\]) # → "H1" または "JG" のみ。RA/SE/HR/O5等は一度も返されない
jv.JVClose()
```
### 確認結果
| 項目 | 結果 |
|------|------|
| readcount | 1364 (ファイルは認識されている) |
| dlcount | option=1で1025, option=4で0 (ファイルDL自体は正常) |
| JVReadで返るレコード | H1, JG のみ |
| 返されないレコード | RA, SE, HR, O1, O2, O3, O4, O5, O6, WF |
| data/cacheディレクトリ | O5/HR/SE等のJVDファイルは存在する |
| fromtime変更 | 1986〜2026の範囲で変更しても結果同じ |
| option変更 | 1, 3, 4 いずれでも同一の結果 |
## 試行済み対策
1. data/cache/eventディレクトリの全削除 → SETUP(option=4)再実行 → 変化なし
2. JVFileDeleteでO5等のJVDファイルを削除 → 変化なし
3. JVSetSaveFlag(0)で一時的にデータ保存OFF → downloadcountは増加するがJVRead結果は同じ
4. JV-Linkのアンインストール → PC再起動 → 最新版(ver 4.9.0)を再インストール → cache/dataを
空にしてSETUP再実行 → 変化なし
## 質問
上記の通り、JVDファイル自体はdata/cacheディレクトリに存在し、readcountにも含まれていますが、JVReadでレコードが返されません。
以下についてご確認いただけますでしょうか。
1. サーバ側でレコードの配信済みフラグ(既読管理)が設定されている可能性はありますか?
2. その場合、配信済みフラグをリセットしていただくことは可能でしょうか?
3. あるいは、クライアント側で既読状態を解除する方法があれば教えてください。
お手数をおかけしますが、よろしくお願いいたします。