Top > システム > データベース

2009年03月22日

Cosmos-7 LPG販売管理システムからデータを抽出したい

ガスの販売・工事をしているお客さんから、「コスモスという販売管理ソフトを使ってるけど、エクセルで使いたいデータがあるが、帳票の印刷しか対応してなくて困ってる。なんとかならないか。」という相談を受けました。販売元では、パッケージソフトのため、個別対応はしてくれないそうで、帳票のものをExcelに手打ちで入れるには、データ量が多すぎて、とても無理とのこと。

この手のパッケージソフトは、データベースも独自のものを使ってることが多く、手の出しようがないのですが、調べてみると、Cosmos-7は、MSDE2000というデータベースを使っていることが分かりました。

MSDEは、Microsoft社のSQLサーバ機能限定版のようなもので、無償で使用できるデータベースソフトです。

Microsoft Officeに含まれているACCESSなどのデータベースソフトから利用できるので、データの抽出なども比較的簡単にできます。

ACCESSからMSDEを使うには、MSDEのユーザIDとパスワードが必要です。Cosmos-7を導入したSE会社に聞いてみましたが、門前払いです。

しょうがないので、勝手にMSDEへユーザを追加して、使えるようにしてしまいました。管理者権限のユーザIDとパスワードも教えてもらえないので、SQLサーバなどではお手上げですが、MSDEの場合は、抜け穴があります。操作手順を簡単にメモしておきますので、MSDEを使いたい方は、参考にしてください。

Cosmos-7のパソコンから、コマンドプロンプトを起動します。

C:\>osql -E

ユーザID:cosmos、パスワード:passwordを作成

1> sp_addlogin 'cosmos','password','master'

2> go

1> sp_adduser 'cosmos'

2> go

1> use cosmos7

2> go

ユーザID:cosmosには、データベース名:cosmos7に全ての権限を与える

1> sp_grantdbaccess 'cosmos'

2> go

1> sp_addrolemember db_owner,'cosmos'

2> go

1> quit

上記操作で、ユーザID:cosmos、パスワード:passwordには、データベース名:cosmos7に全ての権限を与えるようにしました。

以下ACCESS2003から、cosmos7パソコンのMSDE2000に接続する例です。

1.新規作成をクリック

2.プロジェクト(新しいデータ)を選択

3.保存先を選んで、適当なアダプタ名で作成

4.「Microsoft SQL Server データベース ウィザード」は、即キャンセル

5.ファイル(F)メニューから、接続(T)を選択

6.「データリンク プロパティ」ダイアログが表示される。

サーバ名は、Cosmos-7パソコンのコンピュータ名か、IPアドレスを入力する。

ユーザ名とパスワードは、先ほど作成したものを入力。

「パスワードを保存する(S)」をチェック。

「サーバ上のデータベースを選択する(D)」のコンボボックスから「cosmos7」を選ぶ。

「接続のテスト(T)」をクリック。

7.「接続のテストに成功しました。」が出れば、OK。

駄目なときは、サーバ名のコンピュータ名にpingを投げてみて、応答があるか無いか確認。

Cosmos-7パソコンとACCESSのインストールしてあるパソコンのファイアウォール設定の確認などをする。

8.「ファイルに保存する前にパスワードは、暗号化できません。」は、

「パスワードの保存(S)」をクリックする。

9.テーブルの一覧が表示される。

あとは、クエリ(SQL)で必要なデータを抽出して、csv形式やExcel形式にエクスポートすれば、自由に加工や集計ができます。

たとえば、特定の属性をもった顧客の年間売上合計などは、「売上請求明細」テーブルと、「顧客マスタ」テーブルからクエリを作ってあげます。

このお客様の場合、ガス顧客毎の年間売上を集計したいとのことでしたので、簡単なフォームとVBAでデータを抽出して、csv形式でエクスポートするプログラムを作成しました。

システム構築料金は、6万円(15人時)でした。

 

検索


Feed

Really Simple Syndication 2.0 The Atom Syndication Format Really Simple Discoverability