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