2010-04-09 5 views
1

Est-il possbile de se déplacer aotnode dans Axapta par code (je veux achive le même mouvement que fait via alt-up, alt-down) Dynamics AX 2009 a méthode AOTmove, mais lorsque je tenteAxapta: Est-il possible de déplacer des nœuds AOT par programme?

#AOT 
ProjectNode root; 
//SysContextMenuAOT ctx = new SysContextMenuAOT(); 
ProjectGroupNode firstChild; 
ProjectGroupNode secondChild; 
; 
//root=ctx.first(); 
root = infolog.projectRootNode().AOTfindChild("Private").AOTfindChild("TestProject"); 
root = root.getRunNode(); 

firstChild = root.AOTfirstChild(); 
secondChild = firstChild.AOTnextSibling(); 

secondChild = firstChild.AOTnextSibling(); 
secondChild.AOTMove(secondChild.AOTparent()); 

puis l'appeler sur l'ensemble du projet, il déplace avec succès secondChildNode, MAIS il supprime tous les sous-nœuds à l'intérieur de secondChild.

+0

Pourriez-vous être plus précis sur les éléments que vous déménagez? En outre, vous prendre le code et faire un travail qui est directement exécutable et démontre votre problème. Faites-le sans référence à SysContexMenuAOT, car il dépend du contexte (surprise). –

+0

Ma mauvaise. Je pensais qu'il était impossible de prendre des nœuds de projet mais du contexte. Ok j'ai fixé le travail. Il fonctionne sur le projet privé "TestProject" avec structrue comme sur http://imgur.com/Wk87n.jpg. J'essaie de déplacer des nœuds à l'intérieur du projet (http://imgur.com/rbwqd.jpg). Si vous exécutez ce travail, il déplacera les noeuds, mais supprimera les sous-noeuds (http://i.imgur.com/rxNCg.jpg) – axapter

+0

Le second 'secondChild = firstChild.AOTnextSibling();' est redondant. –

Répondre

0

Cela ne semble pas fonctionner (avec les nœuds de projet).

AOTmove est utilisé exclusivement sous la forme SysFavoritesAddFavorite et SysFavoritesOrganizeFavorites. Vous pouvez obtenir des informations ici.

Questions connexes