Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Kb 978268

Sintomi

Quando si prova ad assegnare una nuova programmazione retribuzione creata in HrMsSS (Human Resource Self Service Suite) per il portale aziendale (BP) in Microsoft Dynamics GP o si modifica una programmazione retribuzione esistente, viene visualizzato uno dei messaggi di errore seguenti:

 

La programmazione delle retribuzioni contiene date che si sovrappongono alla programmazione delle retribuzioni attiva dell'anno scorso. Non è possibile salvare due programmi di pagamento attivi che condividono date.

oppure

I periodi di retribuzione assegnati a questo programma retributivi non corrispondono alla frequenza di pagamento. Ricalcolare i periodi di retribuzione della programmazione delle retribuzioni.

Causa

Il problema con il primo messaggio riportato sopra si verifica perché la data di inizio del periodo 1 nella nuova programmazione retribuzione si sovrappone alla data dell'ultimo periodo della programmazione retribuzione precedente. Tuttavia, il modulo HRMSSS richiede che una programmazione delle retribuzioni sia lunga 365 giorni e non consenta di ignorare o sovrapporre le date tra due pianificazioni.


Il problema con il secondo messaggio precedente è che la programmazione delle retribuzioni è lunga 364 giorni e il sistema richiede che sia di 365 giorni prima che le modifiche apportate al programma siano consentite o che sia possibile creare una nuova programmazione delle retribuzioni adiacente.
 

Risoluzione


Esempio:

Si supponiamo che la pianificazione delle retribuzioni 2021 venga eseguita dal 23 dicembre 2021 al 22 dicembre 2022. In questo esempio si vuole creare una nuova programmazione delle retribuzioni denominata "2022" che inizia il 22 dicembre 2022, ma non è possibile perché è già stata usata dalla programmazione delle retribuzioni precedente. 

Programmazione retribuzioni: Data di inizio -Data di fine

2021: è attualmente configurato per le date 23/12/2021 - 22/12/2022

2022: si vogliono le date 22/12/2022 - 21/12/2023; Si vuole iniziare la nuova programmazione il 22/12/2022, ma non è possibile perché questa data è già stata usata dalla programmazione delle retribuzioni dell'anno precedente. 

Nota: il sistema richiede che il "nome" del periodo coincida con il contrassegno "anno" nella "data di inizio" in tale programmazione retribuzione.

Usare uno dei metodi seguenti per risolvere il problema:

  • Se si usa BP 4.0 con Microsoft Dynamics GP 10.0, usare il metodo 1 o il metodo 2 di seguito.

  • Se si usa BP 5.0 o BP 5.1 con Microsoft Dynamics GP 2010 o BP 6.0/6.1 con Microsoft Dynamics GP 2013 e sono presenti 27 periodi (bisettimanale) o 53 periodi (settimanali), usare il metodo 1 o il metodo 2 di seguito.

  • Se si usa BP 5.0 o BP 5.1 con Microsoft Dynamics GP 2010 o BP 6.0/6.1 con Microsoft Dynamics GP 2013 e si hanno 26 periodi (bisettimanale) o 52 periodi (settimanali) perché è stata selezionata l'opzione "Usa solo periodi di retribuzione completa", usare il metodo 1 o il metodo 3 di seguito. La programmazione delle retribuzioni 2021 (usando solo periodi completi) sembra terminare il 21/12/2022, ma non consente di creare una nuova programmazione per il 2022 che inizia il 22/12/2022, anche se questa data NON è stata usata nella programmazione retribuzione precedente.

Metodo 1: Annullare l'assegnazione della programmazione retribuzione passata in modo che il sistema non la guardi.


Se hai finito di usare la programmazione delle retribuzioni passata e tutte queste schede sono approvate fino al completamento, puoi semplicemente annullare l'assegnazione di tale pianificazione a tutti i dipendenti e il sistema non la considererà più. Sarà quindi possibile creare la nuova programmazione a partire dalla data che si vuole. Questo è il metodo più rapido e semplice per risolvere questo problema, se si è in grado di attendere che la programmazione precedente non sia più usata e tutte le schede dipendente che usano tale programmazione sono state approvate/completate.

1. Accedere a BP come amministratore.

2. Fare clic sulla scheda Amministrazione.

3. Fare clic su Imposta scheda dipendente.

4. Selezionare la programmazione retribuzione appropriata e fare clic sul pulsante Assegna.

5. Usare l'elenco a discesa Limita per per selezionare Reparto e fare clic su Deseleziona tutto. Quindi limita per dipendente e seleziona Deseleziona tutto. (Controlla anche per posizione e posizione, anche se questi vengono usati meno spesso). Salva.

6. Ora è possibile fare clic su Aggiungi e creare una nuova programmazione delle retribuzioni a partire dalla data che si vuole.



Nota Non eliminare la programmazione delle retribuzioni precedente dal portale aziendale. La programmazione delle retribuzioni deve essere presente in modo da poter visualizzare i dati cronologici. Tuttavia, se la programmazione retribuzione passata viene eliminata dalla finestra Programmazione retribuzioni, è sufficiente crearla di nuovo, ma non assegnarla ai dipendenti. Deve solo esistere per visualizzare la cronologia delle schede dipendente precedenti.

Metodo 2: Modificare le date nella programmazione retribuzione se si hanno 27 o 53 periodi con gli script SQL Microsoft

Nota Prima di seguire le istruzioni di questo articolo, assicurarsi di avere una copia di backup completa del database che è possibile ripristinare in caso di problemi.


Note aggiuntive:

  • È consigliabile eseguire un backup. Prendere nota delle date di inizio e di fine di tutti i programmi di retribuzione, in modo da poter modificare gli script SQL di conseguenza.

  • È consigliabile approvare tutte le schede dipendente nella programmazione retribuzione da modificare. Pertanto, non seguire questa procedura fino alla fine della programmazione delle retribuzioni.


L'obiettivo dei passaggi seguenti è rinominare l'ultimo periodo (Periodo 27 o Periodo 53) in Periodo 0, in modo che il sistema sposterà tale periodo all'inizio della pianificazione. Verrà quindi modificato l'indicatore dell'anno in tale periodo, in modo che il giorno aggiuntivo venga aggiunto all'inizio della pianificazione dell'anno precedente e rimosso dalla fine della pianificazione per liberare quella data. Quindi, in sostanza, la pianificazione viene spostata in modo che sia un giorno prima (o 22/12/2020- 21/12/2021). È necessario farlo perché il sistema richiede comunque che la pianificazione sia lunga 365 giorni. 

Passaggio 1
Eseguire lo script appropriato per modificare il valore id periodo dal valore bisettimanale o settimanale a 0 come indicato di seguito. L'ultimo periodo verrà spostato all'inizio della programmazione retribuzione:

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'



Nota: Aggiornare l'ID ANNO nello script precedente in modo che sia il nome della vecchia Pianificazione retribuzioni. Questi script di esempio coprono solo settimanalmente e bisettimanale, ma possono anche essere modificati in modo appropriato se la pianificazione è una frequenza diversa, ad esempio mensile o semestrale. Aprire un caso di supporto per ottenere tali valori da inserire nello script.
 

Passaggio 2

Eseguire lo script appropriato seguente per modificare il valore di Nome periodo in modo che corrisponda:

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'





Passaggio 3
A questo punto è necessario modificare la data di inizio e di fine del periodo 0 in modo che sia l'anno precedente, in modo da aggiungere il giorno aggiuntivo all'inizio della programmazione retribuzioni. Eseguire entrambi gli script per modificare prima la data di inizio per il periodo 0 e quindi la data di fine per il periodo 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'

Nota La data dell'ultimo periodo è stata 22/12/2022-22/12/2022 e ora è stata modificata in 22/12/2021-22/12/2021, che aggiunge il giorno aggiuntivo all'inizio della pianificazione modificando solo l'indicatore dell'anno. Il periodo 26 o 52 termina il 21/12/2022.



Passaggio 4
Eseguire lo script seguente per aggiornare la tabella HRM_PaySchedule in modo che corrisponda alla nuova data di inizio del periodo 0 nella tabella HRM_PayPeriod tabella:

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'

Nota Per verificare che il valore BeginDate nella tabella HRM_PaySchedule corrisponda al valore BeginDate del periodo 0 nella tabella HRM_PayPeriod, eseguire lo script seguente:

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
 


Passaggio 5
Ora è possibile creare una nuova programmazione retribuzioni per il 2022 con la data di inizio "22/12/2022". In BP fare clic sulla scheda Amministrazione e quindi su Imposta scheda dipendente. Fare clic sul pulsante Aggiungi nella sezione Programmi retribuzioni. Digitare la frequenza e la data di inizio del 22/12/2022 e fare clic su Calcola periodi retributivi. Salva.


Nota: La nuova programmazione delle retribuzioni creerà anche un periodo aggiuntivo 27 o un periodo 53 per il giorno aggiuntivo (dal momento che 365 non è ugualmente divisibile per 7). Tuttavia, non è consigliabile modificare il periodo aggiuntivo in questo momento. In caso contrario, la programmazione delle retribuzioni si sovrapporrà di nuovo alla programmazione delle retribuzioni corrente precedente, quindi è consigliabile attendere fino alla fine dell'anno per modificarla.


Passaggio 6
Selezionare la programmazione retribuzione e fare clic sul pulsante Assegna per assegnare la nuova programmazione a reparti, posizioni, dipendenti o posizioni specifici.



 

Metodo 3: Modificare le date nella programmazione retribuzione se si hanno 26 o 52 periodi con gli script SQL Microsoft



Nota Prima di seguire le istruzioni di questo articolo, assicurarsi di avere una copia di backup completa del database che è possibile ripristinare in caso di problemi.


Note aggiuntive:

  • È consigliabile eseguire un backup. Prendere nota delle date di inizio e di fine di tutti i programmi di retribuzione, in modo da poter modificare gli script SQL di conseguenza.

  • È consigliabile approvare tutte le schede dipendente nella programmazione retribuzione da modificare. Pertanto, non seguire questa procedura fino alla fine della programmazione delle retribuzioni.



In questo esempio, la programmazione retribuzione 2021 esistente va dal 23/12/2021 al 21/12/2022 (e ha 26 o 52 periodi di retribuzione). Si vuole apportare una modifica alla programmazione delle retribuzioni esistente o creare una nuova programmazione che inizia il 22/12/2022, ma che continua a ricevere un errore, anche se questa data non viene usata dalla programmazione retribuzione esistente. Il sistema non consente di creare la nuova programmazione delle retribuzioni perché la programmazione precedente non dura 365 giorni.  


L'obiettivo dei passaggi seguenti è aggiungere un giorno in più alla programmazione esistente per renderla lunga 365 giorni, in modo da poter creare la nuova programmazione retribuzione. 

Passaggio 1
Esaminare le date correnti nel periodo 1 e nell'ultimo periodo (Periodo 26 o Periodo 52) nella programmazione retribuzione esistente:

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



Nota: Aggiornare l'ID ANNO nello script precedente in modo che sia il nome della programmazione retribuzione esistente. Questi script di esempio coprono solo settimanalmente e bisettimanale, ma possono anche essere modificati in modo appropriato se la pianificazione è una frequenza diversa, ad esempio mensile o semestrale. Aprire un caso di supporto per ottenere tali valori da inserire nello script.

Passaggio 2

Eseguire il backup della data di inizio nel periodo 1 di un giorno, per aggiungere un giorno aggiuntivo all'inizio della programmazione retribuzione per una durata di 365 giorni.

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'

Nota Se l'aggiunta della data di inizio si sovrappone alla Programmazione retribuzioni dell'anno precedente, potrebbe essere necessario annullare l'assegnazione di quella vecchia pianificazione da tutti i dipendenti, in modo che il sistema non si preoccupi e non veda un altro problema di sovrapposizione.



Nota: In questo modo la programmazione delle retribuzioni passa dal 22/12/2021-21/12/2022, che aggiunge il giorno aggiuntivo all'inizio della programmazione per renderlo lungo 365 giorni. 


Passaggio 3
Eseguire lo script seguente per aggiornare la tabella HRM_PaySchedule in modo che corrisponda alla nuova data di inizio del periodo 1 nella HRM_PayPeriod tabella:

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'

Nota Per verificare che il valore BeginDate nella tabella HRM_PaySchedule corrisponda al valore BeginDate del periodo 0 nella tabella HRM_PayPeriod, eseguire lo script seguente:

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


Passaggio 4
Ora è possibile creare una nuova programmazione delle retribuzioni per il 2022 con la data di inizio "22/12/2022". In BP fare clic sulla scheda Amministrazione e quindi su Imposta scheda dipendente. Fare clic sul pulsante Aggiungi nella sezione Programmi retribuzioni. Digitare la frequenza e la data di inizio del 22/12/2022 e fare clic su Calcola periodi retributivi. Salva.


Nota: La nuova programmazione delle retribuzioni creerà anche un periodo aggiuntivo 27 o un periodo 53 per il giorno aggiuntivo (dal momento che 365 non è ugualmente divisibile per 7) o se si usa "Usa solo periodi di retribuzione completa", verranno creati di nuovo 26 o 52 periodi di retribuzione. Tuttavia, non è consigliabile modificare il periodo aggiuntivo in questo momento. In caso contrario, la programmazione delle retribuzioni si sovrapporrà di nuovo alla programmazione delle retribuzioni corrente precedente, quindi è consigliabile attendere fino alla fine dell'anno per modificarla.


Passaggio 5
Selezionare la programmazione retribuzione e fare clic sul pulsante Assegna per assegnare la nuova programmazione a reparti, posizioni, dipendenti o posizioni specifici.

 

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×