質問

私は、I/O DLLを使用してSPSS 15とインターフェイスするC ++でアプリケーションを作成しています。

当社のSPSSデータベースは、それぞれが一意の「ID」フィールドを備えた多くのケースで構成されています。

私がする必要があるのは、読み取り/書き込みでデータベースを開き、一致するIDでケースを見つけ、プログラムが解析するCSVファイルに従って変数の一部を変更することです。

最初から2つの明らかなケースがあります。

  • 一致するケースは存在しません(その場合、SPSSopenAppend()を簡単に使用してケースを追加できます。

  • 一致するケースが存在します。 (そしてこれは問題のあるケースです)

後者では、spssopenwritecopy()を使用して書き込みハンドルとspssopenread()を取得して読み取りハンドルを持つ必要があります。私はそれにあまり熱心ではありませんが、それは彼らのDLLでそれを行う唯一の方法のようです。問題は、書き込みファイルにケースポインターを移動できないことです(どうやら、ケースポインターの移動は読み取り専用操作です)

つまり、私が興味のあるケースを見つけるまで、すべてのファイルを反復し、ケースごとにすべてのデータをコピーする必要なく、ケースを変更する方法を見つけようとしています。

アップグレードSPSSがオプションではないことを追加したいと思います。

また、ケースバイケースを手動で反復し、ゼロから新しいファイルを作成する必要がないことを避けたいと思います。

役に立ちましたか?

解決

私はそれが解決された今、誰も答えることを気にするつもりはないと思います。

とにかく、データベースの中央にケースを挿入することはできません。 APIをシミュレートするためにラッパーをAPIの周りに書く可能性がありますが、それ以外の場合は、各ケースを手動で反復してコピーすることなく、私がやろうとしていることをする方法はありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top