Une classe est la description d'une structure de données qui gère une entité (par exemple : un client, une écriture comptable générale, un produit, une commande de vente, etc.).

La fonction Classes permet la création et la modification du dictionnaire des classes. Une classe doit être validée pour pouvoir être utilisée dans le code ou dans une représentation. Si une classe n’est pas valide, il y aura une erreur à l’exécution.

Pré-requis

SEEREFERTTO Reportez-vous à la documentation de Mise en oeuvre

Gestion de l'écran

En-tête

Onglet Général

Cet onglet décrit les informations principales de la classe.

Cet onglet contient les tableaux suivants :

Tableau Collections

Le tableau Collections décrit toutes les collections gérées dans la classe. Le code de collection est attribué, dans l'onglet Propriétés, à :

    • Des propriétés simples qui décrivent un tableau de propriétés. Cela va donner lieu à la création d’une classe enfant contenant l’ensemble des propriétés. L’instance de cette classe aura pour nom le code collection.
    • Une instance d'une classe enfant qui décrit un tableau de classes enfants.

Tableau Scripts

Le tableau Scripts liste les scripts dans lesquels les étiquettes $METHODS et $PROPERTIES sont disponibles pour les développeurs partenaires qui souhaitent ajouter leur propre code associé à des événements de superviseur (en particulier pour la gestion des opérations Création, Lecture, Mise à jour, Suppression, ou opérations CRUD, soit Create, Read, Update and Delete).

Onglet Méthodes

Cet onglet définit les méthodes supplémentaires et les opérations disponibles sur la classe. La différence entre une opération et une méthode est la suivante :

Opération

Une opération peut être exécutée dans n'importe quel contexte et a besoin de valeurs de clés pour construire le contexte dans laquelle elle fonctionne. Une opération peut être appelée par un lien dans l'interface de n'importe quelle page lorsque les valeurs de clés sont fournies. 

Méthode

Une méthode ne fonctionne que si un contexte existe (l'instance de la classe est renseignée).

Cet onglet contient les tableaux suivants :

Tableau Méthodes

Le tableau Méthodes liste les méthodes et opérations et leurs informations correspondantes.

Tableau Clés

Le tableau Clés liste les paramètres de segments de clés, associés à l'opération du tableau précédent.

Tableau Paramètres

Le tableau Paramètres liste les paramètres associés à la méthode et à l'opération du tableau précédent et leurs informations correspondantes.

Onglet Méthodes standard

Cet onglet décrit la disponibilité de la méthode standard CRUD ainsi que les autres méthodes prises en charge par la couche superviseur de la classe.

Onglet Propriétés

Cet onglet contient les tableaux suivants :

Tableau Propriétés

Le tableau Propriétés liste les propriétés de la classe.

Tableau Clés

Le tableau Clés liste les segments de clé correspondant à la ligne sélectionnée dans le tableau Propriétés (si le type de propriétés est lié à une table (technologie de la version 6) ou à une classe persistante).

Tableau Paramètres

Le tableau Paramètres liste les paramètres d'une propriété, selon la ligne sélectionnée dans le tableau Propriétés, si les règles de la propriété exigent des paramètres complémentaires. Vous devrez alors entrer une valeur pour appeler la règle avec les bons paramètres, selon le contexte.

Onglet Mapping

Cet onglet définit comment les opérations CRUD, si elles existent, sont liées aux tables de la base de données pour les instances principales de la classe et pour les instances des classes enfants. Vous pouvez entrer des informations uniquement pour les classes de type "Persistante".

Onglet Divers

Cet onglet définit des informations complémentaires concernant les droits d'accès.

Cet onglet contient les tableaux suivants :

Tableau Propriétés

Le tableau Propriétés particulières affiche les propriétés utilisées pour le filtrage des données gérées par la classe.

Tableau Filtres

Le tableau Filtres définit des filtres supplémentaires qui peuvent être sélectionnés quand la classe est utilisée pour accéder uniquement à un sous-ensemble de données gérées par la classe.

Tableau Historique

Le tableau Historique contient les informations qui assurent la compatibilité avec le code de la version 6 pour les restrictions d'accès aux données.

Boutons spécifiques

Arborescence

Ce bouton permet d'afficher une fenêtre dans laquelle apparaît l'arborescence de la classe.

Validation

Ce bouton permet la validation de la classe et engendre :

  • Une vérification de la cohérence générale de la description de la classe.
  • La génération du code de la classe (propriétés, méthodes et opérations) dans un script "C_classe.stc", où classe est le code de la classe.
  • La génération du code de scripts d'Sage X3 additonnels où la logique métier associée à l'opération de CRUD ainsi que les appels d'évènements sont codés.

SEEWARNING Vous ne devez pas modifier le programme généré car il est automatiquement recréé pendant la validation.

Copie

Messages d'erreur

Outre les messages génériques, les messages d'erreur suivants peuvent apparaître lors de la saisie :

Représentation inactive

Des erreurs sont survenues quand la représentation a été sauvegardée : la représentation n'est pas valide et ne peut pas être utilisée.

Classe inexistante

La classe référencée dans la représentation n'existe pas.

Table inexistante

La table référencée dans la représentation n'existe pas.

Une classe technique ou système ne peut pas être utilisée dans une représentation

Une classe référencée par la représentation ne peut être utilisée.

Classe inactive

La classe n'est pas active (par exemple, lorsqu'un code activité sur la classe a pour valeur 'Inactif').

Fonction X3 non autorisée

Code des fonctions d'X3 utilisé pour déclencher un lien de convergence : ne peut être présent que sur des représentations Bureau et non sur des réprésentations Mobile et Tablette.

Le code activité $1$ associé à la collection $2$ n'est pas de type Dimensionnement

Le code activité utilisé pour la taille des collections doit être de type Dimensionnement.

Valeur 0 impossible pour les classes représentations

Vous ne pouvez utiliser un code activité égal à 0 pour dimensionner une collection dans une représentation.

Champ obligatoire

Contrôle sur un filtre. Le champ est obligatoire.

Informations complémentaires

Des modifications effectuées sur la classe peuvent avoir un impact non seulement sur ​​les représentations qui intégrent la classe, mais aussi sur les représentations qui ont un lien sur une facette de ces représentations. L'entrée d'une représentation dans le dictionnaire peut déclencher une mise à jour automatique des liens. Dans ce cas, un message demande à l'utilisateur de sauvegarder la représentation mise à jour. Le lien sur les représentations se fait alors automatiquement lors de l'installation d'un patch ou lors de la revalidation du dossier.

Tables mises en oeuvre

SEEREFERTTO Reportez-vous à la documentation de Mise en oeuvre