従業員ごとに1つの正確な行
401(k)センサスで
401(k)センサスは、いくつかの列を追加した給与のエクスポートのように見えます。だからこそ、多くのセンサスがそのように作られています。給与は、ある期間にその人がいくら支払われたかに答えます。センサスは、プラン年度中に支払われたすべての人について、プランが知る必要のある事柄に答えます。プランに加入しなかった人も含まれます。同じ従業員が年間を通じて正しく支払われていても、センサスには2回現れ、入社日によって8年間の勤続が消えてしまうことがあります。
このファイルはプランのTPAまたは記録管理機関に渡され、年間のカバレッジ、非差別、トップヘビー、拠出限度額の各テスト、およびForm 5500のスケジュールに使用されます。列は受領側の現在のテンプレートと、その背後にあるプランドキュメントから来ます。センサスの準備は、給与、人事、税務の記録にまたがるマッピング作業であり、失敗は毎年予測可能な場所に集中します。

主なポイント
- 年間を通じて正しく支払われていても、同じ従業員がセンサスに2回現れ、新しい入社日によって8年間の勤続が失われることがあります。
- 空白の生年月日は記録管理機関で01/01/1980になり、欠落した時間は入社日から按分されます。
- まず行を構築してから埋め、未解決の日付や控除はすべて、担当者を付けて例外として記録します。
401(k)センサスとは何か、何ではないか

401(k)センサスとは、プラン年度中に報酬を受け取った人1人につき1行を持つ従業員レベルのファイルです。プランの年次テストに必要な本人情報、日付、時間数、報酬、拠出のフィールドを含みます。適格性を満たしながら一度も繰延拠出を行わなかった人、2月に退職した人、プランが除外するクラスの人も含めなければなりません。
似て見える3つの書類は、3つの異なる表を生み出します。給与レジスターは期間の書類です。給与支払日ごとのすべての給与計算、所得コード、控除を扱います。W-2一式は税務の書類です。従業員1人につき暦年1枚の様式で、税務欄ごとに整理されています。センサスはプランの書類です。プラン年度について従業員1人につき1行です。しばしば401k censusと表記され、その短い名称が違いを覆い隠します。
だからこそ、給与のエクスポートは完全に正確でも、誤ったファイルになり得ます。エクスポートは給与支払の事象を中心に構成されています。センサスは人とプランの定義を中心に構成されています。プラン年度中のいつであれ報酬を受け取った人は全員、適格性の有無、参加の有無、在職の有無にかかわらず、センサスに含めます。現職の従業員やプラン参加者だけに限定したファイルは、小さいセンサスではなく、誤った適用範囲の結果を生むセンサスです。
まず受領者のテンプレートから始めます。未編集のコピーを保存し、プラン年度とバージョンを記録し、そのヘッダー、ドロップダウンの値、日付形式、数式をそのまま保ちます。汎用の401k censusテンプレートや前年度のファイルは、仕様ではなく参考資料です。ルールの変更に伴いTPAは列を追加するため、古いワークブックには、Rothの分割、除外報酬の列、現在の依頼で必要な長期パートタイマーのフラグが欠けていることがあります。
各ステップの担当者
センサスには5つの関係者が関与し、それぞれが異なる部分を担当します。想定が入り込むのは、この引き継ぎの部分です。
| 役割 | 担当範囲 | 引き継ぐもの |
|---|---|---|
| プランスポンサー(人事または給与担当者) | 雇用・給与に関する事実、所有権および役員情報、最終承認 | 完成したセンサスと例外ログ |
| 給与プロバイダー | レジスター、控除の詳細、W-2、年初来報告書 | 年末レジスター、控除報告書、W-2ファイル |
| TPA | 適格性、HCEおよびキー従業員の判定、カバレッジ、ADP/ACP、トップヘビーおよび415テスト、雇主拠出金の計算 | テスト結果、修正額、5500スケジュール |
| 記録管理機関 | 参加者口座、繰延拠出の入金、ローン残高、ベスティング | 入金・拠出データ。センサスの更新を受け取る |
| 監査人(参加者100名超のプラン) | センサス母集団と拠出配分を原本記録と照合して検証 | 監査指摘事項と修正依頼 |
給与担当者は「いくら支払われたか」には答えられますが、「この人は適格だったか」「プランはボーナスを除外しているか」には答えられません。これらはプラン書類に関する問題です。ファイルを組み立てる担当者がこれらを推測すると、ファイルは完成しているように見えてもテストは誤った結果になります。
受け渡しが発生するタイミング
TPAは通常1月に依頼を送付し、多くはプラン年度終了後30日以内、暦年プランであれば1月31日までのファイル提出を求めます。この期限は訂正期間に連動しています。ADPまたはACPテストに不合格となったプランは、プラン年度終了後2½か月以内に超過拠出を訂正すれば消費税は課されません。暦年プランでは3月15日が該当します。それ以降の訂正にはForm 5330と超過額に対する10%の消費税が必要です(IRS 401(k) Fix-It Guide参照)。センサスが遅れれば、誰もテストを実行しないうちにこの期間が失われます。
年次申告には独自の期限があります。Form 5500はプラン年度終了後7か月目の最終日、暦年プランでは7月31日が期限で、Form 5558により最大2½か月延長できます(Form 5500 instructions参照)。
テストを実行するのはTPAで、データに署名するのはスポンサーです。センサスへの署名は事実を証明するものであり、テスト結果を証明するものではありません。
フィールドマップ:すべての列には一つの情報源がある
センサスの各列には権威ある情報源があり、それが給与レジスターであることはほとんどありません。テンプレートは列をファミリーに分類し、各ファミリーはそれぞれの形で失敗します。
| フィールドファミリー | テンプレートが求める内容 | 権威ある情報源 | 典型的な失敗 |
|---|---|---|---|
| 本人情報 | 正式氏名、SSN、生年月日、住所、個人メールアドレス | HRマスターファイルとW-2 | 正式氏名ではなくニックネーム、SSNのマスク、生年月日の転記ミス |
| 日付とステータス | 当初入社日、退職日、再入社日、離職理由、ステータスコード | HRISまたは人事ファイル | 給与側の最新入社日が当初入社日を置き換える、ステータスがフリーテキストで入力される |
| 時間数 | サービス時間数、支払済時間数 | 勤怠管理または給与 | 月給者は時間数が記録されない、1,000時間基準が一貫して適用されない |
| 報酬 | 総報酬、W-2 Box 1、W-2 Box 3、プラン報酬、加入前報酬、除外報酬 | 年末レジスター、W-2およびプランドキュメント | 一つの合計額がすべての報酬列に貼り付けられる |
| 繰延拠出と雇用主拠出 | 税引前、Roth、アフタータックス、マッチング拠出、セーフハーバー、ノンエレクティブ、ローン | 給与控除明細と記録管理機関 | 税引前とRothが統合される、ローン返済が繰延拠出として計上される |
| 所有権と分類 | 所有割合、役員、家族関係、職務区分、部門、組合、長期パートタイム | 法人記録、プランドキュメントおよびHR | 役職が所有権の証拠として扱われる、オーナーにW-2がない |
報酬は独自のマップが必要です。テンプレートが「給与」としか聞こえない6つの数字を求めることがあるからです。TPAのセンサス指示書、たとえばNova 401(k) Associatesのフィールドガイドでは、通常これらを10列以上に分けています。
- 総報酬は、プラン年度の現金主義ベースの給与です。つまり給与小切手の日付であり、資金がプランに到達した日付ではありません。
- W-2 Box 1は連邦課税賃金です。税引前繰延拠出とSection 125の控除が差し引かれるため、総報酬とは異なります。
- W-2 Box 3は社会保険賃金で、課税賃金ベースが上限です。一部のテストやキャッチアップの確認に必要です。
- プラン報酬はプランドキュメントの定義に従い、多くの場合、総報酬からプランが除外するもの(賞与、歩合、残業代、課税対象フリンジなど)を差し引いたものです。401(a)(17)の上限により、算入できる金額には上限があります(IRS COLA表によると、2026年は$360,000、2025年は$350,000)。実際の給与を報告し、上限の適用はTPAに任せます。
- 加入前報酬は、従業員の加入日より前に稼得した部分で、専用の列に報告します。プラン報酬から差し引かないでください。一部のテストは通年給与を必要とし、他のテストは加入前の部分を必要とします。
- 除外項目は、プランが除外する賞与、歩合、残業代、Section 125、課税対象フリンジ、退職金の金額です。それぞれに専用の列を設け、TPAが差し引きを検証できるようにします。
IRSは、プランが繰延拠出、配分、テストで異なる報酬の定義を使用できること、そして誤った定義を適用することは是正費用を伴う運用上の失敗であることを明確にしています。是正方法は多くの場合、収益で調整した是正拠出であり、修正されたスプレッドシートではないと、Fix-It Guideの報酬セクションで説明されています。1つの「報酬」列で3つの目的すべてを満たすことはできません。
テンプレートが過去12か月の報酬を求めることもあります。この列が存在するのは、HCEステータスが遡及判定だからです。同じIRSの表では、HCE報酬のしきい値は2026年プラン年度で$160,000とされています。2025年の給与がその金額を超える場合、または2026年か2025年のいずれかの時点で5%超の所有権がある場合です。給与部門がその数値を提供します。判定はTPAが行うため、テンプレートがHCEフラグを求める場合は、役職や給与から導き出さず、TPAに確認してください。
行が増殖する箇所

誤った行のほとんどは、入力ミスではなく4つのドキュメントの癖から生じます。いずれにも、注意深い担当者でも見落としてしまう理由があります。
ページ区切りが従業員をまたぐ
レジスターは1ページあたり一定の行数を印刷します。賞与、3つの控除コード、ローンを持つ従業員は、3ページ目の下部付近から始まり4ページ目の上部に続くことがあります。ページごとに抽出すると、その続きが2行目になったり、上に表示されている次の従業員の行に付いてしまったりします。下部のページ合計が区切りを自然な境界に見せるため、このエラーはレビューをすり抜けます。ページ内では整合性が取れているからです。
再雇用が新しい人物になる
給与システムは通常、従業員が戻ると新しい従業員レコードを作成します。プランはそうしません。元の入社日、離職期間前の退職日、再雇用日が必要で、以前の勤続を保持する必要があります。給与システムの現在の入社日をエクスポートすると以前の勤続が消え、すでに満たした待機期間を再び適用したり、ベスティング勤続を損なったりする可能性があります。離職期間をまたぐレジスターでは、その人物が2回表示されることもあります。
実務担当者は原因より先に矛盾に気づきます。BenefitsLinkの掲示板に投稿された2012年のセンサスレポートの警告リストには、「ee has prior year term date but current comp /hours. must be a rehire that was imported」という行が、報酬ゼロの在職従業員に対する警告とともに含まれています。レコードは空白ではありません。内部的に矛盾しているのであり、それは別の問題で、よりコストのかかる問題です。
複数回の再雇用イベントは3つの列には収まりません。Empowerのセンサス手順では、元の入社日、直近の退職日、その後の再雇用日を求め、完全な履歴はアップロードから48時間以内に別途送信するよう指示しています。1回の再雇用は1行に収まります。2回離職して戻った人物は収まりません。
同じドキュメントが二重に届く
W-2パッケージにはCopy B、Copy C、および州・地方のコピーが含まれます。訂正後のW-2cが原本の後に届くこともあります。年度途中の給与プロバイダー切り替えにより、1つのプラン年度が2つのシステムに分かれ、それぞれに独自の従業員IDとレポートレイアウトが存在します。1つのプラン下の複数の事業体が別々のレジスターを提出する場合もあります。これらはいずれもページ上では重複には見えず、単なる追加データに見えるため、件数は静かに増えていきます。
税務欄を一括で抽出する場合、コピーの処理とフィールド一覧はW-2および1099のフィールド抽出で説明しています。センサスではさらに1つの要件が加わります。すべてのW-2行は、既に存在する従業員行に結合する必要があり、新規に作成してはいけません。
エクスポートが対象者を除外する
ほとんどの給与レポートはデフォルトで現職従業員のみを対象とします。センサスにはプラン年度中に支払を受けた全員が必要であり、2月に退職した人、適格性はあったが一度も加入しなかった人、除外区分に属する人も含まれます。現職者のみのエクスポートは現在の従業員数とは一致しますが、母集団テストには合格しません。年度途中の給与プロバイダー切り替えにより、現在のプロバイダーに6か月分の履歴しかない場合にも、同じフィルター問題が発生します。
レジスターは支払イベント単位で構成されます。センサスは個人単位で構成されます。誤った行はすべてこの不一致から生じます。
数値がずれる箇所
金額が誤るのは、2つのシステムが同じ言葉を異なる意味で使っている場合です。その問題の5つのパターンが、ずれの大部分を占めます。
複数の定義に1つの報酬合計
レジスターには$8,000の年末ボーナスが記載されています。プランがボーナスを除外しているのに、センサスが総額をプラン報酬として報告すると、その従業員のプラン報酬が$8,000過大になり、マッチング拠出の計算とADPテストが変わります。プランがボーナスを除外していることを確認せずにボーナスを差し引くと、誤差は逆方向に生じます。判断するのはプランドキュメントです。レジスターは支払われた事実のみを記録します。
控除コードが1列にまとめられている
給与システムでは「401(k)」という1つの控除として表示されることがあります。テンプレートには税引前とRothの列が別々にあるかもしれません。合計を比率で按分するのは推測にすぎません。根拠となるのは控除コード、またはW-2のBox 12です。コードD、E、Gは税引前繰延拠出、コードAA、BB、EEはRothで、いずれもキャッチアップを含みます。税引前の列が埋まっている隣のRoth列が空欄だと、行ごとに貼り付けた際に次の金額が1列左にずれることもあります。
現金主義、プラン年度、暦年
センサスは通常、現金主義でプラン年度の給与を報告します。12月の勤務に対する1月の給与は支払われた年に帰属し、繰延拠出は入金がプランに到達した日ではなく給与の日付に従います。会計年度プランにはもう一つの落とし穴があります。W-2のBox 1は暦年の数値です。6月30日締めのプラン年度では、テンプレートによってはプラン年度内の暦年のBox 3が必要で、Box 1は空欄になることがあります。
年換算給与と支払頻度の変更
給与レートは支払額ではありません。10月に入社した人、7月に昇給した人、支払頻度が隔週から月2回に変わった人は、1回の小切手を掛け算して年換算することはできません。26回と24回では同じ1年にはなりません。レジスターの年初来実績額を使用し、信頼する前にW-2と照合してください。
空欄は仮定になる
ここがほとんどのプラン・スポンサーが見ることのない部分です。記録管理機関はデフォルトルールを公表しており、そのデフォルトは中立ではありません。EmpowerのExplanation of Census Dataには、欠落した時間数は入社日から按分され、生年月日が欠落している場合は01/01/1980になり、長期パートタイムのフラグが欠落している場合はLTPT従業員がいないことを意味し、退職日、報酬、拠出がない従業員は前年に退職したとみなされると記載されています。各仮定は適格性、ベスティング、またはテスト結果を変え、ファイルが手元を離れた後に適用されます。
空欄のセルは、受け取り手が代わりに下す判断です。
テンプレートがそのフィールドは該当しないと示している場合にのみ、セルを空欄にしてください。それ以外の場合は値を記入し、列が数値を要求していて値がゼロの場合は0.00と記入するか、その項目をメモ付きで例外列に入れてください。
5つのパスでファイルを構築する

センサスは5つのパスで構築し、4番目までは何もフォーマットしません。各パスは次のパスが依存する成果物を生み出します。
まずテンプレートとプランドキュメントを入手する
テンプレートの未編集のコピーを保存し、プラン年度とバージョンを記録し、このプランに適用される列と空欄のままでよい列をTPAに確認します。プランの報酬定義、加入日、適格性の待機期間、除外クラスを入手します。この4つの事実がないと、すべての報酬列は推測になります。
ソースマップを作成する
センサスの列ごとに1行を作り、ソースシステム、レポート名、フィールド、変換、担当者を記載します。給与で答えられない列をマークします。所有権、役員ステータス、家族関係、適格性、HCEです。これらはHRまたはオーナーに確認します。このマップは、TPAから数値の出所を尋ねられたときの監査証跡になります。
母集団と行キーを確定する
プラン年度中に報酬を受け取った従業員ごとに1行とします。キーには従業員IDまたはSSNを使用します。名前は変わり、2人が同じ名前を共有することがあるためです。退職者、非参加者、再雇用者、プランを採用した他の事業体の従業員も含めます。部門小計、拠点合計、税務サマリー、総合計は除外します。これらは従業員データと同じ列に存在します。
適切な粒度でデータを抽出する
給与コードと控除コードを含む給与レポートを優先します。センサスが必要とする内訳が保持されるためです。唯一のソースがPDFやスキャンしたレジスターの場合、レジスターをスプレッドシートに抽出するのは機械的な作業です。Custom Column Extractionは列名で機能します。「Original Hire Date」「Plan Compensation」「Pre-Tax Deferral」「Roth Deferral」など必要なセンサスヘッダーを入力すると、AIが固定座標ではなくページ上の意味に基づいて各値を探します。入力した名前が出力ヘッダーになります。
バッチ処理は1年分のレジスターを1つのテーブルにまとめます。Multi-Page Mergeは1つの論理レコードに属するページ結果をグループ化し、各フィールドをそれを含むページから埋めます。これは1ページに1従業員を印刷したレジスターや、従業員ごとの明細書のセットに適しています。各ページに5人の従業員を印刷する高密度のレジスターは別の問題です。ページがレコードではないため、それらの境界は手作業で確認します。
Computed columnsはプラン定義が要求する計算を処理します。たとえばプラン報酬を総報酬から除外項目を差し引いたものとして計算したり、差し引きが一致しない場合に差額を出力するチェックなどです。作業ファイルのすべての行にソース参照を保持します。TPAがその列を見ることがなくてもです。
年次累計レポートではなく月次レジスターを結合する場合は、従業員ごと・期間ごとに1行となり、テンプレートに貼り付ける前に従業員IDで合計します。給与からの年次累計所得レポートが1つあれば、その手順は不要になります。
照合し、修正せずにフラグを立てる
母集団は、今日の在籍人数ではなく、プラン年度に支払を受けた全員の人事リストと突合します。総報酬はW-3または4四半期分の941と突合します。繰延拠出は給与控除レポートと、入手可能であれば記録管理機関の入金レポートと突合します。そこまでで止めます。欠落したSSNをゼロ埋めしたり、統合された控除を比率で分割したり、競合する日付をより確からしい方に置き換えたりしないでください。その項目は例外列に入れ、担当者を明記します。
抽出ステップは、1年分のレジスターを処理する前に、実際のレジスター1件でテストする価値があります。レジスターをアップロードし、センサスのヘッダーを4~5個入力して、ページ区切りが従業員1人につき1行として返ってくるかを確認します。
ファイルは安全に処理され、保存されません。
送信前に実行するチェック
ファイルはセル単位では完全でも、母集団が誤っていることがあるため、次のチェックを順番に実行します。
- 人数。センサスの行と、プラン年度中に支払を受けた全員のHRリストを比較します。すべての差異を説明してください。都合のよい1つのレポートに合わせて件数を無理に一致させないでください。
- 重複。従業員ID、SSN、および氏名と生年月日で検索します。IDが2つでSSNが1つの再雇用者もここで検出されます。
- 識別子とコード。テンプレートが要求する場合は9桁のSSN、指定形式の日付、許可リストにあるステータスコードを使用します。コード列に「Terminated」と入力すると拒否されるか、さらに悪い場合は別のコードとして読み取られます。
- 報酬の突合。テンプレートが要求する場合は、従業員ごとの総報酬をW-2のBox 1と照合します。プラン報酬を総報酬と照合し、すべての差異について理由を文書化します。合計をW-3または4件の941と照合します。
- 列のずれ。税引前繰延拠出がある従業員には税引前の値があります。Rothの金額が税引前列に紛れ込んでいないこと。ローンが繰延拠出として計上されていないこと。
- 必須の空欄。すべての必須フィールドが入力され、数値が必要で値がゼロの列には0.00が入力されていること。
- 管理行。小計、部門合計、税務サマリー、総合計が従業員行に残っていないこと。
- 例外。未解決の各項目に出所、メモ、担当者があること。例外ログを提出物に添付します。
参加者が100名を超えるプランでは、監査人も同じ母集団をテストするため、TPA向けに行う突合作業はそのまま監査証跡にもなります。このパターンはHR監査向けのバッチ給与明細抽出と同じです。母集団を一度構築し、それを証明してから、そこからサンプリングします。
抽出が行わないこと
抽出はドキュメントから値を定義した列に移動します。その列の背後にあるプランの判断は行いません。
- 誰が適格性を満たしていたか、誰がHCEまたはキー従業員か、どの報酬定義が適用されるかは判断しません。これらはプランドキュメント、支配グループ、および遡及年度によって決まります。
- カバレッジ、ADP/ACP、トップヘビー、415テストを実行したり、マッチング拠出やトゥルーアップを計算したり、修正額を算出したりしません。
- Form 5500を提出したり、センサスに署名したりしません。署名するのはスポンサーです。
- 提供されたどのドキュメントにも存在しない従業員を見つけたり、ソースでマスクされた完全なSSNを復元したりすることはできません。
- テンプレートのドロップダウン、数式、書式は保持しません。出力はクリーンなテーブルです。受領者のワークブックのルールを維持するため、値として貼り付けてください。
- ページに書かれている内容を読み取ります。レジスター上の転記ミスのある日付や誤った給与額は、そのまま転記ミスのある日付や誤った数値として出力されます。
センサスは事実に関する陳述です。抽出は事実を読み取れるようにすることはできますが、事実を真実にすることはできません。
この境界は有用です。人的レビューを本来あるべき場所、つまりプラン依存の列と例外に集中させ、60行もの名前と金額を再入力する作業から解放するからです。
FAQ
401(k)センサスとは何ですか?
401(k)センサスとは、プラン年度中に報酬を受け取った人ごとに1行を持つ、プランスポンサーがTPAや記録管理機関に送る年次の従業員単位のファイルです。カバレッジ、非差別、トップヘビー、拠出限度額のテスト、およびForm 5500に必要な身元、雇用、時間数、報酬、拠出のフィールドを含みます。給与レジスターやW-2の集合ではありませんが、どちらも入力となります。
センサステンプレートはどこで入手できますか?
現在のプラン年度分をTPAまたは記録管理機関から入手します。汎用テンプレートや前年度のファイルではなく、提供元のバージョンを使用し、どの列がプランに適用されるかを確認してください。ドロップダウンや数式を保持するため、原本はそのまま残し、コピーに値を貼り付けてください。
センサス報酬に賞与を含めるべきですか?
プランドキュメントによります。総報酬には通常、支払済みであるため賞与が含まれます。プランがプラン報酬から賞与を除外している場合は、TPAが差し引けるよう除外報酬の専用列に賞与を記載し、総額を自分で減らさないでください。プランが賞与を除外していない場合、賞与を差し引くと報酬を過少に報告することになります。
再雇用された従業員はどのように報告しますか?
行は1行のまま、当初の入社日、離職前の退職日、再雇用日を報告します。給与システムの新しい入社日で当初の日付を置き換えないでください。複数回退職と復帰を繰り返している場合は、直近のイベントをセンサスに記載し、全履歴は受領者が指定する形式で別途送付してください。
退職した従業員もセンサスに含めますか?
はい、プラン年度中に報酬を受け取っていれば含めます。退職日と、テンプレートが受け付ける理由またはステータスコードを記載してください。これらの従業員は、適用範囲テスト、ベスティング、雇用主配分、およびForm 5500の参加者数に影響します。在職者のみのエクスポートでは漏れてしまいます。
給与レジスターではなく給与明細からセンサスを作成できますか?
給与明細からは期間ごとの総支給額、控除、労働時間を取得できますが、年間分を合計し、各明細を1人の従業員に紐付ける必要があります。レジスターや年次累計レポートの方が、従業員の識別情報と所得コードがすでに含まれているため安全です。明細しか情報源がない場合は、payslip field extractionでバッチ処理し、年間合計をW-2と照合してください。粒度の問題はconverting pay stubs to a spreadsheetと同じです。明細1件につき1行は、従業員1人につき1行ではありません。
センサスはW-2と照合する必要がありますか?
すべての列ではありません。テンプレートが求めている場合、Box 1とBox 3は一致する必要があります。総報酬は、税引前繰延拠出とSection 125の控除が差し引かれるためBox 1と異なることがあり、プラン報酬はプランの除外項目により総報酬と異なることがあります。合計はW-3または四半期の941と照合し、無理に一致させようとせず、各差異を記録してください。
まず行を作成します
センサスは、給与システムの信頼性が証拠にならない珍しい成果物です。レジスターの残高が合っていても、W-2が正確でも、同じ人物が2回登録され、入社日によってベスティングが1年失われる可能性があります。まず行を作成し、次に埋め、その後、行の内容をその元となった記録と照合します。
1年分のレジスターを1つのバッチに入れ、まず最も単純な点を確認します。各従業員が1回だけ返ってくるかどうかです。ご自身の給与ファイルで試してみてください。