Question

Je suis face à des problèmes encore tout en apprenant, donc je suppose qu'il a tendance à empirer une fois que je joue avec les grands enfants: des avertissements dans la dynamique ne sont pas aussi précis et informatif que VS'S, il n'y a pas de conseils sur-souris, et les exceptions à me montrer exactement où je l'ai mal. Je suis trop habitué à Visual Studio, il est IntelliSense et tous les outils (la dynamique est tout à fait nouveau par rapport à Visual Studio)

Plus de résoudre des problèmes simples de code, je voudrais savoir comment résoudre les upcomming je pourrais avoir dans le code non écrit par moi ou quoi que ce soit d'autre que je voudrais résoudre en 3 minutes dans Visual Studio, ainsi que des conseils sur la façon pour survivre dans la hache de la dynamique sans tous les outils Visual studio.

Était-ce utile?

La solution

L'éditeur de code Dynamics AX a un certain IntelliSense, en tapant le nom d'une variable de table ou classe suivie. ou :: vous donnera une liste des champs ou des méthodes disponibles pour cet article. Une fois que vous tapez le (de lancer un appel de méthode, une info-bulle apparaît avec des paramètres disponibles sur cette méthode. Lors du démarrage d'une nouvelle ligne, vous pouvez faire un clic droit et Liste tableaux, Liste des classes, types de listes, etc. La plupart de ces commandes sont également disponible via raccourcis clavier . Remarque que l'IntelliSense ne fonctionne que si tout le code dans la méthode jusqu'à l'emplacement de votre curseur est syntaxiquement correct.

Assurez-vous que vous avez mis à jour la référence croisée dans votre environnement de développement (outils Outils / développement / Renvoi / périodique / mise à jour). Avec une référence croisée mise à jour, vous pouvez faire un clic droit ANY table, champ, classe, méthode, type de données étendu ou ENUM dans le AOT et choisissez Add-Ins / Cross-référence / Utilisé par pour voir où cet élément est utilisé dans la système.

Vous pouvez également utiliser les outils / Outils de développement / explorateur de code pour afficher la source de l'application avec tous les types, les variables et les méthodes transformées en liens hypertextes afin que vous pouvez cliquer pour aller directement à la définition de cet élément.

Un autre outil utile est l'arbre de la hiérarchie d'applications, disponibles sous Outils Outils / développement, ou sur le clic droit menu Add-Ins. Cela va vous montrer la hiérarchie des classes, de sorte que vous pouvez facilement voir, par exemple, que SalesFormLetter dérive de FormLetter, qui dérive de RunBaseBatch.

Dans l'éditeur, vous pouvez mettre en évidence le texte et clic droit Lookup Propriétés / Méthodes ou de recherche Définition.

Si vous essayez de traquer où dans le système un message Infolog particulier est généré, il y a deux stratégies à utiliser:

  1. Définir un point d'arrêt sur la première ligne du procédé Info.add (). Puis quand vous exécutez le code générant le message, vous sauteront dans la débogueur dès que le Infolog est généré. Vous pouvez alors regarder la pile trace dans le débogueur pour voir où le code est que généré le message.

  2. Outils / développement Run Outils / Label / éditeur d'étiquettes et recherche pour le texte du message. Sélectionner l'ID d'étiquette du message, puis cliquez sur Utilisé par pour voir où que message est utilisé dans le système.

Autres conseils

Il y a aussi http://www.axassist.com/ qui étend IntelliSense et beaucoup d'autres < a href = "http://www.axaptapedia.com/index.php/Extending_IDE" rel = "nofollow noreferrer"> extensions

Qu'est-ce que ces gars-là ont dit est déjà très intéressant et utile .

Je voudrais ajouter que, dans AX dans la vie réelle, vous travaillez probablement avec plusieurs contextes. par exemple. L'exécution de code dans le client, le code en cours d'exécution dans le serveur, le code en cours d'exécution dans le code p et en IL, intégrations COM, portail d'entreprise et ainsi de suite.

Mon point est, si vous voulez comprendre quelque chose à travers le débogage, vous devez d'abord comprendre où le code (s) que vous aimeriez déboguer est en cours d'exécution.

Sachant ce qui est important parce que vous pourriez avoir pour permettre le débogage ou donner des autorisations à plusieurs endroits.

Exemples:

  • les utilisateurs de débogage Windows AD (ajoutez-vous)
  • Autoriser le débogage sur le client
  • Laisser sur le serveur
  • Désactiver IL si vous souhaitez utiliser MorphX, sinon attacher le processus VS.
  • Autoriser le service de publication Wide Web mondiale pour interagir avec le bureau pour EP.

Une dernière chose, vous commencez à travailler avec une hache en ce moment, peut-être vous aurez besoin de travailler avec AX7 (Dynamics 365 pour les opérations). Cette version du système fonctionne uniquement avec visual studio . Il est encore x ++, mais vous avez beaucoup de choses VS vous fournit.

Jetez un coup d'oeil sur EditorScripts Classe, Sur éditeur AX vous pouvez l'utiliser par un clic droit et choisissez « Scripts ». Il est une sorte de IntelliSense qui peut faire par vous-même, par exemple: voici mon commentaire en ligne chaque fois que je tape « onglet » « mycom » et appuyez sur

public void template_flow_mycom(Editor editor)
    {
        xppSource   xppSource   = new xppSource(editor.columnNo());
        int         currentline = editor.currentLineNo();
        int         currentcol = editor.columnNo();

        Source      template = "//Partner comment "+date2str(today(),123,2,1,3,1,4, DateFlags::FormatAll )+" at "+time2str(timenow(), 1, 1)+" by MAX - Begin\n";
        template+=strRep(" ", currentcol)+ "\n";
        template+=strRep(" ", currentcol)+ "//Partner comment "+date2str(today(),123,2,1,3,1,4, DateFlags::FormatAll )+" at "+time2str(timenow(), 1, 1)+" by MAX - End\n";

        editor.insertLines(template);
        //move cursor to the empty line between the comments
        editor.gotoLine(currentline+2);
        editor.gotoCol(currentcol+4);
    }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top