bonjour,
j'ai un champ autoicrement(table paradox7) où j'utilise une codification qui doit etre recommencer du numéro 1 au début de chaque annèe scolaire(en septembre)
que doit je faire pour le dbedit de ce champ?
bonjour,
j'ai un champ autoicrement(table paradox7) où j'utilise une codification qui doit etre recommencer du numéro 1 au début de chaque annèe scolaire(en septembre)
que doit je faire pour le dbedit de ce champ?
A mon avis, on ne modifie pas un numéro autoincrémenté dans une base !! Ce sont des numéros séquentiels uniques incrémenté de 1 en 1 lorsqu'un nouvel enregistrement est ajouté à une table.
Donc il vous faut trouver une autre solution :
- un autre champ dans la même table, dans lequel vous inscrirez votre codification personnelle ()
- une nouvelle table par année ()
- sauvegarder le dernier numéro automatique de l'année précédente et le déduire des nouvelles valeurs obtenues ()
- modifier vos requêtes de BDD pour tenir compte de la date d'enregistrement: peut-être faut-il repenser la base ??
- autre ? ...........
Merci,j'ai deja penssè à une table qui contient les annèes scolaires mais le problème est que je peux avoir une saisie automatique de ces annèes de façon par exemple(2009-2010) en 01 septembre sera (2010-2011) automatiquement,à savoir je suis débutante en Delphi.
Il vous faut récupérer l'année en cours année N, et si cette date est postérieure au 1/09 vous pouvez afficher les dates N et N+1, dans le cas contraire, vous pouvez afficher N-1 et N dans votre zone de saisie "semi-automatique".
Ce-ci dit, si les inscriptions des élèves se font du 1er juillet au 30 septembre, il suffit de récupérer les années d'inscription des élèves (Ni) et d'afficher Ni et Ni+1, de N0 à Nmax dans la table : une sorte de requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT DISTINCT annee FROM T_ELEVES ORDER BY annee ASC![]()
Mercie,votre conception m'a guidè à une idèe,je veux ajouter un champ(annèe)où dans le dbedit ou dbtext affectè à ce champ s'affiche automatiqement l'annèe courante+l'annèe qui suit(2009-2010)à l'aide de la fonction strtoyear-strtoyear+1mais le problème que l'annèe scolaire commence en 01 septembre alors qu'est ce que je doit faire pour chaque début du mois de 09 s'affiche l'annèe courante-l'annèe qui suit par exemple nous somme(2008-2009) en premier septembre prochain sera(2009-2010).
Salut;
avec un simple test sur la date ça ne se règle pas ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part if date > 31/08/2008 then annee_scolaire := '2009-2010';
Personnellement, je pencherais pour une fonction AnneeScolaire(Date) qui renvoie l'année scolaire sous forme de chaîne, en fonction de la date:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 function AnneeScolaire(date:TDateTime):String; var annee, mois, jour : word; begin DecodeDate(date,annee,mois,jour); if mois > 8 then inc(annee); //en septembre on passe à l'année scolaire suivante result := IntToStr(annee-1) + '-' + IntToStr(annee); end;
si tu es au début de projet, mieux passé au firberd
avec FB pour incrémenté tu utilise un générateur, qui tu peut initialisé à chaque début d'année scolaire
bon dev
Salut;
je n'ai pas compri qu'est ce que vous voulez dire par(firberd),moi je connais que le Delphi et je suis débutante ainsi que j'ai besoin de ce projet au debut du mois 09
voir forum FB,
le site de FB,et sur sourceforge![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager