Inserer une date automatiquement

Fermé
laamamel Messages postés 163 Date d'inscription mercredi 26 octobre 2011 Statut Membre Dernière intervention 1 avril 2015 - 3 mars 2014 à 11:13
 Firta - 6 mars 2014 à 18:24
Bonjour,

j'ai un champ tmaskedit comment afficher selectionner directement une date sans saisir
merci et bon courage
j'attends une reponse.

A voir également:

3 réponses

Le code suivant définit un masque de saisie numérique : jj/mm/aaaa, compatible avec la configuration locale de la machine hôte et charge la date en cours dans le composant MaskEdit1.



procedure TForm1.FormCreate(Sender: TObject);
begin
MaskEdit1.EditMask := '00/00/0000;1';
MaskEdit1.Text := '';
MaskEdit1.Text := DateToStr(Now);
end;
end.
0
laamamel Messages postés 163 Date d'inscription mercredi 26 octobre 2011 Statut Membre Dernière intervention 1 avril 2015
3 mars 2014 à 14:49
bonjour
je vais essayé de détailler mon problème
j'ai un champ date de naissance je veux éviter la saisie par les utilisateurs
pour cela j'ai crée d'abord un composant maskedit puis j'ai trouvé un composant datetimepicker il m'affiche le calendrier mais il sauvegarde pas dans le champs de base de données access 'date de naissance' je crois il y a un détaille qui m'échappe
sachant que je suis débutante en delphi 7
0
Profil bloqué
3 mars 2014 à 20:27
Enfin !. Tu reconnais que tu n'as pas suffisamment détaillé ton problème, autrement personne ne peut lire dans tes pensées.

- Que tu utilisais un MaskEdit standard, ou tu appliquais un masque de saisie à un contrôle orienté donnée, le format de date appliqué au masque doit etre celui du composant DateTimePicker définit dans la configuration système locale.

- Dans l'evenement OnCloseUp { Une fois la date selectionnée le composant
DateTimePicker. se ferme et charge la date dans le recepteur renseigné


procedure TForm1.DateTimePicker1CloseUp(Sender: TObject);
begin
{ Pour un composant standard }
Maskedit1.Text:= DateToStr(DateTimePicker1.Date);

{ Pour un composant orienté donnée }
VotreTable.FieldValues['Libellé du champ date dans la table'] := DateTimePicker1.Date
end;

end.
0
laamamel Messages postés 163 Date d'inscription mercredi 26 octobre 2011 Statut Membre Dernière intervention 1 avril 2015
4 mars 2014 à 10:56
bonjour
je tiens vraiment à vous remercier pour votre aide
quand je selectionne la date aprés execution du projet il m'affiche cette erreur:
le projet a provoqué une classe d'exception EDATABASE ERROR avec le message 'ADO Table_renseigne' l'ensemble de données n'est pas en mode edition ou insertion
sachant que adotable_renseigne c'est le nom de la table connecte voici la source:

procedure Tfrm_renseignement.DateTimePicker1CloseUp(Sender: TObject);
begin
{ Pour un composant orienté donnée }
ADOTable_reseigne.FieldValues['date_naiss']:= DateTimePicker1.Date;
end;
et bonne journée
0
laamamel Messages postés 163 Date d'inscription mercredi 26 octobre 2011 Statut Membre Dernière intervention 1 avril 2015
4 mars 2014 à 11:00
voici l'unite :

unit u_renseig;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBActns, StdActns, ActnList, Menus, StdCtrls, Mask, DBCtrls,
Grids, DBGrids, DB, ADODB, Buttons, ComCtrls;

type
Tfrm_renseignement = class(TForm)
lbl_id: TLabel;
lbl_nvlle: TLabel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Button5: TButton;
Button1: TButton;
ActionList1: TActionList;
Action1: TAction;
EditCut1: TEditCut;
EditCopy1: TEditCopy;
EditPaste1: TEditPaste;
EditUndo1: TEditUndo;
EditDelete1: TEditDelete;
DataSetFirst1: TDataSetFirst;
DataSetPrior1: TDataSetPrior;
DataSetNext1: TDataSetNext;
DataSetLast1: TDataSetLast;
DataSetInsert1: TDataSetInsert;
DataSetDelete1: TDataSetDelete;
DataSetEdit1: TDataSetEdit;
DataSetPost1: TDataSetPost;
DataSetCancel1: TDataSetCancel;
DataSetRefresh1: TDataSetRefresh;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button7: TButton;
Button8: TButton;
Button9: TButton;
DBEdit1: TDBEdit;
ADOTable_reseigne: TADOTable;
ADOConnection_renseigne: TADOConnection;
DataSource_renseig: TDataSource;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBGrid1: TDBGrid;
BitBtn2: TBitBtn;
ComboBox_categorie: TComboBox;
DateTimePicker1: TDateTimePicker;
procedure Button10Click(Sender: TObject);
procedure DateTimePicker1CloseUp(Sender: TObject);


private
{ Déclarations privées }
public
{ Déclarations publiques }
end;

var
frm_renseignement: Tfrm_renseignement;

implementation
uses u_principal;
{$R *.dfm}

procedure Tfrm_renseignement.Button10Click(Sender: TObject);
begin
frm_principale.show;
end;

procedure Tfrm_renseignement.DateTimePicker1CloseUp(Sender: TObject);
begin
{ Pour un composant orienté donnée }
ADOTable_reseigne.FieldValues['date_naiss']:= DateTimePicker1.Date;
end;
end.
0
Profil bloqué
4 mars 2014 à 11:35
* Je pense que tu es encore loin de pouvoir reussir un tel pari., tu dois d'abord apprendre les concepts relatifs aux opérations de manipulation des jeux de données.

Ce message indique que le statut de la table est soit en Browser Mode soit inactive, si le statut de la TABLE en mode conception est FALSE il faut le passer en TRUE à l'exécution pour permettre l'ajout, la modification et la suppression.

procedure Tfrm_renseignement.DateTimePicker1CloseUp(Sender: TObject);
begin
{ Si le jeu de données est inactif alors : }
ADOTable_reseigne.Active := True;
ADOTable_reseigne.Insert;
ADOTable_reseigne.FieldValues['date_naiss']:= DateTimePicker1.Date;
// traitement des autres champs
ADOTable_reseigne.Post; //Transaction des informations dans la table sous-jacente
//quand on ne n'utilise pas de controles orientés données sinon pas d'appel à Post

end;
end.
0
laamamel Messages postés 163 Date d'inscription mercredi 26 octobre 2011 Statut Membre Dernière intervention 1 avril 2015
3 mars 2014 à 14:22
BONJOUR
je vous remercie pour votre solution
mais je vais vous détaillez exactement ce que je veux:
j'ai dans une bases de données le champ date de naissance
moi je veux éviter la saisie pour les utilisateurs
je veux créer un champ qui affiche un petit calendrier pour sélectionner la date naissance j'ai pensé à maskedit ou datetimepicker mais sa marche pas
votre solution affiche la date de ce jour
j'espère que je suis claire dans ma question.
bon journée
0
essaye sur Microsoft access qui peu créer un champ qui affiche un petit calendrier pour sélectionner la date !
0