ホーム   フォーラム   FAQ
 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

ISAMファイルをAccessで読み込む方法について

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 .5 .6 .7 .8 .9 | 投稿日時 2015-12-17 18:16
humi  長老   投稿数: 204
いつも参考にしております。

Magicのバージョン:uniPaaS V1Plus 1.9g2
データベースのバージョン:Pervasive PSQL V10 Workgroup

上記の環境で作成したISAMファイルを、Accessで読み込むためには、上記のソフトをインストールしていれば出来るのでしょうか。それとも、他にソフトのインストールが必要なのでしょうか。上記ソフトのみで可能な場合その操作についてご教授の程、宜しくお願い致します。他にソフトが必要な場合どのようなソフトが必要かと、その操作についてご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-12-17 18:26
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
やったことはありませんがODBCでできるのではないですか?
下記が参考になるかと思います。
https://www.agtech.co.jp/html/v10manuals/10.10/usrguide/usrguide-03-7.html#wp403371
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-12-17 19:09
humi  長老   投稿数: 204
ISHIJIMAさん、ご返答頂き誠にありがとう御座います。

参照ページを確認したのですが、まずODBCのデータソースに追加する時なのですが、現在の状況が、uniPaaS V1Plusのデータリポジトリの中で作成したデータがあります。その場合のODBCのデータソースを追加する方法が不明です。その辺りについてご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-12-17 20:06
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
あまりやった事がないのでよくわかりません。
申し訳ありません。
ただ結構めんどくさくてDDF等の定義を作成しないといけなかったような・・・
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-12-18 8:09 | 最終変更
nkmt  長老   投稿数: 1668
昔はPervasiveをACCESSやEXCELで読んでましたが久々に触りました。

おおまかに言うと
Magic開発版を起動、そのプロジェクトを起動
→ ツール → DDFメーカを操作して、DDFを作成
FIELD.DDF
FILE.DDF
INDEX.DDFなどが出来る。

このDDFを作成する場所は。Pervasiveデータの有る場所に配置するのがいいと思います。

コントロールパネル → ODBC
システムDSN → 追加
→ Pervasive ODBC Engine
→ データソース名は適当 

これでEXCELやACCESSからは、ODBCでPervasiveデータを読めると思います。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-12-18 8:31
humi  長老   投稿数: 204
nkmtさん、ご返答頂き誠にありがとう御座います。

現状Magic開発版を起動して、そのプロジェクトを開いた時に、ツールの中には文字列抽出しかありません。DDFメーカが無いのですが、DDFメーカがツールの中に表示させるために何か操作が必要なのでしょうか。ご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-12-18 8:53
TKitabayashi  一人前   投稿数: 90
Magic.iniに[TOOLS_MENU]セクションがあり、
DDLBDR =がコメントアウトされているのではないかと思います。

もし、コメントアウトも存在しなければ、追加する必要があります。

追加する内容は、ヘルプにありますので、ヘルプを開き、
「ddf」を検索すると詳しい内容が書かれていました。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-12-18 9:06 | 最終変更
nkmt  長老   投稿数: 1668
おはようございます。^^

INIファイルの中の

[TOOLS_MENU]
;DDFMaker = A,DDFメーカ・・・

の 部分の ; 除去でいいのでしょうね。


[TOOLS_MENU]
DDFMaker = A,DDFメーカ(&D),,Add_On\DDFMaker\DDFMaker.ecf,,,Add_On\DDFMaker\DDF+
;Maker_suf.opr,ImageFor = B ToolNumber = 60 ToolGroup = 1 ToolTip = +
"データ辞書を作成します."
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-12-18 10:23
humi  長老   投稿数: 204
TKitabayashiさん、nkmtさん、ご返答頂き誠にありがとう御座います。

INIファイルの中の指定箇所を修正したところ、ツールの中にDDFメーカが表示されるようなりました。そこから必要なデータのDDFを作成して、データソースの作成までは出来ました。Access2013で外部テーブルとして、ODBCデータソースを選択すると、該当のデータ名やフィールド名に漢字を使用しているのですが、漢字の部分が文字化けしてしまいます。それと、実データの方でフィールドの中に、日付型の項目があるのですが、Magic上は2015/12/01が、Access上では73xxxxという6桁の数字になります。この2つの現象を解決する方法を、ご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-12-18 15:38
nkmt  長老   投稿数: 1668
日付については西暦0年0月0日からの述べ日数なんでしょうけど、簡単に日付に変換する方法を知らないです。


項目名ですが、私も試したら文字化けしました。
データの中身は文字化けしませんけどね。

日付の件ですが、IntegerDateだとACCESS側でそうなるのでしょうね。

以前PervasiveとdbMAGIC V8で作ったシステムのデータをお客様の親会社の情報部門が使いたいといってきた時は、項目名アルファベット、日付はStringDateにしたテーブルをMagicに用意して本物データからACCESS公開用データへ登録リンクなどして対応した事が有ります。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-12-18 19:43
humi  長老   投稿数: 204
nkmtさん、ご返答頂き誠にありがとう御座います。

データ名と項目名が文字化けになる件は、DDFメーカのオプションにて、"Legalize" table, cloumn and index namesのチェックを外して(初期値はチェックがOn)、DDFファイルを作成したところ文字化けが直りました。日付の件は、nkmtさんからの説明の通り、StringDateに変更したところ、Accessで"20151201"になりました。
投票数:1 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-1-7 13:39
humi  長老   投稿数: 204
Magicで型がD=日付の項目の、記憶形式をInteger DateからString Dateに変更することによって、Magic側で支障が出るようなことはあるのでしょうか。今回は一部テーブルだけを、Accessで読込しなくてはいけないのですが、読込するテーブルの日付型だけを、String Dateにしようかと思っています。その場合、Magic側でInteger DateとString Dateの2つの日付型が存在します。その項目で大小チェックなどした場合支障は無いでしょうか。それとも、全てのテーブルの日付型をString Dateにした方が良いでしょうか。nkmt様の行ったAccess用の別テーブルを作るというのは運用上難しいです。ご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-7 23:14 | 最終変更
nkmt  長老   投稿数: 1668
簡単にPervasiveのデータを作って、IntegerDateの日付とStringDateの日付項目を用意しました。
両社の日付の大小チェック、日付での並べ替え、日数計算など大丈夫そうです。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-1-12 10:31
humi  長老   投稿数: 204
nkmtさん、ご返答頂き有難う御座います。

実際Accessを使う開発会社と打合せを行い、IntegerDateのままで問題なければそのままで、StringDateでないとだめな場合は、該当テーブルのみStringDateに変更する方法で考えます。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-12 11:22
nkmt  長老   投稿数: 1668
ACCESS側で西暦0年0月0日でしたかね?
からの通算日数から年月日算出して頂ければ、そのままでもいけるかもしれませんね。

4年に1度 はうるう年
100で割り切れる年は、うるう年ではない
400で割り切れる年は、うるう年とか有りましたよね。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-14 17:11
humi  長老   投稿数: 204
いつも参考にしております。

社内環境
 クライアント
  Windows 7 Pro SP1
  Magic uniPaaS V1Plus 1.9g2
  Pervasive PSQL v10 SP3 Workgroup 32bit

客先環境
 サーバー
  Windows Server 2008 R2 Standard
  Pervasive PSQL v10 SP3 Server for Windows 64bit
 クライアント
  Windows 7 Pro SP1
  Magic uniPaaS V1Plus 1.9g2
  Pervasive PSQL v10 Client 32bit

上記のような環境で、社内で問題なく、DDF作成->ODBC Administratorでデータソースの作成->Pervasive Contorol Centerから該当のテーブルを開くことが出来たので客先にて作業を行うと思ったのですが問題が発生しました。

問題1.Add_Onフォルダの中に、DDFMakerというフォルダが存在しなかった。
上記の件は、客先環境はuniPaaS V1Plus 1.9g2のメディアでセットアップしていた。社内環境はuniPaaS V1Plus 1.8J SP1cのメディアでセットアップしてから、1.9g2はアップデートした状態だったのが原因でした。客先環境も1.8J SP1cをセットアップしてから、1.9g2をアップデートしたら、DDFMakerというフォルダは作成されました。この認識は間違いないでしょうか。

問題2.社内環境だとツールからDDFメーカを選択すると、DDF Maker Wizardというウィンドウが表示されるのですが、客先環境だと該当のウインドウが表示されません。
客先環境だとウインドウが表示されない原因と対応方法のご教授の程、宜しくお願い致します。

質問1.客先環境ではWindowsタブレットを使用して、Pervasiveのテーブルを読み込むのですが、その時は該当のタブレットにPervasiveをセットアップしないと、PervasiveのODBCドライバがないからだめと言う認識で良いのですか。

質問2.PervasiveのODBCドライバで接続したユーザーも同時接続ユーザー数にカウントされるのでしょうか。

以上の件について、ご教授の程、宜しくお願い致します。客先からは早急に対応して欲しいと言われています。なるべく早めでご教授頂ければと思います。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-1-14 20:33
humi  長老   投稿数: 204
nkmtさん、ご回答頂き誠に有難う御座います。

Magic側で、日付型のデータが0000/00/00は、Access側では0でした。通算日数から日付に変換できるかは開発会社に確認したかったのですが、日付が通算日数の話より先に、客先環境でうまくDDFMakerが起動しない状態です。別に質問として投稿しているのですが、nkmtさんの方で何か情報をお持ちであれば、ご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-14 22:52
nkmt  長老   投稿数: 1668
客先でDDFを作らない作戦。

dbMAGIC Ver8の随分昔の事ですが、マイ開発環境で作成したDDFを客先に送っていました。

マイ開発環境のPervasiveデータは、D:¥HOGEHOGEフォルダに存在。

客先環境は、¥¥SERVER¥HOGEHOGEフォルダに存在。

そこで思い立ったのが、社内の別PCの名前を SERVER に変えて、そこを共有フォルダにして、社内で¥¥SERVERを作って、そこを指定してDDFを作成。

作成したDDFをお客様に送っていました。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-15 10:04
humi  長老   投稿数: 204
nkmtさん、ご返答頂き誠にありがとう御座います。

nkmtさんが教えてくれた、客先でDDFを作らない件についても考えては見ますが、できれば客先で行えるようにしたいです。確認のため社内にて、Windows 7 Pro SP1のパソコンを2台準備して、1台をサーバとみなして、そちらには、Pervasive PSQL v10 Workgroup 32bitをセットアップして、もう1台をクライアントとみなして、そちらには、Magic uniPaaS Studio V1Plus 1.9g2と、Pervasive PSQL v10 Client 32bitをセットアップして、クライアントの方からDDFMakerを起動したところ、問題なくDDFMakerWizardが表示されました。サーバOSの入った環境はすぐには用意できないので、客先と全く同じ環境での確認はできていません。そこで教えて欲しいのですが、DDFMakerWizardが客先環境で表示ならない件で、何か原因となるようなところを、ご教授の程、宜しくお願い致します。それと以前の投稿にも書いてある質問の件も、何か情報があれば、ご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-1-15 10:15
nkmt  長老   投稿数: 1668
2016-1-14 17:11 の質問1と質問2の件は、私はわからないです。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-15 19:02
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
前に下記の内容の投稿がありましたが確認していますか?

>Magic.iniに[TOOLS_MENU]セクションがあり、
>DDLBDR =がコメントアウトされているのではないかと思います。

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-1-15 19:47
humi  長老   投稿数: 204
ISHIJIMAさん、ご返答頂き有難う御座います。

Magic uniPaaS Studio V1Plusのバージョンによって、DDFMakerというツールと、ISHIJIMAさんが投稿したDDLMakerという2種類のツールがあって、私の方の確認はDDFMakerで行っていました。そのツールだと社内環境では問題が無いが、客先環境ではDDFMakerのWizard画面が表示されませんでした。今日も客先に訪問していろいろ試したのですが解決しませんでした。そこで、DDLMakerの方を使ったところ、客先環境でもそちらは起動しました。そこまで確認して今日は客先から帰りました。社内に戻って、DDLMakerの確認を行っているのですが、該当のツールはテーブルのSQL文を作成するツールなのですが、Magic側の項目名が20バイトを超えるとツールの方で削除するようです。その状態でPervasive Control Centerで作成されたSQL文を実行すると、20バイトで切った項目名が同じものがありエラーになります。出来たSQL分を手直しして、Magic上の項目名にしたSQL文を実行すると、項目名が長すぎますとエラーになります。項目名が長すぎますと言うエラーは、データベースを作成する時に、長いメタデータ(V2 メタデータ)(M)のチェックを付けるとエラーは回避できました。そこで質問なのですが、DDLMakerのツールの方で20バイト超えた場合項目名を削除させない方法はあるのでしょうか。それともできらSQL文を修正するしかないのでしょうか。ご教授の程、宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-15 21:39
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
ADD_ONの中にDDLMakerGuide.pdfが入っているので内容を確認してした方が良いと思います。
DDLになっている説明等が詳しくのっています。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2016-1-16 10:51
humi  長老   投稿数: 204
ISHIJIMAさん、ご返答頂き、誠に有難う御座います。

該当のPDFファイル読んでいるのですが、項目名のバイト数が20バイトを超えた時に切捨てしないようにする方法などは記載されていないようです。記載されていないと言うことは、DDLMakerでは切り捨てられるので、作成されたSQL文を修正するしかないのでしょうか。それと、もう一点問題があり、DDLMakerで作成したSQL文を、PCCの"新しいSQLドキュメントを作成"にて実行するとテーブルは作成されます。その後にDDFBuliderを使ってテーブルの確認を行うと下記のエラーが表示されます。"DB021:このテーブルのインデックス情報を取得できませんでした。"と、"DB024:インデックス番号が一致しません。物理ファイル キー 1は、SQL インデックス 7 -"KEY2" として定義されています。"の2つのエラーメッセージが表示されます。該当のPDFファイルを読んでいるのですが、どの様に対応して良いか見つけられません。この様な状況でも該当のテーブルを、PCCから開くことは出来てデータの内容も確認できます。上記のエラーメッセージに対する対応方法のご教授の程、宜しくお願い致します。それか、この状況でもテーブルを開けるので問題ないというのであればよいのですが。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2016-1-16 18:18
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
PDFの内容で判断できないことなのですね
そうなるとなかなか難しいですね・・・
投票数:0 平均点:0.00

  条件検索へ


Copyright (C) Magic Software Japan K.K. All Rights Reserved.
個人情報保護方針 会員規約