begin process at 2013 05 23 15:58:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Base de données

 > 

Autre

 > 

Des données qui ne s'actualisent qu'au redemarrage du sistème. Comment y remédier???


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Des données qui ne s'actualisent qu'au redemarrage du sistème. Comment y remédier???

mardi 10 juillet 2012 à 18:36:03 | Des données qui ne s'actualisent qu'au redemarrage du sistème. Comment y remédier???

leader2000

Salut!

dans l'evènement onCreate, j'ai écrit ces codes afin d'avoir les noms listés dans un combobox. Curieusement, quand je sors et reviens sur ce form ou se trouve ce combobox. Les noms n'y apparaissent pas (dans le combox). Le dit combobox actualise les données (les noms) quand je redemarre le sisteme. Que faire?
J'ai fait company.Close; company.Open;
sans resultat.

begin
company.Open;
company.DisableControls;
try
while not company.Eof do
begin
cbxnome.Items.Add(company.FieldByName('prenom').AsString);
company.Next;
end;
finally

end;



Merci,
Developper est une dimension pour moi.
Leader2000
mardi 10 juillet 2012 à 21:27:48 | Re : Des données qui ne s'actualisent qu'au redemarrage du sistème. Comment y remédier???

pierrotk10d

Bonjour,
Je ne sait pas comment tu appelles ta form si c'est par la méthode Show ou ShowModal mais il ne devrait pas y avoir de problème puisque le TComboBox est rempli à la création de la fiche. Essaies dans l'événement OnShow de la fiche pour voir ce qui ce passe
Il manque le EnableControls; après le Finally
Si la table Company ne sert plus une fois le TComboBox rempli tu peux la refermer. Company.Close;
Le "With Company do begin" permet de ne pas trop s'user le bout des doigts en évitant de retaper x fois Company. Tu verras quand tu seras vieux!!!


pierrot
mardi 10 juillet 2012 à 22:25:31 | Re : Des données qui ne s'actualisent qu'au redemarrage du sistème. Comment y remédier???

pierrotk10d

Re bonjour,
Petite correction. Une fois le TComboBox rempli la table est sur l'EOF et à l'appel suivant elle y est toujours donc tu n'as rien dans ton TCombobox. Il faut donc mettre la table sur le premier enregistrement avant de remplir le TComboBox ou enregistrer la position de l'enregistrement actif avant le first avec PosEnr := Company.GetBookmark et se repositionner dessus une fois le TComboBox rempli avec un company.GotoBookmark(PosEnr) dans le finally;


pierrot
mercredi 11 juillet 2012 à 08:49:40 | Re : Des données qui ne s'actualisent qu'au redemarrage du sistème. Comment y remédier???

leader2000

Je crois que c'est moi qui n'était peut être pas clair dans mon language.
Au fait, quand je rempli ma table avec du "append" et "post", les nouvelles données sont théoriquement dans mon combobox (je dirai dans la mémoire). Mais jusque là pas encore dans le dit combobox. Les données y apparaissent seulement quand je sors totalement du sistème et le relance.
Ma preoccupation est celle-ci: pourquoi les données ne sont pas actualisées à l'instant... il faut d'abord relancer mon programme (delà elles reapparaissent!).

Merci,


Developper est une dimension pour moi.
Leader2000
mercredi 11 juillet 2012 à 22:02:08 | Re : Des données qui ne s'actualisent qu'au redemarrage du sistème. Comment y remédier???

pierrotk10d

Bonjour,
Il y a deux solutions.
Soit la fiche (cbxnome) qui contient le TComboBox est crée dynamiquement (donc détruite à la fermeture). Dans ce cas le TComboBox sera toujours rempli avec tous les enregistrements de ta table lors de sa création, car on parcours toute la table du 1èr au dernier enreg dans l'évènement OnCreate de la fiche.

Code Delphi :
// Exemple de fiche crée dynamiquement
procedure TForm1.PrenomClick(Sender: TObject);
Var fCombo: TfCombo;  // fCombo est la fiche qui contient le TComboBox
begin
  fCombo := TfCombo.Create(Self);
  Try
    fCombo.ShowModal;
  Finally
    fCombo.Free;
  end;
end;


Soit la fiche est toujours en mémoire (non détruite à la fermeture) dans ce cas il te faut rajouter dans l'événement AfterPost (par exemple)de ta table un bout de code qui ajoute aux items du TComboBox le champs prénom de l'enregistrement que tu viens d'insérer dans la table.

Exemple pour rajouter le prénom dans le TComboBox
Code Delphi :
fCombo.Items.Add(company.FieldByName('prenom').AsString); 


// Exemple de fiche toujours en mémoire
Code Delphi :
procedure TForm1.PrenomClick(Sender: TObject);
begin
  fCombo.ShowModal;  // fCombo est la fiche qui contient le TComboBox
end;




Je pense avoir répondu à ta question!!

pierrot


Cette discussion est classée dans : combobox, données, noms, company, actualisent


Répondre à ce message

Sujets en rapport avec ce message

Recuperer données dans un combobox apartir d'un fichier texte [ par black_hack_white ] Salut à tous,Je voudrais à partir d'un fichier texte qui se trouver sur une adresse web ( http://lien/fichier.txt ) récuperer le contenu dans un combo Lister de données venant d'une Base dans un combobox! [ par leader2000 ] Salut! Je suis juste entrain de penser faire lister dans mon combobox1 le contenu d'une base de donnée ayant comme nom de champ "fonction". Les code Inserer des données ds combobox delphi 6 [ par sisska ] Bonjour, je suis debutante [^^sad1] en delphi et j'ai inseré 1 combobox et je ne sais pas comment lui ajouter des données [^^yeuxenlair] aider moi s Retirer d1 Combobox!!! [ par TheShAmAn ] Voila tt le monde c jouter des données a un combobox...Moi ce ke je fais c :Je prends les données de ma base, et je les mets ds mon combobox. Ensuite, Combobox et Base de données [ par davix123 ] Bonjour,Dans mon appli, j'utilise une form pour remplir une table "A" d'une base de données.Dans cette form, j'utilise un combobox rempli par une tabl remplir une combobox avec une base de données access [ par eowene ] Bonjour.Je travaille avec une base de données acces et des composant ADO pour ma connexion.Je voudrais remplir une combobox avec 3 champs d'une table Comment dupliquer une base de données avec une requette SQL [ par thonyboy ] BonjourJ'utilise delphi 7 et j'aimerais connaitre le moyen le plus simple pour enregistrer le resultat d'une requette SQL dans une base de données.Voi j'ai créé une base de données qui fonctionne sur mon PC mais pas ailleurs [ par DGPat ] Bonjour à tous,Je suis débutant, (encore un),J'ai créé une application pour me faciliter la vie au travail (je suis comptable) j'ai créé plusieurs bas base de données [ par fostex ] Salut,Bon je suis un novice en delplhi,j'utilise la version 6 et je n'aarive pas à comprendre n'y utiliser les nombreux exemples de gestion de bases d stockage et visualisation de données [ par Zadigon ] bonjour amis forumistes, j'ai des impulssions issues de capteurs, qutre en tous, ces impulsions je les injecte sur le port de jeu, jusqu'a la sa va,


Nos sponsors


Sondage...

CalendriCode

Mai 2013
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,290 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales