JP2019012367A - Salary data calculation device, salary data calculation program, and salary data calculation method - Google Patents
Salary data calculation device, salary data calculation program, and salary data calculation method Download PDFInfo
- Publication number
- JP2019012367A JP2019012367A JP2017128074A JP2017128074A JP2019012367A JP 2019012367 A JP2019012367 A JP 2019012367A JP 2017128074 A JP2017128074 A JP 2017128074A JP 2017128074 A JP2017128074 A JP 2017128074A JP 2019012367 A JP2019012367 A JP 2019012367A
- Authority
- JP
- Japan
- Prior art keywords
- recording destination
- salary
- horizontal
- vertical
- calculated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 177
- 238000000034 method Methods 0.000 claims abstract description 106
- 230000015556 catabolic process Effects 0.000 abstract description 4
- 238000006731 degradation reaction Methods 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 114
- 238000010586 diagram Methods 0.000 description 26
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006866 deterioration Effects 0.000 description 3
- 230000000593 degrading effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013523 data management Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
本発明は、給与データ計算装置、給与データ計算プログラム、給与データ計算方法に関する。 The present invention relates to a salary data calculation device, a salary data calculation program, and a salary data calculation method.
従来より、企業等では、給与アプリケーションを用いて、従業員に支給する給与の給与データを、算出基礎データに基づいて算出することが一般的である。給与データは、給与の各給与項目の金額であり、例えば、総支給額、基本給額、職能給額、諸手当額がある。また、算出基礎データは、例えば、職種、等級、各種手当、勤怠がある。一般的に、給与アプリケーションでは、企業ごとに異なる給与データの算出方法に柔軟に対応できるように、給与データや給与データの算出式を任意に定義することができる。 2. Description of the Related Art Conventionally, companies and the like generally calculate salary data of salary to be paid to employees based on calculation basic data using a salary application. The salary data is the amount of each salary item of salary, and includes, for example, the total salary, basic salary, professional salary, and various allowances. The calculation basic data includes, for example, job type, grade, various allowances, and attendance. Generally, in a salary application, salary data and a formula for calculating salary data can be arbitrarily defined so as to be able to flexibly cope with a salary data calculation method that differs for each company.
しかしながら、上述の従来技術では、給与アプリケーションにおいて、例えばリレーショナルデータベース(Relational Database、以下、RDBという)を用いてデータ管理が行われる。例えば、給与データは、従業員ごと月度ごとに算出される。また、例えば、月度を遡って等級変更等の算出基礎データの変更が行われた場合には、給与データも月度を遡って再計算される。そのため、給与データだけでなく、給与データの算出過程の中間データも記録しておく。さらに、給与支給日前の決められた締め日までに金融機関に対して給与の振込み依頼を行うため、決められた期日までに給与データの算出を完了しておく。そのために、給与データおよび中間データの算出および記録を効率的に行うことが求められる。 However, in the above-described conventional technology, data management is performed in a salary application using, for example, a relational database (hereinafter referred to as RDB). For example, salary data is calculated for each employee every month. For example, when the calculation basic data such as the grade change is changed retroactively, the salary data is also recalculated retroactively. For this reason, not only salary data but also intermediate data in the calculation process of salary data is recorded. Furthermore, in order to make a transfer request of salary to the financial institution by a predetermined closing date before the salary payment date, calculation of the salary data is completed by the predetermined date. Therefore, it is required to efficiently calculate and record salary data and intermediate data.
例えば、従業員数が多く、給与データの算出式が複雑な場合であっても、RDBを効率的に用いて給与データおよび中間データの算出および記録を行うためには、給与データは、従業員ごと月度ごとにテーブルの1レコードに記録されることが望ましい。また、給与データだけでなく、中間データ、および給与データの算出式もテーブルの1レコードに記録することで、より効率的に給与データ等の算出および記録を行うことができる。 For example, in order to calculate and record salary data and intermediate data efficiently using RDB, even if the number of employees is large and the formula for calculating salary data is complicated, salary data is It is desirable to record in one record of the table every month. Further, not only salary data but also intermediate data and a formula for calculating salary data are recorded in one record of the table, whereby salary data and the like can be calculated and recorded more efficiently.
しかし、給与アプリケーションの仕様やRDBの特性上、テーブルの1レコードに記録可能な項目数には上限がある。そのため、給与計算に関する記録対象データが多数あると、テーブルの1レコードに記録可能な項目数の上限を超過し、全ての記録対象データを記録し切れない場合がある。 However, the number of items that can be recorded in one record of the table is limited due to the specifications of the salary application and the characteristics of the RDB. For this reason, if there is a large amount of recording target data related to payroll calculation, the upper limit of the number of items that can be recorded in one record of the table is exceeded, and all the recording target data may not be recorded.
このような問題を解決するために、従業員ごと月度ごとに記録対象データをテーブルの1レコードに記録するのではなく、記録対象データごとにテーブルの複数レコードに分けて記録することが考えられる。しかし、RDBの特性上、記録対象データをテーブルの複数レコードに分けて記録すると、データベースの性能が劣化し、給与データ算出の処理が遅延するおそれがある。 In order to solve such a problem, it is conceivable that the recording target data is not recorded in one record of the table for each employee, but is recorded separately in a plurality of records in the table for each recording target data. However, due to the characteristics of the RDB, if the recording target data is divided and recorded in a plurality of records in the table, the performance of the database may be degraded, and the salary data calculation process may be delayed.
本願の一実施形態は、上記に鑑みてなされたものであって、データベースの性能を劣化させずに、給与データの計算を効率よく行うことができる給与データ計算装置、給与データ計算プログラム、給与データ計算方法を提供することを目的とする。 One embodiment of the present application has been made in view of the above, and a salary data calculation device, a salary data calculation program, and salary data capable of efficiently calculating salary data without degrading database performance. The purpose is to provide a calculation method.
本願の一実施形態では、給与データ計算装置は、給与データの算出値、および、該算出値の算出過程で算出される中間値を算出するための算出ルールを給与データごとに記憶する算出ルール記憶部と、従業員ごとかつ年月ごとの各給与データの算出値および該算出値に対応する中間値を、横明細テーブルの1レコードの横方向のフィールドに記録する横明細記憶部と、前記各給与データの算出値および該算出値に対応する中間値を、縦明細テーブルの縦方向の複数レコードに分けて記録する縦明細記憶部と、前記算出ルールをもとに算出される給与データの算出値の数および該算出値に対応する中間値の数の少なくともいずれかに応じて、該算出値および該中間値を前記横明細記憶部および前記縦明細記憶部のいずれか一方または両方に記録すると決定する記録先決定部とを備えたことを特徴とする。 In one embodiment of the present application, a salary data calculation device stores a calculation rule for calculating a salary data calculation value and an intermediate value calculated in a calculation process of the calculation value for each salary data. A horizontal detail storage unit that records a calculated value of each salary data for each employee and year and month and an intermediate value corresponding to the calculated value in a horizontal field of one record of the horizontal detailed table; Calculation of salary data and an intermediate value corresponding to the calculated value divided into a plurality of records in the vertical direction of the vertical detail table and recorded, and calculation of salary data calculated based on the calculation rule According to at least one of the number of values and the number of intermediate values corresponding to the calculated value, the calculated value and the intermediate value are recorded in one or both of the horizontal detail storage unit and the vertical detail storage unit. Characterized by comprising a recording destination determination unit for determining the that.
本願の一実施形態によれば、データベースの性能を劣化させずに、給与データの計算を効率よく行うことができるという効果を奏する。 According to an embodiment of the present application, there is an effect that it is possible to efficiently calculate salary data without degrading the performance of the database.
以下に、本願の開示技術にかかる給与データ計算装置、給与データ計算プログラム、給与データ計算方法の実施形態を図面に基づいて詳細に説明する。開示技術にかかる給与データ計算装置等は、企業等において、従業員に対して支給される給与の給与データおよび給与データの算出過程の中間データを、予め定められた算出式および計算順序に従って計算する。そして、給与データ計算装置等は、テーブルの1レコードに、もしくはテーブルのレコードごとに記録する。以下では、給与データは算出値であり、中間データは中間値である。 Hereinafter, embodiments of a salary data calculation device, a salary data calculation program, and a salary data calculation method according to the disclosed technology of the present application will be described in detail with reference to the drawings. A salary data calculation apparatus or the like according to the disclosed technology calculates salary data of salary to be paid to employees and intermediate data in the calculation process of salary data in a company or the like according to a predetermined calculation formula and calculation order. . Then, the salary data calculation device or the like records in one record of the table or for each record in the table. In the following, salary data is a calculated value, and intermediate data is an intermediate value.
なお、以下の実施形態により本発明が限定されるものではない。例えば、以下の実施形態では、月度単位の給与の計算例を示すが、月度に限られず、任意の所定期間を単位とする給与であってもよい。また、以下の実施形態における実施例および変形例は、処理内容が矛盾しない範囲で適宜組合せることができる。 In addition, this invention is not limited by the following embodiment. For example, in the following embodiment, an example of calculating salary in monthly units is shown, but the salary is not limited to monthly units, and may be salaries in units of an arbitrary predetermined period. In addition, examples and modifications in the following embodiments can be appropriately combined within a range in which processing contents do not contradict each other.
図1は、給与データ計算装置の一例を示す図である。給与データ計算装置100は、サーバ装置等のコンピュータである。なお、給与データ計算装置100は、オンプレミスのサーバに実装されてもよいし、データセンタに設置され、ネットワークを介してSaaS(Software as a Service)として給与データ計算サービスを提供するクラウドサーバに実装されてもよい。
FIG. 1 is a diagram illustrating an example of a salary data calculation apparatus. The salary
給与データ計算装置100は、記憶部10、制御部20を有する。記憶部10は、HDD(Hard Disk Drive)等の磁気記憶装置やSSD(Solid State Drive)等の半導体記憶装置を含む外部記憶装置である。記憶部10は、月例給与項目マスタテーブル10−1、月例給与支給データテーブル10−2、従業員マスタテーブル10−3、従業員勤怠データテーブル10−4、給与体系マスタテーブル10−5、役職手当マスタテーブル10−6を有する。また、記憶部10は、家族手当マスタテーブル10−7、算出式マスタテーブル10−8、横明細データテーブル10−9、縦明細データテーブル10−10、縦横記録先データテーブル10−11を有する。記憶部10は、月例給与項目マスタテーブル10−1〜縦横記録先データテーブル10−11を有するRDBである。給与データ計算装置100は、RDBを管理するRDB管理システムを含む。
The salary
(記憶部に格納されるテーブル)
以下、記憶部10に記憶される月例給与項目マスタテーブル10−1〜縦横記録先データテーブル10−11について説明する。月例給与項目マスタテーブル10−1〜縦横記録先データテーブル10−11は、RDBのテーブルである。異なるテーブルに存在する同一名称のカラムは、RDBにおいて関連付けられるカラムである。
(Table stored in the storage unit)
Hereinafter, the monthly salary item master table 10-1 to the vertical / horizontal recording destination data table 10-11 stored in the storage unit 10 will be described. The monthly salary item master table 10-1 to the vertical / horizontal recording destination data table 10-11 are RDB tables. Columns with the same name existing in different tables are columns associated in the RDB.
(月例給与項目マスタテーブル)
図2は、月例給与項目マスタテーブルの一例を示す図である。月例給与項目マスタテーブル10−1は、「給与項目」「計算順序」のカラムを有する。「給与項目」は、企業が従業員に対して支給する給与の項目であり、算出値となる給与データの項目名を示す。「給与項目」は、予め定められた算出式を従業員の各マスタテーブルおよび各データテーブルに格納されているデータに適用した算出結果である。図2に示す例では、n個(nは2以上の自然数)の「給与項目」のうち、(n−1)個の「給与項目」“基本給”〜“残業手当”・・・は、「給与項目」“総支給額”の内訳である。
(Monthly salary item master table)
FIG. 2 is a diagram illustrating an example of a monthly salary item master table. The monthly salary item master table 10-1 has columns of “salary item” and “calculation order”. “Salary item” is an item of salary that a company provides to employees, and indicates the item name of salary data that is a calculated value. The “salary item” is a calculation result obtained by applying a predetermined calculation formula to data stored in each master table and each data table of the employee. In the example shown in FIG. 2, among n (n is a natural number of 2 or more) “salary items”, (n−1) “salary items” “basic salary” to “overtime pay”. This is a breakdown of “salary item” and “total amount paid”.
また、「計算順序」は、対応する「給与項目」を、予め定められた算出式をもとに算出する算出順序である。例えば、図2において、1番目に“役職手当”、2番目に“資格手当”、3番目に“家族手当”、4番目に“残業手当”、5番目に“総手当額”、6番目に“基本給”、7番目に“職能給”・・・が算出される。そして、最後のn番目に“総支給額”が算出される。このように、「給与項目」ごとに「計算順序」が定められるのは、先に算出された「給与項目」が、後に他の「給与項目」の算出に用いられる場合があるためである。 The “calculation order” is a calculation order in which the corresponding “salary item” is calculated based on a predetermined calculation formula. For example, in FIG. 2, “Job title allowance” first, “Qualification allowance” second, “Family allowance” third, “Overtime pay” fourth, “Total allowance” fifth, “Total allowance” sixth "Basic salary", 7th "professional salary" ... are calculated. Then, the “total payment amount” is calculated at the last nth. Thus, the “calculation order” is determined for each “salary item” because the previously calculated “salary item” may be used later to calculate other “salary item”.
(月例給与支給データテーブル)
図3は、月例給与支給データテーブルの一例を示す図である。月例給与支給データテーブル10−2は、「月度」「従業員番号」「総支給額」「基本給」「職能給」「役職手当」「総手当額」「家族手当」「残業手当」・・・のカラムを有する。月例給与支給データテーブル10−2における「総支給額」「基本給」「職能給」「役職手当」「総手当額」「家族手当」「残業手当」・・・は、月例給与項目マスタテーブル10−1で定められている「計算順序」に従って算出された「給与項目」である。
(Monthly salary payment data table)
FIG. 3 is a diagram illustrating an example of a monthly salary supply data table. Monthly salary payment data table 10-2 includes “monthly”, “employee number”, “total salary”, “basic salary”, “professional salary”, “posture allowance”, “total allowance”, “family allowance”, “overtime allowance”, etc. Column. In the monthly salary payment data table 10-2, “total salary”, “basic salary”, “professional salary”, “posture allowance”, “total allowance”, “family allowance”, “overtime allowance”,... 1 is a “salary item” calculated according to the “calculation order” defined in 1.
月例給与支給データテーブル10−2における1レコードが、「従業員番号」で識別される従業員に対して「月度」で識別される年月に支給される月例給与の「給与項目」を含む。例えば、月例給与支給データテーブル10−2に含まれるカラムの名称および対応する値は、その一部または全部が、給与明細書等に出力される「給与項目」およびその算出値である。 One record in the monthly salary supply data table 10-2 includes “salary item” of monthly salary to be paid in the month and month identified by “monthly” for the employee identified by “employee number”. For example, some or all of the column names and corresponding values included in the monthly salary supply data table 10-2 are “salary items” and their calculated values that are output to a salary statement or the like.
(従業員マスタテーブル)
図4は、従業員マスタテーブルの一例を示す図である。従業員マスタテーブル10−3は、レコードごとに各従業員の属性情報が格納されているテーブルである。従業員マスタテーブル10−3は、「従業員番号」「従業員名」「入社年月日」「退社年月日」「日給月給区分」「役職」「職級」「基本給額」「時給額」「扶養家族数」「未就学扶養者数」「配偶者有無」・・・のカラムを有する。図4に示す例では、「従業員番号」“223043”で識別される従業員は、「従業員名」“○○○○”、「入社年月日」“1996/4/1”、「退社年月日」“−”(未退社)・・・である。
(Employee master table)
FIG. 4 is a diagram illustrating an example of the employee master table. The employee master table 10-3 is a table in which attribute information of each employee is stored for each record. The employee master table 10-3 includes "employee number", "employee name", "employment date", "retirement date", "daily salary classification", "title", "job class", "basic salary", and "hourly salary". It has columns of “Number of dependents”, “Number of pre-school dependents”, “Spouse presence / absence”, and so on. In the example shown in FIG. 4, the employee identified by “employee number” “223043” is “employee name” “XXX”, “date of employment” “1996/4/1”, “ “Leaving date” “-” (not leaving).
(従業員勤怠データテーブル)
図5は、従業員勤怠データテーブルの一例を示す図である。従業員勤怠データテーブル10−4は、レコードごとに各従業員の勤怠情報が格納されているテーブルである。従業員勤怠データテーブル10−4は、「従業員番号」「月度」「所定日数」「労働日数」「休日出勤日数」「所定労働時間」「労働時間」「時間外時間」「深夜労働時間」「有給日数」・・・である。図5に示す例では、「従業員番号」“223043”で識別される従業員は、「月度」“2017年1月度”において、「所定日数」“20”の勤務日のうち「労働日数」“19”だけ勤務し、「所定労働時間」“160”であり、「労働時間」“172”だけ労働したことを示す。そして、「従業員番号」“223043”で識別される従業員は、「月度」“2017年1月度”において、「時間外時間」“12”、「深夜労働時間」“1”であり、「有給日数」“1”だけ有給を取得したことを示す。
(Employee time data table)
FIG. 5 is a diagram illustrating an example of an employee attendance data table. The employee attendance data table 10-4 is a table in which attendance information of each employee is stored for each record. The employee attendance data table 10-4 includes “employee number”, “monthly degree”, “predetermined days”, “working days”, “holiday working days”, “predetermined working hours”, “working hours”, “overtime hours”, and “late working hours”. “Number of paid days”. In the example shown in FIG. 5, the employee identified by “employee number” “223043” is “working day” among “working days” of “predetermined number of days” and “20” in “monthly degree” and “January 2017”. It shows that “19” worked, “predetermined working hours” “160”, and “working hours” “172” worked. The employees identified by “employee number” “223043” are “overtime” “12”, “late working hours” “1” in “monthly” “January 2017”, “ Shows that the number of paid days is “1”.
(給与体系マスタテーブル)
図6は、給与体系マスタテーブルの一例を示す図である。給与体系マスタテーブル10−5は、「職級」ごとの「職能給」を示すテーブルである。図6では、例えば、「職級」“IV”である場合には、「職能給」“160000”であることを示す。
(Salary system master table)
FIG. 6 is a diagram illustrating an example of the salary system master table. The salary system master table 10-5 is a table indicating “professional salary” for each “job class”. In FIG. 6, for example, “job class” “IV” indicates “professional salary” “160000”.
(役職手当マスタテーブル)
図7は、役職手当マスタテーブルの一例を示す図である。役職手当マスタテーブル10−6は、「役職」に応じた「役職給」を示すテーブルである。図7では、例えば、「役職」“本部長”である場合には、「役職給」“50000”であることを示す。
(Position allowance master table)
FIG. 7 is a diagram illustrating an example of a post allowance master table. The post allowance master table 10-6 is a table indicating “posture salary” corresponding to “post”. In FIG. 7, for example, in the case of “Position” “Head of Headquarters”, “Position Salary” “50000” is shown.
(家族手当マスタテーブル)
図8は、家族手当マスタテーブルの一例を示す図である。家族手当マスタテーブル10−7は、「扶養家族数」に応じた「基準額」を示すテーブルである。図8では、例えば、「扶養家族数」“1人”である場合には、「基準額」“3000”であることを示す。
(Family allowance master table)
FIG. 8 is a diagram illustrating an example of a family allowance master table. The family allowance master table 10-7 is a table showing a “reference amount” corresponding to the “number of dependents”. In FIG. 8, for example, when “the number of dependents” is “1”, it is “the reference amount” and “3000”.
(算出式マスタテーブル)
図9は、算出式マスタテーブルの一例を示す図である。算出式マスタテーブル10−8は、「給与項目」「条件」「算出値(中間値)」「算出式」のカラムを有する。以下、「算出値(中間値)」の表記は、「算出値」、および「算出値」の算出過程で発生する「中間値」をいう。また、「算出値」の表記は、算出値のみを指し、「中間値」の表記は、中間値のみを示す。
(Calculation formula master table)
FIG. 9 is a diagram illustrating an example of a calculation formula master table. The calculation formula master table 10-8 includes columns of “salary item”, “condition”, “calculated value (intermediate value)”, and “calculation formula”. Hereinafter, the expression “calculated value (intermediate value)” refers to “calculated value” and “intermediate value” generated in the calculation process of “calculated value”. The notation “calculated value” indicates only the calculated value, and the notation “intermediate value” indicates only the intermediate value.
また、「給与項目」の“総支給額”“基本給”“職能給”“総手当額”“役職手当”“家族手当”“残業手当”・・・の計算は、月例給与項目マスタテーブル10−1に格納されている順序に従う。また、「給与項目」および「条件」の組合せに対応する「算出値(中間値)」は、「算出値(中間値)」のカラムに格納されている格納行の順序で算出される。例えば、「給与項目」“総支給額”、「条件」“給与月度 IN (従業員マスタ->入社年月日) and 従業員マスタ->日給月給区分=月給”の組合せに対応する「算出値(中間値)」は、先ず“$総支給額_基本給”が算出された後に、“総支給額”が算出される。 The calculation of “total salary”, “basic salary”, “professional salary”, “total allowance”, “posture allowance”, “family allowance”, “overtime allowance”, etc. of the “salary item” is performed in the monthly salary item master table 10- Follow the order stored in 1. Further, the “calculated value (intermediate value)” corresponding to the combination of “salary item” and “condition” is calculated in the order of storage rows stored in the “calculated value (intermediate value)” column. For example, “calculated value” corresponding to the combination of “salary item” “total salary”, “condition” “monthly salary IN (employee master-> hire date) and employee master-> daily salary classification = monthly salary” (Intermediate value) ”is calculated after“ $ total payment_basic salary ”is calculated, and then“ total payment ”is calculated.
なお、図9において、例えば、「条件」“給与月度 IN (従業員マスタ->入社年月日) and 従業員マスタ->日給月給区分=月給”は、月給制の従業員が、給与月度の当月に入社し、給与の日割り計算を行う場合を示す。また、例えば、「条件」“給与月度 IN (従業員マスタ->退社年月日) and 従業員マスタ->日給月給区分=月給”は、月給制の従業員が、給与月度の当月に退社(退職)し、給与の日割り計算を行う場合を示す。 In FIG. 9, for example, “Condition” “Monthly salary IN (employee master-> employment date) and employee master-> daily salary classification = monthly salary” indicates that the monthly salary employee The case where you enter the company and calculate the daily salary is shown. Also, for example, “Condition” “Monthly salary IN (employee master-> leaving date) and employee master-> daily salary classification = monthly salary” indicates that a monthly salary employee leaves the company in the current salary month ( Retired) and the daily calculation of salary is shown.
算出式マスタテーブル10−8によれば、各「給与項目」について、「条件」が充足される場合に、対応する「算出式」に従って「算出値(中間値)」が順次算出される。なお、算出式マスタテーブル10−8において1つの「給与項目」および「条件」に対応する「算出値(中間値)」内の算出値および中間値の縦の並び順は、これら算出値および中間値の計算順序に等しい。また、算出式マスタテーブル10−8において、“$”をプレフィックスとして持つ「算出値(中間値)」は、中間値である。また、算出式マスタテーブル10−8において、「条件」“-”は、条件がないこと(無条件)を示す。また、算出式マスタテーブル10−8において、“T->I”は、マスタテーブルTの項目Iの値を参照することを示す。また、算出式マスタテーブル10−8において、“IF ‘C’ THEN ‘D’”は、条件Cが成立するならば値Dを返すことを示す。また、算出式マスタテーブル10−8において、“I==V”は、マスタテーブルTの項目Iの値がVに等しいことを示す。 According to the calculation formula master table 10-8, when “condition” is satisfied for each “salary item”, “calculated values (intermediate values)” are sequentially calculated according to the corresponding “calculation formula”. In the calculation formula master table 10-8, the calculated values in the “calculated value (intermediate value)” corresponding to one “salary item” and “condition” and the vertical order of the intermediate values are the calculated value and the intermediate value. Equal to the order of value calculation. In the calculation formula master table 10-8, the “calculated value (intermediate value)” having “$” as a prefix is an intermediate value. In the calculation formula master table 10-8, “condition” “-” indicates that there is no condition (unconditional). In the calculation formula master table 10-8, “T-> I” indicates that the value of the item I of the master table T is referred to. In the calculation formula master table 10-8, “IF 'C' THEN 'D'" indicates that the value D is returned if the condition C is satisfied. In the calculation formula master table 10-8, “I == V” indicates that the value of the item I of the master table T is equal to V.
例えば、「総支給額」は、「条件」“給与月度 IN(従業員マスタ->入社年月日)and 従業員マスタ->日給月給区分=月給”の条件が満たされる場合に、中間値である“$総支給額_基本給”は、“基本給×(従業員勤怠データ->労働日数÷従業員勤怠データ->所定日数)”により算出される。また、“総支給額”は、“$総支給額_基本給+職能給”により算出される。すなわち、該当従業員の給与支給対象の年月が従業員マスタテーブル10−3の「入社年月日」に該当し、かつ、従業員マスタテーブル10−3の「日給月給区分」が“月給”である場合に、「中間値」である“$総支給額_基本給”を、従業員勤怠データテーブル10−4の「労働日数」を「所定日数」で割った結果に、先に算出済みの「基本給」を乗じることで算出される。そして、「総支給額」は、「$総支給額_基本給」に、既に算出済みの「職能給」を加算することで算出される。他の「基本給」「職能給」「総手当額」「役職手当」「家族手当」「残業手当」・・・も、月例給与項目マスタテーブル10−1に格納されている順序に従って、対応する「条件」が充足される場合に、対応する「算出式」を用いて「算出値(中間値)」が算出される。 For example, “Total amount of payment” is an intermediate value when the conditions of “Condition” “Monthly salary IN (employee master-> hire date) and employee master-> daily salary division = monthly salary” are satisfied. A certain “$ total payment_basic salary” is calculated by “basic salary × (employee time data-> working days / employee time data-> predetermined days)”. The “total amount paid” is calculated by “$ total amount paid_basic salary + professional salary”. In other words, the salary of the corresponding employee corresponds to the “date of employment” in the employee master table 10-3, and the “daily salary classification” in the employee master table 10-3 is “monthly salary”. The “intermediate value” “$ total payment_basic salary” is divided into “the number of working days” in the employee attendance data table 10-4 by the “predetermined number of days”, Calculated by multiplying by “basic salary”. The “total paid amount” is calculated by adding the already calculated “professional salary” to “$ total paid amount_basic salary”. Other “basic salary”, “professional salary”, “total allowance amount”, “posture allowance”, “family allowance”, “overtime pay”, etc. also correspond according to the order stored in the monthly salary item master table 10-1. When the “condition” is satisfied, the “calculated value (intermediate value)” is calculated using the corresponding “calculation formula”.
(横明細データテーブル)
図10は、横明細データテーブルの一例を示す図である。図10に示す例では、横明細データテーブル10−9は、「従業員番号」「月度」「項目1」〜「項目10」のカラムを有する。「項目1」〜「項目10」のレコードごとの各フィールドは、後述の実施例1〜4の縦横記録先決定処理で横明細データテーブル10−9に記録すると決定された「算出値(中間値)」を記録するためのフィールドである。横明細データテーブル10−9は、「従業員番号」および「月度」に対応する複数のデータを1レコードに格納することから、テーブルへのアクセス性能が良いが、フィールドの数の制限により、記録できるデータの数に制限がある。なお、図10では、「項目1」〜「項目10」の10個の「項目」のカラムを有する例を示すが、10個に限られず、所定上限の範囲内で適宜設計変更可能である。
(Horizontal data table)
FIG. 10 is a diagram illustrating an example of the horizontal detail data table. In the example illustrated in FIG. 10, the horizontal detail data table 10-9 includes columns of “employee number”, “monthly degree”, “
(縦明細データテーブル)
図11は、縦明細データテーブルの一例を示す図である。図11に示す例では、縦明細データテーブル10−10は、「従業員番号」「月度」「項目」「値」のカラムを有する。縦明細データテーブル10−10には、レコードに、「従業員番号」、「月度」および「項目」に対応する「値」が格納されている。「項目」は、後述の実施例1〜4の縦横記録先決定処理で縦明細データテーブル10−10に格納すると決定された「算出値」または「中間値」である。例えば、「従業員番号」“223043”の「月度」“2017年1月度”の「項目」は、「中間値」である“$家族手当_特別加算1”であり、その「値」は“0”である。縦明細データテーブル10−10は、「従業員番号」および「月度」に対応する複数のデータを複数レコードに分けて格納することから、記録できるデータの数に制限がないが、テーブルへのアクセス性能が劣る。
(Vertical item data table)
FIG. 11 is a diagram illustrating an example of the vertical detail data table. In the example illustrated in FIG. 11, the vertical detail data table 10-10 includes columns of “employee number”, “monthly degree”, “item”, and “value”. In the vertical detail data table 10-10, “value” corresponding to “employee number”, “monthly degree”, and “item” is stored in the record. The “item” is a “calculated value” or “intermediate value” determined to be stored in the vertical detail data table 10-10 in the vertical / horizontal recording destination determination process of Examples 1 to 4 described later. For example, the “item” of “month number” “January 2017” of “employee number” “223043” is “intermediate value” “$ family allowance_special
なお、縦明細データテーブル10−10が有するカラムは、「従業員番号」「月度」「項目」「値」の4つであるとするが、「項目」および「値」の組は、2組以上であってもよい。 The vertical detail data table 10-10 has four columns of “employee number”, “monthly degree”, “item”, and “value”, but there are two sets of “item” and “value”. It may be the above.
(縦横記録先データテーブル)
図12は、縦横記録先データテーブルの一例を示す図である。図12に示す例では、縦横記録先データテーブル10−11は、「月度」「項目」「縦横」「横明細記録先」のカラムを有する。縦横記録先データテーブル10−11には、レコードごとに、「月度」および「項目」に対応する「縦横」および「横明細記録先」が記録される。「縦横」は、「月度」に対応する「項目」を横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方に記録することを示す。「縦横」“横明細”かつ「横明細記録先」“項目1”である場合には、対応する「月度」の「項目」が、横明細データテーブル10−9の“項目1”に記録されることを示す。「縦横」が“縦明細”である場合には、対応する「月度」の「項目」が、縦明細データテーブル10−10に記録されることを示す。
(Vertical and horizontal recording destination data table)
FIG. 12 is a diagram illustrating an example of the vertical / horizontal recording destination data table. In the example shown in FIG. 12, the vertical / horizontal recording destination data table 10-11 includes columns of “monthly”, “item”, “vertical / horizontal”, and “horizontal detailed recording destination”. In the vertical / horizontal recording destination data table 10-11, “vertical / horizontal” and “horizontal detailed recording destination” corresponding to “month” and “item” are recorded for each record. “Vertical and horizontal” indicates that “item” corresponding to “month” is recorded in one or both of the horizontal detailed data table 10-9 and the vertical detailed data table 10-10. In the case of “Vertical / Horizontal”, “Horizontal Detail” and “Horizontal Detail Recording Destination”, “
(制御部)
図1の説明に戻る。制御部20は、CPU(Central Processing Unit)等の処理装置である。制御部20は、縦横記録先決定部21、給与項目記録処理部22、給与項目算出処理部23を有する。
(Control part)
Returning to the description of FIG. The
縦横記録先決定部21は、後述の実施例1〜4のいずれかの縦横記録先決定処理により、算出値である「給与項目」と、「給与項目」の算出過程における「中間値」の記録先を、横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方とすることを決定する。縦横記録先決定処理の詳細は、後述の実施例1〜4で詳述する。 The vertical / horizontal recording destination determination unit 21 records “salary item” which is a calculated value and “intermediate value” in the calculation process of “salary item” by vertical / horizontal recording destination determination processing according to any one of Examples 1 to 4 described later. It is determined that the destination is one or both of the horizontal detail data table 10-9 and the vertical detail data table 10-10. Details of the vertical and horizontal recording destination determination processing will be described in detail in Examples 1 to 4 described later.
給与項目記録処理部22は、「給与項目」の一覧を月例給与項目マスタテーブル10−1から取得する。そして、給与項目記録処理部22は、月例給与項目マスタテーブル10−1から取得した「給与項目」について、給与項目算出処理部23により、対応する「計算順序」に従って、「算出値」である「給与項目」と、「算出値」の算出過程の「中間値」を算出する。そして、給与項目記録処理部22は、「算出値」および「中間値」を、縦横記録先決定処理により既に決定された記録先である横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方に記録する。
The salary item
給与項目算出処理部23は、算出式マスタテーブル10−8から取得された「給与項目」および「条件」に該当する「算出値(中間値)」の「算出式」を計算し、「算出値(中間値)」を算出する。給与項目算出処理部23により算出された「算出値(中間値)」は、上述のように、既に決定された記録先である横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方に記録される。
The salary item
(給与項目記録処理)
図13は、給与項目記録処理の一例を示すフローチャートである。給与項目記録処理は、給与データ計算装置100の制御部20の給与項目記録処理部22により実行される。給与項目記録処理は、後述の実施例1〜4のいずれかの縦横記録先決定処理により、算出値である「給与項目」および「給与項目」の算出過程における「中間値」が、横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方に記録されることが決定され、縦横記録先データテーブル10−11に記録先が記録されていることを前提として実行される。縦横記録先データテーブル10−11に記録先が記録される縦横記録先決定処理については、実施例1〜4を参照して後述する。なお、給与項目記録処理は、月度単位に定期的に実行されるとするが、月度に限られず、任意の所定期間を単位とする周期で実行されてもよい。
(Salary item recording process)
FIG. 13 is a flowchart illustrating an example of salary item recording processing. The salary item recording processing is executed by the salary item
先ず、ステップS101では、給与項目記録処理部22は、月例給与項目マスタテーブル10−1から、給与項目一覧として、全ての「給与項目」および「計算順序」を取得する。
First, in step S101, the salary item
次に、ステップS102〜S112では、給与項目記録処理部22は、ステップS101で取得した「給与項目」の算出を、ステップS101で同時に取得した「計算順序」に従って繰り返し実行する。ステップS102では、給与項目記録処理部22は、例えば1回目の実行の際には、月例給与項目マスタテーブル10−1から「計算順序」が“1”である「給与項目」“役職手当”を選択する。
Next, in steps S102 to S112, the salary item
次に、ステップS103では、給与項目記録処理部22は、算出式マスタテーブル10−8から、直前のステップS102で選択された「給与項目」および「条件」に該当する「算出値(中間値)」および「算出式」を全て取得する。
Next, in step S103, the salary item
次に、ステップS104〜S110では、給与項目記録処理部22は、従業員マスタテーブル10−3に記録されている全従業員について、直前のステップS103で取得した「算出値(中間値)」ごとに、対応する「算出式」によりその計算結果を算出する。そして、給与項目記録処理部22は、縦横記録先データテーブル10−11に格納されている記録先に従って、算出した「算出値(中間値)」を横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方に記録する。
Next, in steps S104 to S110, the salary item
ステップS104では、給与項目記録処理部22は、例えば1回目の実行の際には、算出式マスタテーブル10−8において、該当する「給与項目」および「条件」の組合せに対応する「算出値(中間値)」のうち、1行目に格納されている「算出値(中間値)」“$総支給額_基本給”を選択する。
In step S104, the salary item
次に、ステップS105では、給与項目記録処理部22は、ステップS104で選択した「算出値(中間値)」を入力とし、計算結果=Aを出力する算出値(中間値)算出処理を実行する。算出値(中間値)算出処理の詳細は、図14を参照して後述する。
Next, in step S105, the salary item
次に、ステップS106では、給与項目記録処理部22は、縦横記録先データテーブル10−11を参照し、ステップS105で算出した「算出値(中間値)」の記録先が、横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方であるかの情報を取得する。
Next, in step S106, the salary item
次に、ステップS107では、給与項目記録処理部22は、ステップS106で取得した記録先が横明細データテーブル10−9であるか否かを判定する。給与項目記録処理部22は、ステップS106で取得した記録先が横明細データテーブル10−9である場合(ステップS107Yes)、ステップS108へ処理を移す。一方、給与項目記録処理部22は、ステップS106で取得した記録先が横明細データテーブル10−9でない場合(ステップS107No)、ステップS113へ処理を移す。
Next, in step S107, the salary item
ステップS108では、給与項目記録処理部22は、縦横記録先データテーブル10−11の「横明細記録先」から、横明細データテーブル10−9の「項目1」〜「項目10」のカラムのうち、ステップS105で算出した「算出値(中間値)」(計算結果=A)を記録する記録項目を取得する。次に、ステップS109では、給与項目記録処理部22は、ステップS105で算出した「算出値(中間値)」(計算結果=A)を、ステップS109で取得した横明細データテーブル10−9の記録項目(「項目1」〜「項目10」のいずれか)に、「従業員番号」および「月度」ごとに登録する。
In step S108, the salary item
次に、ステップS110では、給与項目記録処理部22は、ステップS103で取得した「算出値(中間値)」を全て処理したか否かを判定する。給与項目記録処理部22は、ステップS103で取得した「算出値(中間値)」を全て処理した場合(ステップS110Yes)、ステップS111へ処理を移す。一方、給与項目記録処理部22は、ステップS103で取得した「算出値(中間値)」を全て処理していない場合(ステップS110No)、ステップS104へ処理を移す。給与項目記録処理部22は、ステップS110から処理を移したステップS104において、前回の実行の際に算出式マスタテーブル10−8から選択した「算出値(中間値)」の次の格納行の「算出値(中間値)」を選択する。
Next, in step S110, the salary item
次に、ステップS111では、給与項目記録処理部22は、ステップS105で算出した「算出値」を、月例給与支給データテーブル10−2の該当する「給与項目」のカラムに、「月度」および「従業員番号」ごとに記録する。次に、ステップS112では、給与項目記録処理部22は、ステップS104〜S111で、ステップS101で取得した「給与項目」を全て処理したか否かを判定する。給与項目記録処理部22は、ステップS104〜S111で、ステップS101で取得した「給与項目」を全て処理した場合(ステップS112Yes)、給与項目記録処理を終了する。一方、給与項目記録処理部22は、ステップS104〜S111で、ステップS101で取得した「給与項目」を全て処理していない場合(ステップS112No)、ステップS102へ処理を移す。給与項目記録処理部22は、ステップS112から処理を移したステップS102において、前回の実行の際に月例給与項目マスタテーブル10−1から選択した「給与項目」の次の「計算順序」の「給与項目」を選択する。
Next, in step S111, the salary item
他方、ステップS113では、給与項目記録処理部22は、ステップS105で算出した「算出値(中間値)」(計算結果=A)を、縦明細データテーブル10−10の「従業員番号」および「月度」ごとの「項目」に登録する。ステップS113が終了すると、給与項目記録処理部22は、ステップS111へ処理を移す。
On the other hand, in step S113, the salary item
(算出値(中間値)算出処理)
図14は、算出値(中間値)算出処理のサブルーチンの一例を示すフローチャートである。算出値(中間値)算出処理のサブルーチンは、図13のステップS105に該当する。算出値(中間値)算出処理のサブルーチンは、給与データ計算装置100の制御部20の給与項目算出処理部23により実行される。
(Calculated value (intermediate value) calculation process)
FIG. 14 is a flowchart illustrating an example of a subroutine for calculated value (intermediate value) calculation processing. The subroutine for the calculated value (intermediate value) calculating process corresponds to step S105 in FIG. The subroutine for the calculation value (intermediate value) calculation process is executed by the salary item
先ず、ステップS105−1では、給与項目算出処理部23は、ステップS104で選択された「算出値(中間値)」に対応する「算出式」を、算出式マスタテーブル10−8から取得する。例えば、ステップS104で選択された「算出値(中間値)」が「給与項目」“総支給額”、「条件」“給与月度 IN (従業員マスタ->入社年月日) and 従業員マスタ->日給月給区分=月給”の組合せに対応する「算出値(中間値)」“総支給額”である場合、対応する「算出式」として“$総支給額_基本給+職能給”を選択する。
First, in step S105-1, the salary item
次に、ステップS105−2では、給与項目算出処理部23は、ステップS105−1で取得した「算出式」に含まれる「算出値(中間値)項目」を取得する。「算出値(中間値)項目」とは、「算出式」に含まれる項および因子のうち、「算出値」または「中間値」に該当するものをいう。「算出式」が“$総支給額_基本給+職能給”である場合、「算出値(中間値)項目」は、“$総支給額_基本給”である。
Next, in step S105-2, the salary item
次に、ステップS105−3〜S105−8では、給与項目算出処理部23は、ステップS105−2で取得した「算出値(中間値)項目」ごとに、「算出値(中間値)項目」の格納先を取得し、取得した格納先から該当の「算出値(中間値)項目」の値を取得する。
Next, in steps S105-3 to S105-8, the salary item
ステップS105−3では、給与項目算出処理部23は、ステップS105−2で取得した「算出値(中間値)項目」のうち、未選択の「算出値(中間値)項目」を選択する。次に、ステップS105−4では、給与項目算出処理部23は、縦横記録先データテーブル10−11を参照し、ステップS105−3で選択した「算出値(中間値)項目」の格納先が横明細データテーブル10−9および縦明細データテーブル10−10のいずれであるかを取得する。
In step S105-3, the salary item
次に、ステップS105−5では、給与項目算出処理部23は、ステップS105−4で取得した「算出値(中間値)項目」の格納先が横明細データテーブル10−9であるか否かを判定する。給与項目算出処理部23は、ステップS105−4で取得した「算出値(中間値)項目」の格納先が横明細データテーブル10−9である場合(ステップS105−5Yes)、ステップS105−6へ処理を移す。一方、給与項目算出処理部23は、ステップS105−4で取得した「算出値(中間値)項目」の格納先が縦明細データテーブル10−10である場合(ステップS105−5No)、ステップS105−9へ処理を移す。
Next, in step S105-5, the salary item
ステップS105−6では、給与項目算出処理部23は、縦横記録先データテーブル10−11を参照し、ステップS105−4で取得した、格納先が横明細データテーブル10−9である「算出値(中間値)項目」の「横明細記録先」を取得する。次に、ステップS105−7では、給与項目算出処理部23は、ステップS105−6で取得した「横明細記録先」をもとに横明細データテーブル10−9を参照し、ステップS105−4で取得した「算出値(中間値)項目」に該当する値を取得する。
In step S105-6, the salary item
次に、ステップS105−8では、給与項目算出処理部23は、ステップS105−3〜S105−7の処理で、ステップS105−2で取得した全ての「算出値(中間値)項目」に該当する「算出値(中間値)」の値を取得したか否かを判定する。給与項目算出処理部23は、ステップS105−3〜S105−7の処理で、ステップS105−2で取得した全ての「算出値(中間値)項目」に該当する「算出値(中間値)」の値を取得した場合(ステップS105−8Yes)、ステップS105−10へ処理を移す。
Next, in step S105-8, the salary item
一方、給与項目算出処理部23は、ステップS105−3〜S105−7の処理で、ステップS105−2で取得した全ての「算出値(中間値)項目」に該当する「算出値(中間値)」の値を取得していない場合(ステップS105−8No)、ステップS105−3へ処理を移す。給与項目算出処理部23は、ステップS105−8から処理を移したステップS105−3において、前回の実行までに未選択の「算出値(中間値)項目」を選択する。
On the other hand, the salary item
一方、ステップS105−9では、給与項目記録処理部22は、縦明細データテーブル10−10から、ステップS105−4で取得した「算出値(中間値)項目」に該当する値を取得する。給与項目記録処理部22は、ステップS105−9が終了すると、ステップS105−10へ処理を移す。
On the other hand, in step S105-9, the salary item
次に、ステップS105−10では、給与項目算出処理部23は、ステップS105−1で取得した算出式に含まれる「マスタ参照値」を取得する。「マスタ参照値」とは、月例給与項目マスタテーブル10−1、従業員マスタテーブル10−3、給与体系マスタテーブル10−5、役職手当マスタテーブル10−6、家族手当マスタテーブル10−7の各カラムのフィールドに格納されている値をいう。
Next, in step S105-10, the salary item
次に、ステップS105−11では、給与項目算出処理部23は、ステップS105−7、S105−9、S105−10で取得した値を、ステップS105−1で取得した算出式にあてはめて計算を行い、計算結果=Aを算出する。給与項目算出処理部23は、ステップS105−11が終了すると、図13の給与項目記録処理のステップS106へ処理を移す。
Next, in step S105-11, the salary item
(縦横記録先決定処理)
以下、「給与項目」の「算出値」、および「算出値」の算出過程における「中間値」が、横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方または両方に記録されることが決定され、縦横記録先データテーブル10−11に記録先が記録される縦横記録先決定処理の実施例について説明する。
(Vertical / horizontal recording destination determination process)
Hereinafter, “calculated value” of “salary item” and “intermediate value” in the calculation process of “calculated value” are recorded in one or both of the horizontal detail data table 10-9 and the vertical detail data table 10-10. An embodiment of the vertical / horizontal recording destination determination process in which the recording destination is recorded in the vertical / horizontal recording destination data table 10-11 will be described.
縦横記録先決定処理は、給与データ計算装置100の制御部20の縦横記録先決定部21により実行される。縦横記録先決定処理は、例えば、図13および図14に示す、定例(月次もしくは所定期間を単位とする周期)の給与計算処理の前もしくは前段に実行される。もしくは、縦横記録先決定処理は、給与制度の変更等に伴う月例給与項目マスタテーブル10−1、月例給与支給データテーブル10−2、従業員マスタテーブル10−3、従業員勤怠データテーブル10−4、給与体系マスタテーブル10−5、役職手当マスタテーブル10−6、家族手当マスタテーブル10−7、算出式マスタテーブル10−8等の変更があった都度、実行されてもよい。給与制度の変更は、例えば、給与に関する項目の追加、給与の計算式の変更、給与の計算式の追加等を含む。
The vertical / horizontal recording destination determination process is executed by the vertical / horizontal recording destination determination unit 21 of the
図15は、実施例1にかかる縦横記録先決定処理の一例を示すフローチャートである。実施例1にかかる縦横記録先決定処理では、「給与項目」の「算出値(中間値)」を横明細データテーブル10−9に優先して記録し、横明細データテーブル10−9の1レコードの全てのフィールドに「算出値(中間値)」を記録した後、残りの「算出値(中間値)」を縦明細データテーブル10−10に記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。 FIG. 15 is a flowchart of an example of the vertical / horizontal recording destination determination process according to the first embodiment. In the vertical / horizontal recording destination determination process according to the first embodiment, the “calculated value (intermediate value)” of “salary item” is recorded in preference to the horizontal detail data table 10-9, and one record of the horizontal detail data table 10-9 is recorded. After the “calculated value (intermediate value)” is recorded in all the fields, it is determined that the remaining “calculated value (intermediate value)” is recorded in the vertical detail data table 10-10, and the information is stored in the vertical and horizontal recording destination data table. Register at 10-11.
先ず、ステップS11では、縦横記録先決定部21は、月例給与項目マスタテーブル10−1から給与項目一覧として、全ての「給与項目」および「計算順序」を取得する。 First, in step S11, the vertical / horizontal recording destination determination unit 21 acquires all “salary items” and “calculation order” as a salary item list from the monthly salary item master table 10-1.
次に、ステップS12〜S18では、縦横記録先決定部21は、ステップS11で取得した各「給与項目」に対応する「算出値」および「中間値」それぞれの数を、ステップS11で同時に取得した「計算順序」に従って算出する。そして、縦横記録先決定部21は、横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在し、かつ、該当の「算出値」および「中間値」の合計数が横明細データテーブル10−9のデータ記録先として未決定のフィールドの数以下である場合に、該当の「給与項目」に対応する「算出値」および「中間値」の記録先を横明細データテーブル10−9とし、その情報を縦横記録先データテーブル10−11に登録する。 Next, in steps S12 to S18, the vertical / horizontal recording destination determination unit 21 simultaneously acquires the numbers of “calculated values” and “intermediate values” corresponding to each “salary item” acquired in step S11 in step S11. Calculate according to “calculation order”. Then, the vertical / horizontal recording destination determining unit 21 has an undecided field as the data recording destination in the horizontal detailed data table 10-9, and the total number of the corresponding “calculated value” and “intermediate value” is the horizontal detailed data. When the number of fields not yet determined as the data recording destination of the table 10-9 is less than or equal to the number of fields that have been determined, the recording destination of the “calculated value” and “intermediate value” corresponding to the corresponding “salary item” is the horizontal detail data table 10-9 The information is registered in the vertical / horizontal recording destination data table 10-11.
また、縦横記録先決定部21は、横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在しない場合に、該当の「給与項目」に対応する「算出値」および「中間値」の記録先を縦明細データテーブル10−10とし、その情報を縦横記録先データテーブル10−11に登録する。ステップS12では、縦横記録先決定部21は、例えば1回目の実行の際には、月例給与項目マスタテーブル10−1から「計算順序」が“1”である「給与項目」“役職手当”を選択する。 Further, the vertical / horizontal recording destination determination unit 21 determines that the “calculated value” and “intermediate value” corresponding to the corresponding “salary item” when there is no undetermined field as the data recording destination in the horizontal detail data table 10-9. Is recorded in the vertical detail data table 10-10 and the information is registered in the vertical and horizontal recording destination data table 10-11. In step S12, the vertical / horizontal recording destination determination unit 21 obtains “salary item” “posture allowance” whose “calculation order” is “1” from the monthly salary item master table 10-1, for example, at the first execution. select.
次に、ステップS13では、縦横記録先決定部21は、算出式マスタテーブル10−8から、直前のステップS12で選択された「給与項目」に対応する「算出値」および「中間値」を全て取得する。次に、ステップS14では、縦横記録先決定部21は、ステップS13で取得した「算出値」の数=B1および「中間値」の数=B2を算出する。 Next, in step S13, the vertical / horizontal recording destination determination unit 21 determines all “calculated values” and “intermediate values” corresponding to the “salary item” selected in the immediately preceding step S12 from the calculation formula master table 10-8. get. Next, in step S14, the vertical / horizontal recording destination determination unit 21 calculates the number of “calculated values” = B1 and the number of “intermediate values” = B2 acquired in step S13.
次に、ステップS15では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大であるか(存在するか)否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大である(存在する)場合(ステップS15Yes)、ステップS16へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0である(存在しない)場合(ステップS15No)、ステップS19へ処理を移す。 Next, in step S15, the vertical / horizontal recording destination determination unit 21 determines whether or not the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (is present). To do. When the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (exists) (Yes in step S15), the vertical / horizontal recording destination determination unit 21 moves the process to step S16. On the other hand, when the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is 0 (does not exist) (No in step S15), the vertical / horizontal recording destination determination unit 21 moves the process to step S19.
ステップS16では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS14で算出した「算出値」および「中間値」の合計数=B1+B2以上か否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS14で算出した「算出値」および「中間値」の合計数=B1+B2以上である場合(ステップS16Yes)、ステップS17へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS14で算出した「算出値」および「中間値」の合計数=B1+B2未満である場合(ステップS16No)、ステップS20へ処理を移す。 In step S16, the vertical / horizontal recording destination determining unit 21 determines that the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is the total number of “calculated values” and “intermediate values” calculated in step S14. It is determined whether or not = B1 + B2 or more. The vertical / horizontal recording destination determination unit 21 determines that the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than the total number of “calculated values” and “intermediate values” calculated in step S14 = B1 + B2. If there is any (step S16 Yes), the process proceeds to step S17. On the other hand, the vertical / horizontal recording destination determination unit 21 determines that the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is the total number of “calculated values” and “intermediate values” calculated in step S14 = B1 + B2. If it is less than (No at Step S16), the process proceeds to Step S20.
なお、「横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在」とは、「横明細データテーブル10−9にデータ記録先として決定されているフィールドが所定数未満」であることをいう。同様に、「横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が所定数以上」も、「横明細データテーブル10−9にデータ記録先として決定されているフィールドが所定数未満」であることをいう。 Note that “an undecided field as a data recording destination exists in the horizontal detail data table 10-9” is “the number of fields determined as data recording destinations in the horizontal detail data table 10-9 is less than a predetermined number”. That means. Similarly, “the number of remaining fields that have not been determined as data recording destinations in the horizontal detail data table 10-9 is equal to or greater than the predetermined number” is “the field determined as the data recording destination in the horizontal detail data table 10-9 is predetermined. "Less than number".
ステップS17では、縦横記録先決定部21は、ステップS13で取得した「算出値」および「中間値」の記録先を横明細データテーブル10−9と決定して縦横記録先データテーブル10−11に登録する。 In step S17, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “calculated value” and “intermediate value” acquired in step S13 as the horizontal detail data table 10-9, and stores it in the vertical / horizontal recording destination data table 10-11. sign up.
次に、ステップS18では、縦横記録先決定部21は、ステップS11で取得した全ての「給与項目」について、ステップS12〜S22の処理を実行したか否かを判定する。縦横記録先決定部21は、ステップS11で取得した全ての「給与項目」について、ステップS12〜S22の処理を実行した場合(ステップS18Yes)、実施例1にかかる縦横記録先決定処理を終了する。一方、縦横記録先決定部21は、ステップS11で取得した全ての「給与項目」について、ステップS12〜S22の処理を実行していない場合(ステップS18No)、ステップS12へ処理を移す。縦横記録先決定部21は、ステップS18から処理を移したステップS12において、前回の実行の際に月例給与項目マスタテーブル10−1から選択した「給与項目」の次の「計算順序」の「給与項目」を選択する。 Next, in step S18, the vertical / horizontal recording destination determination unit 21 determines whether or not the processing in steps S12 to S22 has been executed for all “salary items” acquired in step S11. When the processing of steps S12 to S22 is executed for all “salary items” acquired in step S11 (Yes in step S18), the vertical and horizontal recording destination determination unit 21 ends the vertical and horizontal recording destination determination processing according to the first embodiment. On the other hand, when the processing of steps S12 to S22 is not executed for all “salary items” acquired in step S11 (No in step S18), the vertical / horizontal recording destination determination unit 21 moves the processing to step S12. The vertical / horizontal recording destination determination unit 21 moves the processing from step S18 to “salary” in “calculation order” next to “salary item” selected from the monthly salary item master table 10-1 at the previous execution in step S12. Select Item.
他方、ステップS19では、縦横記録先決定部21は、「算出値」および「中間値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。縦横記録先決定部21は、ステップS19が終了すると、ステップS18へ処理を移す。 On the other hand, in step S19, the vertical / horizontal recording destination determination unit 21 determines the recording destinations of “calculated value” and “intermediate value” as the vertical detailed data table 10-10 and registers them in the vertical / horizontal recording destination data table 10-11. The vertical / horizontal recording destination determination unit 21 moves the process to step S18 when step S19 ends.
また、ステップS20では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数がB1以上であるか否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数がB1以上である場合(ステップS20Yes)、ステップS21へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数がB1未満である場合(ステップS20No)、ステップS19へ処理を移す。 In step S20, the vertical / horizontal recording destination determination unit 21 determines whether the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than B1. When the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is B1 or more (Yes in step S20), the vertical / horizontal recording destination determination unit 21 moves the process to step S21. On the other hand, when the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is less than B1 (No in step S20), the vertical / horizontal recording destination determination unit 21 moves the process to step S19.
ステップS21では、縦横記録先決定部21は、ステップS13で取得した「算出値」の記録先を横明細データテーブル10−9と決定して縦横記録先データテーブル10−11に登録する。次に、ステップS22では、縦横記録先決定部21は、ステップS13で取得した「中間値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。縦横記録先決定部21は、ステップS22が終了すると、ステップS18へ処理を移す。 In step S21, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “calculated value” acquired in step S13 as the horizontal detail data table 10-9 and registers it in the vertical / horizontal recording destination data table 10-11. Next, in step S22, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “intermediate value” acquired in step S13 as the vertical detail data table 10-10 and registers it in the vertical / horizontal recording destination data table 10-11. . The vertical / horizontal recording destination determination unit 21 moves the process to step S18 when step S22 ends.
実施例1にかかる縦横記録先決定処理では、「給与項目」に対応する「算出値」および「中間値」に関わらず、先ず、横明細データテーブル10−9に記録すると決定する。そして、実施例1にかかる縦横記録先決定処理では、横明細データテーブル10−9のデータ記録先として未決定のフィールドが不足した場合には、「算出値」を優先的に横明細データテーブル10−9に、「中間値」を縦明細データテーブル10−10に記録すると決定する。 In the vertical / horizontal recording destination determination process according to the first embodiment, it is first determined to record in the horizontal detail data table 10-9 regardless of the “calculated value” and “intermediate value” corresponding to “salary item”. In the vertical / horizontal recording destination determination process according to the first embodiment, when there are insufficient undecided fields as data recording destinations of the horizontal detail data table 10-9, the “calculated value” is preferentially set to the horizontal detail data table 10. It is determined that “intermediate value” is recorded in the vertical detail data table 10-10 at -9.
よって、実施例1によれば、膨大な数の「算出値」または「中間値」が算出される場合であっても、RDBの処理性能の劣化を抑制しつつ、「給与項目」の「算出値」および「中間値」の数を上限なく取り扱って給与データの算出を行うことができる。 Therefore, according to the first embodiment, even when a large number of “calculated values” or “intermediate values” are calculated, the “calculation” of “salary item” is suppressed while suppressing the deterioration of the processing performance of the RDB. Salary data can be calculated by handling the number of “values” and “intermediate values” without any upper limit.
(実施例1の変形例)
実施例1にかかる縦横記録先決定処理において、ステップS21とステップS22とは、処理順序を入れ替えてもよい。
(Modification of Example 1)
In the vertical / horizontal recording destination determination process according to the first embodiment, the processing order of step S21 and step S22 may be interchanged.
また、上述のステップS20では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が「算出値」の数=B1以上である場合にのみ、「算出値」の記録先を横明細データテーブル10−9と決定する。しかし、これに限られず、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が「算出値」の数=B1未満の場合、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数の全てを「算出値」の記録先とし、横明細データテーブル10−9に記録し切れない残りの「算出値」の記録先を縦明細データテーブル10−10と決定してもよい。 In step S20 described above, the vertical / horizontal recording destination determining unit 21 only when the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than the number of “calculated values” = B1. The recording destination of the “calculated value” is determined as the horizontal detail data table 10-9. However, the present invention is not limited to this, and the vertical / horizontal recording destination determination unit 21 determines the horizontal detailed data when the remaining number of fields yet to be determined as the data recording destination of the horizontal detailed data table 10-9 is less than the number of “calculated values” = B1. All of the remaining number of undecided fields as the data recording destination of the table 10-9 are set as “calculated value” recording destinations, and the remaining “calculated value” recording destinations that cannot be recorded in the horizontal detail data table 10-9 are recorded. The vertical detail data table 10-10 may be determined.
また、ステップS20では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数がB1以上であるか否かを判定し、ステップS21で「算出値」の記録先を横明細データテーブル10−9と決定し、ステップS22で「中間値」の記録先を縦明細データテーブル10−10と決定する。しかし、これに限られず、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数がB2以上であるか否かを判定し、「算出値」の記録先を縦明細データテーブル10−10と決定し、「中間値」の記録先を横明細データテーブル10−9と決定してもよい。 In step S20, the vertical / horizontal recording destination determination unit 21 determines whether or not the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than B1, and in step S21, “calculation”. The recording destination of “value” is determined as the horizontal detail data table 10-9, and the recording destination of “intermediate value” is determined as the vertical detail data table 10-10 in step S22. However, the present invention is not limited to this, and the vertical / horizontal recording destination determination unit 21 determines whether or not the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than B2, and “calculated value”. May be determined as the vertical detail data table 10-10, and the recording destination of “intermediate value” may be determined as the horizontal detail data table 10-9.
図16は、実施例2にかかる縦横記録先決定処理の一例を示すフローチャートである。実施例1にかかる縦横記録先決定処理では、「給与項目」の「算出値」を横明細データテーブル10−9に優先して記録し、「中間値」を縦明細データテーブル10−10に記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。そして、縦横記録先決定部21は、横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在しなくなった場合には、「算出値」および「中間値」ともに縦明細データテーブル10−10に記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。 FIG. 16 is a flowchart of an example of the vertical / horizontal recording destination determination process according to the second embodiment. In the vertical / horizontal recording destination determination process according to the first embodiment, the “calculated value” of “salary item” is recorded preferentially in the horizontal detail data table 10-9, and the “intermediate value” is recorded in the vertical detail data table 10-10. Then, the information is determined and the information is registered in the vertical / horizontal recording destination data table 10-11. The vertical / horizontal recording destination determining unit 21 then determines that both the “calculated value” and the “intermediate value” are stored in the vertical detailed data table 10 when there is no more undecided field as the data recording destination in the horizontal detailed data table 10-9. It is determined to be recorded in −10, and the information is registered in the vertical / horizontal recording destination data table 10-11.
実施例2にかかる縦横記録先決定処理におけるステップS31〜S33ぞれぞれは、実施例1にかかる縦横記録先決定処理のステップS11〜S13と同様である。ステップS32〜S38では、縦横記録先決定部21は、ステップS31で取得した各「給与項目」に対応する「算出値」および「中間値」のうち、「算出値」を横明細データテーブル10−9に記録し、「中間値」を縦明細データテーブル10−10に記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。そして、縦横記録先決定部21は、横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在しなくなった場合には、「算出値」も縦明細データテーブル10−10に記録するとし、その情報を縦横記録先データテーブル10−11に登録する。 Steps S31 to S33 in the vertical and horizontal recording destination determination processing according to the second embodiment are the same as steps S11 to S13 of the vertical and horizontal recording destination determination processing according to the first embodiment. In steps S32 to S38, the vertical / horizontal recording destination determination unit 21 sets the “calculated value” among the “calculated value” and “intermediate value” corresponding to each “salary item” acquired in step S31. 9, it is determined that the “intermediate value” is recorded in the vertical detail data table 10-10, and the information is registered in the vertical and horizontal recording destination data table 10-11. The vertical / horizontal recording destination determination unit 21 records the “calculated value” in the vertical detail data table 10-10 when there is no longer an undetermined field as the data recording destination in the horizontal detail data table 10-9. Then, the information is registered in the vertical / horizontal recording destination data table 10-11.
ステップS34では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大であるか(存在するか)否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大である(存在する)場合(ステップS34Yes)、ステップS35へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0である(存在しない)場合(ステップS34No)、ステップS38へ処理を移す。 In step S34, the vertical / horizontal recording destination determination unit 21 determines whether or not the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (is present). When the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (exists) (Yes in step S34), the vertical / horizontal recording destination determination unit 21 moves the process to step S35. On the other hand, when the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is 0 (does not exist) (No in step S34), the vertical / horizontal recording destination determination unit 21 moves the process to step S38.
ステップS35では、縦横記録先決定部21は、ステップS33で取得した「算出値」の記録先を横明細データテーブル10−9と決定して縦横記録先データテーブル10−11に登録する。次に、ステップS36では、縦横記録先決定部21は、ステップS33で取得した「中間値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。 In step S <b> 35, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “calculated value” acquired in step S <b> 33 as the horizontal detail data table 10-9 and registers it in the vertical / horizontal recording destination data table 10-11. Next, in step S36, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “intermediate value” acquired in step S33 as the vertical detail data table 10-10 and registers it in the vertical / horizontal recording destination data table 10-11. .
次に、ステップS37では、縦横記録先決定部21は、ステップS31で取得した全ての「給与項目」について、ステップS32〜S38の処理を実行したか否かを判定する。縦横記録先決定部21は、ステップS31で取得した全ての「給与項目」について、ステップS32〜S38の処理を実行した場合(ステップS37Yes)、実施例2にかかる縦横記録先決定処理を終了する。 Next, in step S37, the vertical / horizontal recording destination determination unit 21 determines whether or not the processing in steps S32 to S38 has been executed for all “salary items” acquired in step S31. When the processing of steps S32 to S38 is executed for all “salary items” acquired in step S31 (Yes in step S37), the vertical / horizontal recording destination determination unit 21 ends the vertical / horizontal recording destination determination processing according to the second embodiment.
一方、縦横記録先決定部21は、ステップS31で取得した全ての「給与項目」について、ステップS32〜S38の処理を実行していない場合(ステップS37No)ステップS32へ処理を移す。縦横記録先決定部21は、ステップS37から処理を移したステップS32において、前回の実行の際に月例給与項目マスタテーブル10−1から選択した「給与項目」の次の「計算順序」の「給与項目」を選択する。 On the other hand, when the processing of steps S32 to S38 is not executed for all “salary items” acquired in step S31 (No in step S37), the vertical / horizontal recording destination determination unit 21 moves the processing to step S32. The vertical / horizontal recording destination determination unit 21 moves the processing from step S37 to “salary” of “calculation order” next to “salary item” selected from the monthly salary item master table 10-1 at the previous execution in step S32. Select Item.
他方、ステップS38では、縦横記録先決定部21は、「算出値」および「中間値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。ステップS38が終了すると、縦横記録先決定部21は、ステップS37へ処理を移す。 On the other hand, in step S38, the vertical / horizontal recording destination determination unit 21 determines the recording destination of “calculated value” and “intermediate value” as the vertical detail data table 10-10 and registers it in the vertical / horizontal recording destination data table 10-11. When step S38 ends, the vertical / horizontal recording destination determination unit 21 moves the process to step S37.
実施例2にかかる縦横記録先決定処理では、「給与項目」に対応する「算出値」を横明細データテーブル10−9に記録すると決定し、「中間値」を縦明細データテーブル10−10に記録すると決定する。そして、実施例2にかかる縦横記録先決定処理では、横明細データテーブル10−9のデータ記録先として未決定のフィールドが不足した場合には、「算出値」も縦明細データテーブル10−10に記録すると決定する。 In the vertical / horizontal recording destination determination process according to the second embodiment, it is determined that the “calculated value” corresponding to the “salary item” is recorded in the horizontal detailed data table 10-9, and the “intermediate value” is stored in the vertical detailed data table 10-10. Decide to record. In the vertical / horizontal recording destination determination process according to the second embodiment, when the undecided field is insufficient as the data recording destination of the horizontal detailed data table 10-9, the “calculated value” is also stored in the vertical detailed data table 10-10. Decide to record.
よって、実施例2によれば、膨大な数の「中間値」が算出される場合であっても、RDBの処理性能の劣化を抑制しつつ、「給与項目」の「算出値」および「中間値」の数を上限なく取り扱って給与データの算出を行うことができる。 Therefore, according to the second embodiment, even when a huge number of “intermediate values” are calculated, the “calculated value” and “intermediate” of the “salary item” are suppressed while suppressing the deterioration of the processing performance of the RDB. Salary data can be calculated by handling the number of “values” without any upper limit.
(実施例2の変形例)
実施例2にかかる縦横記録先決定処理において、ステップS35とステップS36とは、処理順序を入れ替えてもよい。
(Modification of Example 2)
In the vertical / horizontal recording destination determination process according to the second embodiment, the processing order of step S35 and step S36 may be interchanged.
図17は、実施例3にかかる縦横記録先決定処理の一例を示すフローチャートである。実施例3にかかる縦横記録先決定処理では、「給与項目」の「中間値」を横明細データテーブル10−10に優先して記録し、「算出値」を縦明細データテーブル10−9に記録すると決定する。 FIG. 17 is a flowchart of an example of vertical / horizontal recording destination determination processing according to the third embodiment. In the vertical / horizontal recording destination determination process according to the third embodiment, “intermediate value” of “salary item” is preferentially recorded in the horizontal detail data table 10-10, and “calculated value” is recorded in the vertical detail data table 10-9. Then decide.
実施例3にかかる縦横記録先決定処理におけるステップS41〜S43のぞれぞれは、実施例1にかかる縦横記録先決定処理のステップS11〜S13と同様である。ステップS42〜S52では、縦横記録先決定部21は、ステップS41で取得した各「給与項目」に対応する「算出値」および「中間値」のうち、「算出値」を縦明細データテーブル10−10に記録し、「中間値」を横明細データテーブル10−9に記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。そして、縦横記録先決定部21は、横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在しなくなった場合には、「算出値」および「中間値」ともに縦明細データテーブル10−10に記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。 Steps S41 to S43 in the vertical and horizontal recording destination determination process according to the third embodiment are the same as steps S11 to S13 of the vertical and horizontal recording destination determination process according to the first embodiment. In steps S42 to S52, the vertical / horizontal recording destination determining unit 21 sets the “calculated value” among the “calculated value” and “intermediate value” corresponding to each “salary item” acquired in step S41. 10, it is determined that the “intermediate value” is recorded in the horizontal detail data table 10-9, and the information is registered in the vertical and horizontal recording destination data table 10-11. The vertical / horizontal recording destination determining unit 21 then determines that both the “calculated value” and the “intermediate value” are stored in the vertical detailed data table 10 when there is no more undecided field as the data recording destination in the horizontal detailed data table 10-9. It is determined to be recorded in −10, and the information is registered in the vertical / horizontal recording destination data table 10-11.
ステップS44では、縦横記録先決定部21は、ステップS43で取得した「中間値」の数=Cを算出する。次に、ステップS45では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大であるか(存在するか)否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大である(存在する)場合(ステップS45Yes)、ステップS46へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0である(存在しない)場合(ステップS45No)、ステップS52へ処理を移す。 In step S44, the vertical / horizontal recording destination determination unit 21 calculates the number of “intermediate values” acquired in step S43 = C. Next, in step S45, the vertical / horizontal recording destination determination unit 21 determines whether or not the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (is present). To do. When the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (exists) (Yes in step S45), the vertical / horizontal recording destination determination unit 21 moves the process to step S46. On the other hand, when the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is 0 (does not exist) (No in step S45), the vertical / horizontal recording destination determination unit 21 moves the process to step S52.
次に、ステップS46では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS44で算出した「中間値」の数=C以上か否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS44で算出した「中間値」の合計数=C以上である場合(ステップS46Yes)、ステップS47へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS44で算出した「中間値」の数=C未満である場合(ステップS46No)、ステップS50へ処理を移す。 Next, in step S46, the vertical / horizontal recording destination determination unit 21 determines that the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than the number of “intermediate values” calculated in step S44 = C. It is determined whether or not. The vertical / horizontal recording destination determination unit 21 determines that the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than the total number of “intermediate values” calculated in step S44 = Yes (step S46 Yes). ), And the process proceeds to step S47. On the other hand, the vertical / horizontal recording destination determination unit 21 determines that the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is less than the number of “intermediate values” calculated in step S44 = C (step S44). (S46 No), the process proceeds to step S50.
ステップS47では、縦横記録先決定部21は、ステップS43で取得した「中間値」の記録先を横明細データテーブル10−9と決定して縦横記録先データテーブル10−11に登録する。次に、ステップS48では、縦横記録先決定部21は、ステップS43で取得した「算出値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。縦横記録先決定部21は、ステップS48が終了すると、ステップS49へ処理を移す。 In step S47, the vertical / horizontal recording destination determining unit 21 determines the recording destination of the “intermediate value” acquired in step S43 as the horizontal detail data table 10-9 and registers it in the vertical / horizontal recording destination data table 10-11. Next, in step S48, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “calculated value” acquired in step S43 as the vertical detail data table 10-10 and registers it in the vertical / horizontal recording destination data table 10-11. . The vertical / horizontal recording destination determination unit 21 moves the process to step S49 when step S48 ends.
次に、ステップS49では、縦横記録先決定部21は、ステップS41で取得した全ての「給与項目」について、ステップS42〜S48、S50〜S52の処理を実行したか否かを判定する。縦横記録先決定部21は、テップS41で取得した全ての「給与項目」について、ステップS42〜S48、S50〜S52の処理を実行した場合(ステップS49Yes)、実施例3にかかる縦横記録先決定処理を終了する。一方、縦横記録先決定部21は、ステップS41で取得した全ての「給与項目」について、ステップS42〜S48、S50〜S52の処理を実行していない場合(ステップS49No)、ステップS42へ処理を移す。縦横記録先決定部21は、ステップS49から処理を移したステップS42において、前回の実行の際に月例給与項目マスタテーブル10−1から選択した「給与項目」の次の「計算順序」の「給与項目」を選択する。 Next, in step S49, the vertical / horizontal recording destination determination unit 21 determines whether or not the processes of steps S42 to S48 and S50 to S52 have been executed for all “salary items” acquired in step S41. When the processing of steps S42 to S48 and S50 to S52 is executed for all “salary items” acquired in step S41 (Yes in step S49), the vertical and horizontal recording destination determination unit 21 performs vertical and horizontal recording destination determination processing according to the third embodiment. Exit. On the other hand, when the processing of steps S42 to S48 and S50 to S52 is not executed for all “salary items” acquired in step S41 (No in step S49), the vertical / horizontal recording destination determination unit 21 moves the process to step S42. . The vertical / horizontal recording destination determination unit 21 moves the processing from step S49 to “salary” of “calculation order” next to “salary item” selected from the monthly salary item master table 10-1 at the previous execution in step S42. Select Item.
一方、ステップS50では、縦横記録先決定部21は、ステップS43で取得した「中間値」の記録先を、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数分だけ横明細データテーブル10−9に記録すると決定して縦横記録先データテーブル10−11に登録する。次に、ステップS51では、縦横記録先決定部21は、ステップS43で取得した「中間値」のうち、ステップS50で記録先が登録されなかった「中間値」の記録先を、縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。縦横記録先決定部21は、ステップS51が終了すると、ステップS48へ処理を移す。 On the other hand, in step S50, the vertical / horizontal recording destination determination unit 21 sets the recording destination of “intermediate value” acquired in step S43 by the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9. It is determined to be recorded in the detail data table 10-9 and registered in the vertical / horizontal recording destination data table 10-11. Next, in step S51, the vertical / horizontal recording destination determination unit 21 sets the recording destination of the “intermediate value” that is not registered in step S50 among the “intermediate values” acquired in step S43, to the vertical detailed data table. 10-10 is registered and registered in the vertical / horizontal recording destination data table 10-11. The vertical / horizontal recording destination determination unit 21 moves the process to step S48 when step S51 ends.
他方、ステップS52では、縦横記録先決定部21は、「算出値」および「中間値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。ステップS52が終了すると、縦横記録先決定部21は、ステップS49へ処理を移す。 On the other hand, in step S52, the vertical / horizontal recording destination determination unit 21 determines the recording destination of “calculated value” and “intermediate value” as the vertical detail data table 10-10 and registers it in the vertical / horizontal recording destination data table 10-11. When step S52 ends, the vertical / horizontal recording destination determination unit 21 moves the process to step S49.
実施例3にかかる縦横記録先決定処理では、「給与項目」に対応する「中間値」を横明細データテーブル10−9に記録すると決定し、「算出値」を縦明細データテーブル10−10に記録すると決定する。そして、実施例3にかかる縦横記録先決定処理では、横明細データテーブル10−9のデータ記録先として未決定のフィールドが不足した場合には、「中間値」も縦明細データテーブル10−10に記録すると決定する。 In the vertical / horizontal recording destination determination process according to the third embodiment, it is determined that “intermediate value” corresponding to “salary item” is recorded in the horizontal detail data table 10-9, and “calculated value” is stored in the vertical detail data table 10-10. Decide to record. In the vertical / horizontal recording destination determination process according to the third embodiment, when an undecided field is insufficient as the data recording destination of the horizontal detailed data table 10-9, the “intermediate value” is also stored in the vertical detailed data table 10-10. Decide to record.
よって、実施例3によれば、膨大な数の「中間値」が算出される場合であっても、RDBの処理性能の劣化を抑制しつつ、「給与項目」の「算出値」および「中間値」の数を上限なく取り扱って給与データの算出を行うことができる。また、実施例3によれば、アクセス効率が比較的よい横明細データテーブル10−9に「中間値」を記録することから、例えば「算出値」の検算や「算出値」の算出基礎の変更等にかかる「算出値」の再計算の際に、効率的に処理を実行することができる。 Therefore, according to the third embodiment, even when a huge number of “intermediate values” are calculated, the “calculated value” and “intermediate” of the “salary item” are suppressed while suppressing the deterioration of the processing performance of the RDB. Salary data can be calculated by handling the number of “values” without any upper limit. In addition, according to the third embodiment, since “intermediate value” is recorded in the horizontal detailed data table 10-9 with relatively good access efficiency, for example, calculation of “calculated value” or change of calculation basis of “calculated value” is changed. In the recalculation of the “calculated value” related to the process, the process can be executed efficiently.
(実施例3の変形例)
上述のステップS50〜S51では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が「中間値」の数=C未満の場合、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数の全てを「中間値」の記録先とし、横明細データテーブル10−9に記録し切れない残りの「中間値」の記録先を縦明細データテーブル10−10と決定する。しかし、これに限られず、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が「中間値」の数=C以上である場合にのみ、「中間値」の記録先を横明細データテーブル10−9と決定してもよい。
(Modification of Example 3)
In steps S50 to S51 described above, the vertical / horizontal recording destination determining unit 21 determines the horizontal specification when the remaining number of fields that have not been determined as the data recording destination of the horizontal detailed data table 10-9 is less than the number of “intermediate values” = C. All the remaining number of undecided fields as data recording destinations of the data table 10-9 are set as “intermediate value” recording destinations, and the remaining “intermediate value” recording destinations that cannot be recorded in the horizontal detail data table 10-9. Is determined as the vertical detail data table 10-10. However, the present invention is not limited to this, and the vertical / horizontal recording destination determination unit 21 only when the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than the number of “intermediate values” = C. The recording destination of the “intermediate value” may be determined as the horizontal detail data table 10-9.
また、実施例3にかかる縦横記録先決定処理において、ステップS47とステップS48とは、処理順序を入れ替えてもよい。 Further, in the vertical / horizontal recording destination determination process according to the third embodiment, step S47 and step S48 may be interchanged in processing order.
図18は、実施例4にかかる縦横記録先決定処理の一例を示すフローチャートである。実施例4にかかる縦横記録先決定処理では、先ず、「給与項目」の「算出値」および「中間値」を横明細データテーブル10−9に優先して記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。そして、縦横記録先決定部21は、横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在しなくなった際に記録対象の新たな「算出値」が算出された場合には、横明細データテーブル10−9に記録されている1以上の「中間値」を縦明細データテーブル10−10に移動させる。そして、縦横記録先決定部21は、移動させた「中間値」が記録されていた横明細データテーブル10−9のフィールドに新たな「算出値」を記録すると決定し、それらの情報を縦横記録先データテーブル10−11に登録する。 FIG. 18 is a flowchart of an example of vertical / horizontal recording destination determination processing according to the fourth embodiment. In the vertical and horizontal recording destination determination processing according to the fourth embodiment, first, it is determined that “calculated value” and “intermediate value” of “salary item” are recorded with priority in the horizontal detail data table 10-9, and the information is recorded vertically and horizontally. Register in the destination data table 10-11. The vertical / horizontal recording destination determining unit 21 calculates a new “calculated value” to be recorded when no undecided field exists as a data recording destination in the horizontal detail data table 10-9. One or more “intermediate values” recorded in the horizontal detail data table 10-9 are moved to the vertical detail data table 10-10. Then, the vertical / horizontal recording destination determination unit 21 determines to record a new “calculated value” in the field of the horizontal detailed data table 10-9 in which the moved “intermediate value” is recorded, and records the information in the vertical / horizontal recording mode. Register in the destination data table 10-11.
実施例4にかかる縦横記録先決定処理におけるステップS61〜S63ぞれぞれは、実施例1にかかる縦横記録先決定処理のステップS11〜S13と同様である。ステップS62〜S68では、縦横記録先決定部21は、ステップS61で取得した各「給与項目」に対応する「算出値」および「中間値」の両方を横明細データテーブル10−9に優先して記録すると決定し、その情報を縦横記録先データテーブル10−11に登録する。そして、縦横記録先決定部21は、横明細データテーブル10−9にデータ記録先として未決定のフィールドが存在しなくなった場合には、「算出値」も縦明細データテーブル10−10に記録するとし、その情報を縦横記録先データテーブル10−11に登録する。 Steps S61 to S63 in the vertical and horizontal recording destination determination processing according to the fourth embodiment are the same as steps S11 to S13 of the vertical and horizontal recording destination determination processing according to the first embodiment. In steps S62 to S68, the vertical / horizontal recording destination determination unit 21 prioritizes both the “calculated value” and “intermediate value” corresponding to each “salary item” acquired in step S61 over the horizontal detail data table 10-9. It is determined to be recorded, and the information is registered in the vertical / horizontal recording destination data table 10-11. The vertical / horizontal recording destination determination unit 21 records the “calculated value” in the vertical detail data table 10-10 when there is no longer an undetermined field as the data recording destination in the horizontal detail data table 10-9. Then, the information is registered in the vertical / horizontal recording destination data table 10-11.
ステップS64では、縦横記録先決定部21は、ステップS63で取得した「算出値」および「中間値」の合計数=Dを算出する。次に、ステップS65では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大であるか(存在するか)否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0より大である(存在する)場合(ステップS65Yes)、ステップS66へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が0である(存在しない)場合(ステップS65No)、ステップS69へ処理を移す。 In step S64, the vertical / horizontal recording destination determination unit 21 calculates the total number of “calculated values” and “intermediate values” acquired in step S63 = D. Next, in step S65, the vertical / horizontal recording destination determination unit 21 determines whether or not the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (is present). To do. When the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is greater than 0 (exists) (Yes in step S65), the vertical / horizontal recording destination determination unit 21 moves the process to step S66. On the other hand, when the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is 0 (does not exist) (No in step S65), the vertical / horizontal recording destination determination unit 21 moves the process to step S69.
次に、ステップS66では、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS64で算出した「算出値」および「中間値」の合計数=D以上か否かを判定する。縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS64で算出した「算出値」および「中間値」の合計数=D以上である場合(ステップS66Yes)、ステップS67へ処理を移す。一方、縦横記録先決定部21は、横明細データテーブル10−9のデータ記録先として未決定のフィールドの残数が、ステップS64で算出した「算出値」および「中間値」の合計数=D未満である場合(ステップS66No)、ステップS71へ処理を移す。 Next, in step S66, the vertical / horizontal recording destination determination unit 21 determines that the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is the “calculated value” and “intermediate value” calculated in step S64. It is determined whether or not the total number is equal to or greater than D. The vertical / horizontal recording destination determination unit 21 determines that the remaining number of undecided fields as the data recording destination of the horizontal detail data table 10-9 is equal to or greater than the total number of “calculated values” and “intermediate values” calculated in step S64 = D. If there is any (step S66 Yes), the process proceeds to step S67. On the other hand, the vertical / horizontal recording destination determination unit 21 determines that the remaining number of fields that have not been determined as the data recording destination of the horizontal detail data table 10-9 is the total number of “calculated values” and “intermediate values” calculated in step S64 = D. If it is less than (No at step S66), the process proceeds to step S71.
次に、ステップS68では、縦横記録先決定部21は、ステップS61で取得した全ての「給与項目」について、ステップS62〜S67、S69〜S73の処理を実行したか否かを判定する。縦横記録先決定部21は、ステップS61で取得した全ての「給与項目」について、ステップS62〜S67、S69〜S73の処理を実行した場合(ステップS68Yes)、実施例4にかかる縦横記録先決定処理を終了する。 Next, in step S68, the vertical / horizontal recording destination determination unit 21 determines whether or not the processes of steps S62 to S67 and S69 to S73 have been executed for all “salary items” acquired in step S61. When the processing of steps S62 to S67 and S69 to S73 is executed for all “salary items” acquired in step S61 (step S68 Yes), the vertical and horizontal recording destination determination unit 21 performs vertical and horizontal recording destination determination processing according to the fourth embodiment. Exit.
一方、縦横記録先決定部21は、ステップS61で取得した全ての「給与項目」について、ステップS62〜S67、S69〜S73の処理を実行していない場合(ステップS68No)、ステップS62へ処理を移す。縦横記録先決定部21は、ステップS68から処理を移したステップS62において、前回の実行の際に月例給与項目マスタテーブル10−1から選択した「給与項目」の次の「計算順序」の「給与項目」を選択する。 On the other hand, when the processes of steps S62 to S67 and S69 to S73 are not executed for all “salary items” acquired in step S61 (No in step S68), the vertical / horizontal recording destination determination unit 21 moves the process to step S62. . The vertical / horizontal recording destination determination unit 21 moves the processing from step S68 to “salary” in “calculation order” next to “salary item” selected from the monthly salary item master table 10-1 at the previous execution in step S62. Select Item.
他方、ステップS69では、縦横記録先決定部21は、記録先が横明細データテーブル10−9として登録されている「中間値」が縦横記録先データテーブル10−11に存在するか否かを判定する。縦横記録先決定部21は、記録先が横明細データテーブル10−9として登録されている「中間値」が縦横記録先データテーブル10−11に存在する場合(ステップS69Yes)、ステップS70へ処理を移す。一方、縦横記録先決定部21は、記録先が横明細データテーブル10−9として登録されている「中間値」が縦横記録先データテーブル10−11に存在しない場合(ステップS69No)、ステップS73へ処理を移す。 On the other hand, in step S69, the vertical / horizontal recording destination determination unit 21 determines whether or not the “intermediate value” whose recording destination is registered as the horizontal detail data table 10-9 exists in the vertical / horizontal recording destination data table 10-11. To do. When the “intermediate value” whose recording destination is registered as the horizontal detailed data table 10-9 exists in the vertical / horizontal recording destination data table 10-11 (Yes in step S69), the vertical / horizontal recording destination determination unit 21 performs the process to step S70. Move. On the other hand, when the “intermediate value” whose recording destination is registered as the horizontal detail data table 10-9 does not exist in the vertical / horizontal recording destination data table 10-11 (No in step S69), the vertical / horizontal recording destination determination unit 21 proceeds to step S73. Move processing.
次に、ステップS70では、縦横記録先決定部21は、縦縦横記録先データテーブル10−11において、記録先が横明細データテーブル10−9として登録されている「中間値」のいずれか1つの記録先の登録を、縦明細データテーブル10−10へ変更する。この結果、縦横記録先データテーブル10−11において、記録先として登録可能な横明細データテーブル10−9のフィールドが1つ分だけ確保される。 In step S70, the vertical / horizontal recording destination determination unit 21 selects any one of “intermediate values” in which the recording destination is registered as the horizontal detailed data table 10-9 in the vertical / horizontal recording destination data table 10-11. The registration of the recording destination is changed to the vertical detail data table 10-10. As a result, in the vertical / horizontal recording destination data table 10-11, only one field of the horizontal detailed data table 10-9 that can be registered as a recording destination is secured.
次に、ステップS71では、縦横記録先決定部21は、ステップS63で取得した「算出値」の記録先を横明細データテーブル10−9と決定して縦横記録先データテーブル10−11に登録する。ステップS71では、ステップS70の後の実行であれば、「中間値」の記録先が横明細データテーブル10−9から縦明細データテーブル10−10へ変更されて確保された横明細データテーブル10−9のフィールドが、新たな「算出値」の記録先として登録されることになる。 Next, in step S71, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “calculated value” acquired in step S63 as the horizontal detail data table 10-9 and registers it in the vertical / horizontal recording destination data table 10-11. . In step S71, if execution is after step S70, the storage destination of “intermediate value” is changed from the horizontal detailed data table 10-9 to the vertical detailed data table 10-10, and the horizontal detailed data table 10- secured. Nine fields are registered as recording destinations of new “calculated values”.
次に、ステップS72では、縦横記録先決定部21は、ステップS63で取得した「中間値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。縦横記録先決定部21は、ステップS72が終了すると、ステップS68へ処理を移す。 Next, in step S72, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “intermediate value” acquired in step S63 as the vertical detail data table 10-10 and registers it in the vertical / horizontal recording destination data table 10-11. . The vertical / horizontal recording destination determination unit 21 moves the process to step S68 when step S72 ends.
他方、ステップS73では、縦横記録先決定部21は、ステップS63で取得した「算出値」および「中間値」の記録先を縦明細データテーブル10−10と決定して縦横記録先データテーブル10−11に登録する。縦横記録先決定部21は、ステップS73が終了すると、ステップS68へ処理を移す。 On the other hand, in step S73, the vertical / horizontal recording destination determination unit 21 determines the recording destination of the “calculated value” and “intermediate value” acquired in step S63 as the vertical detail data table 10-10, and the vertical / horizontal recording destination data table 10-. 11 is registered. The vertical / horizontal recording destination determination unit 21 moves the process to step S68 when step S73 ends.
実施例4にかかる縦横記録先決定処理では、「給与項目」に対応する「算出値」および「中間値」を横明細データテーブル10−9に記録すると決定する。そして、実施例4にかかる縦横記録先決定処理では、横明細データテーブル10−9のデータ記録先として未決定のフィールドが不足した場合には、既に記録先が横明細データテーブル10−9として決定済の「中間値」の記録先を、縦明細データテーブル10−10に変更すると決定し、新たな「算出値」を、確保された横明細データテーブル10−9のフィールドに記録する。 In the vertical / horizontal recording destination determination process according to the fourth embodiment, it is determined that “calculated value” and “intermediate value” corresponding to “salary item” are recorded in the horizontal detail data table 10-9. In the vertical / horizontal recording destination determination process according to the fourth embodiment, when the field that has not been determined as the data recording destination of the horizontal detail data table 10-9 is insufficient, the recording destination is already determined as the horizontal detail data table 10-9. It is determined that the recording destination of the completed “intermediate value” is changed to the vertical detail data table 10-10, and a new “calculated value” is recorded in the field of the secured horizontal detail data table 10-9.
よって、実施例4によれば、「算出値」を優先的に横明細データテーブル10−9に記録してもなお横明細データテーブル10−9に余裕がある場合に、一部または全部の「中間値」を横明細データテーブル10−9に記録することができる。よって、「算出値」および「中間値」の記録効率の両立を図ることができる。 Therefore, according to the fourth embodiment, when the “calculated value” is preferentially recorded in the horizontal detailed data table 10-9 and there is still room in the horizontal detailed data table 10-9, a part or all of “ The “intermediate value” can be recorded in the horizontal detail data table 10-9. Therefore, it is possible to achieve both the recording efficiency of “calculated value” and “intermediate value”.
(実施例4の変形例)
上述のステップS70では、縦横記録先決定部21は、縦横記録先データテーブル10−11において、横明細データテーブル10−9から縦明細データテーブル10−10へ記録先を変更する対象の「中間値」は、予め付与されている優先度に応じて決定してもよい。すなわち、上述のステップS70では、縦横記録先決定部21は、縦横記録先データテーブル10−11において、横明細データテーブル10−9から縦明細データテーブル10−10へ、優先度が最も低い「中間値」を記録先を変更する対象として決定してもよい。
(Modification of Example 4)
In step S70 described above, the vertical / horizontal recording destination determination unit 21 selects the “intermediate value” of the target whose recording destination is to be changed from the horizontal detailed data table 10-9 to the vertical detailed data table 10-10 in the vertical / horizontal recording destination data table 10-11. "May be determined according to the priority assigned in advance. That is, in the above-described step S70, the vertical / horizontal recording destination determining unit 21 in the vertical / horizontal recording destination data table 10-11 has the lowest priority from the horizontal detail data table 10-9 to the vertical detail data table 10-10. The “value” may be determined as a target to change the recording destination.
また、上述のステップS70では、縦横記録先決定部21は、縦横記録先データテーブル10−11において、記録先が横明細データテーブル10−9として登録されている「中間値」のいずれか1つの記録先を、縦明細データテーブル10−10へ変更する。しかし、これに限られず、縦横記録先決定部21は、縦横記録先データテーブル10−11において、記録先が横明細データテーブル10−9として登録されている「中間値」の複数の記録先を、縦明細データテーブル10−10へ変更するとしてもよい。 In step S70 described above, the vertical / horizontal recording destination determining unit 21 selects any one of “intermediate values” in which the recording destination is registered as the horizontal detailed data table 10-9 in the vertical / horizontal recording destination data table 10-11. The recording destination is changed to the vertical detail data table 10-10. However, the present invention is not limited to this, and the vertical / horizontal recording destination determination unit 21 selects a plurality of “intermediate value” recording destinations whose recording destinations are registered as the horizontal detailed data table 10-9 in the vertical / horizontal recording destination data table 10-11. The vertical detail data table 10-10 may be changed.
また、実施例4にかかる縦横記録先決定処理において、ステップS71とステップS72とは、処理順序を入れ替えてもよい。 In the vertical / horizontal recording destination determination process according to the fourth embodiment, the processing order of step S71 and step S72 may be interchanged.
(その他の実施形態)
以上、実施例1〜4を含む実施形態について説明したが、開示技術は上述した実施例1〜4を含む実施形態以外にも、種々の異なる形態にて実施されてよい。そこで、以下にその他の実施形態を説明する。
(Other embodiments)
The embodiments including Examples 1 to 4 have been described above, but the disclosed technology may be implemented in various different forms other than the embodiments including Examples 1 to 4 described above. Therefore, other embodiments will be described below.
上述の実施例1〜4を含む実施形態では、「算出値」を横明細データテーブル10−9および縦明細データテーブル10−10のいずれか一方に記録する。しかし、これに限られず、「算出値」を横明細データテーブル10−9および縦明細データテーブル10−10の両方に記録してもよい。例えば、「給与項目」が“その他支給”や“その他控除”である場合、縦明細データテーブル10−10にその内訳として「中間値」を記録するが、内訳として重要度が高いとする「中間値」を、縦明細データテーブル10−10とともに、横明細データテーブル10−9にも記録してもよい。このようにすることで、「中間値」であっても、重要な「中間値」は、横明細データテーブル10−9を参照して迅速に取得することができる。 In the embodiment including Examples 1 to 4 described above, the “calculated value” is recorded in either the horizontal detail data table 10-9 or the vertical detail data table 10-10. However, the present invention is not limited to this, and the “calculated value” may be recorded in both the horizontal detailed data table 10-9 and the vertical detailed data table 10-10. For example, if the “salary item” is “other payments” or “other deductions”, “intermediate value” is recorded as a breakdown in the vertical detail data table 10-10, but “intermediate” is assumed to have high importance as the breakdown. The “value” may be recorded in the horizontal detail data table 10-9 together with the vertical detail data table 10-10. In this way, even if it is an “intermediate value”, an important “intermediate value” can be quickly acquired with reference to the horizontal detailed data table 10-9.
(ハードウェアおよび給与データ計算プログラム)
図19は、給与データ計算プログラムを実行するコンピュータを示す図である。図19は、図1等に示す給与データ計算装置1のハードウェア構成を示す。図19に示すように、コンピュータ1は、CPU(Central Processing Unit)2、メモリ3、外部記憶装置4、通信インタフェース5を有する。また、図19に示した各部は、バス(不図示)等で相互に接続される。
(Hardware and payroll data calculation program)
FIG. 19 is a diagram illustrating a computer that executes a salary data calculation program. FIG. 19 shows a hardware configuration of the salary
通信インタフェース5は、ネットワークインタフェースカード等である。外部記憶装置4は、HDD(Hard Disk Drive)等の磁気記憶装置やSSD(Solid State Drive)等の半導体記憶装置であり、図2〜図12に示す各テーブル、図13〜図18に示す処理をコンピュータ1に実行させるプログラムを記憶する。外部記録装置4は、ROM(Read Only Memory)、RAM、CD−ROM等の他のコンピュータが読み取り可能な記録媒体に各種プログラムを格納しておき、コンピュータに読み取らせる装置であってもよい。なお、記録媒体を遠隔地に配置し、コンピュータが、その記憶媒体にアクセスすることでプログラムを取得して利用してもよい。また、その際、取得したプログラムをコンピュータ1の記憶装置に格納して用いてもよい。
The
CPU2は、図1に示した制御部20の各部と同様の処理を実行するプログラムを外部記憶装置4等から読み出してメモリ3に展開することで、コンピュータ1に、図13〜図18に示す処理を実行するプロセスを動作させる。すなわち、CPU2は、縦横記録先決定部21、給与項目記録処理部22、給与項目算出処理部23と同様の機能を有するプログラムを外部記憶装置4等から読み出す。そして、CPU2は、制御部20の各部と同様の処理を実行するプロセスを実行する。
The
このように、コンピュータ1は、プログラムを読み出して実行することで給与データ計算方法を実行する情報処理装置として動作する。また、コンピュータ1は、媒体読取装置によって記録媒体から上述のプログラムを読み出し、読み出されたプログラムを実行することで上述の実施例1〜4を含む実施形態と同様の機能を実現することができる。なお、このプログラムは、コンピュータ1によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、開示技術を同様に適用することができる。
Thus, the
1 コンピュータ
2 CPU
3 メモリ
4 外部記憶装置
5 通信インタフェース
10 記憶部
10−1 月例給与項目マスタテーブル
10−2 月例給与支給データテーブル
10−3 従業員マスタテーブル
10−4 従業員勤怠データテーブル
10−5 給与体系マスタテーブル
10−6 役職手当マスタテーブル
10−7 家族手当マスタテーブル
10−8 算出式マスタテーブル
10−9 横明細データテーブル
10−10 縦明細データテーブル
10−11 縦横記録先データテーブル
20 制御部
21 縦横記録先決定部
22 給与項目記録処理部
23 給与項目算出処理部
100 給与データ計算装置
1
3
Claims (9)
従業員ごとかつ年月ごとの各給与データの算出値および該算出値に対応する中間値を、横明細テーブルの1レコードの横方向のフィールドに記録する横明細記憶部と、
前記各給与データの算出値および該算出値に対応する中間値を、縦明細テーブルの縦方向の複数レコードに分けて記録する縦明細記憶部と、
前記算出ルールをもとに算出される給与データの算出値の数および該算出値に対応する中間値の数の少なくともいずれかに応じて、該算出値および該中間値を前記横明細記憶部および前記縦明細記憶部のいずれか一方または両方に記録すると決定する記録先決定部と
を備えたことを特徴とする給与データ計算装置。 A calculation rule storage unit for storing, for each salary data, a calculation rule for calculating a calculated value of salary data and an intermediate value calculated in the calculation process of the calculated value;
A horizontal detail storage unit that records a calculated value of each salary data for each employee and for each month and an intermediate value corresponding to the calculated value in a horizontal field of one record of the horizontal detail table;
A vertical detail storage unit that records the calculated value of each salary data and an intermediate value corresponding to the calculated value in a plurality of records in the vertical direction of the vertical detail table;
In accordance with at least one of the number of calculated values of salary data calculated based on the calculation rule and the number of intermediate values corresponding to the calculated value, the calculated value and the intermediate value are stored in the horizontal detail storage unit and A salary data calculation apparatus comprising: a recording destination determination unit that determines to record in either or both of the vertical detail storage units.
前記横明細テーブルの1レコードにおいて値の記録先として未決定のフィールドの残数が前記算出値の数および前記中間値の数の合計以上である場合には、前記算出値および前記中間値の記録先を前記横明細記憶部と決定し、
前記フィールドの残数が0となった場合には、前記算出値および前記中間値の記録先を前記縦明細記憶部と決定する
ことを特徴とする請求項1に記載の給与データ計算装置。 The recording destination determining unit
When the remaining number of undecided fields as a value recording destination in one record of the horizontal detail table is equal to or greater than the sum of the number of calculated values and the number of intermediate values, the calculated value and the intermediate value are recorded. The destination is determined as the horizontal detail storage unit,
The salary data calculation apparatus according to claim 1, wherein when the remaining number of the field becomes 0, a recording destination of the calculated value and the intermediate value is determined as the vertical detail storage unit.
前記フィールドの残数が前記算出値の数および前記中間値の数の合計未満となった場合には、前記算出値の記録先を前記横明細記憶部と決定し、前記中間値の記録先を前記縦明細記憶部と決定する
ことを特徴とする請求項2に記載の給与データ計算装置。 The recording destination determining unit
When the remaining number of the field is less than the total of the number of calculated values and the number of intermediate values, the recording destination of the calculated values is determined as the horizontal detail storage unit, and the recording destination of the intermediate values is The salary data calculation device according to claim 2, wherein the salary data calculation device is determined as the vertical detail storage unit.
前記横明細テーブルの1レコードにおいて値の記録先として未決定のフィールドの残数が0より大である場合には、前記算出値の記録先を前記横明細記憶部と決定し、前記中間値の記録先を前記縦明細記憶部と決定し、
前記フィールドの残数が0となった場合には、前記算出値および前記中間値の記録先を前記縦明細記憶部と決定する
ことを特徴とする請求項1に記載の給与データ計算装置。 The recording destination determining unit
When the remaining number of undecided fields as a value recording destination in one record of the horizontal detail table is greater than 0, the recording destination of the calculated value is determined as the horizontal detail storage unit, and the intermediate value The recording destination is determined as the vertical detail storage unit,
The salary data calculation apparatus according to claim 1, wherein when the remaining number of the field becomes 0, a recording destination of the calculated value and the intermediate value is determined as the vertical detail storage unit.
前記横明細テーブルの1レコードにおいて値の記録先として未決定のフィールドの残数が前記中間値の数以上である場合には、前記中間値の記録先を前記横明細記憶部と決定し、前記算出値の記録先を前記縦明細記憶部と決定し、
前記フィールドの残数が0となった場合には、前記算出値および前記中間値の記録先を前記縦明細記憶部と決定する
ことを特徴とする請求項1に記載の給与データ計算装置。 The recording destination determining unit
When the remaining number of undecided fields as a value recording destination in one record of the horizontal detail table is equal to or greater than the number of the intermediate values, the intermediate value recording destination is determined as the horizontal detail storage unit, and The recording destination of the calculated value is determined as the vertical detail storage unit,
The salary data calculation apparatus according to claim 1, wherein when the remaining number of the field becomes 0, a recording destination of the calculated value and the intermediate value is determined as the vertical detail storage unit.
前記フィールドの残数が前記中間値の数未満となった場合には、前記中間値のうち該残数分の中間値の記録先を前記横明細記憶部と決定し、該残数の超過分の中間値および前記算出値の記録先を前記縦明細記憶部と決定する
ことを特徴とする請求項5に記載の給与データ計算装置。 The recording destination determining unit
When the remaining number of the field is less than the number of the intermediate values, the recording destination of the intermediate value for the remaining number of the intermediate values is determined as the horizontal detail storage unit, and the excess of the remaining number The salary data calculation apparatus according to claim 5, wherein a recording destination of the intermediate value and the calculated value is determined as the vertical detail storage unit.
前記横明細テーブルの1レコードにおいて値の記録先として未決定のフィールドの残数が前記算出値の数および前記中間値の数の合計以上である場合には、前記算出値および前記中間値の記録先を前記横明細記憶部と決定し、
前記フィールドの残数が0となった場合には、前記横明細記憶部に記録されている前記中間値の記録先を前記縦明細記憶部へ変更後、新たな前記算出値の記録先を前記横明細記憶部と決定する
ことを特徴とする請求項1に記載の給与データ計算装置。 The recording destination determining unit
When the remaining number of undecided fields as a value recording destination in one record of the horizontal detail table is equal to or greater than the sum of the number of calculated values and the number of intermediate values, the calculated value and the intermediate value are recorded. The destination is determined as the horizontal detail storage unit,
When the remaining number of the field becomes 0, after changing the recording destination of the intermediate value recorded in the horizontal detail storage unit to the vertical detail storage unit, the recording destination of the new calculated value is changed to the The salary data calculation apparatus according to claim 1, wherein the salary data calculation apparatus is determined as a horizontal detail storage unit.
給与データの算出値、および、該算出値の算出過程で算出される中間値を算出するための算出ルールをもとに、従業員ごとかつ年月ごとの各給与データの算出値の数および該算出値に対応する中間値の数の少なくともいずれかを算出し、
算出した前記算出値の数および前記中間値の数の少なくともいずれかに応じて、従業員ごとかつ年月ごとの各給与データの算出値および該算出値に対応する中間値を横明細テーブルの1レコードの横方向のフィールドに記録する横明細記憶部、および、前記各給与データの算出値および中間値を縦明細テーブルの縦方向の複数レコードに分けて記録する縦明細記憶部のいずれか一方または両方に記録すると決定する
各処理を実行させるための給与データ計算プログラム。 On the computer,
Based on the calculated value of the salary data and the calculation rule for calculating the intermediate value calculated in the calculation process of the calculated value, the number of calculated values of each salary data for each employee and each year and the Calculate at least one of the number of intermediate values corresponding to the calculated value,
In accordance with at least one of the calculated number of calculated values and the number of intermediate values, the calculated value of each salary data for each employee and every month and the intermediate value corresponding to the calculated value are stored in 1 Either a horizontal detail storage unit that records in a horizontal field of the record, and a vertical detail storage unit that records the calculated value and intermediate value of each salary data divided into a plurality of vertical records in the vertical detail table, or The salary data calculation program to execute each process that decides to record in both.
給与データの算出値、および、該算出値の算出過程で算出される中間値を算出するための算出ルールをもとに、従業員ごとかつ年月ごとの各給与データの算出値の数および該算出値に対応する中間値の数の少なくともいずれかを算出し、
算出した前記算出値の数および前記中間値の数の少なくともいずれかに応じて、従業員ごとかつ年月ごとの各給与データの算出値および該算出値に対応する中間値を横明細テーブルの1レコードの横方向のフィールドに記録する横明細記憶部、および、前記各給与データの算出値および中間値を縦明細テーブルの縦方向の複数レコードに分けて記録する縦明細記憶部のいずれか一方または両方に記録すると決定する
各処理を実行することを特徴とする給与データ計算方法。 Computer
Based on the calculated value of the salary data and the calculation rule for calculating the intermediate value calculated in the calculation process of the calculated value, the number of calculated values of each salary data for each employee and each year and the Calculate at least one of the number of intermediate values corresponding to the calculated value,
In accordance with at least one of the calculated number of calculated values and the number of intermediate values, the calculated value of each salary data for each employee and every month and the intermediate value corresponding to the calculated value are stored in 1 Either a horizontal detail storage unit that records in a horizontal field of the record, and a vertical detail storage unit that records the calculated value and intermediate value of each salary data divided into a plurality of vertical records in the vertical detail table, or A salary data calculation method characterized by executing each process that is determined to be recorded in both.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017128074A JP6858087B2 (en) | 2017-06-29 | 2017-06-29 | Payroll data calculator, payroll data calculation program, payroll data calculation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017128074A JP6858087B2 (en) | 2017-06-29 | 2017-06-29 | Payroll data calculator, payroll data calculation program, payroll data calculation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019012367A true JP2019012367A (en) | 2019-01-24 |
JP6858087B2 JP6858087B2 (en) | 2021-04-14 |
Family
ID=65227020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017128074A Active JP6858087B2 (en) | 2017-06-29 | 2017-06-29 | Payroll data calculator, payroll data calculation program, payroll data calculation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6858087B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113763142A (en) * | 2021-07-14 | 2021-12-07 | 望海康信(北京)科技股份公司 | Payroll data calculation method, system, corresponding computer device and storage medium |
CN116664092A (en) * | 2023-07-26 | 2023-08-29 | 北京数昶信息技术有限公司 | Multi-user firewood calculating system and method |
-
2017
- 2017-06-29 JP JP2017128074A patent/JP6858087B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113763142A (en) * | 2021-07-14 | 2021-12-07 | 望海康信(北京)科技股份公司 | Payroll data calculation method, system, corresponding computer device and storage medium |
CN116664092A (en) * | 2023-07-26 | 2023-08-29 | 北京数昶信息技术有限公司 | Multi-user firewood calculating system and method |
CN116664092B (en) * | 2023-07-26 | 2023-09-29 | 北京数昶信息技术有限公司 | Multi-user firewood calculating system and method |
Also Published As
Publication number | Publication date |
---|---|
JP6858087B2 (en) | 2021-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9875272B1 (en) | Method and system for designing a database system for high event rate, while maintaining predictable query performance | |
Tekin et al. | Pooling strategies for call center agent cross-training | |
CN110941687A (en) | Method and device for generating visit report | |
Thuerer et al. | The application of workload control in assembly job shops: an assessment by simulation | |
JP6858087B2 (en) | Payroll data calculator, payroll data calculation program, payroll data calculation method | |
US10733204B2 (en) | Optimizing synchronization of enterprise content management systems | |
US11810034B2 (en) | Variable resource allocation | |
JP7437335B2 (en) | Labor management support device and labor management support method | |
JP6798856B2 (en) | Amount calculation device, amount calculation method and amount calculation program | |
Hwang et al. | Korean public rental housing for residential stability of the younger population: analysis of policy impacts using system dynamics | |
CN114742024A (en) | Service information processing method and device and electronic equipment | |
JP2018028776A (en) | Software asset management device, software asset management method, and software asset management program | |
JP7131936B2 (en) | Common expense management device, common expense management method, and common expense management program | |
US9727830B2 (en) | Multi-tier employment model for human capital management | |
JP5545085B2 (en) | Information search device, information search method and program | |
JP7431712B2 (en) | Income and expenditure management device, income and expenditure management method, and income and expenditure management program | |
JP7299764B2 (en) | Credit management device, credit management method, and credit management program | |
JP7361006B2 (en) | Current deduction amount calculation device, current deduction amount calculation method, and current deduction amount calculation program | |
Zaman et al. | Data Minimisation as Privacy and Trust Instrument in Business Processes | |
JP7233177B2 (en) | Budget control device, budget control method and budget control program | |
US20170061380A1 (en) | Computerized system and method for controlling electronic distribution of compensation | |
JP7551435B2 (en) | Staff management device, staff management method, and staff management program | |
JP7557605B2 (en) | Rank updating device, rank updating method and rank updating program | |
JP7324162B2 (en) | Cost output device, cost output method, and cost output program | |
US20160162959A1 (en) | Performance Optimization Utilizing Pre-Analysis of Condition Records |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200410 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210222 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210309 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210323 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6858087 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R370 | Written measure of declining of transfer procedure |
Free format text: JAPANESE INTERMEDIATE CODE: R370 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |