Lorsque nous avons plusieurs AOS dans le même environnement, de nombreux moments où nous faire une installation de production ou de faire des ajustements dans le code, ils ne sont visibles que sur la AOS dans lequel nous faisons des ajustements, par exemple, si nous avons une production dynamique de l'environnement AX et fait un pas à la production, ceux-ci ne sont visibles que dans ce AOS, et comme il est un environnement de production ne peuvent pas baisser le AOS ou de services Dynamics AX, pour cela, il faut vider le cache de AOT dans tous les AOS, de prendre toutes les modifications AOS.
Pour les changements à installer XPO ou apporter des modifications au code et sont prises toutes les AOS sont prises, ce que nous faisons est de créer un emploi et exécutez le code suivant pour nettoyer le cache de AOT dans tous les AOS, ce code ce qu'il fait est rafraîchir le dictionnaire AOT puis mettre à niveau l'AOS, vous devez exécuter une fois que nous avons fait les changements de code.
1
2
3
4
5
6
7
8
9
10
| statique serveur vide refreshAOS ( Args _args )
{
;
xSession :: removeAOC ( ) ;
SysTreeNode :: refreshAll ( ) ;
SysFlushDictionary :: doFlush ( ) ;
SysFlushAOD :: doFlush ( ) ;
xSession :: updateAOC ( ) ;
}
|
Ce code est une autre option si vous continuez à avoir des problèmes dans le cache AOT, il est toujours recommandé pour la sécurité exécuter les deux emplois pour effacer le cache de AOT dans le AOS, et que des modifications sont apportées dans tous les AOS installés.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| public server static void refreshServer ( )
{
#AOT ;
TreeNode :: findNode ( #TablesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #TableMapsPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #ViewsPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #ExtendedDataTypesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #BaseEnumsPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #LicenseCodesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #ConfigurationKeysPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #SecurityKeysPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #TableCollectionsPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #PerspectivesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #MacrosPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #ClassesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #ReportsPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #ReportTemplatesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #SectionTemplatesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #QueriesPath ) . AOTrefresh ( ) ;
TreeNode :: findNode ( #JobsPath ) . AOTrefresh ( ) ;
Dictionary :: aodFlush ( ) ;
Dictionary :: dataFlush ( ) ;
flush UtilElements, UtilIdElements ;
}
|
Ne pas oublier d'utiliser les commentaires pour toutes questions ou préoccupations.
Aucun commentaire:
Enregistrer un commentaire