FileMakerでシステム開発

SE経験者がファイルメーカーを用いた場合、どのような設計、開発を行うのかを検証するブログです。

販売管理システム 消費税の仕組み

2022-02-18 11:20:10 | FileMakerでの構築(販売管理システムの仕組み)
現在、販売管理システムを開発中です。
これらはファイルメーカーで構築していますが、どのようなツールを使用して開発したとしても重要なこととしては、
1.仕様の追加、変更が発生した場合、正確かつ迅速に対応ができること
2.そのために、設計内容、プログラム構造が整理されており、シンプルで理解し易いこと
が、求められると思います。

基幹システムともなれば複数の業務が複雑に連携し、同時進行しているので、処理のやり直し、取消しなどが発生した時の対処方法が明確になっていることも重要です。全てのデータではありませんが、時系列でのデータ追加→更新→取消のプロセスにおいて、他業務との連携に関する制約等についてシステムがアラートを出力し、データの整合性を保全する仕組みも必要です。

一概には言えませんが、外国製のERPシステムの立ち上げに携わったことがあり、その時に感じたことは、誤って指定した処理のやり直しが見当たらないことが全ての処理ではありませんが、多々存在し、文化の違いを実感したことがあります。
私個人の意見ですが、システム設計、開発、試験の中で、「やり直しの処理」に費やす比率は1/3程度と思っています。業種によってはそれ以上のものもあると思います。
スクラッチで一から基幹システムを構築するケースで、特にプロジェクトメンバーにコンサル等が参加している場合など、ドキュメント作成、検証、承認のプロセスが実際の作業(設計、開発、試験)以外に、膨大に発生します。只、これらの中で前述した「やり直しの処理」をテーマにした打合せなどはあまり経験しませんでした。顧客は「ベンダーの方で当然考慮しているもの」と考えており、ベンダーはおそらく「顧客側から要求がなかったので、まずは基本設計の承認を優先」と思われる節があるのではないかと思います。

(前置きが長くなりました。)
今回は販売管理システムの消費税に関する一つの例としてご紹介いたします。

1.税率に関するマスタデータ
1.1.税率名マスタ
 
☞ 消費税の施行情報を明細として登録します。
・適用開始日:何時から有効かを登録します。
・新旧区分:伝票を入力する時点において消費税率は、[新税率]または[旧税率]のどちらかを指定することになります。旧税率を指定する理由は、例えば当月にて売上で新税率(8%)で入力し、その後新たな税率(10%, 8%軽減)が施行され新税率として登録し、翌月に旧税率(8%)となった商品が返品となった場合、旧税率(8%)で売上返品を入力します。ゆえに新旧の区分を設定します。
新旧以外に予定税率として前もって施行前の税率を登録することもできます。

1.2.税明細マスタ

☞ 実際の税率を明細として登録します。
・税率名マスタの番号を指定することにより、適用開始日が複写されます。
・非課税、不課税、免税:これらについても登録し、識別できるよう☑を指定します。
・売上:見積、受注、売上の伝票入力で、明細単位に[課税区分]を指定します。その時にドロップダウンリストとして候補が表示されます。それらの候補に表示させたい税率に☑を指定します。
・仕入:上記の売上と同じです。但し伝票は発注、仕入になります。
・商品:商品マスタ保守で個々の商品毎に、[新税率]、[旧税率]、[予定税率]を指定します。その時にドロップダウンリストの候補として表示させたい税率に☑を指定します。

2.主要な項目
2.1.マスタデータ
1)得意先マスタ(仕入先マスタ)

・税処理区分:消費税の算出方法についての項目です。
 0.伝票単位  :伝票単位に消費税を算出します。
 1.請求時調整1:伝票単位の消費税の合計と請求締期間で対象額を合計して算出した消費税の差額を税調整として算出します。(但し外税のみ)
 2.請求時調整2:上記と同じですが、内税についても請求期間で割り戻して算出した消費税との差額を税調整として算出します。
 注)明細単位も現実存在しますが、適格請求書等保存方式によって税率毎に一度の端数処理となるため今回は割愛しています。
・税区分:消費税を外税、内税のどちらで算出するかの項目です。
 0.外税  :外税で算出します。
 1.内税  :内税で算出します。
 9.商品優先:取り扱う商品によって決定します。

2)商品マスタ


・税区分:外税・内税は得意先マスタと同じですが、非課税・対象外(不課税)の設定を行うことができます。
 0.外税(1.内税):(得意先マスタと同じ)
 2.非課税    :非課税取引となる品目について設定します。
 3.対象外    :不課税取引となる品目について設定します。
・新税率:新税率としての課税区分を指定します。
・旧税率:旧税率としての課税区分を指定します。
※新税率、旧税率を登録しておくことで、伝票入力にて商品を指定した際、課税区分の初期値としてここでの値がセットされます。(厳密には指定した得意先の税区分との組合せにより決定します。)

2.2.伝票データ
1)受注ヘッダ

・税処理区分:得意先を指定することで得意先マスタの税処理区分を取得し初期値として設定します。(変更することはできません。)
・税区分:得意先を指定することで得意先マスタの税区分を取得し初期値として設定します。(変更することができます。変更すると全ての明細の単価が税区分に応じた値に置き換わります。)

2)受注明細

・課税区分:受注基準日により、税明細マスタの適用開始日との比較により、新税率、旧税率が決定し、商品マスタの新税率、旧税率に登録されている税率が初期値としてセットされます。(変更することができます。変更すると当該明細の単価が税区分に応じた値に置き換わります。)
※非課税商品、不課税商品を課税に変更することはできなくしていますが、課税商品を税対象外(不課税)にすることはできるようにしています。(暫定ですが)
※免税(輸出)は課税商品を仮に輸出する場合に指定します。
・単価区分:画面には表示されない内部に持っている項目です。最終的に決定した値が編集されます。(0.外税 1.内税 2.非課税 3.不課税 4.免税)

3.終わりに
今までは顧客に応じた仕様を定義し、設計から開発を行ってきましたが、販売管理システムとして標準的な仕組みを実装することは、ある意味では初心に帰り個々の要件を整理しているので色々と勉強になります。
開発の進捗としては、主要な伝票入力、請求締(請求処理、取消処理、再処理)等の単体試験が終了している状態です。一人で実施していますのでWBSによる外からの圧力もなく楽ちんです。以前、東京で他のグループ企業と仕事をしていた時に、ジョブロス物件をある日突然PMとして任命された方がいましたが、任命された翌日にステコミ(ステアリング・コミッティー)に出席され、人が変わったように落ち込んでおられました。その方とはそれ以降、お会いしていませんが、入院された方が何人かおられたプロジェクトとお伺いしていましたので、無事でおられることを願うばかりです。


以上です。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« Profit 販売管理システム | トップ | 実在庫と有効在庫について »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

FileMakerでの構築(販売管理システムの仕組み)」カテゴリの最新記事