Résoudre les problèmes des pages API
Cet article traite des messages que les pages API de l'extension MCP Guard renvoient dans Microsoft Dynamics 365 Business Central lorsqu'un assistant IA crée ou modifie des ordres de fabrication, calcule un plan, travaille avec des ordres d'assemblage ou modifie des tâches projet et des lignes planning projet, et lorsque le connecteur BC MCP Pro signale l'utilisation. Chaque titre est le message tel qu'il est renvoyé. Les mots en italique représentent une valeur qui diffère selon le cas.
Pour le message qui commence par Votre règle MCP Guard vous donne, voir Résoudre les problèmes de règles et de licences.
Un ordre de fabrication ne peut pas être créé comme terminé.
Cause : La requête crée un ordre de fabrication avec le statut terminé. Un ordre terminé ne provient que de la clôture d'un ordre lancé.
Solution : Créez l'ordre avec un autre statut : simulé, planifié, planifié ferme ou lancé.
Un ordre de fabrication a besoin d'une origine. Envoyez le type d'origine et le numéro d'origine, par exemple un numéro d'article.
Cause : La requête crée un ordre de fabrication sans numéro d'origine.
Solution : Envoyez sourceType et sourceNumber, puis quantity et dueDate. Voir API de production.
L'ordre de fabrication numéro est terminé et ne peut pas être supprimé.
Cause : La requête supprime un ordre de fabrication qui est terminé. Un ordre terminé fait partie de l'historique et est conservé.
Solution : Aucune via l'API. Un ordre de fabrication terminé n'est pas supprimé.
La suppression d'un ordre de fabrication lancé est refusée
Cause : Une production, une consommation ou une capacité a été validée sur l'ordre lancé. Business Central refuse de le supprimer avec son propre message.
Solution : Contrepassez ces validations et terminez plutôt l'ordre. Voir API de production.
Le statut et le numéro d'un ordre de fabrication ne peuvent pas être modifiés ici. Utilisez l'action Lancer pour lancer l'ordre.
Cause : La modification contient un autre statut ou un autre numéro pour un ordre de fabrication existant. Le statut et le numéro identifient l'ordre : ils ne peuvent donc pas être changés dans une requête de modification.
Solution : N'incluez pas status ni number dans la modification. Pour lancer l'ordre, utilisez l'action release. Voir API de production.
L'ordre de fabrication numéro est terminé et ne peut pas être modifié.
Cause : La requête modifie ou actualise un ordre de fabrication qui est terminé.
Solution : Aucune via l'API. Un ordre de fabrication terminé n'est pas modifié.
L'ordre de fabrication numéro a le statut statut et ne peut pas être lancé.
Cause : L'action release a été appelée pour un ordre qui n'est ni simulé, ni planifié, ni planifié ferme. Par exemple, l'ordre est déjà lancé.
Solution : Lisez d'abord l'ordre et vérifiez son status. N'appelez release que pour un ordre simulé, planifié ou planifié ferme.
Une date de début et une date de fin sont requises.
Cause : L'action calculatePlan ou calculateCalendar a été appelée sans startingDate ou sans endingDate.
Solution : Envoyez à la fois startingDate et endingDate dans le corps de la requête. Voir API de planification et d'assemblage.
La date de fin date ne doit pas être antérieure à la date de début date.
Cause : L'action calculatePlan ou calculateCalendar a été appelée avec une date de fin antérieure à la date de début.
Solution : Envoyez une endingDate égale ou postérieure à la startingDate.
Seuls les ordres d'assemblage peuvent être modifiés ici ; type de document numéro n'en est pas un.
Cause : La requête vise un document d'assemblage qui n'est pas un ordre, par exemple un devis d'assemblage ou un ordre d'assemblage ouvert. Les pages API d'assemblage ne fonctionnent qu'avec les ordres d'assemblage.
Solution : N'utilisez l'API que pour les ordres d'assemblage. Modifiez les autres documents d'assemblage dans Business Central.
Le numéro de projet et le numéro de tâche d'une tâche projet ne peuvent pas être modifiés.
Cause : La modification contient un autre projectNumber ou taskNumber pour une tâche projet existante. Ces champs identifient la tâche.
Solution : N'incluez pas projectNumber ni taskNumber dans la modification. Pour utiliser un autre numéro, créez une nouvelle tâche. Voir API de projets.
Le projet, la tâche et le numéro de ligne d'une ligne planning projet ne peuvent pas être modifiés.
Cause : La modification contient un autre projectNumber, taskNumber ou lineNumber pour une ligne planning projet existante. Ces champs identifient la ligne.
Solution : N'incluez pas ces trois champs dans la modification. Pour déplacer une ligne vers une autre tâche, créez-y une nouvelle ligne.
L'utilisation ne peut être signalée que pour aujourd'hui (date a été indiqué).
Cause : Le connecteur a signalé l'utilisation pour un autre jour qu'aujourd'hui. Un jour avant ou après aujourd'hui est accepté, en raison des fuseaux horaires.
Solution : Signalez l'utilisation le jour des appels. Voir Utilisation par utilisateur.
Le nombre d'appels doit être compris entre 1 et nombre.
Cause : Le connecteur a signalé moins de 1 appel, ou plus qu'un seul rapport ne peut en contenir.
Solution : Signalez au moins 1 appel, et répartissez un nombre plus élevé sur plusieurs rapports.
La durée ne peut pas être négative.
Cause : Le connecteur a signalé une durationMs négative.
Solution : Signalez une durée de 0 ou plus.
L'assistant est obligatoire.
Cause : Le connecteur a signalé l'utilisation sans assistant.
Solution : Envoyez le nom de l'assistant IA, comme Claude, ChatGPT ou Copilot.
Seule la lecture fonctionne, la création et la modification ne fonctionnent pas
Cause : L'une des conditions pour écrire n'est pas remplie. L'écriture via les pages API de l'extension les exige toutes en même temps.
Solution :
- Vérifiez que Unblock Edit Tools est activé dans la configuration MCP, et que l'opération est activée pour la page. Voir Configurations MCP.
- Vérifiez que le niveau d'accès de la règle de l'utilisateur est Modifier ou supérieur. Voir Niveaux d'accès par module.
- Vérifiez que l'utilisateur dispose de l'ensemble d'autorisations MCP GUARD - USER. Sur la page Paramètres utilisateur MCP Guard, la colonne Ensemble d'autorisations utilisateur affiche Introuvable lorsqu'aucun ensemble affecté ne le comprend. Les ensembles MCP GUARD - PROD, MCP GUARD - ASSEMBLY et MCP GUARD - PROJECTS n'existent plus et n'ont aucun effet. Voir Ensembles d'autorisations.
- Vérifiez que l'utilisateur dispose des autorisations propres à Business Central sur les données.