Office ZERO

Excelのマクロ処理から、本格的なシステム開発まで、事務系のソフトのことなら何でもお任せ下さい。

06-6484-7610

カテゴリー別: お仕事

Accessについて(その4)

2016/11/24日 12:54

AcccessでのSQL SERVERやolacleなどのデータの取り扱いの続きです。

 

基本、Accessにはテーブルリンクという機能があり、Access Jetだけではなく、SQL SERVERやlacle,MySQL

 

といったデータもプログラムの箱(dbやaccdb)リンクさせて、Access Jetと同じように取扱いができます。

 

しかし、この方法では、データ件数が多いと、Access Jetより処理時間が掛かる場合があります。

 

現実に、あるお客様で他システムとの連動のため、olacleをこの方法で使用していたのですが、データの登

 

録内容を全て空にするという処理を行った場合、時間が掛かり過ぎるとのクレームがついたことがあります。

 

通常、選択して削除するのであれば、プログラム作成方法によっては、時間が掛かることもありますが、

 

全てのデータを削除して空っぽにするという行為は、一瞬にして終わります。

 

不思議に思って計測したところ、4万件のデータを空にするのに5分、十万件だと10分、20万件だと30分弱

 

掛かってしまいました。(この計測値は過去のものなので、ハードの性能の向上した現在は、もう少し早いか

 

もしれません。)

 

同じデータ量でも、Access Jetだと、件数に係らず、瞬時にして終わります。

 

どうやら、外部データをリンクすると、mdb或いはaccdbの機能として、1件ずつ処理しているみたいです。

 

従って、大量のデータを取り扱うのにSQL SERVERやolacleを導入し、Accessにリンクを貼って使用するのは

 

、あまりお勧めできません。

 

それらのデータベースを、VBなどと同様の速度で処理するための方法は次回で延べます。

 

今回も、ここまで読んで下さった方々にお礼申し上げます。

 

ますます寒くなってきましたので、お身体にはお気をつけください。

 

ありがとうございました。

 

 

 

 

Accessについて(その3)

2016/11/17日 12:59

ご無沙汰しました。

 

今回は、Accessでのデータの取り扱いについて説明します。

 

基本、AccessはAccess Jetという独自のデータベースエンジンを持っており、データ量が少なければ、それでも十分に使用に耐えます。

 

少ないといっても、数万件くらいは普通に大丈夫です。

 

10万件以上でも使えなくはないですが、なにかにつけ、レスポンス(処理速度)が落ちます。

 

作り方にもよりますが、1万件と20万件のデータ量で入力を行った場合、データを追加するのに、前者は瞬時に終わり、後者は10~20秒かかったりします。

 

SQL SERVERやOlacleといったデータベースをしない限り、これはどうしようもありません。

 

では、SQL SERVERやOlacleを使用すると早くなるかというと、それこそ作り方の問題になってきます。

 

次回はその辺のところもう少し詳しくお話しします。

 

寒くなってきましたが、風邪などひかぬよう、お身体にお気を付けください。

 

ありがとうございます。

Accessについて(その2)

2016/11/04日 12:39

前回に続いて、Accessのお話しです。

 

なぜ、AccessでもVBと同等の(とまではいいませんが、近い)ことができるのか?

 

前回、データという概念を理解できれば、クエリーとマクロという機能を使って、簡単に入出力が作成できると述べましたが、そのやり方では、あくまでも簡易言語としての役割しか果たせず、痒いところには手が届きません。

 

AccessをVBライクに仕上げるには、クエリーやマクロを使わず、VBAというプログラミング言語を使用することです。

 

これにより、入力画面や出力帳票の細かい制御ができ、ExccelやOutLookといったツールとの連動も思いのままできます。

 

また、SQL SERVERやOlacle,My SQLなどのデータも取り扱えます。

 

いわば、VBで作成しているのとほぼ変わりません。

 

違いは、複数のクライアントで使用する場合、VBは実行形式のプログラムをサーバーに置いておいて、そこからショートカットを貼り使用しますが、Accessの場合は、使用するクライアントにAccessをインストールし、それぞれのクライアントにプログラムを置くという点です。

 

Accessでも、実行形式の形に作れるツールがあり、VBと同じような使い方もできますが、結構不具合があり、今ひとつ信用できません。

 

それと、ごく稀に、Access自体が壊れることもあります。

 

この辺が、Accessの弱点でしょうか。

 

とはいえ、開発コストは格段に違いますので、数台で使用するのなら、下記の点さえしっかりしておけば、Accessでも問題なにのではないでしょうか!

 

・データのバックアップを毎日取る(これは、VBやjavaでも同じですね)

・プログラムのバックアップを取っておき、壊れた時には、そのバックアップから置き換える。

 

もうひとつ、データの取り扱いで違う点がありますが、それは次回で延べます。

 

今日もブログを読んで下さり、ありがとうございます。

 

 

 

 

Accessについて(その1)

2016/10/25日 22:20

皆様、Accessってご存知ですか?

 

一般に、簡易言語という位置付けのプログラム作成ツールです。

 

本屋さんに行けば、Excelとまではいかないけども、結構、多くの攻略本が揃っています。

 

Excelではどうしても出来ない部分、業者に頼むには費用がかかる。

 

そこで、少しExcelのマクロを組める人て、プログラムを作るのが好きな人が社内にいれば、いっちょAccessでやってみつかとなる、わりと親しみ易いツールなんです。

 

Execlはひとつのセルが一個の独立したデータになっているのに対して、Accessはデータベースを取り扱うツールなんですね。

 

基本は、Access Jetというデータベースを備えていますが、OlacleやSQL SERVER、それにMySqlなんかも使用できるんです。

 

データとはなにか?

 

この概念さえ理解できれば、比較的簡単に、入出力のプログラムを作れます。

 

テーブルというものでデータを設定し、ウィザード機能により、入力画面(フォーム)や出力帳表(レポート)が、お手軽にできてしまう。

 

クエリーやマクロといったものを使うことによって、ひとつのプログラムの制御や、プログラム間の制御もできてしまう。

 

VBやJAVA、それにCといった言語は難し過ぎて手が出せないけど、Accessならば、少しお勉強すれば、Excelではできないものができてしまう。

 

だけど、やはり、VBやJAVAやCには適わない。

 

Accessを使っている企業様の多くは、そう思っていらっしゃいませんか?

 

いえいえ、Accessでも、作り方次第では、それらの言語に十分匹敵するんです。

しかも、安価に。

 

弊社では、全国15拠点ある人材派遣会社の一千名を超える契約社員の日報入力を、日々40台を超えるクライアントで入力し、日払いデータを銀行に送信するというシステムも手掛けています。

 

次回からは、なぜAccessでもそこまでできるのか、そんなシステムでも、VBやJAVAより低コストで開発できるのか。

その理由を述べたいと思います。

パッケージ(その3)

2016/10/17日 11:23

一般に知られている有名なパッケージとは別に、カスタマイズを前提としたパッケージがあります。

 

多くは、基本的な部分だけを作成し、構成そのものをシンプルな作りにしているか、どこかのお客様で作成したシステムをパッケージとして流用しているかです。

 

前者は、販売管理などに多く、後者は、特殊な業界のものが多いです。

 

いずれも、カスタマイズをしないと、そのままでは使用できないものが殆どです。

 

もちんろん、カスタマイズの内容によっては、オーダーで作成するよりもコストがかかる場合があります。

 

あと、ERPというのもがありますが、これは平たくいえば、統合パッケージで(生産・販売・物流・会計・在庫管理)などを一元化したものです。もちろん、個別に導入も可能です。

 

しかし、結構高価なので、大規模や中小企業の上位に位置する会社様には良いですが、小さな会社様には、あまりお勧めできません。

 

このように、一口にパッケージといってもいろんな形態や種類があり、昔のように安いのが売りというものでもなくなってきています。

 

これから導入を考えておられる企業様は、(パッケージ=安価)という概念を頭から取り払って、なにが自社にとって最適なのかを考慮してください。

 

我慢して使うようなシステムの導入を少しでもなくして頂けるようになればと願います。

 

 

パッケージ(その2)

2016/10/10日 22:24

パッケージのカスタマイズがなぜ高いか?

 

これには理由があります。

 

例えば、ある販売管理のパッケージ。

 

売上入力をして売上伝票(納品書)を印刷する。

明細の行数は6行か8行が選択できる。それに合わせて納品書も。

上代がいるのか、仕入単価は?

売上単価は商品マスタからか、得意先別商品別単価を設定し、あればそれを優先するのか?

はたまた、仕切率でいくのか?

仕切率なら、商品マスタか得意先マスタか、そ優先順位は?

 

と、まあこんな風に、売上入力画面ひとつとっても、あらゆることに対応できるように組まれているわけです。

 

それを、お客様のニーズに合わせて、初期設定画面で設定していくわけです。

昔、私が携わっていたパッケージでは、そんな設定項目が三千個以上ありました。

もちろん、お客様ではそんな設定はできません。どころか、制作会社でも、お客様のニーズに合わせてその設定を行えるのは、社内でもわずか数人。

 

それだけ設定があれば、ひとつひとつのプログラムがどれだけ複雑なものか。

なにせ、この区分が0の時はこうしなさい、1の時はこうしなさい、2の時は、3の時は…

こんな判断が三千個以上、ひとつのプログラムにいやほど組み込まれているわけです。

 

もちろん、システムですから、ある判断基準がいくつもに関わってきます。

例えば、納品書の明細行数を6行に設定したとき、売上入力画面でも入力できるMAXを6行にしなければいけません。

 

納品所に上代が必要となったとき、売上入力にも元帳にも、また、問合せ画面にも関わってきます。

 

もうおわかりですね。

そんな複雑なプログラムを改造するわけですから、たかがこれくらいという些細な修正でも、影響範囲を考え、且つ、関連プログラムも洗い出し、修正しなければならないわけです。

 

余談ですが、私の友人が関わっていた医療事務系のパッケージで、ある帳表の見出しを変更するだけで三日費やしたそうです 笑

 

だから、パッケージを導入するのなら、カスタマイズを考えなくて済むものを選んでください。

 

次回も、そう少しパッケージのお話をしたいと思います。

パッケージ

2016/10/04日 13:29

巷では、あらゆる分野の様々なパッケージ商品があります。

 

パッケージってなに?

企業お勤めの皆様は大方知っておられるだろうと思いますが、出来合いのシステムです。

 

スーツでいうと〇山や春〇で売っているような吊るしのスーツのようなものです。

 

そういったスーツは、自分の身にフィットするものは稀で、胸周りはぴったりだが、袖丈が少し短いや長い。

肩幅に合わせると、胸周りが大きいや小さい。

どこかしら、多少の我慢と妥協を強いられるものです。

 

システムのパッケージもしかり。

百パーセントマッチしたものが、なかなか見つからない企業様が結構いらっしゃいます。

 

財務・給与は別としても、販売管理や生産管理となると、どうしても企業の特徴があって、大抵は、その特徴を満足させるには至っていません。

 

かといって、満足のいくようにカスタマイズしようとすると、予想外に高くつくことも。

 

スーツでもそうですが、わざわざ出来合いのものを買って、身にフィットするようにリフォームするなら、最初から仕立てた方が安くつくことも。

 

パッケージのカスタマイズは、これと同じ原理ですね。

 

パッケージとオーダー。

どちらを導入すべきかは大いに迷うところですが、それを決定するには、導入責任者がシステムのことを理解する必要があります。

 

次回は、パッケージについて、もう少しお話ししたいと思います。

 

 

大事なこと

2016/09/14日 13:57

弊社の業務はオーダーシステム開発です。

 

オーダーシステムとは、お客様の業務形態に合わせて、その企業様専用の仕組みを作成すること。

 

パッケージに適合しない、もっと業務の効率化を図りたいなど、お客様により理由は様々ですが、

オーダーである以上、出来上がったものを我慢して使っていただくわけにはまいりません。

 

そこで大事なのが、どういったシステムにするのかという打ち合わせです。

 

お客様は、自社の業務のことには詳しいが、プログラムのことはご存知ない。

開発側は、プログラムには精通しているが、お客様の業務のことはわからない。

 

この、両者のわからないことを、打合せにより埋めていくわけです。

 

コンピューターは万能ではありません。プログラム通りにしか動かないのです。

開発する言語や動作環境により、お客様のご要望通りに組み立てられないケースが出てくることもあります。

 

だからといって、「それはできません」と言ってしまえば、オーダーの意味がなくなってしまいます。

 

そこで、このやり方は無理ですけど、こういった方法なら可能ですという提案も生まれてくるわけです。

 

大事なのは、妥協ではなく、歩み寄りです。

 

妥協では良いものは生まれません。

 

開発側の言うことばかり聞いていれば、どこか我慢しなければいけないシステムになってしまいます。

また、お互いが我を張り、譲り合わなければ、それも結果は一緒です。

 

お互いが良いものを造ろうという姿勢で歩み寄ったとき、当初想定していた構想より、良いものが生まれたり

するものなのです。

 

永年、オーダー開発に携わってきましたが、コンピューターほど人間臭さいものはないなと、つくづく思います。

 

初めまして

2016/09/06日 16:44

初めまして。

 

弊社代表を務めております西です。

 

ホームページリニューアル時にブログを始めようと思って幾年月。

 

つい忙しさにかまけて放ったらかし。

 

月日の経つのは早いなぁ!

 

そろそろ心を入れ替えて、これからは定期的にブログを書くことにしました。

 

弊社は、ホームページに記載してある通り、オーダーシステム開発を専門とする会社です。

 

といっても、携わってない方にはピンとこないですね。

 

自動車レースにF1やラリー、ゼロヨンやインディーなど、多様のレースがあるように、

 

コンピュータ業界でも、まあいろんなあれやこれやがあり、システム開発といっても一括りにはできません。

 

なにをしたいのかにより、使う言語やデータバースなども違い、開発に携わる人々の専門性も違ってきます。

 

システム開発の契約は、車のように、見て、触って、乗ってというわけにはいきません。

 

まだ形のないものに対して、お金をかける決心をするわけです。

 

勇気がいりますね。

 

そんなわけで、これからは、新たにシステムを導入したいお客様や、これから導入を考えておられるお客様のお役に立てるよう、

定期的にシステム開発に関するお役立ち情報を発信していこうと思います。

 

九月に入っても暑い日々が続き、台風も多く発生して、すっきりしない日々が続いておりますが、

気分だけでもすっきりして、仕事に遊びにガンバロー!!