Bonjour tout le monde et meilleurs voeux pour 2014.
Le bout de code ci dessus me permet de copier un fichier.
Lorsqu’il est contenu dans un click de bouton, le programme se compile normalement.
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 procedure TForme.Button2Click(Sender: TObject); var nomTable : TTable; begin // Création des Repertoires (Sauvegarde et Archive) s'ils n'xistent pas. MCheminArch:=ExtractFilePath(Application.ExeName)+'Archive Specific Exercice'+FormBD.GInfoGeneAnExercice.AsString; if not DirectoryExists(MCheminArch) then //Création repertoire d'Archivage Specific if not CreateDir(MCheminArch) then raise Exception.Create('Impossible de créer '+MCheminArch); MCheminArch:=MCheminArch+'\'; nomTable := TTable.Create(self); nomTable.TableType :=ttParadox; nomTable.TableName :=MCheminArch+'Ab'; BatchMove1.Source :=FormBD.Ab; // Sauvegarder la BD dans MCheminSvgDepand+'Maitre'+IndiceMaj BatchMove1.Destination :=nomTable; BatchMove1.Mode :=batCopy; BatchMove1.Execute; nomTable.AddIndex('','NRCN',[IxPrimary]); end;
Mais lorsque le même bout de code est intégré dans une procedure, je reçois le message d’erreur suivant :
Identificateur non déclaré : ‘self’
Pouvez-vous m’indiquer ce qui me manque comme déclaration dans le second cas.
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 Procedure ArchiverExercice(); var nomTable : TTable; begin with Forme do begin // Création des Repertoires (Archive) s'ils n'xistent pas. MCheminArch:=ExtractFilePath(Application.ExeName)+'Archive Specific Exercice'+FormBD.GInfoGeneAnExercice.AsString; if not DirectoryExists(MCheminArch) then //Création repertoire d'Archivage Specific if not CreateDir(MCheminArch) then raise Exception.Create('Impossible de créer '+MCheminArch); MCheminArch:=MCheminArch+'\'; nomTable := TTable.Create(self); // ligne du message d'erreur nomTable.TableType :=ttParadox;
Merci
Partager