メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

KB 978268

現象

Microsoft Dynamics GP の Human Resource Self Service Suite (HRMSSS) for Business Portal (BP) で新しく作成された支払いスケジュールを割り当てるか、既存の支払いスケジュールを変更すると、次のいずれかのエラー メッセージが表示されます。

 

支払スケジュールには、昨年のアクティブな支払いスケジュールと重複する日付があります。 日付を共有するアクティブな 2 つの支払いスケジュールを保存できない。

または

この支払いスケジュールに割り当てられた支払い期間は、支払い頻度と一致しません。 支払スケジュールの支払期間を再計算します。

原因

上記の最初のメッセージの問題は、新しい支払スケジュールの期間 1 の開始日が、前の支払スケジュールの最後の期間の日付と重複するため発生します。 ただし、HRMSSS モジュールでは、支払いスケジュールの長さ 365 日を指定する必要があります。また、2 つのスケジュール間で日付をスキップしたり、重複したりできない必要があります。


上記の 2 番目のメッセージの問題は、支払いスケジュールの長い期間が 364 日であり、システムが変更を許可する前に 365 日である必要がある、またはそのスケジュールに隣接する新しい支払いスケジュールを作成できる、という点です。
 

解決方法


例:

2021 年の支払いスケジュールは、2021 年 12 月 23 日から 2022 年 12 月 22 日まで実行されるとします。 この例では、2022 年 12 月 22 日から始まる "2022" という名前の新しい支払スケジュールを作成しますが、前の支払スケジュールで既に使用されているので作成できません。 

支払スケジュール: 開始日 - 終了日

2021: 現在、2021 年 12 月 23 日 ~ 2022

年 12 月 22 日の日付に対して設定されています 2022: 2022/12/22 - 2023/12/21;この新しいスケジュールは 2022 年 12 月 22 日に開始する必要がありますが、この日付が前年の支払いスケジュールで既に使用されているため、開始できません。 

注: システムでは、その支払いスケジュールの "開始日" の "年" スタンプと一致する期間の "名前" が必要です。

この問題を回避するには、次のいずれかの方法を使用します。

  • Microsoft Dynamics GP 10.0 で BP 4.0 を使用している場合は、以下の方法 1 または方法 2 を使用します。

  • Microsoft Dynamics GP 2010 または BP 6.0/6.1 と Microsoft Dynamics GP 2013 で BP 5.0 または BP 5.1 を使用し、27 期間 (隔週) または 53 期間 (毎週) がある場合は、以下の方法 1 または方法 2 を使用します。

  • Microsoft Dynamics GP 2010 または BP 6.0/6.1 と Microsoft Dynamics GP 2013 で BP 5.0 または BP 5.1 を使用している場合、"完全な支払期間のみを使用する" オプションをクリックしたため、26 期間 (週単位) または 52 期間 (毎週) を使用する場合は、以下の方法 1 または方法 3 を使用します。 2021 年の支払いスケジュール (完全な期間のみを使用) は 2022 年 12 月 21 日に終了しますが、2022 年 12 月 22 日に開始する新しいスケジュールを作成できません。ただし、この日付は以前の支払いスケジュールで使用されていない場合でも、2022 年 12 月 22 日に開始されます。

方法 1: 過去の支払いスケジュールを割り当て解除して、システムが表示しなかからな。


過去の支払いスケジュールの使用が完了し、それらのすべてのタイムカードが完了まで承認された場合は、すべての従業員からその支払いスケジュールを割り当て解除するだけで、システムはそれを考慮しなくなりました。 その後、希望する日付から新しい支払いスケジュールを作成できます。 これは、以前のスケジュールが使用されなくなった後、その支払いスケジュールを使用しているすべてのタイムカードが承認/完了するまで待機できる場合に、この問題を回避するための最も迅速で簡単な方法です。

1. 管理者として BP にログインします。

2. [管理] タブをクリックします。

3. [Timecard Setup]をクリックします。

4. 適切な支払いスケジュールを選択し、[割り当て] ボタンをクリックします。

5. [制限] ドロップダウン リストを使用して [部署] を選択し、[すべてマーク解除] をクリックします。 次に、[従業員別に制限] を選択し、[すべてマーク解除] を選択します。 ([場所] と [位置] で確認することもできますが、あまり使用されません)。 [保存] をクリックします。

6. [追加] をクリックし、希望する日付から新しい支払いスケジュールを作成できます。



注意 ビジネス ポータルから以前の支払いスケジュールを "削除" し、削除しない。 履歴データを表示するには、支払いスケジュールが存在する必要があります。 ただし、過去の支払いスケジュールが [支払いスケジュール] ウィンドウから削除された場合は、もう一度作成できますが、従業員に割り当てないで済みます。 過去のタイムカード履歴を表示するために存在する必要があります。

方法 2: Microsoft SQL スクリプトを使用して、27 または 53 の期間がある場合に支払いスケジュールの日付を変更する

注意 この記事の手順に従う前に、問題が発生した場合に復元できるデータベースの完全なバックアップ コピーを作成してください。


その他の注意事項:

  • バックアップを作成することをお勧めします。 すべての支払いスケジュールの開始日と終了日をメモして、スクリプトをSQLできます。

  • 変更する支払いスケジュールのすべてのタイムカードを承認することをお勧めします。 そのため、支払いスケジュールが終了するまで、これらの手順を実行しない。


次の手順の目的は、最後の期間 (期間 27 または期間 53) の名前を期間 0 に変更して、その期間をスケジュールの先頭に移動します。 その後、その期間の年のスタンプを変更します。そのため、追加の日は前年のスケジュールの先頭に追加され、その日付を解放するためにスケジュールの最後から削除されます。 そのため、基本的には、スケジュールを 1 日早く (または 2020 年 12 月 22 日から 2021 年 12 月 21 日) にスライディングします。 これは、システムが引き続き 365 日間のスケジュールを必要とするために必要なので、これを行う必要があります。 

手順 1
次のように、適切なスクリプトを実行して、期間 ID の値を 2 週間または毎週の値から 0 に変更します。 これにより、その最後の期間が支払いスケジュールの先頭に移動します。

BIWEEKLY:
update HRM_PayPeriod set PayPeriodID ='0' where PayPeriodID ='27' and yearid='2021' and frequencyid ='2'
WEEKLY:
update HRM_PayPeriod set PayPeriodID ='0' where PayPeriodID ='53' and yearid='2021' and frequencyid ='1'



注意 上記のスクリプトの YEARID を、古い支払いスケジュールの名前に更新します。 これらのサンプル スクリプトは週単位と週単位でのみ扱われますが、スケジュールが月単位や半月単位などの頻度が異なる場合は、適切に編集することもできます。 これらの値をスクリプトに挿入するには、サポート ケースを開きます。
 

手順 2

次の適切なスクリプトを実行して、[期間名] の値を一致に変更します。

BIWEEKLY:
update HRM_PayPeriod set Name = 'Period 0' where Name = 'Period 27' and Yearid = '2021' and frequencyid = '2'

WEEKLY:
update HRM_PayPeriod set Name = 'Period 0' where Name = 'Period 53' and Yearid = '2021' and frequencyid = '1'





手順 3
ここで、期間 0 の開始日と終了日を前年に変更する必要があります。そのため、支払いスケジュールの先頭に余分な日が追加されます。 両方のスクリプトを実行して、最初に Period 0 の開始日を変更し、次に Period 0 の終了日を変更します。

BIWEEKLY:
update HRM_PayPeriod set BeginDate ='2021-12-22' where payperiodid ='0' and yearid='2021' and frequencyid ='2'

update HRM_PayPeriod set EndDate ='2021-12-22' where payperiodid ='0' and yearid='2021' and frequencyid ='2'


WEEKLY:
update HRM_PayPeriod set BeginDate ='2021-12-22' where payperiodid ='0' and yearid='2021' and frequencyid ='1'

update HRM_PayPeriod set EndDate ='2021-12-22' where payperiodid ='0' and yearid='2021' and frequencyid ='1'

注意 最後の期間の日付は 2022/12/22-12/2022 で、2021/12/22-12/22/2021 に変更しました。この日付は、年スタンプのみを変更して、スケジュールの先頭に余分な日を追加します。 期間 26 または 52 は 2022 年 12 月 21 日に終了します。



手順 4
次のスクリプトを実行して、HRM_PaySchedule テーブルの期間 0 の新しい開始日と一致HRM_PayPeriodします。

BIWEEKLY:
update HRM_payschedule set BeginDate='2021-12-22' where yearid='2021' and frequencyid ='2'

WEEKLY:

update HRM_payschedule set BeginDate='2021-12-22' where yearid='2021' and frequencyid ='1'

注意 HRM_PaySchedule テーブルの BeginDate 値が HRM_PayPeriod テーブルの期間 0 の BeginDate 値と一致する場合は、次のスクリプトを実行します。

BIWEEKLY:
Select BeginDate, * from HRM_PayPeriod where yearid ='2021' and frequencyid = 2 and PayPeriodID = 0
Select BeginDate, * from HRM_PaySchedule where yearid ='2021' and frequencyid = 2

WEEKLY:
Select BeginDate, * from HRM_PayPeriod where yearid ='2021' and frequencyid = 1 and PayPeriodID = 0
Select BeginDate, * from HRM_PaySchedule where yearid ='2021' and frequencyid = 1
 


手順 5
これで、開始日が "2022/12/22" の 2022 年の新しい支払スケジュールを作成できます。 BP で、[管理] タブをクリックし、[タイムカードのセットアップ] をクリックします。 [支払いスケジュール] セクションの [追加] ボタンをクリックします。 頻度と開始日を 2022 年 12 月 22 日に入力し、[支払期間の計算] をクリックします。 [保存] をクリックします。


注意 新しい支払いスケジュールでは、追加日の期間 27 または期間 53 も作成されます (365 は 7 で割り切れるのと同じではな)。 ただし、この時点で余分な期間を変更することをお勧めしません。 それ以外の場合、支払いスケジュールは以前の現在の支払いスケジュールと再び重複します。そのため、年末まで待って変更する必要があります。


手順 6
[支払いスケジュール] を選択し、[割り当て] ボタンをクリックして、部署、場所、特定の従業員または職位に新しいスケジュールを割り当てる。



 

方法 3: Microsoft のスクリプトを使用して 26 または 52 の期間がある場合は、支払いスケジュールの日付SQLします。



注意 この記事の手順に従う前に、問題が発生した場合に復元できるデータベースの完全なバックアップ コピーを作成してください。


その他の注意事項:

  • バックアップを作成することをお勧めします。 すべての支払いスケジュールの開始日と終了日をメモして、スクリプトをSQLできます。

  • 変更する支払いスケジュールのすべてのタイムカードを承認することをお勧めします。 そのため、支払いスケジュールが終了するまで、これらの手順を実行しない。



この例では、既存の 2021 年 2021 年 12 月 23 日から 2022 年 12 月 21 日 (26 または 52 の支払期間) が適用されます。 既存の支払いスケジュールを変更するか、2022 年 12 月 22 日に開始される新しいスケジュールを作成しますが、この日付は既存の支払いスケジュールで使用されていないにもかかわらず、エラーが発生します。 前のスケジュールの期間が 365 日ではないので、システムでは新しい支払いスケジュールを作成できない。  


以下の手順の目的は、既存のスケジュールに追加日を追加して 365 日の期間を設定し、新しい支払いスケジュールを作成する方法です。 

手順 1
期間 1 の現在の日付と、既存の支払スケジュールの最後の期間 (期間 26 または期間 52) を確認します。

BIWEEKLY: Select * from HRM_PayPeriod where yearid='2021' and frequencyid ='2'
WEEKLY: Select * from HRM_PayPeriod where yearid='2021' and frequencyid ='1'



注意 上記のスクリプトの YEARID を既存の支払いスケジュールの名前に更新します。 これらのサンプル スクリプトは週単位と週単位でのみ扱われますが、スケジュールが月単位や半月単位などの頻度が異なる場合は、適切に編集することもできます。 これらの値をスクリプトに挿入するには、サポート ケースを開きます。

手順 2

期間 1 の開始日を 1 日分バックアップして、支払いスケジュールの先頭に 1 日を追加して 365 日に設定します。

BIWEEKLY:
update HRM_PayPeriod set BeginDate ='2021-12-22' where payperiodid ='1' and yearid='2021' and frequencyid ='2'


WEEKLY:
update HRM_PayPeriod set BeginDate ='2021-12-22' where payperiodid ='1' and yearid='2021' and frequencyid ='1'

注意 開始日を前年の支払いスケジュールと重複する場合は、最初に、すべての従業員からその古いスケジュールの割り当て解除が必要な場合があります。そのため、システムはスケジュールを気にしないので、別の重複する問題が発生しません。



注意 これにより、支払いスケジュールは 2021 年 12 月 22 日から 2022 年 12 月 21 日に行われます。これにより、365 日の長さのために、スケジュールの先頭に余分な日が追加されます。 


手順 3
次のスクリプトを実行して、HRM_PaySchedule テーブルの期間 1 の新しい開始日と一致HRM_PayPeriodします。

BIWEEKLY:
update HRM_payschedule set BeginDate='2021-12-22' where yearid='2021' and frequencyid ='2'

WEEKLY:
update HRM_payschedule set BeginDate='2021-12-22' where yearid='2021' and frequencyid ='1'

注意 HRM_PaySchedule テーブルの BeginDate 値が HRM_PayPeriod テーブルの期間 0 の BeginDate 値と一致する場合は、次のスクリプトを実行します。

BIWEEKLY:
Select BeginDate, * from HRM_PayPeriod where yearid ='2021' and frequencyid = 2 and PayPeriodID = 0
Select BeginDate, * from HRM_PaySchedule where yearid ='2021' and frequencyid = 2

WEEKLY:
Select BeginDate, * from HRM_PayPeriod where yearid ='2021' and frequencyid = 1 and PayPeriodID = 0
Select BeginDate, * from HRM_PaySchedule where yearid ='2021' and frequencyid = 1


手順 4
これで、開始日が "2022/12/22" の 2022 年の新しい支払スケジュールを作成できます。 BP で、[管理] タブをクリックし、[タイムカードのセットアップ] をクリックします。 [支払いスケジュール] セクションの [追加] ボタンをクリックします。 頻度と開始日を 2022 年 12 月 22 日に入力し、[支払期間の計算] をクリックします。 [保存] をクリックします。


注意 新しい支払いスケジュールでは、追加日の期間 27 または期間 53 も作成されます (365 は 7 で等しく割り切り可能ではなわないので)、"完全な支払い期間のみを使用する" を使用すると、26 または 52 の支払期間が再度作成されます。 ただし、この時点で余分な期間を変更することをお勧めしません。 それ以外の場合、支払いスケジュールは以前の現在の支払いスケジュールと再び重複します。そのため、年末まで待って変更する必要があります。


手順 5
[支払いスケジュール] を選択し、[割り当て] ボタンをクリックして、部署、場所、特定の従業員または職位に新しいスケジュールを割り当てる。

 

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×