Delen via


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();