Comment definis-tu les champs ? Car il n'y a pas de limitation normalement.
vous parlez de leurs types ?
Non je ne parle pas des types mais de la méthode utilisée. Voire de l'extrait de code en question.
Bon courage ou Bonne Chance (selon le contexte)
Mon blog sur WordPress
voici le code que j'ai utilise pour creer une table Paradox:
qui peut m'indiquer l'erreur svp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122 procedure TForm1.createtablemariage(i:integer); var table1:ttable; begin table1:=ttable.Create(table1); with Table1 do begin Active :=False; DatabaseName :=chemin; // chemin:=ExtractFilePath(Application.ExeName); TableType :=ttParadox; TableName :='mariage'+inttostr(i); if not Table1.Exists then begin with FieldDefs do begin Clear; with AddFieldDef do begin Name :='Numero'; DataType :=ftautoinc; end; with AddFieldDef do begin Name :='Datemariage'; DataType :=ftdate; end; with AddFieldDef do begin Name :='Marie'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Profession1'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Datedenaiss1'; DataType :=ftdate; end; with AddFieldDef do begin Name :='Lieu1'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Pere1'; DataType :=ftString; Size :=30; end; with AddFieldDef do begin Name :='Mere1'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Mariee'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Profession2'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Datedenaiss2'; DataType :=ftdate; end; with AddFieldDef do begin Name :='Lieu2'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Pere2'; DataType :=ftString; Size :=30; end; with AddFieldDef do begin Name :='Mere2'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Enfrancais1'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Enfrancais2'; DataType :=ftString; Size :=50; end; end; with IndexDefs do begin Clear; with AddIndexDef do begin Name :=''; Fields :='Numero'; Options :=[ixPrimary]; end; end; CreateTable; end; end; end;
à remplacer par
Code : Sélectionner tout - Visualiser dans une fenêtre à part table1:=ttable.Create(table1);
sinon, apprends à indenter ton code, c'est imbuvable !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part table1:=ttable.Create(Self);
En général, j'utilise plutôt la méthode Add et non AddFieldDef, c'est nettement plus concis !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145 procedure TForm1.createtablemariage(i:integer); var table1:ttable; begin table1:=ttable.Create(table1); with Table1 do begin Active :=False; DatabaseName :=chemin; // chemin:=ExtractFilePath(Application.ExeName); TableType := ttParadox; TableName :='mariage'+inttostr(i); if not Table1.Exists then begin with FieldDefs do begin Clear; with AddFieldDef do begin Name :='Numero'; DataType :=ftautoinc; end; with AddFieldDef do begin Name :='Datemariage'; DataType :=ftdate; end; with AddFieldDef do begin Name :='Marie'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Profession1'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Datedenaiss1'; DataType :=ftdate; end; with AddFieldDef do begin Name :='Lieu1'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Pere1'; DataType :=ftString; Size :=30; end; with AddFieldDef do begin Name :='Mere1'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Mariee'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Profession2'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Datedenaiss2'; DataType :=ftdate; end; with AddFieldDef do begin Name :='Lieu2'; DataType :=ftString; Size :=20; end; with AddFieldDef do begin Name :='Pere2'; DataType :=ftString; Size :=30; end; with AddFieldDef do begin Name :='Mere2'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Enfrancais1'; DataType :=ftString; Size :=50; end; with AddFieldDef do begin Name :='Enfrancais2'; DataType :=ftString; Size :=50; end; end; with IndexDefs do begin Clear; with AddIndexDef do begin Name :=''; Fields :='Numero'; Options :=[ixPrimary]; end; end; CreateTable; end; end; end;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 procedure TForm1.createtablemariage(i:integer); var table1:ttable; begin table1:=ttable.Create(table1); with Table1 do begin Active :=False; DatabaseName :=chemin; // chemin:=ExtractFilePath(Application.ExeName); TableType := ttParadox; TableName :='mariage'+inttostr(i); if not Table1.Exists then begin with FieldDefs do begin Clear; Add('Numero', ftautoinc); Add('Datemariage', ftdate); Add('Marie', ftString, 50); Add('Profession1', ftString, 20); Add('Datedenaiss1', ftdate); Add('Lieu1', ftString, 20); Add('Pere1', ftString, 30); Add('Mere1', ftString, 50); Add('Mariee', ftString, 50); Add('Profession2', ftString, 20); Add('Datedenaiss2', ftdate); Add('Lieu2', ftString, 20); Add('Pere2', ftString, 30); Add('Mere2', ftString, 50); Add('Enfrancais1', ftString, 50); Add('Enfrancais2', ftString, 50); end; IndexDefs.Clear; IndexDefs.Add('', 'Numero', [ixPrimary]); CreateTable; end; end; end;
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
Merci ShaileTroll, le probleme est resolu apres le remplacement de Table1 dans la creation de la table par Self.
et merci aussi pour la simplification dans l'addition des champs.
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