PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Acceder à une rubrique 'dynamiquement'
Acceder à une rubrique 'dynamiquement'
Débuté par CROCE Jean-FRançois, 21 nov. 2006 17:56 - 11 réponses
Posté le 21 novembre 2006 - 17:56
Bonjour à vous tous,

Comment puis-je faire pour acceder à un rubrique dynamiquement, je m'éxplique :
-> dans mon fichier hyperfile, j'ai 60 rubriques qui sont :
- janvier_prévu
- janvier_réalisé
- janvier_horaires
- janvier_commentaires
- février_prévu .... et ainsi de suite jusqu'a décembre

J'y accède par programmation si je fait :
MONFICHIER.janvier_prévu
mais je ne voudrais pas reproduire 12 fois ces 4 lignes.

Donc comment je peut faire pour acceder au rubrique en faisant un genre de syntaxe du style :
MONFICHIER[mois_en_cours + "_prévu"] = 2
MONFICHIER[mois_en_cours + "_réalisé"] = 3
MONFICHIER[mois_en_cours + "_horaires"] = "3 -> 5"
MONFICHIER[mois_en_cours + "_commentaires"] = "toto"

Merci pour vos réponse, Jean-François
Posté le 21 novembre 2006 - 18:13
CROCE Jean-FRançois a écrit :
Bonjour à vous tous,

Comment puis-je faire pour acceder à un rubrique dynamiquement, je m'éxplique :
-> dans mon fichier hyperfile, j'ai 60 rubriques qui sont :
- janvier_prévu
- janvier_réalisé
- janvier_horaires
- janvier_commentaires
- février_prévu .... et ainsi de suite jusqu'a décembre

J'y accède par programmation si je fait :
MONFICHIER.janvier_prévu
mais je ne voudrais pas reproduire 12 fois ces 4 lignes.

Donc comment je peut faire pour acceder au rubrique en faisant un genre de syntaxe du style :
MONFICHIER[mois_en_cours + "_prévu"] = 2
MONFICHIER[mois_en_cours + "_réalisé"] = 3
MONFICHIER[mois_en_cours + "_horaires"] = "3 -> 5"
MONFICHIER[mois_en_cours + "_commentaires"] = "toto"

Merci pour vos réponse, Jean-François

Regardes l'aide sur les indirections

--
Jacques Trepp
Albygest - 81160 - St Juery
jacques-pas de spam.trepp@free.fr
(enlever '-pas de spam' pour me joindre)
http://www.albygest.com
Posté le 21 novembre 2006 - 18:13
Bonjour,
Jetes un coup d'oeil du côté des indirections.

Frédéric.
Posté le 21 novembre 2006 - 18:13
Bonjour,

Utiliser les indirections {}

{MONFICHIER+"."+mois_en_cours+"_prevu",IndRubrique}

Bon Dev

JV
Posté le 21 novembre 2006 - 18:14
voir les indirections dans l'aide

bon dev,
eric l.

> CROCE Jean-FRançois a écrit :
Bonjour à vous tous,

Comment puis-je faire pour acceder à un rubrique dynamiquement, je m'éxplique :
-> dans mon fichier hyperfile, j'ai 60 rubriques qui sont :
- janvier_prévu
- janvier_réalisé
- janvier_horaires
- janvier_commentaires
- février_prévu .... et ainsi de suite jusqu'a décembre

J'y accède par programmation si je fait :
MONFICHIER.janvier_prévu
mais je ne voudrais pas reproduire 12 fois ces 4 lignes.

Donc comment je peut faire pour acceder au rubrique en faisant un genre de syntaxe du style :
MONFICHIER[mois_en_cours + "_prévu"] = 2
MONFICHIER[mois_en_cours + "_réalisé"] = 3
MONFICHIER[mois_en_cours + "_horaires"] = "3 -> 5"
MONFICHIER[mois_en_cours + "_commentaires"] = "toto"

Merci pour vos réponse, Jean-François
Posté le 21 novembre 2006 - 18:27
Sans chercher l'algo : et s'il y plusieurs années ? Je pense qu'il doit y avoir un problème d'analyse (MLD)
Posté le 21 novembre 2006 - 21:13
Marrante la question de départ.

Moi, j'aurais fait une table de 5 ou 6 champs (mois, année, prév, réalisé, horaire, commentaire) et enregistré 12 lignes pour chaque année.
(et même peut-être ajouté une table des mois avec jointure)

S'il n'est pas trop tard, il te faut revoir la définition de ta table.
Posté le 21 novembre 2006 - 21:13
Il ne peut qu'y avoir qu'une seule année. En fait, je vais faire un état qui récapitule le planning prévisionnel et le planning réalisé sur toute une année et ce sur une seulle feuille.

Après avoir étudié toutes les possibilités (traitement directement dans l'état), la methode ou je vais chercher mes données, je les traitent, les place dans une table temporaire, me semble une bonne solution.

En tout cas merci pour ta réponse. Jean-FRançois
Posté le 21 novembre 2006 - 21:14
Merci pour vos réponses très rapide, je vois ca demain...Bonne soirée, Jean-François
Posté le 22 novembre 2006 - 09:41
Après quelques tests hier soir, ca marche tip-top, c'est assez rapide, et j'arrive à remplir ma table finale (celle de 60 rubrique) très rapidement et avec très peut de lignes de codes (une vingtaines).

En tout cas merci a vous...
Posté le 22 novembre 2006 - 09:42
Là je ne comprends pas pourquoi c'est la seule solution.

Ma philosophie des SGBD, c'est "dispatcher les données dans des tables simples, en évitant les redondances".
Si on fait comme ça, on s'en sort toujours.
Si on fait autrement ((comme tu sembles le faire avec truc_janv, truc_fév, truc_mars...) on aboutit souvent à des difficultés.

Mais c'est toi qui voit.
Amicalement.
Posté le 22 novembre 2006 - 10:37
Faut faire une indirection :
//déclarer une variable contenat le nom du ficher.
gsFic est une chaîne="Export"


//mettre le nom de la rubrique dans une variable
SW_Empl=VentesDis.Emplacement
HLitRecherche(Export,IDExport,SW_nuEnr)
SI HTrouve ALORS
// syntaxe (variableFichier.variableRubrique
{gsFic+"."+SW_Empl}={gsFic+"."+SW_Empl}+VentesDis.Montant