Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article fournit une solution à une erreur qui se produit lors de l’ouverture de la fenêtre Rapprochement des relevés bancaires.
S’applique à : Microsoft Dynamics GP
Numéro de base de connaissances d’origine : 3151337
Symptômes
Erreur de rapprochement de la gestion du cashbook lors de l’ouverture de la fenêtre Rapprochement des relevés bancaires :
« Il y a un problème avec les soldes de ce Chèquebook »
Cause
Cette erreur se produit généralement dans le SGBD lorsque l’événement de rapprochement précédent pour le chèque en question a été interrompu ou n’a pas réussi. Les tables de rapprochement CBM peuvent se trouver dans des états variés de mise à jour et/ou éventuellement de données manquantes en raison de l’activité antérieure incomplète.
Passez en revue ces données : (Mettez à jour l’espace réservé XXXX avec votre ID de carnet de chèques)
select * from CB900025 where CHEKBKID = 'XXXX' order by CB_Period
select * from CB900035 where CHEKBKID = 'XXXX ' order by CB_Reconciled_Date
select * from CB200001 where CHEKBKID = 'XXXX' order by DATE1
select * from CB400005 where CHEKBKID = 'XXXX'
select * from CB900036 where CHEKBKID = 'XXXX'
Résolution
Il est toujours judicieux de le faire dans un environnement TEST avant de mettre à jour l'EN DIRECT de la même manière.
Les principales tables SQL impliquées dans le processus de rapprochement CBM sont les suivantes :
- CB900025 (périodes de livre de caisse)
- CB110001 (Détails Maîtres de Réconciliation)
- DYNAMICS..CBINT605 (montants réconciliés DYNAMICS)
- CB600005 (montants réconciliés de la société)
- CB600001 (Configuration de rapprochement)
- CM00100 (Maître de chéquier)
- CB200001 (Transaction de réconciliation)
- CB400005 (transaction de réconciliation de l’historique de transactions)
- CB900035 (transactions d’enquête)
- CB111005 (Historique Recon Cheque Trn)
- CB333555 (transaction de dépôt de l'historique)
Parmi les tables, le CB900025 est la table principale et contient des valeurs de champ calculées lorsque la fenêtre Rapprochement CBM est ouverte.
Si les valeurs de champ actuelles et calculées dans CB900025 ne correspondent pas correctement, l’erreur ci-dessus se produira et l’utilisateur ne pourra pas continuer dans le rapprochement.
Pour résoudre la cause de cette erreur, l’instruction SQL suivante peut être exécutée sur la base de données d’entreprise errante :
Remarque
Remplacez XXX par le carnet de chèques en question et ### par la période en cours de rapprochement.
DECLARE @CHEKBKID CHAR(15)
DECLARE @PERIOD int
SELECT @CHEKBKID = 'XXX'
SELECT @PERIOD = ###
select (CB_Opening_Balance - CB_Payments + CB_Deposits) as calc1,
(CB_Statement_Balance - CB_Outstanding_Payments + CB_Outstanding_Deposits) as calc2,
((CB_Opening_Balance - CB_Payments + CB_Deposits) -
(CB_Statement_Balance - CB_Outstanding_Payments + CB_Outstanding_Deposits)) as diff
from CB900025 where CHEKBKID = @CHEKBKID and cb_period = @PERIOD
Si la valeur de diff retournée par le script SQL n’est pas 0, elle décrit pourquoi l'erreur de problème se produit lors de la nouvelle tentative de rapprochement.
L’itinéraire de correction le plus courant consiste à utiliser la commande SQL pour mettre à jour le champ CB_Opening_Balance pour la différence entre les valeurs calc1/calc2 afin que le montant de la différence soit égal à 0, lorsque la fenêtre de rapprochement est à nouveau remplie pour le registre de chèques.
Il s’agit de la seule option SQL pour CB900025 lorsque le reste des champs référencés sont des valeurs calculées qui seront réinitialisées une fois la tentative de rapprochement commencée.
Script SL recommandé pour modifier automatiquement la valeur de différences :
Note
Remplacer XXX par le carnet de chèques en question
DECLARE @CHEKBKID CHAR(15)
SELECT @CHEKBKID = 'XXX'
update CB900025
set CB_Opening_Balance = CB_Opening_Balance -
((CB_Opening_Balance - CB_Payments + CB_Deposits) -
(CB_Statement_Balance - CB_Outstanding_Payments + CB_Outstanding_Deposits))
where CHEKBKID = @CHEKBKID and CB_Open_Closed=1
L’exécution du script ci-dessus doit permettre à l’utilisateur d’ouvrir la fenêtre sans erreur et de commencer à terminer la nouvelle réconciliation pour déterminer l’itinéraire de correction nécessaire.
Par exemple, en raison de l’échec du processus antérieur, il peut y avoir plus d’éléments à inclure dans le rapprochement ou les éléments attendus complètement manquants.
Dans cet état, l’utilisateur peut remplir le nouveau rapprochement autant que possible avec les données existantes avant d’enregistrer la rapprochement et de sélectionner « Rapprochement final », qui remplira ensuite le solde des relevés bancaires pour l’utilisateur.
La différence de montant entre le solde du journal de caisse et le solde du relevé bancaire décrit l’ajustement nécessaire pour faire correspondre le solde du journal de caisse avec le solde du relevé bancaire afin d’effectuer efficacement le rapprochement.
Par exemple, supposons que vous ouvrez la fenêtre et que vous rencontrez l’erreur Problème afin d’exécuter l’instruction SQL ci-dessus pour résoudre l’erreur.
Lorsque vous terminez le rapprochement (y compris toutes les entrées nouvelles et anciennes associées), vous trouvez que le solde d’état calculé de 100 $ ne correspond pas au solde du relevé fourni par la banque de 150 $.
Lorsque la figure $150 est entrée manuellement par l’utilisateur et qu’elle tente de terminer la rapprochement, Microsoft dynamics GP génère l’erreur suivante :
- Le solde des relevés bancaires n’est pas égal au solde calculé des relevés. Cette reconnaissance ne peut pas être publiée.
Pour corriger ce problème et s'assurer que le montant du CBM correspond à celui de la banque, vous pouvez effectuer les étapes suivantes :
Fermez la fenêtre de rapprochement sans effectuer de rapprochement final.
Effectuez une transaction de dépôt GL factice en CBM pour 50 $ :
- Assurez-vous d’utiliser la même date que la réconciliation actuelle pour la transaction.
- Utilisez l’option Type GL pour que les nouvelles transactions ne soient pas créées dans d’autres modules (autres que GL).
- Supprimez ou annulez la transaction GL résultante créée avec l’entrée factice.
Rouvrez le rapprochement et incluez la transaction factice dans le rapprochement.
Terminez le rapprochement final.
En ce qui concerne les données manquantes, il n’existe pas d’outil ou d’utilitaire pour remplacer efficacement les éléments manquants dans les tables CBM. Nos options de prise en charge de correction des données seraient également limitées, car l’étendue de l’interruption peut rendre ce remplacement de données une activité irrécible.
Par conséquent, il est toujours préférable de :
Assurez-vous qu'une nouvelle sauvegarde de la base de données de l'entreprise est effectuée avant que Final Reconcile soit sélectionné, et
Effectuez une restauration à partir de la sauvegarde si une interruption de publication ou de traitement se produit lors de l’activité de validation finale ou de publication.
Le contenu suivant est des informations supplémentaires à noter sur les tables SQL impliquées dans le processus de rapprochement CBM :
CB900025 (Périodes de Cashbook) :
- CB_Opening_Balance=CB_Closing_Balance montant de la période précédente
- Période CB actuelle : CB_Solde_de_Clôture=0
- CB_Period actuel : CB_Payments=0
- ou - sum(CB_Recon_Paid_AMT) dans CB200001 avec la valeur DATE1 inférieure à la date de rapprochement actuelle
- Période CB actuelle : CB_Deposits=0
- ou - sum(CB_Recon_Received_AMT) dans CB200001 avec la valeur DATE1 inférieure à la date de rapprochement actuelle
- CB_Period actuel : CB_Closing_Date=0,
- CB_Opening_Date=CB_Closing_Date de la CB_Period précédente
- CB_Période actuelle : solde CB_déclaration = solde de clôture CB - dépôts en attente CB + paiements en attente CB
- CB_Period actuel : CB_Opening_Statement_Bal=CB_Closing_Balance montant de la CB_Period antérieure
- CB_Open_Closed=0 (tous les CB_Periods antérieurs) ; CB_Open_Closed=1 (CB_Period actuel)
- CB_Period actuel : CB_Outstanding_Deposits=sum(CB_Recon_Received_AMT) de CB200001 pour la valeur DATE1 inférieure à la date 'Inclure les transactions jusqu'à' du rapprochement actuel (calculée lorsque la fenêtre de rapprochement des transactions est ouverte)
- La période CB actuelle : CB_Outstanding_Payments = sum(CB_Recon_Paid_AMT) de CB200001 pour la valeur DATE1 inférieure à la date "Inclure les transactions jusqu'à" du rapprochement actuel (calculée lors de l'ouverture de la fenêtre Rapprochement des transactions).
CB110001 (Détails de Réconciliation Maître) :
- CB_Date_Last_reconciled=Date de clôture CB de la dernière période CB réussie dans CB900025.
DYNAMICS..CBINT605 (DYNAMICS montants réconciliés) :
- DATE1=CB_Closing_Date de l’enregistrement correspondant de CB900025
- CB_GL_Balance=CB_Closing_Balance de l’enregistrement de CB900025 correspondant
- Remarque : la CB_Period actuelle n’a pas d’enregistrement dans ce tableau.
CB600005 (montants rapprochés de la société) :
- DATE1=de la date de clôture CB de l’enregistrement CB900025 correspondant
- CB_GL_Balance=CB_Closing_Balance de l’enregistrement CB900025 correspondant
- Remarque : La CB_Period actuelle n’a pas d’enregistrement dans ce tableau.
Le CB600001 (Configuration de réconciliation) :
- CB_Last_Statement_Balance=CB_Closing_Balance du dernier CB_Period réussi dans CB900025
- DATE1=CB_Closing_Date de la dernière CB_Period réussie dans CB900025.
CM00100 (Checkbook Master) :
- Last_Reconciled_Date=CB_Closing_Date de la dernière CB_Period réussie dans CB900025
- Last_Reconciled_Balance=CB_Closing_Balance de la dernière CB_Period réussie dans CB900025.
CB200001 (transaction de rapprochement) :
- Contient des enregistrements CBM qui seront disponibles pour la sélection du rapprochement de la CB_Period actuelle.
- Enregistrements envoyés à CB400005 après la réussite de la réconciliation.
table CB400005 (transaction de réconciliation historique) :
- Contient des enregistrements CBM à partir de rapprochements antérieurs.
table CB900035 (transactions d’enquête) :
- CB_Period=CB_Period de l’événement de rapprochement correspondant.
- CB_Status=1 (non réconcilié) ; 2 (réconcilié)
Note
La table peut être recréée en la supprimant avec SQL et en sélectionnant Update from Recon depuis la fenêtre d'enquête sur les transactions / d'annulation (Enquête | Financier | Gestion bancaire | Demande de transaction).
Plus d’informations
Les informations ci-dessus ont été publiées en externe dans Erreur de rapprochement de la gestion du carnet de chèques : « Il y a un problème avec les soldes de ce carnet de chèques ».