Le message d'erreur à l'import est de la forme :
Import-AXModelStore : The pipeline has been stopped.
At line:1 char:20
+ Import-AXModelStore <<<< -file "C:\monmodel.axmodelstore" -Sch
emaName "MONSCHEMA" -Database MADATABASE -Server MONSERVER -D
etails
+ CategoryInfo : OperationStopped: (:) [Import-AXModelStore], Pip
elineStoppedException
+ FullyQualifiedErrorId : Invalid object name 'MONSCHEMA.ModelSecurityComm
on'.,Microsoft.Dynamics.AX.Framework.Tools.ModelManagement.PowerShell.Impo
rtStoreCommand
Vérifier que vos dev soit bien tous importés dans la bonne couche sur votre serveur de compilation et que vous n'auriez pas importé un XPO en CUS puis une mise à jour de ce XPO en USR par exemple (c'était mon cas).
J'ai résolu en forçant l'écrasement des ID (j'imagine par la couche la plus elevée) en ajoutant un attribut sur la commande powershell Import-AXModelStore :
Import-AXModelStore -file "C:\monmodel.axmodelstore" -SchemaName "monschemas" -Database madatabase -Server monserver -IdConflict "overwrite" -Details
L'Attribut IDconflict peut prendre la valeur reject ou overwirte (comme l'attribut de la commande AXUtil permettant de faire la même opération).
Corriger ensuite votre environnement de compilation :
1) En important dans la bonne couche les XPO en conflit.
2) En supprimant la customisation dans la couche du dessus
3) compiler l'application
4) Extraire le modelstore
5) Réimporter le modelstore sans l'attribut -IDConflict
Attention, veiller à importer le XPO (étape 1) avant de supprimer la modification en couche supérieure, sinon, une perte de données peut être effectuée par la suppression (en cas de création de table ou de champs)
Quelques liens utiles :
Lien sur les méthodes de déploiements
Une discussion qui m'a permit de comprendre
Un white paper microsoft sur le sujet
Merci pour l'info.
ReplyDeleteJean