Programmatisch een project maken voor objecten in een bepaalde laag
In dit artikel wordt een codevoorbeeld beschreven om te beschrijven hoe u programmatisch een project maakt voor objecten in een bepaalde laag in Microsoft Dynamics AX.
Van toepassing op: Microsoft Dynamics AX
Origineel KB-nummer: 2004467
Samenvatting
U kunt een Microsoft Dynamics AX-project maken dat alle toepassingselementen bevat die zich in een bepaalde laag bevinden. Als u bijvoorbeeld het VAR-laagbestand *.aod
opnieuw wilt maken, moet u alle toepassingselementen in de VAR-laag in een project ophalen, het project exporteren naar een xpo, het VAR-bestand *.aod
verwijderen en u ten slotte aanmelden bij het zojuist gemaakte VAR-bestand *.aod
om de xpo te importeren. Wanneer u de xpo importeert, kunnen alle toepassingselementen opnieuw worden gemaakt in het nieuwe *.aod
bestand. De code in dit document laat zien hoe u dit doet.
Meer informatie
Wanneer de X++-code in dit voorbeeld wordt toegevoegd aan een taak in de AOT en wordt uitgevoerd, maakt de code een privéproject met de naam VarLayerChanges
. Het VarLayerChanges
project bevat alle elementen die aanwezig zijn in de VAR-laag. Als u een project voor een andere laag wilt maken, wijzigt u de tekenreeks 'VarLayerChanges'
in de laag waarvoor u deze nodig hebt, bijvoorbeeld 'CusLayerChanges'
. Wijzig vervolgens de opsomming UtilEntryLevel::var
in de andere laag, bijvoorbeeld UtilEntryLevel::cus
.
TreeNode treeNode = infolog.projectRootNode();
ProjectNode projectNode;
UtilElements utilElements;
;
treeNode = treeNode.AOTfirstChild();
treeNode.AOTadd('VarLayerChanges');
projectNode = treeNode.AOTfindChild('VarLayerChanges');
projectNode = projectNode.getRunNode();
while select utilElements WHERE utilElements.utilLevel == UtilEntryLevel::var
{
ProjectNode.addUtilNode(utilElements.recordType, utilElements.name);
}
ProjectNode.AOTsave();