2008-12-13 8 views
3

Y a-t-il un moyen, dans Axapta/Dynamics Axe, de créer un type de données étendu de type entier qui autorise uniquement l'entrée de valeurs dans une plage spécifiée (par exemple, si le type de données étendu est destiné à stocker des années, je devrais être en mesure de définir une gamme comme 1900-2100), ou dois-je gérer la plage en utilisant le code X ++?Plage sur les champs entiers dans Axapta/Dynamics Ax

Et si j'ai besoin d'utiliser du code X ++ pour gérer la plage, quelle est la meilleure façon de le faire?

Répondre

2

Vous ne pouvez pas spécifier la plage sur le type de données étendu lui-même. Si le type est utilisé pour un champ de table, vous pouvez ajouter du code aux méthodes insert et update de la table, afin de valider la valeur chaque fois que l'enregistrement est mis à jour. Cette approche pourrait cependant avoir un coût en termes de performance.

Vous pouvez également choisir d'ajouter simplement le code de la méthode validateWrite de la table, si vous êtes satisfait de la validation qui n'a lieu que lorsque la valeur est modifiée à partir de l'interface utilisateur.

4

Je vous suggère d'utiliser le champ '' validateField '' de la table correspondante. Recherchez la méthode dans AOT \ Data Dictionay \ Tables pour voir de nombreux exemples.

Questions connexes