清水理史の「イニシャルB」
もっと業務にNASを活用したい! 請求書発行システム「Invoice Plane」を導入する
(2016/5/9 06:00)
Excelで請求書を作成するのも悪くはないが、せっかくNASがあるなら、NASに請求書の作成・保管・発行をまかせてみてはどうだろうか? オープンソースの請求書発行システム「Invoice Plane」をQNAPに導入してみた。
請求書発行をもっと簡単に
「いっしょにするな」と怒られるかもしれないが、この手の商売の人にありがちな、事務処理が苦手なタイプだ。
領収書の整理に、通帳のチェック、請求書の発行と、大切なことはわかっていても、なかなか処理できない。
中でも面倒なのが請求書の発行で、月末に編集部から「請求書ください」と請求書の請求が来てはじめて請求書を作り始めるのが常だし、項目や日付を間違えて再提出するなんてこともしばしば。
筆者のような仕事は、取引先も少ないし、取り扱う商品が「原稿執筆」など限られているので、Excelのテンプレートをちょっと変えるだけで済むのだが、たくさんの取引先や商品がある企業では、その手間は比べ物にならないだろう。
そこで提案したいのが、NASを利用した事務処理の効率化だ。NASというと、ファイル共有やデータ保管などのストレージとしての用途だけを思い浮かべがちだが、最近のNASはハードウェアの性能も高く、サーバーとしての汎用性も備えており、若干の手間さえ惜しまなければ、業務への活用は難しくない。
「そうは言っても、英語版が多いし、使いにくいじゃん……」。各NASベンダーが提供しているダウンロード可能な「アプリ」を使ったことがある人なら、そう思うかもしれない。
その感想は、まったもってその通りなので、今回は、少し手間がかかったとしても、日本語、日本商習慣に対応することにこだわってみた。
具体的には、オープンソースで開発が進められている「Invoice Plane」というアプリを利用して、請求書の発行システムを構築してみた。
Invoice Planeとは
Invoice Planeは、オープンソースの見積もり/請求書管理発行システムだ。ブラウザでアクセスすることで、簡単に見積もりや請求書を作成したり、PDFで出力してメールで送信したり、請求書に対しての入金を管理することができる。
取引先や製品などのマスタ情報を登録しておくこともできるため、たくさんの取引先や商品を扱っている場合でも、あらかじめ登録された情報から名前や金額を自動的に入力することができる。
本格的なERPのような機能はないが、小規模な企業でExcelでの見積もり・請求書作成に手間をかけてきた企業などでは、十分に乗り換えを検討する価値があるソフトウェアとなっている。
ウェブページは英語だが、日本語に対応しており、アプリケーションの画面自体はほぼ日本語で利用できる。小数点以下が表示されるなど、日本の商習慣に合わない部分があるが、最終的に出力されるPDFのテンプレートはPHPのコードをちょっと変更するだけで、簡単に日本仕様に修正することができる。
動作環境は、PHP 5.3.0以上とMySQL 4.x以上で、通常はLinuxなどの自前サーバーで稼働させるが、QNAPやSynologyのNASでも、比較的簡単に動作させることが可能だ。
ただし、いわゆるNAS向けのパッケージとしては提供されていないため手動のインストールが必要になる。と言っても、ダウンロードしたファイルをNASにコピーし、ブラウザーから初期設定を実行するだけと簡単だ。データベースを作成する必要があるが、こちらもphpMyAdminからGUIでサクッと作成できるので、インストールと言うほどの手間はかからない。
以下に紹介する手順は長く、複雑そうに見えるが、やってみるとそんなに難しくないので、ぜひ試してみてほしい。ここでは、QNAPのTS-453Aを例に導入方法を解説しているが、他機種でも若干の違いはあっても、ほぼ同じ要領でインストールできる。
Invoice Planeのインストール
まずは、必要なファイルをダウンロードする。Invoice Planeのトップページからプログラム本体と、日本語用のローカライズファイルをダウンロードする。
ちなみに、インストール方法はWiki形式のページで解説されている。
前提条件は、前述のとおり、PHP 5.3.0以上とMySQL 4.x以上が必要になるが、QNAPの場合、ホーム向けセットアップを実行するとMariaDBとApacheがインストール済みのはずなので、コントロールパネルで有効になっていることを確認しておくといいだろう。
続いて、データベース作成用にphpMyAdminをインストールする。AppCenterで検索し、パッケージをインストール。インストールが完了したら、アプリを開くと管理ページからデータベースを作成できる。
ここまでで、Invoice Planeを動作させるための前提条件が整うので、インストールを開始する。
早速、必要なファイルをコピーしていこう。ダウンロードしたファイルを展開し、「invoiceplane」などのフォルダ名に変更してNASの「Web」共有フォルダにコピー。ローカライズ用のファイルも「application\language」フォルダにコピーしておく。
ちなみに、必須ではないが、ローカライズファイルは一部の言語が英語のまま残っている場合もある。たとえば、請求書をPDF化した際などに数量だけ「QTY」と表示されてしまう。気になる場合は、テキストエディタなどで開いて編集しておくといいだろう。
必要なファイルがそろったら、セットアップを実行する。ネットワーク上のPCからブラウザで「http://NASのアドレス/invoiceplane(インストールしたフォルダ名)/index.php/setup」にアクセスし、言語を選択しセットアップを進めていく。
ログインと初期設定
インストールが完了しても、すぐには使えない。自社の情報や税率など、必要な情報を設定しておく必要があるため、セットアップ時に指定したメールアドレスとパスワードでログインして各項目を設定していく。
まずは、自社の情報を入力する。右上の名前の部分をクリックすると、ユーザー情報が表示されるので、会社名を入力。住所などを入力していない場合は、追加しておく
続いて、設定アイコンから「支払方法」を登録する。自社の銀行口座などを登録しておくことで、請求書を発行した際に、この銀行口座を自動的に記載することができる。
同様に税率を設定する。消費税の8%を計上する場合は、ここで登録しておくと自動的に計算してくれるようになる。
次にシステム設定で日付のフォーマットなどを設定する。また、先に設定して支払方法や税率を標準の設定として登録しておくことで、請求書作成時に選択する手間がかからなくなる。
なお、ここで小数点以下の数値の扱いを設定できるが、標準では2または3桁のみの2択で、小数点以下を扱わない設定ができない。日本では1円未満は扱わないことが多いので、金額が「1,000.00」などと表示されると紛らわしい。
Invoice Planeのフォーラムを見ると、将来的に小数点以下を扱わないように変更する予定のようだが、現状はそのまま使うか、後述するように顧客に提出するPDFだけでも手動で小数点以下を削除するようにコードを変更する必要がある。
請求書を発行する
それでは、請求書を発行してみよう。初回は、取引先の登録し、そこから発行するのが簡単だ。次回以降は、一度登録した取引先をマスタとして使えるようになるので、「請求書」メニューなどから発行することも可能になる。
ちなみに、取り扱う製品が多い場合は、「製品情報」メニューからあらかじめ製品名と金額を登録しておくこともできる。製品ごとに異なる税率を設定しておくこともできるので、これも将来的に複雑な税率になっても対応することもできるだろう。
もちろん、PDFで発行することも可能で、印刷したり、そのままメールなどで請求書を送信することも可能だ。
日本仕様にテンプレートをカスタマイズする
このように、あらかじめ税率や取引先、製品を登録しておけば、数量や金額を入力するだけで簡単に請求書を作成できるInvoice Planeだが、難点は、先に触れたように標準仕様のままでは日本の商習慣になじまない点がいくつか見られる点だ。
オープンソースのビジネスアプリケーションとしては、かなり日本語の完成度は高いが、住所の並びが番地からで郵便番号がおかしなところに表示されたり、小数点以下の数値の扱いが必須となってしまう点は、ぜひ改善してもらいたいところだ。
将来的な改善も遠くなさそうではあるが、とりあえずの改善方法としては、出力に使うPDFのテンプレートを変更しておくのが手っ取り早い。「application\views\invoice_templates\pdf」にテンプレートが保存されているので、これを改変する。
具体的には、「InvoicePlane.php」のいくつかのコードを書き換える。コードと言っても、基本はHTMLなので、部分単位に順番を入れ替えたり、追加したい文字を書き加えたり、PHPの作法に従って数値の表示形式を変更するだけなので簡単だ。
改変したテンプレートをそのまま提供してもかまわないのだが、再配布について確認する時間がなかったので、以下に改変方法だけ掲載しておく。
このように変更したテンプレートを「InvoicePlaneJP.php」などの別名で保存し、最後に設定の「システムの設定」にある「請求書」タブで、規定のテンプレートとして選択しておけばいい。
NASをもっと業務に活用
以上、Invoice PlaneをNASに導入してみたが、若干のカスタマイズは必要なものの、海外製のオープンソースソフトウェアとしては、かなり使いやすく、筆者のような小規模なビジネス環境では、十分に使えるアプリと言えそうだ。
NASには、ERPやCRMなどのパッケージがいくつか提供されているが、はっきり言って、これらは日本語、日本の商習慣では使い物にならない。かといって、クラウドサービスは無料で使えるのはお試しレベルで、本格的な業務に活用しようとすると、月々の料金が結構かかる。
日本でも、だいぶNASが普及してきたが、このまま単なるデータの保管庫で終わっては面白くない。今回のInvoice Planeのようなアプリが増え、クラウドサービスに代わる、「無料」のビジネスプラットフォームとして、もっと活用可能になることを期待したいところだ。