Création d'un source Oxygène
Un source Oxygène est un fichier d'extension L4G écrit dans le langage spécifique Oxygène. Un source peut contenir un ou plusieurs objets qui donneront un écran de saisie, un traitement, une édition ...
Cette étape permet aussi bien de créer un fichier L4G qu’un fichier ressource (ECR, ETA …).
Nouvel élément / source Oxygène
Sélectionnez le projet concerné dans l'explorateur de solutions
Faites un clic droit 'Ajouter ... > Nouvel élément ...'.
Dans 'Catégories', sélectionnez 'Visual C++'
dans 'Modèles', sélectionnez 'Source Oxygène'
dans 'Nom', saisissez le nom du fichier L4G (sans extension)
vérifiez que 'Emplacement' contient le répertoire de votre projet
cliquez sur 'Ajouter' : l'assistant de création d'un source Oxygène s'affiche.
Visual Studio va créer le fichier C:\Oxygene\oxydev\grc\client\gestion.l4g.
Les fichiers gestion.cpp et gestion.hpp seront créés dans C:\Oxygene\oxydev\grc\client\cpp.
Assistant de création d'un source Oxygène
Cet assistant vous permet de pré-remplir votre futur source suivant vos besoins. Deux onglets sont disponibles depuis le menu de gauche : ‘Général’, 'Options', 'Dérivation' et ‘Informations’. Toutes ces informations sont facultatives : vous pourrez les saisir ou les modifier directement dans le source par la suite.
Onglet Général
dans 'Créer un L4G', sélectionnez le modèle standard qu'utilisera votre l'objet
l'option 'Lancement automatique de l'objet' ajoute l'attibut (Auto) à l'objet. Cette option n'est utilisable que dans un projet de type RUN ou IOX.
si vous souhaitez créer un écran du même nom, choisissez un modèle dans 'Créer un Ecran'
si vous souhaitez créer un état du même nom, choisissez un modèle dans 'Créer un Etat'
pour modifier ces listes, consultez l'onglet 'Informations'
cliquez sur 'Suivant' pour accéder à l'onglet 'Options'
Onglet Options
dans 'Titre', saisissez la description courte de votre objet
dans 'Base', saisissez le code de la base de données
dans 'Table', saisissez le code de la table principale de l'objet
cliquez sur 'Suivant' pour accéder à l'onglet 'Dérivation'
Onglet Dérivation
Si votre objet est destiné à dériver un autre objet, cet onglet propose de saisir les informations obligatoires pour une dérivation. Attention, le projet ne compilera que si vous avez saisi les informations concernant la dérivation lors de la création du projet.
dans 'Chemin du fichier source', sélectionnez la source L4G (ou HPP) que vous dérivez. Le chemin doit être relatif au répertoire de la solution.
dans 'Composant', saisissez le code du composant (ou Domaine) contenant l'objet à dériver
dans 'Objet', saisissez le code de l'objet à dériver
'Chemin des autres dépendances' sert à saisir le chemin des sources dont dépend le fichier source saisi précédemment. Ces autres sources contiennent en général les modèles utilisés par l'objet que l'on dérive.
cliquez sur 'Terminer'. Le nouveau source L4G créé s'ouvrira
Onglet Informations
L'onglet 'Général' présente des listes de templates L4G, d'écrans ou d'états. Ces listes ainsi que ces templates (ou canevas) sont modifiables.
Pour cela, ouvrez le répertoire indiqué en vert (copiez-le et collez-le dans la barre d'adresse d'un Explorateur Windows) puis éditez Templates.xml :
Les templates sont des modèles de fichiers qui contiennent du texte pré-saisi et des symboles.
Les symboles sont des variables remplacées par leur valeur lors de la création du fichier.
Comment ajouter un template :
ajouter une ligne <template type="[type]" desc="[desc]" rep="[rep]">[fichier]</template> avec :
[type]: l4g, ecr, ou eta (en minuscules)
[desc]: description du template
[rep]: répertoire de destination dans le projet (ex: global)
[fichier]: chemin relatif du fichier template dans "Templates"
l'ordre des lignes est respecté à l'affichage
tous les attributs sont obligatoires sauf rep
créer le modèle [fichier] (consulter l'aide VS sur les "directives de modèle").
Comment ajouter un symbole :
ajouter une ligne <symbole nom="[nom]">[valeur]</symbole>
[nom]: identifiant du symbole
[valeur]: texte à insérer
placer le symbole dans les fichiers templates (ex: /* Version: [!output VERSION] */)
Exemple de source créé
Voici dans notre projet, le nouveau source et son écran.
le projet ‘client’ contient le source gestion.l4g
le dossier ‘Global’ contient gestion.ecr
le dossier ‘Sources C++’ contient gestion.cpp et gestion.hpp