(57)【要約】【課題】  按分計算にて丸め誤差を発生させないように差額を調整する按分計算差額調整装置、按分計算差額調整方法及び按分計算差額調整プログラムを提供する。【解決手段】  按分計算差額調整装置１００は、按分条件データを設定する条件設定手段５ａと、按分条件データを格納する条件記憶部６ａと、金種のデータを得る按分計算手段５ｂと、支払計算領域１０を作成する支払計算領域作成手段５ｃと、差額調整を行う優先順位を入力した優先順位領域２０を作成する優先順位領域作成手段５ｅと、差額調整対象且つ最優先順位の差額調整対象セルを抽出するセル抽出手段５ｆと、差額調整対象セルの行及び列差額を比較し、一定条件にて行及び列差額を差額調整対象セルへ加算し、行若しくは列差額が０となった行若しくは列を、差額調整対象外とする差額調整手段５ｇと、差額調整対象外と同じ行又は列を差額調整対象外とする優先順位設定手段５ｄを備える。【選択図】    図１
2006277412.tif 000002
【特許請求の範囲】
【請求項１】
按分計算を行う対象となる、少なくとも１つ以上の支払い先を示す要素、前記要素毎に実際に支払われた金額を示す実際支払額、前記実際支払額を予め設定される金種毎に按分する比率を示す按分比率、前記按分比率にて前記実際支払額の合計額を按分計算した値を示す金種合計を含む按分条件の各々のデータを設定する条件設定手段と、
前記按分条件の各々のデータを格納する条件記憶部と、
前記実際支払額を、前記金種毎の前記按分比率にて按分計算し、按分計算結果を予め設定される桁に切り捨てた前記金種のデータを得る按分計算手段と、
前記要素のセル行、前記実際支払額のセル列及び前記金種のセル列より構成される領域に、前記条件記憶部内の前記要素のデータ、前記実際支払額のデータ、前記金種のデータを入力した支払計算領域を作成する支払計算領域作成手段と、
前記支払計算領域領域を格納する支払計算領域記憶部と、
前記支払計算領域記憶部より前記支払計算領域を取得し、前記支払計算領域内の各セルが備える各データに差額調整を行う優先順位を、前記支払計算領域と同じ行及び列から構成された領域内の同じセル位置に入力した優先順位領域を作成する優先順位領域作成手段と、
前記優先順位領域を格納する優先順位領域記憶部と、
前記優先順位領域記憶部より取得する前記優先順位領域より、差額調整対象であり且つ最優先順位のデータを備える最優先セルを選択し、前記最優先セルと同位置に存在する前記支払計算領域内のセルを差額調整対象セルとして抽出するセル抽出手段と、
前記差額調整対象セルと同行の前記実際支払額のデータと前記差額調整対象セルと同行の前記金種のデータの合計値の差である行差額と、前記差額調整対象セルと同列の前記金種のデータの合計値と前記金種合計データの差である列差額を比較し、前記列差額が前記行差額以上なら前記行差額を前記差額調整対象セルへ加算し、前記列差額が前記行差額以上でないなら前記列差額を前記差額調整対象セルへ加算し、前記行差額若しくは前記列差額が０となった前記差額調整対象セルの行若しくは列を、差額調整対象外とする差額調整手段と、
前記差額調整対象外となった行若しくは列と同位置の前記優先順位領域上の行若しくは列を差額調整対象外とする優先順位設定手段
とを備えることを特徴とする按分計算差額調整装置。
【請求項２】
按分計算にて発生する丸め誤差を差額調整するコンピュータに、
按分計算を行う対象となる、少なくとも１つ以上の支払い先を示す要素、前記要素毎に実際に支払われた金額を示す実際支払額、前記実際支払額を予め設定される金種毎に按分する比率を示す按分比率、前記按分比率にて前記実際支払額の合計額を按分計算した値を示す金種合計を含む按分条件の各々のデータを条件記憶部に格納するステップと、
前記実際支払額を前記金種毎の前記按分比率にて按分計算した値を予め設定される桁に切り捨てた値である前記金種のデータを算出するステップと、
前記要素のセル行と前記実際支払額のセル列及び前記金種のセル列より構成される領域に、前記条件記憶部内の前記要素のデータ、前記実際支払額のデータ、前記金種のデータを入力した支払計算領域を支払計算領域記憶部に格納するステップと、
前記支払計算領域記憶部より前記支払計算領域を取得し、前記支払計算領域内の各セルが備える各データに差額調整を行う優先順位を、前記支払計算領域と同じ数の行及び列から構成された領域内の同じ各セル位置に入力した優先順位領域を優先順位領域記憶部に格納するステップと、
前記優先順位領域記憶部より前記優先順位領域を取得し、前記優先順位領域より差額調整対象であり且つ最優先順位のデータを備える最優先セルを選択し、前記最優先セルと同位置に存在する前記支払計算領域内のセルを差額調整対象セルとして抽出するステップと、
前記差額調整対象セルと同行の前記実際支払額のデータと前記差額調整対象セルと同行の前記金種のデータの合計値の差である行差額と、前記差額調整対象セルと同列の前記金種のデータの合計値と前記金種合計データの差である列差額を比較し、前記列差額が前記行差額以上なら前記行差額を前記差額調整対象セルへ加算し、前記列差額が前記行差額以上でないなら前記列差額を前記差額調整対象セルへ加算し、前記行差額若しくは前記列差額が０となった前記差額調整対象セルの行若しくは列を、差額調整対象外とするステップと、
前記差額調整対象外となった行若しくは列と同位置の前記優先順位領域上の行若しくは列を差額調整対象外とするステップ
とを実行させることを特徴とする按分計算差額調整方法。
【請求項３】
按分計算にて発生する丸め誤差を差額調整するコンピュータに、
按分計算を行う対象となる、少なくとも１つ以上の支払い先を示す要素、前記要素毎に実際に支払われた金額を示す実際支払額、前記実際支払額を予め設定される金種毎に按分する比率を示す按分比率、前記按分比率にて前記実際支払額の合計額を按分計算した値を示す金種合計を含む按分条件の各々のデータを条件記憶部に格納する命令と、
前記実際支払額を前記金種毎の前記按分比率にて按分計算した値を予め設定される桁に切り捨てた値である前記金種のデータを算出する命令と、
前記要素のセル行と前記実際支払額のセル列及び前記金種のセル列より構成される領域に、前記条件記憶部内の前記要素のデータ、前記実際支払額のデータ、前記金種のデータを入力した支払計算領域を支払計算領域記憶部に格納する命令と、
前記支払計算領域記憶部より前記支払計算領域を取得し、前記支払計算領域内の各セルが備える各データに差額調整を行う優先順位を、前記支払計算領域と同じ数の行及び列から構成された領域内の同じ各セル位置に入力した優先順位領域を優先順位領域記憶部に格納する命令と、
前記優先順位領域記憶部より前記優先順位領域を取得し、前記優先順位領域より差額調整対象であり且つ最優先順位のデータを備える最優先セルを選択し、前記最優先セルと同位置に存在する前記支払計算領域内のセルを差額調整対象セルとして抽出する命令と、
前記差額調整対象セルと同行の前記実際支払額のデータと前記差額調整対象セルと同行の前記金種のデータの合計値の差である行差額と、前記差額調整対象セルと同列の前記金種のデータの合計値と前記金種合計データの差である列差額を比較し、前記列差額が前記行差額以上なら前記行差額を前記差額調整対象セルへ加算し、前記列差額が前記行差額以上でないなら前記列差額を前記差額調整対象セルへ加算し、前記行差額若しくは前記列差額が０となった前記差額調整対象セルの行若しくは列を、差額調整対象外とする命令と、
前記差額調整対象外となった行若しくは列と同位置の前記優先順位領域上の行若しくは列を差額調整対象外とする命令
とを実行させることを特徴とする按分計算差額調整プログラム。
【請求項４】
按分計算にて発生する丸め誤差を差額調整する按分計算差額調整装置であって、
１つの要素を備える第１のレコード群と、前記要素以外の１つの要素を備える第２のレコード群、前記第１のレコード群若しくは前記第２のレコード群の実データ、前記実データの合計である実合計データ、及び前記実合計データを予め設定される配列毎に予め設定される按分比率にて按分計算した実合計按分データ
を格納する条件記憶部と、
前記第１のレコード群の前記実データを前記按分比率にて前記配列毎に按分計算した値を予め設定される位まで切り捨てした第１の対象データと、前記第２のレコード群の前記実データを前記按分比率にて前記配列毎に按分計算した値を予め設定される位まで切り捨てした第２の対象データを得る按分計算手段と、
前記第１の対象データ及び前記第２の対象データを格納する対象データ記憶部と、
前記対象データ記憶部より取得する前記第１の対象データ及び前記第２の対象データの全ての値を比較して差額調整を行う優先順位を設定する優先順位設定手段と、
前記優先順位が最も高く且つ差額調整対象となっているデータを前記第１の対象データ及び前記第２の対象データ内より抽出し、差額調整対象データとするセル抽出手段と、
前記差額調整対象データの前記実データと、前記差額対象調整データを備える第１のレコード群若しくは第２のレコード群の、前記第１の対象データ及び前記第２の対象データの合計値の差である第１の差額と、前記差額調整対象データの前記実合計按分データと、前記差額対象調整データを備える前記第１の対象データ若しくは第２の対象データの、前記第１のデータ群及び前記第２のデータ群の合計値の差である第２の差額とを比較し、前記第２の差額が前記第１の差額以上なら前記第１の差額を前記差額調整対象データへ加算し、前記第２の差額が前記第１の差額以上でないなら前記第２の差額を前記差額調整対象データへ加算し、加算の結果前記第１の差額が０となった前記差額調整対象セルを備える第１のレコード群若しくは第２のレコード群を第１の差額調整対象外データとし、加算の結果前記第２の差額が０となった前記差額対象調整データの前記第１の対象データ若しくは前記第２の対象データの、前記第１のデータ群及び前記第２のデータ群を第２の差額調整対象外データとし、前記第１の差額調整対象外データ及び前記第２の差額調整対象外データを前記対象データ記憶部内にてマスク処理する差額調整手段
とを備えることを特徴とする按分計算差額調整装置。
【請求項５】
按分計算にて発生する丸め誤差を差額調整するコンピュータに、
１つの要素を備える第１のレコード群と、前記要素以外の１つの要素を備える第２のレコード群、前記第１のレコード群若しくは前記第２のレコード群の実データ、前記実データの合計である実合計データ、及び前記実合計データを予め設定される配列毎に予め設定される按分比率にて按分計算した実合計按分データを条件記憶部に格納するステップと、
前記第１のレコード群の前記実データを前記按分比率にて前記配列毎に按分計算した値を予め設定される位まで切り捨てした第１の対象データと、前記第２のレコード群の前記実データを前記按分比率にて前記配列毎に按分計算した値を予め設定される位まで切り捨てした第２の対象データを得、対象データ記憶部に格納するステップと、
前記対象データ記憶部より取得する前記第１の対象データ及び前記第２の対象データの全ての値を比較して、差額調整を行う優先順位を設定するステップと、
前記優先順位が最も高く且つ差額調整対象となっているデータを前記第１の対象データ及び前記第２の対象データ内より抽出し、差額調整対象データとするステップと、
前記差額調整対象データの前記実データと、前記差額対象調整データを備える第１のレコード群若しくは第２のレコード群の、前記第１の対象データ及び前記第２の対象データの合計値の差である第１の差額と、前記差額調整対象データの前記実合計按分データと、前記差額対象調整データを備える前記第１の対象データ若しくは第２の対象データの、前記第１のデータ群及び前記第２のデータ群の合計値の差である第２の差額とを比較し、前記第２の差額が前記第１の差額以上なら前記第１の差額を前記差額調整対象データへ加算し、前記第２の差額が前記第１の差額以上でないなら前記第２の差額を前記差額調整対象データへ加算し、加算の結果前記第１の差額が０となった前記差額調整対象セルを備える第１のレコード群若しくは第２のレコード群を第１の差額調整対象外とし、加算の結果前記第２の差額が０となった前記差額対象調整データの前記第１の対象データ若しくは前記第２の対象データの、前記第１のデータ群及び前記第２のデータ群を第２の差額調整対象外とし、前記第１の差額調整対象外データ及び前記第２の差額調整対象外データを前記対象データ記憶部内にてマスク処理するステップ
とを実行することを特徴とする按分計算差額調整方法。
【請求項６】
按分計算にて発生する丸め誤差を差額調整するコンピュータに、
１つの要素を備える第１のレコード群と、前記要素以外の１つの要素を備える第２のレコード群、前記第１のレコード群若しくは前記第２のレコード群の実データ、前記実データの合計である実合計データ、及び前記実合計データを予め設定される配列毎に予め設定される按分比率にて按分計算した実合計按分データを条件記憶部に格納する命令と、
前記第１のレコード群の前記実データを前記按分比率にて前記配列毎に按分計算した値を予め設定される位まで切り捨てした第１の対象データと、前記第２のレコード群の前記実データを前記按分比率にて前記配列毎に按分計算した値を予め設定される位まで切り捨てした第２の対象データを得、対象データ記憶部に格納する命令と、
前記対象データ記憶部より取得する前記第１の対象データ及び前記第２の対象データの全ての値を比較して、差額調整を行う優先順位を設定する命令と、
前記優先順位が最も高く且つ差額調整対象となっているデータを前記第１の対象データ及び前記第２の対象データ内より抽出し、差額調整対象データとする命令と、
前記差額調整対象データの前記実データと、前記差額対象調整データを備える第１のレコード群若しくは第２のレコード群の、前記第１の対象データ及び前記第２の対象データの合計値の差である第１の差額と、前記差額調整対象データの前記実合計按分データと、前記差額対象調整データを備える前記第１の対象データ若しくは第２の対象データの、前記第１のデータ群及び前記第２のデータ群の合計値の差である第２の差額とを比較し、前記第２の差額が前記第１の差額以上なら前記第１の差額を前記差額調整対象データへ加算し、前記第２の差額が前記第１の差額以上でないなら前記第２の差額を前記差額調整対象データへ加算し、加算の結果前記第１の差額が０となった前記差額調整対象セルを備える第１のレコード群若しくは第２のレコード群を第１の差額調整対象外とし、加算の結果前記第２の差額が０となった前記差額対象調整データの前記第１の対象データ若しくは前記第２の対象データの、前記第１のデータ群及び前記第２のデータ群を第２の差額調整対象外とし、前記第１の差額調整対象外データ及び前記第２の差額調整対象外データを前記対象データ記憶部内にてマスク処理する命令
とを実行させることを特徴とする按分計算差額調整プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、按分計算を用いる計算式において差額を調整する按分計算差額調整装置、按分計算差額調整方法及び按分計算差額調整プログラムに関する。
【背景技術】
【０００２】
支払金額の算出において按分計算が必要な場合がある。例えば、建設会社がジョイントベンチャーで工事を施工する場合、親会社から子会社へ出資金を請求するが、その出資金請求書の支払先明細書では、業者毎に各要素で記載され、各業者へ一括支払で支払われる。この為、材料費、動力用水費等の要素毎、または現金、手形１、手形２等の金種毎に金額を求めるためには、各要素の今回支払額に対して、各金種の支払条件、例えば支払の割合で按分計算をする必要がある。
【０００３】
按分計算にて各金額を求めるには、支払金額とその支払金額に対する支払割合を四捨五入等の丸め計算し、最も大きな支払金額に対して丸め計算の差額を足しこむ手法がある（特許文献１および特許文献２参照。）。
【０００４】
この他、支払金額とその支払金額に対する支払割合を四捨五入等の丸め計算し、予め定められる特定の科目に対して丸め計算の差額を足しこむ手法がある（特許文献３。）。
【特許文献１】特開平８−１８５５７３号公報
【特許文献２】特開平６−２３１１３２号公報
【特許文献３】特開２００１−３４４３９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、支払金額に対して支払割合を積算し、四捨五入等の丸め計算を実施すると、各要素の各金種の支払額に丸め誤差を含み、合計値が合わなくなることがあった。
【０００６】
最も大きな支払金額や特定の科目に対して丸め誤差の差額調整を行っても、全体の各要素及び各金種に対してバランス良く均一化された金額を算出することはできなかった。
【０００７】
本発明は、上記問題点を解決する為になされたものであり、按分計算を用いる計算式において、丸め誤差が発生しないように差額を調整する按分計算差額調整装置、按分計算差額調整方法及び按分計算差額調整プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記問題点を解決する為、本発明の第１の特徴は［イ］按分計算を行う対象となる、少なくとも１つ以上の支払い先を示す要素、要素毎に実際に支払われた金額を示す実際支払額、実際支払額を予め設定される金種毎に按分する比率を示す按分比率、按分比率にて実際支払額の合計額を按分計算した値を示す金種合計を含む按分条件の各々のデータを設定する条件設定手段（５ａ）と、［ロ］按分条件の各々のデータを格納する条件記憶部（６ａ）と、［ハ］実際支払額を、金種毎の按分比率にて按分計算し、按分計算結果を予め設定される桁に切り捨てた金種のデータを得る按分計算手段（５ｂ）と、［ニ］要素のセル行、実際支払額のセル列及び金種のセル列より構成される領域に、条件記憶部（６ａ）内の要素のデータ、実際支払額のデータ、金種のデータを入力した支払計算領域（１０）を作成する支払計算領域作成手段（５ｃ）と、［ホ］支払計算領域領域を格納する支払計算領域記憶部（６ｂ）と、［ヘ］支払計算領域記憶部（６ｂ）より支払計算領域を取得し、支払計算領域内の各セルが備える各データに差額調整を行う優先順位を、支払計算領域と同じ行及び列から構成された領域内の同じセル位置に入力した優先順位領域（２０）を作成する優先順位領域作成手段（５ｅ）と、［ト］優先順位領域を格納する優先順位領域記憶部（６ｃ）と、［チ］優先順位領域記憶部より取得する優先順位領域より、差額調整対象であり且つ最優先順位のデータを備える最優先セルを選択し、最優先セルと同位置に存在する支払計算領域内のセルを差額調整対象セルとして抽出するセル抽出手段（５ｆ）と、［リ］差額調整対象セルと同行の実際支払額のデータと差額調整対象セルと同行の金種のデータの合計値の差である行差額と、差額調整対象セルと同列の金種のデータの合計値と金種合計データの差である列差額を比較し、列差額が行差額以上なら行差額を差額調整対象セルへ加算し、列差額が行差額以上でないなら列差額を差額調整対象セルへ加算し、行差額若しくは列差額が０となった差額調整対象セルの行若しくは列を、差額調整対象外とする差額調整手段（５ｇ）と、［ヌ］差額調整対象外となった行若しくは列と同位置の優先順位領域上の行若しくは列を差額調整対象外とする優先順位設定手段（５ｄ）とを備える按分計算差額調整装置であることを要旨とする。
【０００９】
本発明の第２の特徴は、［イ］按分計算にて発生する丸め誤差を差額調整する按分計算差額調整装置であって、１つの要素を備える第１のレコード群と、要素以外の１つの要素を備える第２のレコード群、第１のレコード群若しくは第２のレコード群の実データ、実データの合計である実合計データ、及び実合計データを予め設定される配列毎に予め設定される按分比率にて按分計算した実合計按分データを格納する条件記憶部（６ａ）と、［ロ］第１のレコード群の実データを按分比率にて配列毎に按分計算した値を予め設定される位まで切り捨てした第１の対象データと、第２のレコード群の実データを按分比率にて配列毎に按分計算した値を予め設定される位まで切り捨てした第２の対象データを得る按分計算手段（５ｂ）と、［ハ］第１の対象データ及び第２の対象データを格納する対象データ記憶部（６ｂ）と、［ニ］対象データ記憶部より取得する第１の対象データ及び第２の対象データの全ての値を比較して差額調整を行う優先順位を設定する優先順位設定手段（５ｄ）と、［ホ］優先順位が最も高く且つ差額調整対象となっているデータを第１の対象データ及び第２の対象データ内より抽出し、差額調整対象データとするセル抽出手段（５ｆ）と、［ヘ］差額調整対象データの実データと、差額対象調整データを備える第１のレコード群若しくは第２のレコード群の、第１の対象データ及び第２の対象データの合計値の差である第１の差額と、差額調整対象データの実合計按分データと、差額対象調整データを備える第１の対象データ若しくは第２の対象データの、第１のデータ群及び第２のデータ群の合計値の差である第２の差額とを比較し、第２の差額が第１の差額以上なら第１の差額を差額調整対象データへ加算し、第２の差額が第１の差額以上でないなら第２の差額を差額調整対象データへ加算し、加算の結果第１の差額が０となった差額調整対象セルを備える第１のレコード群若しくは第２のレコード群を加算の結果第２の差額が０となった差額対象調整データの第１の対象デ第１の差額調整対象外データとし、ータ若しくは第２の対象データの、第１のデータ群及び第２のデータ群を第２の差額調整対象外データとし、第１の差額調整対象外データ及び第２の差額調整対象外データを対象データ記憶部内にてマスク処理する差額調整手段（５ｇ）とを備える按分計算差額調整装置であることを要旨とする。
【発明の効果】
【００１０】
本発明の按分計算差額調整装置、按分計算差額調整方法及び按分計算差額調整プログラムによると、按分した値を切捨てとし、按分した値に対して優先順位を設けて、優先順位の高い順に、按分した値に対して元の値との差額を加算していくことにより、丸め誤差が合計値に現れないようにすることができる。
【００１１】
すべての各要素及び各金種に対して加算を行うため、対象全体に均一に差額調整を行うことができる。
【発明を実施するための最良の形態】
【００１２】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。ただし、図面は模式的なものであることに留意すべきである。
【００１３】
本発明の実施の形態に係る図１の按分計算差額調整装置１００は、按分計算の必要な計算処理に対し、丸め誤差が発生しないように差額調整を行う。一例として、建設会社がジョイントベンチャーで工事を施工する場合、親会社が子会社へ請求する出資金の支払先明細書における差額調整について説明する。本発明の実施の形態においては、この支払先明細書の入力値は、各要素の今回支払額の合計に対する金種毎の支払条件（按分比率）より求める。つまり、各要素の今回支払額に対して、各金種の支払条件で按分計算をする。
【００１４】
具体的に説明すると、支払先明細書は図２に示すように、列項目として、実データである今回支払額、按分比率である支払条件、第１の差額である行差額等を備える。行項目として、Ａ１，Ａ２，Ａ３，Ｂ１，Ｂ２，Ｂ３，Ｂ４，Ｃ１及びＣ２等より成る第１及び第２のレコード群である各要素、実合計データである今回支払額合計、第２の差額である列差額等を備える。要素は、業者への支払内容を示す。例えば、工事仮払金、原価、前払い消費税等がこれにあたる。今回支払額は、各要素の今回支払金額を示す。支払条件の項目は、実合計按分データである支払の割合が積算された各金種、例えば現金、手形１、手形２等から構成される。各要素の金種毎の支払額を（各要素,各金種）と表すと、
（各要素，現金）＝各要素の今回支払額×現金の支払条件  ・・・式１
（各要素，手形１）＝各要素の今回支払額×手形１の支払条件  ・・・式２
（各要素，手形２）＝各要素の今回支払額×手形２の支払条件  ・・・式３
となり、各要素と各金種により構成される領域は、支払い計算領域として設定される。
【００１５】
支払計算領域の各セルには、該当要素の該当金種に該当する支払額が入るものとする。この支払額には、支払条件を基に今回支払額を按分計算し、予め使用者が設定する値、例えば小数点以下を切り捨てした値（第１及び第２の対象データ）が入力される。つまり、現金の支払条件＝４０％、手形１の支払条件＝３５％、手形２の支払条件＝２５％である場合、図２の（Ａ２，現金）は、按分計算すると２５,６８３＊４０％＝１０,２７３.２となるが、セルには小数点以下を切り捨てた１０,２７３が入力される。
【００１６】
今回支払額の合計には、各要素の今回支払額の合計値を示す。現金の合計には、今回支払額の合計に現金の支払条件を積算した金額を示す。手形１の合計には、今回支払額の合計に手形１の支払条件を積算した金額を示す。手形２の合計には、今回支払額の合計に手形２の支払条件を積算した金額を示す。つまり、
現金のセルの合計＝Σ（各要素、現金）  ・・・式４
手形１のセルの合計＝Σ（各要素、手形１）  ・・・式５
手形２のセルの合計＝Σ（各要素、手形２）  ・・・式６
となる。
【００１７】
各要素のセルの合計は、求めた各要素の各金種の支払額を各要素に合計した値である。
【００１８】
各要素のセルの合計＝（各要素，現金）＋（各要素，手形１）＋（各要素，手形２）  ・・・式７
列差額は、各金種の合計から各金種のセルの合計を減算した現金の値を示す。
【００１９】
現金の列差額＝現金の合計−現金のセルの合計  ・・・式８
手形１の列差額＝手形１の合計−手形１のセルの合計  ・・・式９
手形２の列差額＝手形２の合計−手形２のセルの合計  ・・・式１０
行差額は、各要素の今回支払額から各要素のセルの合計を減算した値を示す。
【００２０】
各要素の行差額＝各今回支払額−各要素のセルの合計  ・・・式１１
（按分計算差額調整装置）
本発明の実施の形態に係る按分計算差額調整装置１００は、図１に示すように、入力装置１、出力装置２、通信制御装置３、通信インタフェース４、ＣＰＵ５及び記憶装置６等から構成される。
【００２１】
記憶装置６は、条件記憶部６ａ、支払計算領域記憶部６ｂおよび優先順位領域記憶部６ｃ等を備えている。
【００２２】
条件記憶部６ａは、１つの要素を備える第１のレコード群（要素Ａ１行）と、前記要素以外の１つの要素を備える第２のレコード群（要素Ａ２行）、前記第１のレコード群若しくは前記第２のレコード群の実データ（今回支払額）、前記実データの合計である実合計データ（今回支払額合計）、及び前記実合計データを予め設定される配列（金種）毎に予め設定される按分比率にて按分計算した実合計按分データを格納する。具体的には、図２に示すような、按分計算を行うための各要素、各金種、各支払条件（按分比率）、今回支払額、行差額、要素合計、列差額等のデータを格納する。
【００２３】
支払計算領域記憶部６ｂは、第１の対象データ及び第２の対象データを格納する対象データ記憶部であり、按分計算の差額調整を行うための図２に示す支払計算領域１０及びその基となる支払先明細書等を格納する。
【００２４】
優先順位領域記憶部６ｃは、図３に示す優先順位領域２０を格納する。優先順位領域２０は、支払計算領域と同じ行及び列を備え、支払計算領域１０内の各セルの値の昇順によって、差額計算を行う際の優先順位を設定する。尚、本実施の形態では優先順位はセル値の昇順によって求めるように設定するが、これは支払計算領域１０の構成によって例えば降順やその他の並び順に設定してもかまわない。
【００２５】
ＣＰＵ５は、条件設定手段５ａ、按分計算手段５ｂ、支払計算領域作成手段５ｃ、優先順位設定手段５ｄ、優先順位領域作成手段５ｅ、セル抽出手段５ｆ及び差額調整手段５ｇ等のプロセスを実行する。ＣＰＵ５は図示しない主メモリと接続されている。主メモリは処理の手順を記述したプログラムや処理されるべきデータを一時的に記憶し、ＣＰＵ５の要請に従ってプログラムの機械命令やデータを引き渡す。又、ＣＰＵ５で処理されたデータは主メモリに書き込まれる。ＣＰＵ５と主メモリはアドレスバス、データバス、制御信号等で結ばれている。
【００２６】
条件設定手段５ａは、業者への要素毎の支払額、各金種の支払条件（按分比率）等の支払計算領域１０を作成するための按分条件を設定し、この条件に従い支払明細書を作成する。按分計算手段５ｂは、第１のレコード群の実データを按分比率にて配列毎に按分計算した値を予め設定される位まで切り捨てした第１の対象データと、第２のレコード群の実データを按分比率にて配列毎に按分計算した値を予め設定される位まで切り捨てした第２の対象データを得る。具体的には、各要素の今回支払額と各金種の支払条件から按分し、按分結果を切り捨てる丸め計算を実施する。支払計算領域作成手段５ｃは、条件設定手段５ａが設定する按分条件及び按分計算手段５ｂの按分計算結果にしたがって、支払先明細書を作成し、この支払明細書内部に各要素の各金種への支払額から成る行列である支払計算領域１０（図２参照）を作成する。
【００２７】
優先順位領域作成手段５ｅは、図３の優先順位領域２０を作成する。優先順位領域２０は、支払計算領域１０と同じ行数及び同じ列数からなり、支払計算領域１０のセルと同位置の、優先順位領域２０のセル内の順位が、按分計算処理の優先順位となる。優先順位領域２０は、按分計算で求められた各要素、金種毎の合計が今回支払額の合計と合致しなくなる場合、その差額を調整する為に、どの要素の金種から調整するかを示す。
【００２８】
セル抽出手段５ｆは、優先順位が最も高く且つ差額調整対象となっているデータを第１の対象データ及び第２の対象データ内より抽出し、差額調整対象データとする。具体的には、優先順位領域２０より優先順位の最も高いセル位置を取得し、優先順位領域２０と同位置の支払計算領域１０上のセルを差額調整対象セルとして指定する。
【００２９】
差額調整手段５ｇは、差額調整対象データの実データと、差額対象調整データを備える第１のレコード群若しくは第２のレコード群の、第１の対象データ及び第２の対象データの合計値の差である第１の差額と、差額調整対象データの実合計按分データと、差額対象調整データを備える第１の対象データ若しくは第２の対象データの、第１のデータ群及び第２のデータ群の合計値の差である第２の差額とを比較し、第２の差額が第１の差額以上なら第１の差額を差額調整対象データへ加算し、第２の差額が第１の差額以上でないなら第２の差額を差額調整対象データへ加算し、加算の結果第１の差額が０となった差額調整対象セルを備える第１のレコード群若しくは第２のレコード群を第１の差額調整対象外データとし、加算の結果第２の差額が０となった差額対象調整データの第１の対象データ若しくは第２の対象データの、第１のデータ群及び第２のデータ群を第２の差額調整対象外データとし、第１の差額調整対象外データ及び第２の差額調整対象外データを対象データ記憶部内にてマスク処理する。具体的に差額調整手段５ｇは、差額調整対象セルに対する行差額と列差額を比較し、その大小により行差額又は列差額を差額調整対象セルへ加算する。又、行差額及び列差額が０の行及び列の位置を求め、差額調整対象から外すようマスク設定する。具体的なマスク処理としては、抽出された各セルの文字列（値）を削除したり、「***」等の文字列で置換すること等により行う。
【００３０】
優先順位設定手段５ｄは、第１の対象データ及び第２の対象データの全ての値を比較して差額調整を行う優先順位を設定する。具体的には、按分計算された値を基に、１から順番に優先順位領域２０上の適当な位置へ優先順位を設定する。さらに優先順位設定手段５ｄは、支払計算領域１０より行差額及び列差額が０の行及び列の位置を求め、優先順位領域２０の優先順位の設定及び差額調整対象の行、列のマスク設定を行う。マスクされた行、列は差額調整手段５ｇの処理対象外となる。
【００３１】
入力装置１は、キーボード、マウス等から入力信号を受信するインタフェースである。フロッピー（登録商標）ディスク、ハードディスク等の外部記憶装置を介して入力されても良い。出力装置２は、処理結果等を出力するための装置であり、具体的には液晶ディスプレイ、ＣＲＴディスプレイ、プリンタ等を指す。通信制御装置３は、外部の装置間においてデータを送受信する為の制御信号を生成する。通信インタフェース４は、外部の装置間においてデータを送受信するための装置である。
【００３２】
（按分計算差額調整装置の動作）
次に、按分計算差額調整装置１００の動作について図４のフローチャートを参照して説明する。
【００３３】
（ａ）先ずステップＳ１０１においては、条件設定手段５ａが入力装置１または通信インタフェース４等を介して入力された業者への要素毎の支払額、各金種の支払条件等の支払計算領域１０を作成するための按分条件を設定する。設定された条件は条件記憶部６ａにて格納される。按分計算手段５ｂは条件記憶部６ａより要素毎の支払額、各金種の支払条件等を取得し、按分計算を行う。計算結果の小数点以下は切り捨てる。按分計算は、具体的に以下のように行う。
【００３４】
図１のように、要素は、１〜ｎ個から成り、金種は、１〜ｍ個から成るとする。各要素の今回支払額を今回支払額（ｉ）、各金種の支払条件を支払条件（ｊ）とすると、
今回支払額の合計＝Σ今回支払額（ｉ）（ｉ＝１〜ｎ）  ・・・式１２
各金種の合計（ｊ）＝今回支払額合計×支払条件（ｊ）（ｊ＝１〜ｍ）・・・式１３
となる。
【００３５】
各要素の金種毎の支払額を（要素（ｉ），金種（ｊ））とすると、
（要素（ｉ），金種（ｊ））＝今回支払額（ｉ）×支払条件（ｊ）・・・式１４
となる。支払計算領域作成手段５ｃは、上記の按分計算を行った結果を基に図１の支払先明細書を作成し、その内部に支払計算領域１０を作成する。
【００３６】
（ｂ）ステップＳ１０２においては、優先順位設定手段５ｄが差額調整対象セルの優先順位設定を行う。先ず、図１の支払計算領域１０内の按分した金額の値の昇順に各セルに設定する。尚、最大金額が同じ値であった場合は、要素コードに一意のコードを例えば図１だとＡ１〜Ｃ２に各々１〜９のように順位を設定し、このコードの順位毎に昇順位を設定する。優先順位領域作成手段５ｅは、この設定された優先順位を基に、図３の優先順位領域２０を作成する。
【００３７】
（ｃ）ステップＳ１０３においては、支払計算領域作成手段５ｃは、各金種、各要素の合計値を求める。各金種の合計値、各要素の合計値は、以下の式で求める。
【００３８】
各金種セルの合計（ｊ）＝Σ（要素（ｉ），金種（ｊ））（ｉ＝１〜ｎ）・・・式１５
各要素のセル合計（ｉ）＝Σ（要素（ｉ），金種（ｊ）（ｊ＝１〜ｍ）・・・式１６
尚、求められた各金種の合計値、各要素の合計値は図２に示すようになる。
【００３９】
（ｄ）ステップＳ１０４においては、支払計算領域作成手段５ｃが各金種の合計値、各要素の合計値と元値（各金種の合計、今回支払額）から以下の式にて列差額、行差額を求める。
【００４０】
列差額（ｊ）＝各金種の合計（ｊ）−金種の各金種のセルの合計（ｊ）
（ｊ＝１〜ｍ）  ・・・式１７
行差額（ｉ）＝今回支払額（ｉ）−各要素のセルの合計（ｉ）
（ｉ＝１〜ｎ）  ・・・式１８
尚、求められた列差額、行差額は図２に示すようになる。
【００４１】
（ｅ）ステップＳ１０５においては、差額調整手段５ｇが列差額０のセルがあるか判断する。列差額が０のセルがある場合、ステップＳ１０６において差額が０の金種上の各セルを差額調整対象から外すようにマスク設定する。同様に、優先順位設定手段５ｄが優先順位領域２０の該当するセルをマスク設定する。列差額が０のセルが無い場合、ステップＳ１０７において差額が０でない列上の各セルを差額調整対象にする。同様に、優先順位領域２０の該当する各セルも差額調整対象にする。
【００４２】
例えば、図２の支払計算領域１０では列差額が０のセルは無いのですべての列上の各セルを差額調整対象にする。同じく図３の優先順位領域２０でもすべての列上の各セルを差額調整対象にする。
【００４３】
（ｆ）次にステップＳ１０８において、差額調整手段５ｇが行差額０のセルがあるか判断する。行差額が０のセルがある場合、ステップＳ１０９にて差額が０の行上の各セルを差額調整対象から外すようマスク設定する。同様に、優先順位設定手段５ｄが優先順位領域２０の該当するセルをマスク設定する。行差額が０でない場合、ステップＳ１１０にて差額が０でない行上の各セルを差額調整対象にする。同様に、優先順位領域２０の該当するセルも差額調整対象にする。
【００４４】
例えば、図２では行差額が０のセルが最上位列と最下位列のセルと２つあるため、この２つの行差額に係る行のセルはマスク設定される。同様に優先順位領域２０も、図５に示すように対象セル３０ａ、３０ｂをマスクして、差額調整対象外と設定する。
【００４５】
（ｇ）ステップＳ１１１では、セル抽出手段５ｆの抽出対象となる差分調整セルがなくなるまでステップＳ１１２〜Ｓ１２２の処理を行うよう設定する。先ず、ステップＳ１１２においては、セル抽出手段５ｆは、優先順位領域２０から、ステップＳ１０５〜Ｓ１１０の処理にてマスクされていない中で最も高い優先順位のセルを選択し、そのセルと同位置の支払計算領域１０のセルを抽出する。更にセル抽出手段５ｆは、抽出されたセルを差額調整対象セルとして指定する。
【００４６】
例えば、図４の優先順位領域２０では、最優先順位の‘１’のセルは（Ｂ３，現金）である。よって図６（図２と同図）において最優先順位のセルとして、支払計算領域１０の（Ｂ３，現金）の位置のセル１１を抽出する。
【００４７】
（ｈ）ステップＳ１１３では、差額調整手段５ｇは、セル１１が属する列と行の差額を比較する。列差額が行差額以上の場合（ステップＳ１１４）、ステップＳ１１５においてセル１１の各要素の金種毎の支払額へ行差額を加算する。列差額が行差額以下の場合（ステップＳ１１４）、ステップＳ１１６において支払計算領域１０のセル１１の各要素の金種毎の支払額へ列差額を加算する。
【００４８】
例えば、図６のセル１１（Ｂ３，現金）では列差額（２）、行差額（１）なので、列差額が行差額より大きいので、行差額（１）を（Ｂ３，現金）へ加算している。
【００４９】
（ｉ）差額調整を実施後、再度、差額調整手段５ｇは、差額調査対象外のマスク設定を行う。ステップＳ１１７では、ステップＳ１１２〜Ｓ１１６の処理にて支払計算領域の差額調整対象外となったセルを求める。先ず列差額が０のセルがあるか判断し、列差額０のセルがある場合、ステップＳ１１８にて列上の各セルを差額調整対象から外す。列差額０のセルがない場合、ステップＳ１１９にて列上の各セルを差額対象にする。同様にステップＳ１２０では行差額０のセルがあるか判断し、行差額０のセルがある場合行上の各セルを差額調整対象から外す。行差額０のセルが無い場合行上の各セルを差額対象にする。
【００５０】
これらステップＳ１１２〜Ｓ１２２の処理は、ステップＳ１１１に設定されているように、図３の優先順位領域２０の全てのセルが差額調整対象外となるまで繰り返し行う。
【００５１】
具体的に説明すると、例えば、図６では、（Ｂ３，現金）のセル１１の行差額２１ａが新たに０になったので、この行と同位置の優先順位領域２０のセル列３１（図７参照）がマスク設定される。
【００５２】
図３の優先順位領域２０の優先順位２は（Ｂ３，手形１）である。この為、図８の支払計算領域１０のセル１２に係る行差額２２ａ及び列差額２２ｂを比較し、比較結果セル１２に１加算し、行差額２２ａ及び列差額２２ｂは新たに０となる。よって、図９の優先順位領域２０のセル行３２ａとセル列３２ｂをマスク設定する。
【００５３】
図３の優先順位領域２０のマスクされていない優先順位１１は（Ｂ４，手形１）である。この為、図１０の支払計算領域１０のセル１３に係る行差額２３ａ及び列差額２３ｂを比較し、比較の結果セル１３に１加算し、行差額２３ａ及び列差額２３ｂは０及び３になる。よって、図１１の優先順位領域２０のセル行３３をマスク設定する。
【００５４】
図３の優先順位領域２０のマスクされていない優先順位１２は（Ｃ１，手形１）である。この為、図１２の支払計算領域１０のセル１４に係る行差額２４ａ及び列差額２４ｂを比較し、比較の結果セル１４に１加算し、行差額２４ａ及び列差額２４ｂは０及び２になる。よって、図１３の優先順位領域２０のセル行３４をマスク設定する。
【００５５】
図３の優先順位領域２０のマスクされていない優先順位１９は（Ａ２，手形１）である。この為、図１４の支払計算領域１０のセル１５に係る行差額２５ａ及び列差額２５ｂを比較し、比較の結果セル１５に１加算し、行差額２５ａ及び列差額２５ｂは０及び１になる。よって、図１５の優先順位領域２０のセル行３５をマスク設定する。
【００５６】
図３の優先順位領域２０のマスクされていない優先順位２１は（Ｂ１，手形１）である。この為、図１６の支払計算領域１０のセル１６に係る行差額２６ａ及び列差額２６ｂを比較し、比較の結果セル１６に１加算し、行差額２６ａ及び列差額２６ｂは１及び０になる。よって、図１７の優先順位領域２０のセル列３６をマスク設定する。
【００５７】
図３の優先順位領域２０のマスクされていない優先順位２６は（Ｂ１，手形２）である。この為、図１８の支払計算領域１０のセル１７に係る行差額２７ａ及び列差額２７ｂを比較し、比較結果セル１７に１加算し、行差額２７ａ及び列差額２７ｂは０及び２になる。よって、図１９の優先順位領域２０のセル行３７をマスク設定する。
【００５８】
図３の優先順位領域２０のマスクされていない優先順位２７は（Ａ３，手形２）である。この為、図２０の支払計算領域１０のセル１８に係る行差額２８ａ及び列差額２８ｂを比較し、比較結果セル１８に１加算し、行差額２８ａ及び列差額２８ｂは０及び０になる。よって、図２１の優先順位領域２０のセル行３８をマスク設定する。
【００５９】
以上により、図３の優先順位領域２０の全てのセルが差額調整対象外となったため、この処理を終了する。
【００６０】
このように、各要素の今回支払額に対して、各金種の支払条件で按分計算して予め設定される小数点以下を切り捨てし、この値（金額）に対して優先順位を設けて、優先順位の高い順から、按分した金額へ元の金額との差額を加算することにより、丸め誤差が合計値に現れないようにすることができる。
【図面の簡単な説明】
【００６１】
【図１】本発明の実施の形態に係る按分計算差額調整装置の構造を示す図である。
【図２】支払計算領域の構造を示す図である。
【図３】優先順位領域の構造を示す図である。
【図４】按分計算差額調整装置の動作を示すフローチャートである。
【図５】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図６】支払計算領域の優先対象セルの構造を示す図である。
【図７】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図８】支払計算領域の優先対象セルの構造を示す図である。
【図９】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図１０】支払計算領域の優先対象セルの構造を示す図である。
【図１１】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図１２】支払計算領域の優先対象セルの構造を示す図である。
【図１３】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図１４】支払計算領域の優先対象セルの構造を示す図である。
【図１５】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図１６】支払計算領域の優先対象セルの構造を示す図である。
【図１７】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図１８】支払計算領域の優先対象セルの構造を示す図である。
【図１９】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【図２０】支払計算領域の優先対象セルの構造を示す図である。
【図２１】優先順位領域の差額対象外セルへのマスク構造を示す図である。
【符号の説明】
【００６２】
１…入力装置
２…出力装置
３…通信制御装置
４…通信インタフェース
５…ＣＰＵ
５ａ…条件設定手段
５ｂ…按分計算手段
５ｃ…支払計算領域作成手段
５ｄ…優先順位設定手段
５ｅ…優先順位領域作成手段
５ｆ…セル抽出手段
５ｇ…差額調整手段
６…記憶装置
６ａ…条件記憶部
６ｂ…支払計算領域記憶部
６ｃ…優先順位領域記憶部
１０…支払計算領域
２０…優先順位領域
１００…按分計算差額調整装置
【図１】
2006277412.tif 000003
【図２】
2006277412.tif 000004
【図３】
2006277412.tif 000005
【図４】
2006277412.tif 000006
【図５】
2006277412.tif 000007
【図６】
2006277412.tif 000008
【図７】
2006277412.tif 000009
【図８】
2006277412.tif 000010
【図９】
2006277412.tif 000011
【図１０】
2006277412.tif 000012
【図１１】
2006277412.tif 000013
【図１２】
2006277412.tif 000014
【図１３】
2006277412.tif 000015
【図１４】
2006277412.tif 000016
【図１５】
2006277412.tif 000017
【図１６】
2006277412.tif 000018
【図１７】
2006277412.tif 000019
【図１８】
2006277412.tif 000020
【図１９】
2006277412.tif 000021
【図２０】
2006277412.tif 000022
【図２１】
2006277412.tif 000023