以下、添付図面を参照して本発明に係る好適な実施形態を詳細に説明する。なお、本発明は、図示例に限定されるものではない。
(売上データ処理システム1の構成)
まず、図1を参照して、本実施形態の売上データ処理システム1の構成について説明する。
図1に示すように、売上データ処理システム1は、サーバ装置としてのセンタサーバ10と、売上データ処理装置としてのECR20A,20Bと、端末装置としてのクライアントPC30A,30Bと、を備えて構成される。
センタサーバ10は、インターネット等の通信ネットワークNを介してECR20A,20Bと通信接続されている。ECR20A,20Bは、商品を販売する各店舗内に設置され、取引が発生した際に、売上登録(販売された商品、個数、金額、支払い方法等の入力)や仕入・入出金の登録を受け付けて売上データD1や仕入・入出金データD2を作成するための装置である。なお、ECRの台数は図1の例に限定されない。
また、センタサーバ10は、インターネット等の通信ネットワークNを介してクライアントPC30A,30Bと通信接続されている。クライアントPC30A,30Bは、ユーザ(売上データ処理システム1のユーザであり、ECR20A,20Bを設置している店舗を管理する会社)の端末装置である。
(センタサーバ10の構成)
次に、センタサーバ10の内部構成について説明する。
図2は、センタサーバ10の機能構成例を示すブロック図である。図2に示すように、センタサーバ10は、CPU(Central Processing Unit)11と、入力部12と、RAM13(Random Access Memory)と、表示部14と、記憶部15と、通信部16と、計時部17と、印刷部18を備え、各部はバス19を介して接続されている。
CPU11は、センタサーバ10の各部を集中制御する。CPU11は、記憶部15に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM13に展開し、RAM13に展開されたプログラムとの協働で、各種処理を実行する。例えば、CPU11は、プログラムとの協働により後述するレジ認証処理、データ格納処理、データ転送処理等を実行する。
入力部12は、カーソルキー、文字、数字入力キー及び各種機能キーなどを備えたキーボードを含む構成とし、操作者により各キーが押下された操作信号をCPU11に出力する。また、入力部12は、マウス等のポインティングデバイスを含み、位置入力信号を受け付けてCPU11に送信することとしてもよい。
RAM13は、情報を一時的に格納する揮発性のメモリであり、実行される各種プログラムやこれら各種プログラムに係るデータ等を格納する複数のワークエリアを有する。
表示部14は、LCD(Liquid Crystal Display)、ELD(Electro Luminescent Display)等で構成され、CPU11からの表示信号に従って各種表示を行う。
記憶部15は、磁気記録媒体を有するHDD(Hard Disk Drive)等により構成され、各種プログラム及び各種データを記録媒体から読み出し及び書き込み可能に記憶する。各種プログラムには、CPU11に後述するレジ認証処理、データ格納処理、データ転送処理を実行させるためのプログラムが含まれる。
また、記憶部15は、レジ認証マスター151、宛先マスター152、PC認証マスター153等を記憶している。
レジ認証マスター151は、センタサーバ10がレジ(ECR)を認証するための情報を格納するマスターファイルである。レジ認証マスター151には、ECR毎に、ECRを識別するための「レジコード」、そのECRを管理しているユーザを識別するための「会社コード」等が記憶されている。
宛先マスター152は、会社毎のフォルダのフォルダパス情報を格納するためのマスターファイルである。宛先マスター152には、会社毎に、ECRを識別するための「レジコード」、ユーザ(会社)を識別する「会社コード」、「会社名」、ユーザの管理するECRから送信された売上データD1及び仕入・入出金データD2を格納するフォルダのフォルダパスを示す「宛先フォルダパス」が記憶されている。
PC認証マスター153は、センタサーバ10がクライアントPCを認証するための情報を格納するマスターファイルである。PC認証マスター153には、クライアントPC毎に、そのクライアントPCのユーザの「会社コード」、「ログインID」、「パスワード」等が記憶されている。
通信部16は、モデム、TA(Terminal Adapter)、ルータ、ネットワークカード等により構成される。通信部16は、接続される通信ネットワークN上のECR20A,20Bと情報を送受信する。また、通信部16は、クライアントPC30A,30Bと情報を送受信する。
計時部17は、計時回路を内蔵し、現在時刻(システム時刻)及び現在日付(システム日時)を計時して出力する。
印刷部18は、電子写真式、インクジェット式等のプリンタで構成され、CPU11から入力される印刷指示に応じて、各種印刷情報を用紙に印刷出力する。
(ECR20A、20Bの構成)
次に、ECR20A,20Bの内部構成について説明する。
図3は、ECR20A,20Bの機能的構成を示すブロック図である。以下の説明では、ECR20Aの構成を代表して説明するが、ECR20Bの構成も同様である。
図3に示すように、ECR20Aは、CPU21と、入力部22と、RAM23と、表示部24と、記憶部25と、通信部26と、ドロア27と、プリント部28と、計時部29と、を備えて構成され、各部はバス29aを介して接続されている。
CPU21、RAM23、通信部26、計時部29については、それぞれ、センタサーバ10のCPU11、RAM13、通信部16、計時部17の構成と同様であり、異なる部分を主として説明する。
CPU21は、ECR20Aの各部を集中制御する。CPU21は、記憶部25に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM23に展開し、RAM23に展開されたプログラムとの協働で、各種処理を実行する。例えば、CPU21は、プログラムとの協働により、後述する登録処理を実行することにより、登録手段、データ作成手段として機能する。
入力部22は、カーソルキー、文字、数字入力キー及び各種機能ボタンなどを備えたレジ用のキーボードを含む構成とし、操作者により各キーやボタンが押下された操作信号をCPU21に出力する。入力部22は、表示部24と一体的にタッチパネルを構成することとしてもよい。また、入力部22は、商品に設けられたバーコード、あるいは、図14に示す仕訳ルールバーコートブック381に印刷されたバーコードを読み取るバーコードスキャナ等を備える。
本実施形態において、入力部22は、機能ボタンとして、図示しない仕訳ボタン、日付ボタン、支払いボタン(現金ボタン、券ボタン、貸しボタン、クレジットボタン)等を備えて構成されている。仕訳ボタンは、直前に入力された数値を仕訳ルール番号として認識する指示を入力するためのボタンである。日付ボタンは、直前に入力された数値を伝票日付として認識する指示を入力するためのボタンである。支払いボタンは、売上に対する支払い方法を入力するためのボタンである。
仕訳ボタン、支払いボタンには、ファンクションコード及びキャラクタ(キーキャラクタ)が予め対応付けられている。例えば、仕訳ボタンには、ファンクションコード=0901及びキャラクタ=仕訳、が対応付けられている。現金ボタンには、ファンクションコード=0001及びキャラクタ=現金、が対応付けられている。券ボタンには、ファンクションコード=0002及びキャラクタ=券、が対応付けられている。クレジットボタンには、ファンクションコード=0003及びキャラクタ=貸し、が対応付けられている。クレジットボタンには、ファンクションコード=0004及びキャラクタ=クレジット、が対応付けられている。各機能ボタンとファンクションコード及びキャラクタとの対応関係は、記憶部25に記憶されている。
また、入力部22は、モードスイッチを備えている。モードスイッチは、ECR20Aの動作モードを登録モード、点検モード、精算モード、設定モード、OFFモード、戻モードの何れかに切り替えるためのスイッチである。登録モードは、売上、仕訳、入出金等の取引の登録を行うモードである。
表示部24は、LCD、ELD等で構成され、CPU21からの表示制御信号に従って画面表示を行う。
記憶部25は、ROM(Read Only Memory)等により構成される。記憶部25は、各種プログラム及び各種データを、ROMから読み出し可能に記憶する。また、記憶部25は、HDD等により構成してもよい。記憶部25には、ECRを識別するためのレジコードを記憶している。
通信部26は、通信ネットワークN上のセンタサーバ10と情報を送受信する。通信部26は送信手段として機能する。
ドロア27は、硬貨や紙幣等の現金を収納する引出しである。ドロア27は、例えば、CPU21の指示により、引出しを開ける。
プリント部28は、例えば、サーマルプリンタであり、レシート用、ジャーナル用のロール紙を有し、CPU21から入力される指示に従って、各ロール紙に対して金額等のデータをプリントアウトする。
(クライアントPC30A、30Bの構成)
次に、クライアントPC30A,30Bの内部構成について説明する。
図4は、クライアントPC30A,30Bの機能的構成を示すブロック図である。以下の説明では、クライアントPC30Aの構成を代表して説明するが、PC30Bの構成も同様である。
図4に示すように、クライアントPC30Aは、CPU31と、入力部32と、RAM33と、表示部34と、記憶部35と、通信部36と、計時部37と、出力手段としての印刷部38と、を備えて構成され、各部はバス39を介して接続されている。
CPU31、入力部32、RAM33、表示部34、記憶部35、通信部36、計時部37、印刷部38は、それぞれ、センタサーバ10のCPU11、入力部12、RAM13、表示部14、記憶部15、通信部16、計時部17、印刷部18の構成と同様であり、異なる部分を主として説明する。
CPU31は、クライアントPC30Aの各部を集中制御する。CPU31は、記憶部35に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM33に展開し、RAM33に展開されたプログラムとの協働で、各種処理を実行する。例えば、CPU31は、プログラムとの協働により後述する仕訳ルール設定(売上)処理、仕訳ルール設定(仕入・入出金)処理、仕訳ルールバーコードブック出力処理、仕訳データ作成処理、仕訳データ編集処理、フォーマット変換処理等を実行することにより、設定手段、仕訳データ作成手段、仕訳データ編集手段、フォーマット変換手段として機能する。
記憶部35は、磁気記録媒体を有するHDD等により構成される。記憶部35には、CPU31で実行されるシステムプログラムや各種アプリケーションプログラム、これらのプログラムの実行に必要なデータ等が記憶されている。
また、本実施の形態において、記憶部35には、第1仕訳ルールファイル351、第2仕訳ルールファイル352、バーコードブック出力項目ファイル353、分類表ファイル354、仕訳データファイル355が記憶されている。
第1仕訳ルールファイル351は、後述する仕訳ルール設定(売上)処理において設定された、売上についての仕訳ルール情報を格納するためのファイルである。
図5は、第1仕訳ルールファイル351のデータ格納例を示す図である。図5に示すように、第1仕訳ルールファイル351には、「レコードNo.」、「会計ソフト区分」、「分類」、「項目名」、「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」、「カード会社コード又はサブファンクションコード」等の項目が設けられている。
本実施形態において、第1仕訳ルールファイル351には、予め「レコードNo.」=01〜25のレコードが設けられている。「レコードNo.」=1は、クライアントPC30Aで使用している会計ソフトの種類を示す会計ソフトの区分を格納するためのレコードである。会計ソフト区分=1は会計ソフト1、会計ソフト区分=2は会計ソフト2、会計ソフト区分=3は会計ソフト3であることを示す。「レコードNo.」=02〜05は、売上対象(商品売上、奉仕料等)についての仕訳ルール情報を格納するためのレコードである。「レコードNo.」=06〜10は、現金売りについての仕訳ルール情報を格納するためのレコードである。「レコードNo.」=11〜15は、クレジットについての仕訳ルール情報を格納するためのレコードである。「レコードNo.」=16〜20は、券売りについての仕訳ルール情報を格納するためのレコードである。「レコードNo.」=21〜25は、貸売りについての仕訳ルール情報を格納するためのレコードである。各レコードの「分類」、「項目名」の項目には、予め取引の分類及び取引項目名が格納されており、仕訳ルール設定(売上)処理によって各レコードの「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」、「カード会社コード又はサブファンクションコード」が設定される。
第2仕訳ルールファイル352は、後述する仕訳ルール設定(仕入・入出金)処理において設定された、仕入及び入出金の取引項目毎の仕訳ルール情報を格納するためのファイルである。
図6は、第2仕訳ルールファイル352のデータ格納例を示す図である。図6に示すように、第2仕訳ルールファイル352には、「仕訳ルール番号」、「8桁バーコード」、「摘要(取引項目)」、「スポット取引区分」、「借方勘定科目コード」、「借方補助科目コード」、「借方勘定科目名」、「借方補助科目名」、「借方税区分」、「貸方勘定科目コード」、「貸方補助科目コード」、「貸方勘定科目名」、「貸方補助科目名」、「貸方税区分」等の項目が設けられている。仕訳ルール番号は、仕訳ルール情報を識別するための識別番号である。スポット取引は、取引の相手先が予め定められていない(固定ではない)取引であり、スポット取引である場合、スポット取引区分=1となる。
本実施形態において、第2仕訳ルールファイル352には、予め「仕訳ルール番号」=001〜200が付与されたレコードが設けられている。「仕訳ルール番号」=001〜050のレコードは、仕入についての仕訳ルール情報を格納するためのレコードである。「仕訳ルール番号」=051〜100のレコードは、入金についての仕訳ルール情報を格納するためのレコードである。「仕訳ルール番号」=101〜200のレコードは、出金についての仕訳ルール情報を格納するためのレコードである。また、各レコードの「8桁バーコード」には、予め、固定値4桁(ここでは2900)+仕訳ルール番号(3桁)+チェックデジットにより構成される数値が格納されている。
バーコードブック出力項目ファイル353は、後述する仕訳ルールバーコードブック出力処理において仕訳ルールバーコードブック381(図14参照)を出力する際に、バーコードブックの各項目にどのファイルのどの項目の情報を出力するかを示す情報が格納されたファイルである。バーコードブック出力項目ファイル353は、図7に示すように「バーコードブック項目」、「出力する情報」等の項目が設けられている。
分類表ファイル354は、後述する仕訳ルールバーコードブック出力処理においてバーコードブックの「分類」項目を出力する際の仕訳ルール番号と印字文字の対応関係を示す情報が格納されたファイルである。分類表ファイル354は、図8に示すように「仕訳ルール番号」、「印字文字」の項目が設けられている。
仕訳データファイル355は、作成された仕訳データを格納するためのファイルである。
図4の通信部36は、通信ネットワークN上のセンタサーバ10等の外部機器と通信を行う。通信部36は受信手段として機能する。
次に、売上データ処理システム1の動作について説明する。
(クライアントPCにおける仕訳ルール設定処理)
まず、クライアントPC30A、30Bにおいて実行される仕訳ルール設定処理について説明する。ここでは、代表してクライアントPC30Aの処理について説明するが、クライアントPC30Bにおいても同様である。
図9は、仕訳ルール設定(売上)処理を示すフローチャートである。仕訳ルール設定(売上)処理は、オペレータの操作に応じて上述の第1仕訳ルールファイル351に売上についての仕訳ルール情報を設定するための処理である。仕訳ルール設定(売上)処理は、入力部32により売上についての仕訳ルールの設定が指示された際にCPU31と記憶部35のプログラムとの協働により実行される。
まず、記憶部35から第1仕訳ルールファイル351が読み出されてRAM33に展開され(ステップS1)、記憶部35に記憶された画面情報ファイル(図示せず)から売上仕訳ルール設定画面情報が読み出され、表示部34に売上仕訳ルール設定画面341が表示される(ステップS2)。
図10A〜図10Bに、売上仕訳ルール設定画面341の一例を示す。図10Aに示すように、売上仕訳ルール設定画面341には、会計ソフトタブT1、売上対象タブT2、現金売りタブT3、クレジットタブT4、券売りタブT5、貸売りタブT6、確定ボタンB1、キャンセルボタンB2が設けられている。入力部32により会計ソフトタブT1が選択されると、図10Aに示すように、売上仕訳ルール設定画面341に会計ソフト選択欄341aが表示される。入力部32により売上対象タブT2が選択されると、図10Bに示すように、売上仕訳ルール設定画面341に、売上対象(商品売上、奉仕料)別に仕訳ルールを入力するための入力欄341bが表示される。同様に、入力部32により現金売りタブT3が選択されると、売上仕訳ルール設定画面341に、現金売上についての仕訳ルールを入力するための入力欄が表示される。入力部32によりクレジットタブT4が選択されると、売上仕訳ルール設定画面341に、クレジットによる売上についての仕訳ルールを入力するための入力欄が表示される。入力部32により券売りタブT4が選択されると、売上仕訳ルール設定画面341に、券売りについての仕訳ルールを入力するための入力欄が表示される。入力部32により貸売りタブT5が選択されると、売上仕訳ルール設定画面341に、貸売りについての仕訳ルールを入力するための入力欄が表示される。なお、初期状態では、会計ソフトタブT1が選択された場合と同様の画面表示となる。第1仕訳ルールファイル351に既に設定されている仕訳ルール情報がある場合には、現在の設定内容がデフォルトで入力欄に表示され、設定内容を変更入力することができる。
入力部32により売上仕訳ルール設定画面341の会計ソフトタブT1からの入力が行われたか否かが判断される(ステップS3)。具体的には、入力部32により会計ソフトタブT1が選択されることにより表示された会計ソフト選択欄341aから入力が行われたか否かが判断される。入力部32により会計ソフトタブT1からの入力が行われたと判断されると(ステップS3;YES)、会計ソフトタブT1が選択された状態(会計ソフト選択欄が表示された状態)で入力部32により確定ボタンB1が押下されたか否かが判断される(ステップS4)。会計ソフトタブT1が選択された状態で入力部32により確定ボタンB1が押下されたと判断されると(ステップS4;YES)、会計ソフトタブT1から入力された内容で第1仕訳ルールファイル351のレコードNo.1のレコードが更新され(ステップS5)、処理はステップS3に戻る。
一方、会計ソフトタブT1からの入力が行われていないと判断された場合(ステップS3;NO)、又は会計ソフトタブT1が選択された状態で入力部32により確定ボタンB1が押下されていないと判断された場合(ステップS4;NO)、処理はステップS6に移行する。
ステップS6においては、入力部32により売上仕訳ルール設定画面341の売上対象タブT2からの入力が行われたか否かが判断される(ステップS6)。具体的には、入力部32により売上対象タブT2が選択されることにより表示された入力欄341bから入力が行われたか否かが判断される。入力部32により売上対象タブT2からの入力が行われたと判断されると(ステップS6;YES)、売上対象タブT2が選択された状態(売上対象の仕訳ルールの入力欄が表示された状態)で入力部32により確定ボタンB1が押下されたか否かが判断される(ステップS7)。売上対象タブT2が選択された状態で入力部32により確定ボタンB1が押下されたと判断されると(ステップS7;YES)、売上対象タブT2から入力された内容に基づいて第1仕訳ルールファイル351のレコードNo.2〜5のレコードが更新され(ステップS8)、処理はステップS3に戻る。
一方、売上対象タブT2からの入力が行われていないと判断された場合(ステップS6;NO)、又は売上対象タブT2が選択された状態で入力部32により確定ボタンB1が押下されていないと判断された場合(ステップS7;NO)、処理はステップS9に移行する。
ステップS9においては、入力部32により売上仕訳ルール設定画面341の現金売りタブT3からの入力が行われたか否かが判断される(ステップS9)。具体的には、入力部32により現金売りタブT3が選択されることにより表示された入力欄から入力が行われたか否かが判断される。入力部32により現金売りタブT3からの入力が行われたと判断されると(ステップS9;YES)、現金売りタブT3が選択された状態(現金売りの仕訳ルールの入力欄が表示された状態)で入力部32により確定ボタンB1が押下されたか否かが判断される(ステップS10)。現金売りタブT3が選択された状態で入力部32により確定ボタンB1が押下されたと判断されると(ステップS10;YES)、現金売りタブT3から入力された内容に基づいて第1仕訳ルールファイル351のレコードNo.6〜10のレコードが更新され(ステップS11)、処理はステップS3に戻る。
一方、現金売りタブT3からの入力が行われていないと判断された場合(ステップS9;NO)、又は現金売りタブT3が選択された状態で入力部32により確定ボタンB1が押下されていないと判断された場合(ステップS10;NO)、処理はステップS12に移行する。
ステップS12においては、入力部32により売上仕訳ルール設定画面341のクレジットタブT4からの入力が行われたか否かが判断される(ステップS12)。具体的には、入力部32によりクレジットタブT4が選択されることにより表示された入力欄から入力が行われたか否かが判断される。入力部32によりクレジットタブT4からの入力が行われたと判断されると(ステップS12;YES)、クレジットタブT4が選択された状態(クレジットの仕訳ルールの入力欄が表示された状態)で入力部32により確定ボタンB1が押下されたか否かが判断される(ステップS13)。クレジットタブT4が選択された状態で入力部32により確定ボタンB1が押下されたと判断されると(ステップS13;YES)、クレジットタブT4から入力された内容に基づいて第1仕訳ルールファイル351のレコードNo.11〜15のレコードが更新され(ステップS14)、処理はステップS3に戻る。
一方、クレジットタブT4からの入力が行われていないと判断された場合(ステップS12;NO)、又はクレジットタブT4が選択された状態で入力部32により確定ボタンB1が押下されていないと判断された場合(ステップS13;NO)、処理はステップS15に移行する。
ステップS15においては、入力部32により売上仕訳ルール設定画面341の券売りタブT5からの入力が行われたか否かが判断される(ステップS15)。具体的には、入力部32により券売りタブT5が選択されることにより表示された入力欄から入力が行われたか否かが判断される。入力部32により券売りタブT5からの入力が行われたと判断されると(ステップS15;YES)、券売りタブT5が選択された状態(券売りの仕訳ルールの入力欄が表示された状態)で入力部32により確定ボタンB1が押下されたか否かが判断される(ステップS16)。券売りタブT5が選択された状態で入力部32により確定ボタンB1が押下されたと判断されると(ステップS16;YES)、券売りタブT5から入力された内容に基づいて第1仕訳ルールファイル351のレコードNo.16〜20のレコードが更新され(ステップS17)、処理はステップS3に戻る。
一方、券売りタブT5からの入力が行われていないと判断された場合(ステップS15;NO)、又は券売りタブT5が選択された状態で入力部32により確定ボタンB1が押下されていないと判断された場合(ステップS16;NO)、処理はステップS18に移行する。
ステップS18においては、入力部32により売上仕訳ルール設定画面341の貸売りタブT6からの入力が行われたか否かが判断される(ステップS18)。具体的には、入力部32により貸売りタブT6が選択されることにより表示された入力欄から入力が行われたか否かが判断される。入力部32により貸売りタブT6からの入力が行われたと判断されると(ステップS18;YES)、貸売りタブT6が選択された状態(貸売りの仕訳ルールの入力欄が表示された状態)で入力部32により確定ボタンB1が押下されたか否かが判断される(ステップS19)。貸売りタブT6が選択された状態で入力部32により確定ボタンB1が押下されたと判断されると(ステップS19;YES)、貸売りタブT6から入力された内容に基づいて第1仕訳ルールファイル351のレコードNo.21〜25のレコードが更新され(ステップS20)、処理はステップS3に戻る。
一方、貸売りタブT6からの入力が行われていないと判断された場合(ステップS18;NO)、又は貸売りタブT6が選択された状態で入力部32により確定ボタンB1が押下されていないと判断された場合(ステップS19;NO)、処理はステップS21に移行する。
ステップS21においては、入力部32によりキャンセルボタンB2が押下されたか否かが判断され、押下されていないと判断されると(ステップS21;NO)、処理はステップS3に戻る。入力部32によりキャンセルボタンB2が押下されたと判断されると(ステップS21;YES)、仕訳ルール設定(売上)処理は終了する。
図11は、仕訳ルール設定(仕入・入出金)処理を示すフローチャートである。仕訳ルール設定(仕訳・入出金)処理は、オペレータの操作に応じて上述の第2仕訳ルールファイル352に取引のうち仕入・入出金についての仕訳ルール情報を設定するための処理である。仕訳ルール設定(仕訳・入出金)処理は、入力部32により仕訳・入出金についての仕訳ルールの設定指示が入力された際にCPU31と記憶部35のプログラムとの協働により実行される。
まず、記憶部35から第2仕訳ルールファイル352が読み出されてRAM33に展開され(ステップS31)、記憶部35に記憶された画面情報ファイル(図示せず)から入出金仕訳ルール設定画面情報が読み出され、表示部34に入出金仕訳ルール設定画面342が表示される(ステップS32)。
図12Aに、入出金仕訳ルール設定画面342の一例を示す。図12Aに示すように、入出金仕訳ルール設定画面342には、仕入タブT11、入金タブT12、出金タブT13、変更ボタンB11、戻るボタンB12が設けられている。入出金仕訳ルール設定画面342の初期表示では、仕入タブT11が選択された状態であることとする。
次いで、入出金仕訳ルール設定画面342において、入力部32(又は初期表示)により仕入タブT11が選択されたか否かが判断される(ステップS33)。仕入タブT11が選択されたと判断されると(ステップS33;YES)、図12Aに示すように、第2仕訳ルールファイル352の仕訳ルール番号001〜050のレコードの内容が一覧表示される(ステップS34)。
次いで、入出金仕訳ルール設定画面342において、入力部32により戻るボタンB12が押下されたか否かが判断される(ステップS35)。入力部32により戻るボタンB12が押下されたと判断されると(ステップS35;YES)、仕訳ルール設定(仕訳・入出金)処理は終了する。
一方、入出金仕訳ルール設定画面342において、入力部32により戻るボタンB12が押下されていないと判断されると(ステップS35;NO)、入出金仕訳ルール設定画面342に一覧表示されたレコードの中から何れかが入力部32により行選択+クリックされるか、又は、行選択+変更ボタンB11の押下がされたか否かが判断される(ステップS36)。一覧表示されたレコードの何れも入力部32により行選択+クリックされておらず、行選択+変更ボタンB11の押下もされていないと判断されると(ステップS36;NO)、処理はステップS33に戻る。
一方、一覧表示されたレコードの中から何れかが入力部32により行選択+クリックされるか、又は、行選択+変更ボタンB11の押下がされたと判断されると(ステップS36;YES)、図12Bに示すように、表示部34に表示されている入出金仕訳ルール設定画面342に、選択された行のレコードに仕訳ルール情報を入力するための入力欄が表示され、入力部32からの仕訳ルール情報の入力が受け付けられる(ステップS37)。ステップS37においては、選択されたレコードに既に仕訳ルール情報が設定されている場合には、現在の設定内容がデフォルトで入力欄に表示される。また、入出金仕訳ルール設定画面342上に確定ボタンB13、キャンセルボタンB14が表示される。
次いで、入力部32によりキャンセルボタンB14が押下されたか否かが判断される(ステップS38)。入力部32によりキャンセルボタンB14が押下されたと判断されると(ステップS38;YES)、処理はステップS33に戻る。入力部32によりキャンセルボタンB14が押下されていないと判断されると(ステップS38;NO)、入力部32により確定ボタンB13が押下されたか否かが判断される(ステップS39)。入力部32により確定ボタンB13が押下されたと判断されると(ステップS39;YES)、表示された入力欄から入力された内容で第2仕訳ルールファイル352の該当するレコードが更新され(ステップS40)、処理はステップS33に戻る。
一方、ステップS33において、入力部32により仕入タブT11が選択されていないと判断されると(ステップS33;NO)、入力部32により入金タブT12が選択されたか否かが判断される(ステップS41)。入金タブT12が選択されたと判断されると(ステップS41;YES)、第2仕訳ルールファイル352の仕訳ルール番号051〜100のレコードの内容が一覧表示される(ステップS42)。
次いで、ステップS43〜ステップS48の処理が実行される。ステップS43〜ステップS48の処理は、それぞれステップS35〜ステップS40の処理と同様であるので説明を援用する。
一方、ステップS41において、入力部32により仕入タブT11も入金タブT12も選択されず、出金タブT13が選択されたと判断されると(ステップS41;NO)、第2仕訳ルールファイル352の仕訳ルール番号101〜200のレコードの内容が一覧表示される(ステップS49)。
次いで、ステップS50〜ステップS55の処理が実行される。ステップS50〜ステップS55の処理は、それぞれステップS35〜ステップS40の処理と同様であるので説明を援用する。
以上の仕訳ルール設定(売上)処理、仕訳ルール設定(仕入・入出金)処理により、第1仕訳ルールファイル351、第2仕訳ルールファイル352にユーザが使用する会計ソフトの種類、日常の取引の仕訳ルールが設定される。
(クライアントPCにおける仕訳ルールバーコードブック出力処理)
次に、クライアントPC30A、30Bにおいて実行される仕訳ルールバーコードブック出力処理について説明する。ここでは、代表してクライアントPC30Aの処理について説明するが、クライアントPC30Bにおいても同様である。
図13は、仕訳ルールバーコードブック出力処理を示すフローチャートである。仕訳ルールバーコードブック出力処理は、入力部32により仕訳ルールバーコードブックの出力が指示された際にCPU31と記憶部35のプログラムとの協働により実行される。
ここで、仕訳ルールバーコードブック出力処理において印刷出力される仕訳ルールバーコードブック381は、店舗のオペレータがECR20A、20Bにおいて仕入・入出金の取引を登録(具体的には、ユーザのクライアントPCで仕訳可能に登録)できるようにするために、第2仕訳ルールファイル352における仕入及び入出金に係る取引項目毎の仕訳ルール情報(一部でよい)とその仕訳ルール情報の識別番号である仕訳ルール番号との対応関係を示した対応表である。
図14は、仕訳ルールバーコートブック381の一例を示す図である。図14に示すように、仕訳ルールバーコードブック381には、取引項目を示す「摘要」に対応付けてその取引の仕訳ルール番号及びその仕訳ルール番号を示すバーコード等が印刷されている。各店舗のオペレータは、この仕訳ルールバーコードブック381を参照して、発生した取引(仕入又は入出金)に対応する仕訳ルール番号を入力部22のキーボードから入力するか、或いは入力部22のバーコードスキャナによりバーコードをスキャンしてバーコードに対応する仕訳ルール番号を入力することにより、仕入、入出金の取引データに仕訳ルール番号を付加し、仕入、入出金の取引をユーザのクライアントPCで仕訳できるようにECR20Aや20Bに登録することが可能となる。
まず、仕訳ルールバーコードブック381のヘッダ381aが印刷部38により用紙上に印刷出力される(ステップS61)。次いで、第2仕訳ルールファイル352から1レコード分の読み出しが行われ(ステップS62)、ファイルの終端であるか否かが判断される(ステップS63)。ファイルの終端ではないと判断されると(ステップS63;NO)、印刷部38において改ページが行われたか否かが判断される(ステップS64)。印刷部38において改ページが行われていないと判断されると(ステップS64;NO)、処理はステップS66に移行する。印刷部38において改ページが行われたと判断されると(ステップS64;YES)、仕訳ルールバーコードブック381のヘッダ381aが印刷部38により用紙上に印刷出力され(ステップS65)、処理はステップS66に移行する。
ステップS66においては、ステップS62で読み出されたれレコードの「8桁バーコード」を示すバーコードイメージが作成される(ステップS66)。そして、バーコードブック出力項目ファイル353(図7参照)に従って仕訳ルールバーコードブック381の各項目に値がセットされ、印刷部38により一行印刷され(ステップS67)、処理はステップS62に戻る。ステップS63において、ファイルの終端であると判断されると(ステップS63;YES)、仕訳ルールバーコードブック出力処理は終了する。
(ECRにおける登録処理)
次に、ECR20A、20Bにおいて実行される登録処理について説明する。ここでは、代表してECR20Aの処理について説明するが、ECR20Bにおいても同様である。
図15は、登録処理を示すフローチャートである。登録処理は、売上や仕入、入出金の登録を行う処理であり、登録モードにおいて、オペレータによる入力部22からの入力に応じてCPU21と記憶部25のプログラムとの協働により実行される。
ここで、オペレータの操作として、仕入、入出金の取引は、(1)仕訳ルールバーコードブック381に表示されている、登録対象の取引項目に対応するバーコードのバーコードスキャナによる読み取り+金額の入力+現金ボタンの押下、又は、(2)キーボードからの仕訳ルール番号の入力+仕訳ボタンの押下+金額の入力+現金ボタンの押下、により登録することができる。売上の登録は、(3)商品のバーコードのバーコードスキャナによる読み取り+金額の入力+支払い方法に応じた支払いボタンの押下(券ボタン及び貸しボタンにおいては更にサブファンクションコードの入力、クレジットボタンにおいては更にクレジット会社コードの入力)、又は(4)キーボードからの商品コードの入力+金額の入力+支払い方法に応じた支払いボタンの押下(券ボタン及び貸しボタンにおいては更にサブファンクションコードの入力、クレジットボタンにおいては更にクレジット会社コードの入力)、により登録することができる。
まず、計時部37からシステム日付が取得され、伝票日付=システム日付としてRAM23に記憶される(ステップS71)。
次いで、入力部22のバーコードスキャナによりバーコードのスキャンが行われたか否かが判断される(ステップS72)。入力部22のバーコードスキャナによりバーコードのスキャンが行われたと判断されると(ステップS72;YES)、スキャンされたバーコードの上2桁が29であるか否かが判断される(ステップS73)。ここで、バーコードの上2桁=29は、売上登録でないことを意味する。バーコードの上2桁が29であると判断されると(ステップS73;YES)、バーコードの下3桁が仕訳ルール番号としてRAM23に記憶され(ステップS74)、処理はステップS77に移行する。一方、バーコードの上2桁が29ではないと判断されると(ステップS73;NO)、処理はステップS85に移行する。
一方、ステップS72において、入力部22のバーコードスキャナによりバーコードのスキャンが行われていない(即ち、キーボードから入力が行われた)と判断されると(ステップS72;NO)、入力部22の仕訳ボタンが押下されたか否かが判断される(ステップS75)。仕訳ボタンが押下されたと判断されると(ステップS75;YES)、直前にキーボードから入力された数値が仕訳ルール番号としてRAM23に記憶され(ステップS76)、処理はステップS77に移行する。
ステップS77においては、入力部22から日付ボタンが押下されたか否かが判断される。入力部22から日付ボタンが押下されていないと判断されると(ステップS77;NO)、処理はステップS81に移行する。入力部22から日付ボタンが押下されたと判断されると(ステップS77;YES)、日付ボタンの押下の直前に入力された数値が日付として妥当であるか否かが判断される(ステップS78)。入力された数値が日付として妥当であるか否かは、例えば、入力された数値が8桁であってシステム日付>入力された数値であるか否か等により判断される。日付ボタンの押下の直前に入力された数値が妥当ではないと判断されると(ステップS78;NO)、表示部24にエラーメッセージが表示され(ステップS79)、処理はステップS77に戻る。日付ボタンの押下の直前に入力された数値が妥当であると判断されると(ステップS78;YES)、RAM23の伝票日付が直前に入力された数値に変更され(ステップS80)、処理はステップS81に移行する。
ステップS81においては、入力部22の現金ボタンが押下されたか否かが判断され、現金ボタンが押下されたと判断されると(ステップS81;YES)、現金ボタン押下の直前に入力された数値が金額としてRAM23に記憶される(ステップS82)。そして、レジコード、伝票日付、ファンクションコード、キャラクタ、金額、仕訳ルール番号が予め定められた仕入・入出金データフォーマットにセットされることにより仕入・入出金データD2が作成され(ステップS83)、作成された仕入・入出金データD2が通信部26によりセンタサーバ10に送信され(ステップS84)、登録処理は終了する。
図16は、仕入・入出金データD2のデータ構成例を示す図である。図16に示すように、仕入・入出金データD2は、「レジコード」、「伝票日付」、「ファンクションコード」、「サブファンクション」、「キーキャラクタ」、「金額」、「仕訳ルール番号」の項目のデータにより構成される。「レジコード」は、ECR20Aを識別するための識別コードであり、ECR20Aの記憶部25に記憶されている。「ファンクションコード」は、仕訳ボタンに対応するファンクションコード(ここでは0901で固定)である。「サブファンクション」は、ここでは入力されない。「キーキャラクタ」は、仕訳ボタンに対応するキャラクタ(ここでは「仕訳」)である。「伝票日付」、「金額」、「仕訳ルール番号」は、RAM23に記憶されものである。
一方、ステップS75において、入力部22の仕訳ボタンが押下されていないと判断されると(ステップS75;NO)、入力部22の支払いボタン(現金ボタン、券ボタン、貸しボタン、クレジットボタン)が押下されたか否かが判断される(ステップS85)。入力部22の支払いボタンが押下されたと判断されると(ステップS85;YES)、支払いボタンの直前に入力された数値が金額としてRAM23に記憶される(ステップS86)。なお、支払いボタンとして券ボタン又は貸しボタンが押下された場合、サブファンクションコードの入力が受け付けられる。クレジットボタンが押下された場合、クレジット会社コードの入力が受け付けられる。また、売上に奉仕料が含まれる場合には、金額+奉仕料ボタンの押下により奉仕料の入力が受け付けられる。そして、レジコード、伝票日付、ファンクションコード、サブファンクションコード、キャラクタ、金額、カード会社コード、奉仕料が予め定められた売上データフォーマットにセットされることにより売上データD1が作成され(ステップS87)、作成された売上データD1が通信部26によりセンタサーバ10に送信され(ステップS88)、登録処理は終了する。
図17は、売上データD1のデータ構成例を示す図である。図17に示すように、売上データD1は、「レジコード」、「伝票日付」、「ファンクションコード」、「サブファンクション」、「キーキャラクタ」、「金額」、「カード会社コード」、「奉仕料」の項目のデータにより構成される。「レジコード」は、ECR20Aを識別するための識別コードであり、ECR20Aの記憶部25に記憶されている。「ファンクションコード」は、押下された支払いボタンの種類に対応するファンクションコードである。「サブファンクションコード」、「カード会社コード」、「奉仕料」は、入力部22から入力された値である。「キーキャラクタ」は、押下された支払いボタンに対応するキャラクタである。「伝票日付」、「金額」は、RAM23に記憶されているものである。
一方、ステップS85において、支払いボタンが押下されていないと判断されると(ステップS85;NO)、登録処理は終了する。
(センタサーバ10におけるデータ転送)
センタサーバ10においては、ECR20A、20Bから送信された売上データD1又は仕入・入出金データD2が通信部16により受信されると、CPU11と記憶部に記憶されているプログラムとの協働により、レジ認証処理、データ格納処理、データ転送処理が実行される。
レジ認証処理では、受信された売上データD1又は仕入・入出金データD2に含まれるレジコードに基づいて、レジ認証が行われる。具体的には、受信された売上データD1又は仕入・入出金データD2に含まれるレジコードと一致するレジコードが記憶部15に記憶されているレジ認証マスター151に存在するか否かが判断される。受信された売上データD1又は仕入・入出金データD2に含まれるレジコードと一致するレジコードがレジ認証マスター151に存在すると判断されると、レジ認証がOKであると判断される。受信された売上データD1又は仕入・入出金データD2に含まれるレジコードと一致するレジコードがレジ認証マスター151に存在しないと判断されると、レジ認証がNGであると判断される。
レジ認証処理において、レジ認証がOKであると判断されると、データ格納処理が実行される。即ち、上記受信された売上データD1又は仕入・入出金データD2に含まれるレジコードに対応する会社コードがレジ認証マスター151から取得され、取得された会社コードと一致する会社コードを有するレコードが宛先マスター152から検索される。そして、検索されたレコードの出力フォルダパス(会社別の配信フォルダのパス)に、受信された売上データD1、仕入・入出金データD2が格納される。
配信フォルダに格納された売上データD1、仕入・入出金データD2データは、所定時間経過毎(又は所定時刻毎)に行われるその会社のクライアントPCからの要求に基づいて行われるデータ転送処理によって、通信部16により要求元のクライアントPCに転送される。転送済みの売上データD1、仕入・入出金データD2は、配信フォルダから削除される。
クライアントPC30A、30Bにおいては、通信部36によりセンタサーバ10から受信された売上データD1、仕入・入出金データD2が記憶部35に記憶される。
(クライアントPCにおける仕訳データ作成処理)
次に、クライアントPC30A、30Bにおいて実行される仕訳データ作成処理について説明する。ここでは、代表してクライアントPC30Aの処理について説明するが、クライアントPC30Bにおいても同様である。
図18は、仕訳データ作成処理を示すフローチャートである。仕訳データ作成処理は、入力部32から仕訳データ作成の指示が入力された際にCPU31と記憶部35のプログラムとの協働により実行される。
まず、変数である伝票No.に0が設定される(ステップS91)。次いで、第1仕訳ルールファイル351及び第2仕訳ルールファイル352が記憶部35から読み出されてRAM33に展開される(ステップS92)。
次いで、仕入・入出金データ変換処理が実行される(ステップS93)。図19に、仕入・入出金データ変換処理のフローチャートを示す。仕入・入出金データ変換処理は、CPU31と記憶部35のプログラムとの協働により実行される。
仕入・入出金データ変換処理においては、まず、記憶部35から1件分の仕入・入出金データD2の読み出しが行われる(ステップS101)。読み出しの結果、仕入・入出金データD2が読み出された、即ち、記憶部35に記憶されている全ての仕入・入出金データD2の読み出しがまだ終了していないと判断されると(ステップS102;NO)、読み出された仕入・入出金データD2のファンクションコード=0901であるか否かが判断される(ステップS103)。読み出された仕入・入出金データD2のファンクションコード=0901ではないと判断されると(ステップS103;YES)、処理はステップS101に戻る。
一方、読み出された仕入・入出金データD2のファンクションコード=0901であると判断されると(ステップS103;YES)、第2仕訳ルールファイル352の先頭にポインタの位置が設定され(ステップS104)、第2仕訳ルールファイル352からポインタの位置するレコードが1件読み出される(ステップS105)。読み出しの結果、ポインタが第2仕訳ルールファイル352の終端ではなく、レコードが読み出されたと判断されると(ステップS106;NO)、仕入・入出金データD2の「仕訳ルール番号」と第2仕訳ルールファイル352から読み出されたレコードの「仕訳ルール番号」とが一致するか否かが判断される(ステップS107)。仕入・入出金データD2の「仕訳ルール番号」と第2仕訳ルールファイル352から読み出されたレコードの「仕訳ルール番号」とが一致しないと判断されると(ステップS107;NO)、処理はステップS105に戻り、次のレコードが読み出される。
一方、仕入・入出金データD2の「仕訳ルール番号」と第2仕訳ルールファイル352から読み出されたレコードの「仕訳ルール番号」とが一致すると判断されると(ステップS107;YES)、変数である伝票No.が1インクリメントされる(ステップS108)。そして、仕入・入出金データD2及び第2仕訳ルールファイル352に基づいて仕訳データが作成され、記憶部35の仕訳データファイル355に出力される(ステップS109)。そして、処理はステップS101に戻る。
図20は、仕訳データファイル355のデータ格納例を示す図である。図20に示すように、仕訳データファイル355は、「レジコード」、「伝票日付」、「伝票番号」、「摘要」、「スポット取引区分」、「借方勘定科目コード」、「借方補助科目コード」、「借方勘定科目名」、「借方補助科目名」、「借方金額」、「借方税区分」、「貸方勘定科目コード」、「貸方補助科目コード」、「貸方勘定科目名」、「貸方補助科目名」、「貸方金額」、「貸方税区分」、「仕訳ルール番号」、「エラーフラグ」の項目からなる仕訳データを格納する。
図19のステップS109においては、具体的には、仕入・入出金データD2の「金額」が仕訳データの「借方金額」、「貸方金額」にセットされる。また、仕入・入出金データD2の「レジコード」、「伝票日付」、「仕訳ルール番号」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされる。また、ステップS105において第2仕訳ルールファイル352から読み出されたレコードの「摘要」、「スポット取引区分」、「借方勘定科目コード」、「借方補助科目コード」、「借方勘定科目名」、「借方補助科目名」、「借方税区分」、「貸方勘定科目コード」、「貸方補助科目コード」、「貸方勘定科目名」、「貸方補助科目名」、「貸方税区分」が仕訳データの同項目にセットされる。そして、作成された仕訳データが仕訳データファイル355に出力される。
一方、ステップS106において、第2仕訳ルールファイル352のファイル終端であると判断されると(ステップS106;YES)、表示部34にエラーメッセージが表示される(ステップS110)。また、伝票No.(変数)が1インクリメントされ(ステップS111)、仕入・入出金データD2に基づいて、エラーフラグを含む仕訳データが作成され、記憶部35の仕訳データファイル355に出力される(ステップS112)。そして、処理はステップS101に戻る。ステップS112においては、具体的には、仕入・入出金データD2の「金額」が仕訳データの「借方金額」、「貸方金額」にセットされる。また、仕入・入出金データD2の「レジコード」、「伝票日付」、「仕訳ルール番号」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされる。更に、仕訳データの「エラーフラグ」に1がセットされる。そして、作成された仕訳データが仕訳データファイル355に出力される。
記憶部35に記憶されている全ての仕入・入出金データD2についてのステップS103〜ステップS111の処理が終了し、ステップS102において、記憶部35に記憶されている全ての仕入・入出金データD2の読み出しが終了したと判断されると(ステップS102;YES)、記憶部35に記憶されている仕入・入出金データD2は削除され(ステップS113)、仕入・入出金データ変換処理は終了し、処理は図18のステップS94に移行する。
図18のステップS94においては、売上データ変換処理が実行される。図21は、売上データ変換処理を示すフローチャートである。売上データ変換処理は、CPU31と記憶部35のプログラムとの協働により実行される。
売上データ変換処理においては、まず、記憶部35から1件分の売上データD1の読み出しが行われる(ステップS201)。読み出しの結果、売上データD1が読み出された、即ち、記憶部35に記憶されている全ての売上データD1の読み出しがまだ終了してないと判断されると(ステップS202;NO)、読み出された売上データD1のファンクションコード=0001(現金)であるか否かが判断される(ステップS203)。読み出された売上データのファンクションコード=0001であると判断されると(ステップS203;YES)、図22に示す現金売り処理が実行される(ステップS204)。
読み出された売上データD1のファンクションコード=0001ではなく(ステップS203;NO)、ファンクションコード=0004(クレジット)であると判断されると(ステップS205;YES)、図23に示すクレジット処理が実行される(ステップS206)。
読み出された売上データD1のファンクションコード=0004ではなく(ステップS205;NO)、ファンクションコード=0002(券)であると判断されると(ステップS207;YES)、図25に示す券売り処理が実行される(ステップS208)。
読み出された売上データD1のファンクションコード=0002ではなく(ステップS207;NO)、ファンクションコード=0003(貸し)であると判断されると(ステップS209;YES)、図26に示す貸売り処理が実行される(ステップS210)。
読み出された売上データD1のファンクションコード=0003ではないと判断されると(ステップS209;NO)、処理はステップS201に戻る。
記憶部35に記憶されている全ての売上データD1についてのステップS203〜ステップS210の処理が終了し、ステップS202において、記憶部35に記憶されている全ての売上データD1の読み出しが終了したと判断されると(ステップS202;YES)、記憶部35に記憶されている売上データD1は削除され(ステップS211)、売上データ変換処理は終了する。
以下、売上データ変換処理のサブルーチンとして実行される現金売り処理、クレジット処理、券売り処理、貸売り処理について説明する。
まず、現金売り処理について説明する。
図22は、図21のステップS204で実行される現金売り処理を示すフローチャートである。現金売り処理は、CPU31と記憶部35のプログラムとの協働により実行される。
現金売り処理においては、まず、ステップS201で読み出された売上データD1の「奉仕料」=0であるか否かが判断される(ステップS301)。「奉仕料」=0であると判断されると(ステップS301;YES)、処理はステップS303に移行する。「奉仕料」=0ではないと判断されると(ステップS301;NO)、読み出された売上データD1の「金額」に、金額−奉仕料の値が設定され(ステップS302)、処理はステップS303に移行する。
ステップS303においては、第1仕訳ルールファイル351の「レコードNo.」=02(売上)のレコードの各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」の項目)の値が仕訳データの貸方の同名の項目にセットされる(ステップS303)。
次いで、第1仕訳ルールファイル351の「レコードNo.」=06(現金)のレコードの各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」の項目)の値が仕訳データの借方の同名の項目にセットされる(ステップS304)。
次いで、変数である伝票No.が1インクリメントされ(ステップS305)、図21のステップS201で読み出された売上データD1の「金額」が仕訳データの「借方金額」、「貸方金額」にセットされ、売上データD1の「レジコード」、「伝票日付」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされる。また、仕訳データの「摘要」に“売上”がセットされる。そして、各項目の値がセットされた仕訳データが仕訳データファイル355に出力される(ステップS306)。
次いで、ステップS201で読み出された売上データD1の「奉仕料」=0であるか否かが判断される(ステップS307)。ステップS201で読み出された売上データの「奉仕料」=0であると判断されると(ステップS307;YES)、現金売り処理は終了し、処理は図21のステップS201に戻る。
一方、ステップS201で読み出された売上データD1の「奉仕料」=0ではないと判断されると(ステップS307;NO)、第1仕訳ルールファイル351の「レコードNo.」=03(サービス売上)のレコードの各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」)の値が仕訳データの貸方の同名の項目にセットされる(ステップS308)。
次いで、第1仕訳ルールファイル351の「レコードNo.」=06(現金)のレコードの各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」)の値が仕訳データの借方の同名の項目にセットされる(ステップS309)。
次いで、変数である伝票No.が1インクリメントされる(ステップS310)。そして、図21のステップS201で読み出された売上データD1の「奉仕料」が仕訳データの「借方金額」、「貸方金額」にセットされ、売上データD1の「レジコード」、「伝票日付」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされ、仕訳データの「摘要」に“売上”がセットされる。そして、各項目の値がセットされた仕訳データが仕訳データファイル355に出力され(ステップS311)、現金売り処理は終了し、処理は図21のステップS201に戻る。
次に、クレジット処理について説明する。
図23は、図21のステップS206で実行されるクレジット処理を示すフローチャートである。クレジット処理は、CPU31と記憶部35のプログラムとの協働により実行される。
クレジット処理においては、まず、第1仕訳ルールファイル351のレコードNo.=10にポインタの位置がセットされる(ステップS401)。
次いで、第1仕訳ルールファイル351の次の1件が読み出され(ステップS402)、読み出されたレコードのレコードNo.>15であるか否かが判断される(ステップS403)。読み出されたレコードのレコードNo.>15ではないと判断されると(ステップS403;NO)、図21のステップ201でRAM33に読み出されたレコードの「カード会社コード」が、ステップS402で読み出されたレコードの「カード会社コード」と一致するか否かが判断される(ステップS404)。両レコードの「カード会社コード」が一致しないと判断されると(ステップS404;NO)、処理はステップS402に戻る。両レコードの「カード会社コード」が一致すると判断されると(ステップS404;YES)、データ変換処理が実行され(ステップS405)、クレジット処理は終了する。
図24は、図23のステップS405で実行されるデータ変換処理を示すフローチャートである。データ変換処理は、CPU31と記憶部35のプログラムとの協働により実行される。
データ変換処理においては、まず、図21のステップS201で読み出された売上データD1の「奉仕料」=0であるか否かが判断される(ステップS501)。「奉仕料」=0であると判断されると(ステップS501;YES)、処理はステップS503に移行する。「奉仕料」=0ではないと判断されると(ステップS501;NO)、読み出された売上データD1の「金額」に、金額−奉仕料の値が設定され(ステップS502)、処理はステップS503に移行する。
ステップS503においては、第1仕訳ルールファイル351の「レコードNo.」=02(売上)のレコードの各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」の項目)の値が仕訳データの貸方の同名の項目にセットされる(ステップS503)。
次いで、第1仕訳ルールファイル351から現在読み出されているレコード(現レコード)の各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」の項目)の値が仕訳データの借方の同名の項目にセットされる(ステップS504)。
次いで、伝票No.(変数)が1インクリメントされ(ステップS505)、図21のステップS201で読み出された売上データD1の「金額」が仕訳データの「借方金額」、「貸方金額」にセットされ、売上データD1の「レジコード」、「伝票日付」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされ、仕訳データの「摘要」に“売上”がセットされる。そして、各項目の値がセットされた仕訳データが仕訳データファイル355に出力される(ステップS506)。
次いで、ステップS201で読み出された売上データD1の「奉仕料」=0であるか否かが判断される(ステップS507)。ステップS201で読み出された売上データD1の「奉仕料」=0であると判断されると(ステップS507;YES)、データ変換処理は終了し、処理は図21のステップS201に戻る。
一方、ステップS201で読み出された売上データD1の「奉仕料」=0ではないと判断されると(ステップS507;NO)、第1仕訳ルールファイル351の「レコードNo.」=03(サービス売上)のレコードの各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」の項目)の値が仕訳データの貸方の同名の項目にセットされる(ステップS508)。
次いで、第1仕訳ルールファイル351の現レコードの各項目(「勘定科目コード」、「補助科目コード」、「勘定科目名」、「補助科目名」、「税区分」の項目)の値が仕訳データの借方の同名の項目にセットされる(ステップS509)。
次いで、変数である伝票No.が1インクリメントされ(ステップS510)、図21のステップS201で読み出された売上データD1の「奉仕料」が仕訳データの「借方金額」、「貸方金額」にセットされ、売上データD1の「レジコード」、「伝票日付」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされ、仕訳データの「摘要」に“売上”がセットされる。そして、各項目の値がセットされた仕訳データが仕訳データファイル355に出力され(ステップS512)、データ変換処理は終了し、処理は図21のステップS201に戻る。
一方、図23のステップS403において、第1仕訳ルールファイル351から読み出されたレコードのレコードNo.>15であると判断されると(ステップS403;YES)、表示部34にエラーメッセージが表示される(ステップS406)。また、伝票No.(変数)が1インクリメントされ(ステップS407)、図21のステップS201で読み出された売上データD1の「金額」が仕訳データの「借方金額」、「貸方金額」にセットされる。また、売上データD1の「レジコード」、「伝票日付」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされる。更に、仕訳データの「エラーフラグ」に1がセットされる。そして、作成された仕訳データが仕訳データファイル355に出力され(ステップS408)、クレジット処理は終了し、処理は図21のステップS201に移行する。
次に、券売り処理について説明する。
図25は、図21のステップS208で実行される券売り処理を示すフローチャートである。券売り処理は、CPU31と記憶部35のプログラムとの協働により実行される。
券売り処理においては、まず、メモリに展開された第1仕訳ルールファイル351のレコードNo.=15にポインタの位置がセットされる(ステップS601)。
次いで、第1仕訳ルールファイル351の次の1件が読み出され(ステップS602)、読み出されたレコードのレコードNo.>20であるか否かが判断される(ステップS603)。読み出されたレコードのレコードNo.>20ではないと判断されると(ステップS603;NO)、図21のステップ201でRAM33に読み出されたレコードの「サブファンクションコード」が、ステップS602で読み出されたレコードの「サブファンクションコード」と一致するか否かが判断される(ステップS604)。両レコードの「サブファンクションコード」が一致しないと判断されると(ステップS604;NO)、処理はステップS602に戻る。両レコードの「サブファンクションコード」が一致すると判断されると(ステップS604;YES)、データ変換処理が実行され(ステップS605)、券売り処理は終了する。データ変換処理は、図24を参照して説明したものと同様であるので説明を援用する。
一方、図25のステップS603において、第1仕訳ルールファイル351から読み出されたレコードのレコードNo.>20であると判断されると(ステップS603;YES)、表示部34にエラーメッセージが表示される(ステップS606)。また、伝票No.(変数)が1インクリメントされ(ステップS607)、図21のステップS201で読み出された売上データD1の「金額」が仕訳データの「借方金額」、「貸方金額」にセットされる。また、売上データD1の「レジコード」、「伝票日付」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされる。更に、仕訳データの「エラーフラグ」に1がセットされる。そして、作成された仕訳データが仕訳データファイル355に出力され(ステップS608)、券売り処理は終了し、処理は図21のステップS201に移行する。
次に、貸売り処理について説明する。
図26は、図21のステップS210で実行される貸売り処理を示すフローチャートである。貸売り処理は、CPU31と記憶部35のプログラムとの協働により実行される。
貸売り処理においては、まず、メモリに展開された第1仕訳ルールファイル351のレコードNo.=20にポインタの位置がセットされる(ステップS701)。
次いで、第1仕訳ルールファイル351の次の1件の読み出しが行われ(ステップS702)、ファイルの終端であるか否かが判断される(ステップS703)。ファイルの終端ではないと判断されると(ステップS703;NO)、図21のステップ201でRAM33に読み出されたレコードの「サブファンクションコード」が、ステップS702で読み出されたレコードの「サブファンクションコード」と一致するか否かが判断される(ステップS704)。両レコードの「サブファンクションコード」が一致しないと判断されると(ステップS704;NO)、処理はステップS702に戻る。両レコードの「サブファンクションコード」が一致すると判断されると(ステップS704;YES)、データ変換処理が実行され(ステップS705)、貸売り処理は終了する。データ変換処理は、図24を参照して説明したものと同様であるので説明を援用する。
一方、図26のステップS703において、第1仕訳ルールファイル351のファイル終端であると判断されると(ステップS703;YES)、表示部34にエラーメッセージが表示される(ステップS706)。また、伝票No.(変数)が1インクリメントされ(ステップS707)、図21のステップS201で読み出された売上データD1の「金額」が仕訳データの「借方金額」、「貸方金額」にセットされる。また、売上データD1の「レジコード」、「伝票日付」が仕訳データの同項目にセットされ、伝票No.(変数)の値が仕訳データの「伝票番号」にセットされる。更に、仕訳データの「エラーフラグ」に1がセットされる。そして、作成された仕訳データが仕訳データファイル355に出力され(ステップS708)、処理は図21のステップS201に移行する。
売上データ変換処理の終了により、図18に示す仕訳データ作成処理は終了する。
(クライアントPCにおける仕訳データ編集処理)
次に、クライアントPC30A、30Bにおいて実行される仕訳データ編集処理について説明する。仕訳データ編集処理は、上記仕訳データ作成処理により出力された仕訳データをオペレータの操作に基づいて編集するための処理である。ここでは、代表してクライアントPC30Aの処理について説明するが、クライアントPC30Bにおいても同様である。
図27は、仕訳データ編集処理を示すフローチャートである。仕訳データ編集処理は、入力部32により仕訳データ編集が指示された際にCPU31と記憶部35のプログラムとの協働により実行される。
まず、記憶部35から仕訳データファイル355が読み出されてRAM33に展開され(ステップS801)、記憶部35に記憶された画面情報ファイル(図示せず)から仕訳データ編集画面情報が読み出されて表示部34に仕訳データ編集画面343が表示される(ステップS802)。
図28Aは、仕訳データ編集画面343の一例を示す図である。図28Aに示すように、仕訳データ編集画面343には、スポット取引、自動仕訳エラー(仕訳データ作成処理でエラーとなった仕訳データ)、全仕訳データの中から編集対象の仕訳データの種類を選択するための選択欄343a、編集対象として選択された種類の仕訳データの一覧を表示する一覧表示欄343b、変更ボタンB21、戻るボタンB22等が設けられている。
次いで、仕訳データ編集画面343の選択欄343aから入力部32によりスポット取引が選択されたか否かが判断される(ステップS803)。入力部32によりスポット取引が選択されたと判断されると(ステップS803;YES)、図28Aに示すように、仕訳データファイル355からスポット取引区分=1のレコードが抽出され、一覧表示欄343bに一覧表示される(ステップS804)。
次いで、仕訳データ編集画面343において、入力部32により戻るボタンB22が押下されたか否かが判断される(ステップS805)。入力部32により戻るボタンB22が押下されたと判断されると(ステップS805;YES)、仕訳データ編集処理は終了する。
一方、仕訳データ編集画面343において、入力部32により戻るボタンB22が押下されていないと判断されると(ステップS805;NO)、仕訳データ編集画面343に一覧表示された仕訳データの中から何れかが入力部32により行選択+クリックされるか、又は、行選択+変更ボタンB21の押下がされたか否かが判断される(ステップS806)。一覧表示された仕訳データの何れも入力部32により行選択+クリックされておらず、行選択+変更ボタンB21の押下もされていないと判断される(ステップS806;NO)、処理はステップS803に戻る。
一方、一覧表示された仕訳データの中から何れかが入力部32により行選択+クリックされるか、又は、行選択+変更ボタンB21の押下がされたと判断されると(ステップS806;YES)、図28Bに示すように、表示部34に表示されている仕訳データ編集画面343に、選択された行の仕訳データを編集するための編集欄343cが表示され、入力部32からの編集入力が受け付けられる(ステップS807)。また、ステップS807においては仕訳データ編集画面343上に確定ボタンB23、キャンセルボタンB24が表示される。
次いで、入力部32によりキャンセルボタンB24が押下されたか否かが判断される(ステップS808)。入力部32によりキャンセルボタンB24が押下されたと判断されると(ステップ808;YES)、処理はステップS803に戻る。入力部32によりキャンセルボタンB24が押下されていないと判断されると(ステップ808;NO)、入力部32により確定ボタンB23が押下されたか否かが判断される(ステップS809)。入力部32により確定ボタンB23が押下されたと判断されると(ステップS809;YES)、表示された編集欄343cから入力された内容で仕訳データファイル355が更新され(ステップS810)、処理はステップS803に戻る。
仕訳データ編集画面343において、入力部32により戻るボタンB22が押下されたと判断されると(ステップS805;YES)、仕訳データ編集処理は終了する。
一方、ステップS803において、入力部32によりスポット取引が選択されていないと判断されると(ステップS803;NO)、入力部32により自動仕訳エラーが選択されたか否かが判断される(ステップS811)。入力部32により自動仕訳エラーが選択されたと判断されると(ステップS811;YES)、仕訳データファイル355からエラーフラグ=1の仕訳データが抽出され、一覧表示欄343bに一覧表示される(ステップS812)。
次いで、ステップS813〜ステップS818の処理が実行される。ステップS813〜ステップS818の処理は、それぞれステップS804〜ステップS810の処理と同様であるので説明を援用する。
一方、ステップS811において、入力部32によりスポット取引も自動仕訳エラーも選択されてない、即ち、全仕訳データが選択されたと判断されると(ステップS811;NO)、仕訳データファイル355に格納されている全仕訳データの内容が一覧表示される(ステップS819)。
次いで、ステップS820〜ステップS825の処理が実行される。ステップS820〜ステップS825の処理は、それぞれステップS804〜ステップS810の処理と同様であるので説明を援用する。
以上の仕訳データ編集により、オペレータは、効率よく、取引の相手先が規定されていないスポット取引の仕訳データに取引の相手先を追加したり、仕訳データ作成処理でエラーとなった仕訳データを編集して正しいデータに直したりすることが可能となる。
(クライアントPCにおけるフォーマット変換処理)
次に、クライアントPC30A、30Bにおいて実行されるフォーマット変換処理について説明する。フォーマット変換処理は、会計ソフトで使用可能なフォーマットに仕訳データを変換する処理である。ここでは、代表してクライアントPC30Aの処理について説明するが、クライアントPC30Bにおいても同様である。
図29は、フォーマット変換処理を示すフローチャートである。フォーマット変換処理は、入力部32から会計ソフトへのフォーマット変換の実行指示が入力された際にCPU31と記憶部35のプログラムとの協働により実行される。
まず、第1仕訳ルールファイル351のレコードNo.=1のレコードが読み出される(ステップS901)。次いで、表示部34に出力ファイル名を入力するための入力画面(図示せず)が表示され、出力ファイル名の入力が受け付けられる(ステップS902)。なお、ステップS902で表示される入力画面には、フォーマット変換のキャンセルを指示するためのキャンセルボタン、入力された出力ファイル名を用いたフォーマット変換の実行を指示するためのOKボタンが表示されている。
入力部32によりキャンセルボタンが押下されると(ステップS903;YES)、フォーマット変換処理は終了する。入力部32によりOKボタンが押下されると(ステップS904;YES)、ステップS901で読み出されたレコードの会計ソフト区分=1であるか否かが判断され、会計ソフト区分=1であると判断されると(ステップS905;YES)、会計ソフト1用のデータ変換処理が実行され(ステップS906)、フォーマット変換処理は終了する。ここで、会計ソフト1用のデータ変換処理は、会計ソフト1で使用されるデータフォーマットに仕訳データを変換する処理である。例えば、仕訳データから会計ソフト1で必要な項目のみを抽出する処理や、仕訳データと会計ソフト1のデータフォーマットとで各項目の桁数が異なる場合に桁数を会計ソフト1に合わせて変換したりする処理等が行われる。
一方、ステップS901で読み出されたレコードの会計ソフト区分=1ではなく、会計ソフト区分=2であると判断されると(ステップS905;NO、ステップS907;YES)、会計ソフト2用のデータ変換処理が実行され(ステップS908)、フォーマット変換処理は終了する。ここで、会計ソフト2用のデータ変換処理は、会計ソフト2で使用されるデータフォーマットに仕訳データを変換する処理である。例えば、仕訳データから会計ソフト2で必要な項目のみを抽出する処理や、仕訳データと会計ソフト2のデータフォーマットとで各項目の桁数が異なる場合に桁数を会計ソフト2に合わせて変換したりする処理等が行われる。
一方、ステップS901で読み出されたレコードの会計ソフト区分=2ではなく、会計ソフト区分=3であると判断されると(ステップS907;NO、ステップS909;YES)、会計ソフト3用のデータ変換処理が実行され(ステップS910)、フォーマット変換処理は終了する。ここで、会計ソフト3用のデータ変換処理は、会計ソフト3で使用されるデータフォーマットに仕訳データを変換する処理である。例えば、仕訳データから会計ソフト3で必要な項目のみを抽出する処理や、仕訳データと会計ソフト3のデータフォーマットとで各項目の桁数が異なる場合に桁数を会計ソフト3に合わせて変換したりする処理等が行われる。
上記フォーマット変換処理により、会計ソフトで使用可能なデータフォーマットに仕訳データを変換することができるので、ECR20Aから送信された仕訳・入出金データや売上データを仕訳した仕訳データを会計ソフトに取り込むことが可能となる。
以上説明したように、本実施形態のクライアントPC30A、30Bによれば、CPU31は、入出金仕訳ルール設定画面342から入力された仕入及び入出金に係る取引項目の仕訳ルール情報を仕訳ルール番号に対応付けて第2仕訳ルールファイル352に記憶しておき、入力部32により仕訳ルールバーコードブック381の出力が指示されると、第2仕訳ルールファイル352の仕訳ルール番号と取引項目との対応関係を示す仕訳ルールバーコードブック381を印刷部38により出力する。ユーザの管理する店舗のECRから送信された、仕訳ルール番号及び金額を含む仕入・入出金データD2が通信部36により受信されると、CPU31は、仕入・入出金データD2に含まれる仕訳ルール番号に対応する仕訳ルール情報を第2仕訳ルールファイル352から読み出して、当該読み出された仕訳ルール情報に従って仕入・入出金データD2の金額を仕訳した仕訳データを作成する。
従って、店舗において、オペレータは仕訳ルール番号と取引項目との対応関係を示す仕訳ルールバーコードブックを参照しながら仕入及び入出金の取引をECRで登録することが可能となる。また、ECRで登録された取引をユーザのクライアントPCで自動的に仕訳することが可能となる。
作成された仕訳データは編集することができるので、利便性が向上する。
特に、仕訳データ編集画面343は、スポット取引区分を含む仕訳データ、前記仕訳データの作成時にエラーが発生した仕訳データ、又は全仕訳データの中から編集対象として抽出する仕訳データの種類を選択入力するための選択欄を有しており、CPU31は、選択欄から選択された仕訳データを仕訳データファイル355から抽出して表示部34に一覧表示し、表示された一覧から入力部32により編集対象の仕訳データが選択されると、仕訳データ編集画面343から当該選択された仕訳データの各項目の編集内容を入力を受け付けるので、編集の必要のあるスポット取引の仕訳データやエラーのある仕訳データをユーザが容易に把握し、効率よく編集することが可能となる。
また、入出金仕訳ルール設定画面342では、そのクライアントPCで使用される会計ソフトウエアの種類が設定可能に構成されており、CPU31は、作成された仕訳データを設定された会計ソフトウエアのデータフォーマットの仕訳データに変換するので、仕訳データを会計ソフトウエアに容易に取り込むことが可能となる。
なお、上記実施の形態における記述内容は、本発明に係る売上データ処理システム1の好適な一例であり、これに限定されるものではない。
例えば、上記実施の形態においては、仕訳ルールバーコードブック381はクライアントPC30A、30Bの印刷部38により印刷出力することとして説明したが、例えば、クライアントPC30A、30Bの通信部36によりセンタサーバ10を介してユーザの管理する店舗のECR20A,20Bに仕訳ルールバーコードブック381の電子データを送信(出力)し、ECR20A,20Bの記憶部25に仕訳ルールバーコードブック381の電子データを記憶させ、仕訳ルールバーコードブック381をECR20A,20Bの表示部24に表示させたり、仕訳ルールバーコードブック381をECR20A,20Bのプリント部28に印刷させたりしてもよい。また、インターネットや移動体通信網等を介して店舗の業務に使用される携帯端末等に仕訳ルールバーコードブック381の電子データを送信(出力)し、その表示部に表示させることとしてもよい。
また、上記実施の形態に示したデータやファイルの構成は一例であり、これに限定されるものではない。
その他、売上データ処理システム1を構成する各装置の細部構成及び細部動作に関しても、発明の趣旨を逸脱することのない範囲で適宜変更可能である。