كيف استدعي الملف النصي السالف الذكر
2 مشترك
دلفي تعليم :: منتديات البرمجة :: دلفي
صفحة 1 من اصل 1
كيف استدعي الملف النصي السالف الذكر
السلام عليكم
كيف استدعي الملف النصي السالف الذكر وادخله في قاعدة البيانات
virement ccp
وجزاكم الله عنا كل خير
كيف استدعي الملف النصي السالف الذكر وادخله في قاعدة البيانات
virement ccp
وجزاكم الله عنا كل خير
medreg- مبرمج ممتاز جدا
- عدد المساهمات : 81
تاريخ التسجيل : 29/01/2015
رد: كيف استدعي الملف النصي السالف الذكر
بسم الله الرحمن الرحيم
أضف هذان الملفان الى مشرعك
وهذا بعد أن تقوم بحفظ هذين الملفين بتنسيق
أقصد هكذا :
Unit3.pas
Unit3.dfm
وهذه الفكرة تنجح في بعض الاحيان
اذا لم تنجح افتح دلفي وانشيء الوحدة 3
ملاحظة
هذا الكود لقراءة السطر الاول من الملف النصي فقط
اذا كانت العملية صحيحة نواصل مع الباقية
واذا كانت خاطئة وضح لي الخطأ وشكرا
ونأسف لتأخير
nom de fichier : Unit3.pas
=======================================================================
nom de fichier : Unit3.dfm
أضف هذان الملفان الى مشرعك
وهذا بعد أن تقوم بحفظ هذين الملفين بتنسيق
أقصد هكذا :
Unit3.pas
Unit3.dfm
وهذه الفكرة تنجح في بعض الاحيان
اذا لم تنجح افتح دلفي وانشيء الوحدة 3
ملاحظة
هذا الكود لقراءة السطر الاول من الملف النصي فقط
اذا كانت العملية صحيحة نواصل مع الباقية
واذا كانت خاطئة وضح لي الخطأ وشكرا
ونأسف لتأخير
nom de fichier : Unit3.pas
- الكود:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, Menus, Buttons, Grids, DBGrids;
type
TForm3 = class(TForm)
MainMenu1: TMainMenu;
file1: TMenuItem;
new1: TMenuItem;
open1: TMenuItem;
save1: TMenuItem;
savas1: TMenuItem;
N1: TMenuItem;
exit1: TMenuItem;
edit1: TMenuItem;
cut1: TMenuItem;
copy1: TMenuItem;
paste1: TMenuItem;
select1: TMenuItem;
N2: TMenuItem;
clear1: TMenuItem;
help1: TMenuItem;
Memo1: TMemo;
StatusBar1: TStatusBar;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
FontDialog1: TFontDialog;
font1: TMenuItem;
BitBtn1: TBitBtn;
Ed2: TEdit;
Ed3: TEdit;
L02: TLabel;
L01: TLabel;
L03: TLabel;
Ed4: TEdit;
L04: TLabel;
Ed5: TEdit;
L05: TLabel;
Ed6: TEdit;
L06: TLabel;
Ed7: TEdit;
L07: TLabel;
Ed8: TEdit;
L08: TLabel;
Ed9: TEdit;
Ed10: TEdit;
L09: TLabel;
L010: TLabel;
BitBtn2: TBitBtn;
DBGrid1: TDBGrid;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
procedure new1Click(Sender: TObject);
procedure open1Click(Sender: TObject);
procedure save1Click(Sender: TObject);
procedure savas1Click(Sender: TObject);
procedure exit1Click(Sender: TObject);
procedure cut1Click(Sender: TObject);
procedure copy1Click(Sender: TObject);
procedure paste1Click(Sender: TObject);
procedure select1Click(Sender: TObject);
procedure clear1Click(Sender: TObject);
procedure font1Click(Sender: TObject);
procedure Memo1Change(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
public
end;
function copy0001(linges: string; debut, fin: integer): string;
var
Form3: TForm3;
implementation
uses Unit2;
{$R *.dfm}
function copy0001;
begin
result := copy(linges, debut, fin);
end;
procedure TForm3.new1Click(Sender: TObject);
begin
///
end;
procedure TForm3.open1Click(Sender: TObject);
begin
Memo1.Lines.Clear;
if OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
end;
procedure TForm3.save1Click(Sender: TObject);
begin
if SaveDialog1.Execute then
Memo1.Lines.SaveToFile(SaveDialog1.FileName);
end;
procedure TForm3.savas1Click(Sender: TObject);
begin
save1Click(Sender);
end;
procedure TForm3.exit1Click(Sender: TObject);
begin
close;
end;
procedure TForm3.cut1Click(Sender: TObject);
begin
Memo1.CutToClipboard;
end;
procedure TForm3.copy1Click(Sender: TObject);
begin
Memo1.CopyToClipboard;
end;
procedure TForm3.paste1Click(Sender: TObject);
begin
Memo1.PasteFromClipboard;
end;
procedure TForm3.select1Click(Sender: TObject);
begin
Memo1.SelectAll;
end;
procedure TForm3.clear1Click(Sender: TObject);
begin
Memo1.Clear
end;
procedure TForm3.font1Click(Sender: TObject);
begin
FontDialog1.Font := Form3.Font;
if not FontDialog1.Execute then Exit;
end;
procedure TForm3.Memo1Change(Sender: TObject);
begin
if Memo1.Lines.Count = 0 then
BitBtn1.Enabled := false
else BitBtn1.Enabled := true;
BitBtn2.Enabled := false
end;
procedure TForm3.BitBtn1Click(Sender: TObject);
begin
L01.Caption := IntToStr(length(Memo1.Lines.Strings[0]));
Ed2.Text := copy0001(Memo1.Lines.Strings[0],1,9); L02.Caption := IntToStr(length(Ed2.Text));
Ed3.Text := copy0001(Memo1.Lines.Strings[0],10,10); L03.Caption := IntToStr(length(Ed3.Text));
Ed4.Text := copy0001(Memo1.Lines.Strings[0],20,2); L04.Caption := IntToStr(length(Ed4.Text));
Ed5.Text := copy0001(Memo1.Lines.Strings[0],22,13); L05.Caption := IntToStr(length(Ed5.Text));
Ed6.Text := copy0001(Memo1.Lines.Strings[0],35,7); L06.Caption := IntToStr(length(Ed6.Text));
Ed7.Text := copy0001(Memo1.Lines.Strings[0],42,2); L07.Caption := IntToStr(length(Ed7.Text));
Ed8.Text := copy0001(Memo1.Lines.Strings[0],44,4); L08.Caption := IntToStr(length(Ed8.Text));
Ed9.Text := copy0001(Memo1.Lines.Strings[0],48,14); L09.Caption := IntToStr(length(Ed9.Text));
Ed10.Text := copy0001(Memo1.Lines.Strings[0],62,1); L010.Caption := IntToStr(length(Ed10.Text));
BitBtn2.Enabled := true;
end;
procedure TForm3.BitBtn2Click(Sender: TObject);
begin
with DM do
begin
TVrment.Open;
TVrment.Append;
TVrment.FieldByName('Numero').AsString := Ed2.Text;
TVrment.FieldByName('NCpte').AsString := Ed3.Text;
TVrment.FieldByName('Cle').AsString := Ed4.Text;
TVrment.FieldByName('MT_TOT').AsString := Ed5.Text;
TVrment.FieldByName('Effectif').AsString := Ed6.Text;
TVrment.FieldByName('Mios').AsString := Ed7.Text;
TVrment.FieldByName('Annee').AsString := Ed8.Text;
TVrment.FieldByName('Espace').AsString := Ed9.Text;
TVrment.FieldByName('Nnum1').AsString := Ed10.Text;
TVrment.Post;
end;(* *)
BitBtn2.Enabled := false
end;
procedure TForm3.BitBtn3Click(Sender: TObject);
begin
DM.TVrment.Close;
DM.TVrment.Open;
end;
end.
nom de fichier : Unit3.dfm
- الكود:
object Form3: TForm3
Left = 198
Top = 114
Width = 696
Height = 539
Color = clBtnFace
Font.Charset = ARABIC_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
Menu = MainMenu1
OldCreateOrder = False
Position = poScreenCenter
PixelsPerInch = 96
TextHeight = 13
object L02: TLabel
Left = 312
Top = 312
Width = 8
Height = 13
Caption = '0'
end
object L01: TLabel
Left = 40
Top = 288
Width = 8
Height = 13
Caption = '0'
end
object L03: TLabel
Left = 312
Top = 344
Width = 8
Height = 13
Caption = '0'
end
object L04: TLabel
Left = 312
Top = 368
Width = 8
Height = 13
Caption = '0'
end
object L05: TLabel
Left = 312
Top = 392
Width = 8
Height = 13
Caption = '0'
end
object L06: TLabel
Left = 312
Top = 416
Width = 8
Height = 13
Caption = '0'
end
object L07: TLabel
Left = 464
Top = 312
Width = 8
Height = 13
Caption = '0'
end
object L08: TLabel
Left = 464
Top = 336
Width = 8
Height = 13
Caption = '0'
end
object L09: TLabel
Left = 464
Top = 360
Width = 8
Height = 13
Caption = '0'
end
object L010: TLabel
Left = 464
Top = 384
Width = 8
Height = 13
Caption = '0'
end
object Memo1: TMemo
Left = 16
Top = 0
Width = 641
Height = 169
ReadOnly = True
ScrollBars = ssBoth
TabOrder = 0
OnChange = Memo1Change
end
object StatusBar1: TStatusBar
Left = 0
Top = 462
Width = 680
Height = 19
Panels = <>
end
object BitBtn1: TBitBtn
Left = 16
Top = 312
Width = 129
Height = 25
Hint = 'clique ici pour lire le fichier txt'
Caption = 'Lire Fichier Txt'
Enabled = False
ParentShowHint = False
ShowHint = True
TabOrder = 2
OnClick = BitBtn1Click
Kind = bkOK
end
object Ed2: TEdit
Left = 184
Top = 312
Width = 121
Height = 21
Hint = 'Numero'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 3
end
object Ed3: TEdit
Left = 184
Top = 336
Width = 121
Height = 21
Hint = 'Numero de compte'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 4
end
object Ed4: TEdit
Left = 184
Top = 360
Width = 121
Height = 21
Hint = 'Cle'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 5
end
object Ed5: TEdit
Left = 184
Top = 384
Width = 121
Height = 21
Hint = 'Montent total'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 6
end
object Ed6: TEdit
Left = 184
Top = 408
Width = 121
Height = 21
Hint = 'Effectif'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 7
end
object Ed7: TEdit
Left = 336
Top = 312
Width = 121
Height = 21
Hint = 'Mois'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 8
end
object Ed8: TEdit
Left = 336
Top = 336
Width = 121
Height = 21
Hint = 'Annee'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 9
end
object Ed9: TEdit
Left = 336
Top = 360
Width = 121
Height = 21
Hint = 'Espace'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 10
end
object Ed10: TEdit
Left = 336
Top = 384
Width = 121
Height = 21
Hint = 'Num zero'
ParentShowHint = False
ReadOnly = True
ShowHint = True
TabOrder = 11
end
object BitBtn2: TBitBtn
Left = 16
Top = 376
Width = 97
Height = 25
Caption = 'Registrer'
Enabled = False
TabOrder = 12
OnClick = BitBtn2Click
Kind = bkOK
end
object DBGrid1: TDBGrid
Left = 16
Top = 176
Width = 641
Height = 97
DataSource = DM.DataSource1
ReadOnly = True
TabOrder = 13
TitleFont.Charset = ARABIC_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = [fsBold]
end
object BitBtn3: TBitBtn
Left = 512
Top = 288
Width = 105
Height = 25
TabOrder = 14
OnClick = BitBtn3Click
Kind = bkOK
end
object BitBtn4: TBitBtn
Left = 16
Top = 432
Width = 75
Height = 25
TabOrder = 15
Kind = bkClose
end
object MainMenu1: TMainMenu
Left = 192
Top = 8
object file1: TMenuItem
Caption = 'file'
object new1: TMenuItem
Caption = 'new'
OnClick = new1Click
end
object open1: TMenuItem
Caption = 'open'
OnClick = open1Click
end
object save1: TMenuItem
Caption = 'save'
OnClick = save1Click
end
object savas1: TMenuItem
Caption = 'save as'
OnClick = savas1Click
end
object font1: TMenuItem
Caption = 'font'
OnClick = font1Click
end
object N1: TMenuItem
Caption = '-'
end
object exit1: TMenuItem
Caption = 'exit'
OnClick = exit1Click
end
end
object edit1: TMenuItem
Caption = 'edit'
object cut1: TMenuItem
Caption = 'cut'
OnClick = cut1Click
end
object copy1: TMenuItem
Caption = 'copy'
OnClick = copy1Click
end
object paste1: TMenuItem
Caption = 'paste'
OnClick = paste1Click
end
object select1: TMenuItem
Caption = 'select'
OnClick = select1Click
end
object N2: TMenuItem
Caption = '-'
end
object clear1: TMenuItem
Caption = 'clear'
OnClick = clear1Click
end
end
object help1: TMenuItem
Caption = 'help'
end
end
object OpenDialog1: TOpenDialog
Filter = 'fichier txt(*.txt)|*.txt|tout les fichiers (*.*)|*.*'
InitialDir = '.'
Left = 152
Top = 8
end
object SaveDialog1: TSaveDialog
Filter = 'fichier txt(*.txt)|*.txt|tout les fichiers (*.*)|*.*'
InitialDir = '.'
Left = 232
Top = 8
end
object FontDialog1: TFontDialog
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
Left = 288
Top = 8
end
end
ali- مبرمج مجتهد
- عدد المساهمات : 913
تاريخ التسجيل : 29/07/2013
رد: كيف استدعي الملف النصي السالف الذكر
alla كتب:بسم الله الرحمن الرحيم
أضف هذان الملفان الى مشرعك
بارك الله فيك
لقد طبقت الكود الذي ارسلته الي و تم اعادته اليك عبر الإميل
الا انه هناك ملاحظة
السطر الاول من الملف يجب ان يكون في قاعدة بيانات اخرى
لأن السطر الاول في الأصل ياتي من قاعدة بيانات
وباقي الأسطر من قاعدة بيانات اخرى
إضافة الى حقل المبلغ
عندما يتم حفظه في قاعدة البيانات يجب ان يكون بنوع Float
أي
20,982,561.72
وبارك الله فيك
medreg- مبرمج ممتاز جدا
- عدد المساهمات : 81
تاريخ التسجيل : 29/01/2015
رد: كيف استدعي الملف النصي السالف الذكر
شكرًا اخي العزيز
لقد فعلت ذلك الا انني لم اقوم بالقراءة بواسطة الاديت بل استعملت مكون memo
ومنه قمت بادخال المعلومات الى قاعدة البيانات وكانت النتيجة سطر واحد فقط يظهر في الديبقريد
المشكل المطروح هو :
1- على من تطبق الحلقة التكرارية (for)
هل توضع للميمو او لقاعدة البيانات
إذا كان توضع للميمو فكيف ذلك
واذا كان توضع للقاعدة هل توضع للقاعدة ام لحقل منها
2- بالنسبة للمبلغ الذي هو من نوع نصي اي بهذا الشكل 0002550050
عند ادخاله في قاعدة البيانات كيف يمكنني ان ادخله بالقاعدة على هذا الشكل 25.500,50
3- الملف النصي يحتوي على جزئين الجزء الاول والمتمثل في السطر الآول يحتوي على معلومات امين الخزينة والشهر والسنة وعدد الموظفين
والجزء الثاني يتمثل في باقي الاسطر التي تحتوي على معلومات الموظف واجرته
كيف يمكنني قراءة السطر الاول وادخاله في قاعدة بيانات
وباقي الاسطر في قاعدة بيانات اخرى
وجزاكم الله عنا كل خير
لقد فعلت ذلك الا انني لم اقوم بالقراءة بواسطة الاديت بل استعملت مكون memo
ومنه قمت بادخال المعلومات الى قاعدة البيانات وكانت النتيجة سطر واحد فقط يظهر في الديبقريد
المشكل المطروح هو :
1- على من تطبق الحلقة التكرارية (for)
هل توضع للميمو او لقاعدة البيانات
إذا كان توضع للميمو فكيف ذلك
واذا كان توضع للقاعدة هل توضع للقاعدة ام لحقل منها
2- بالنسبة للمبلغ الذي هو من نوع نصي اي بهذا الشكل 0002550050
عند ادخاله في قاعدة البيانات كيف يمكنني ان ادخله بالقاعدة على هذا الشكل 25.500,50
3- الملف النصي يحتوي على جزئين الجزء الاول والمتمثل في السطر الآول يحتوي على معلومات امين الخزينة والشهر والسنة وعدد الموظفين
والجزء الثاني يتمثل في باقي الاسطر التي تحتوي على معلومات الموظف واجرته
كيف يمكنني قراءة السطر الاول وادخاله في قاعدة بيانات
وباقي الاسطر في قاعدة بيانات اخرى
وجزاكم الله عنا كل خير
medreg- مبرمج ممتاز جدا
- عدد المساهمات : 81
تاريخ التسجيل : 29/01/2015
رد: كيف استدعي الملف النصي السالف الذكر
وهذا هو الكود
- الكود:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, Grids, DBGrids, Menus;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
File1: TMenuItem;
New11: TMenuItem;
Open1: TMenuItem;
save1: TMenuItem;
saveas1: TMenuItem;
N1: TMenuItem;
Exit1: TMenuItem;
Edit1: TMenuItem;
Exit2: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
cut1: TMenuItem;
Copy1: TMenuItem;
Paste1: TMenuItem;
Semect1: TMenuItem;
Clear1: TMenuItem;
N4: TMenuItem;
Help1: TMenuItem;
Font1: TMenuItem;
N5: TMenuItem;
Button2: TButton;
Button3: TButton;
DBGrid1: TDBGrid;
Memo1: TMemo;
StatusBar1: TStatusBar;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
FontDialog1: TFontDialog;
procedure FormCreate(Sender: TObject);
procedure Open1Click(Sender: TObject);
procedure save1Click(Sender: TObject);
procedure saveas1Click(Sender: TObject);
procedure Exit2Click(Sender: TObject);
procedure cut1Click(Sender: TObject);
procedure Copy1Click(Sender: TObject);
procedure Paste1Click(Sender: TObject);
procedure Semect1Click(Sender: TObject);
procedure Clear1Click(Sender: TObject);
procedure Font1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
function copy0001(linges: string; debut, fin: integer): string;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
function copy0001;
begin
result := copy(linges, debut, fin);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
////
end;
procedure TForm1.Open1Click(Sender: TObject);
begin
Memo1.Lines.Clear;
if OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
end;
procedure TForm1.save1Click(Sender: TObject);
begin
if SaveDialog1.Execute then
Memo1.Lines.SaveToFile(SaveDialog1.FileName);
end;
procedure TForm1.saveas1Click(Sender: TObject);
begin
save1Click(Sender);
end;
procedure TForm1.Exit2Click(Sender: TObject);
begin
close;
end;
procedure TForm1.cut1Click(Sender: TObject);
begin
Memo1.CutToClipboard;
end;
procedure TForm1.Copy1Click(Sender: TObject);
begin
Memo1.CopyToClipboard;
end;
procedure TForm1.Paste1Click(Sender: TObject);
begin
Memo1.PasteFromClipboard;
end;
procedure TForm1.Semect1Click(Sender: TObject);
begin
Memo1.SelectAll;
end;
procedure TForm1.Clear1Click(Sender: TObject);
begin
Memo1.Clear
end;
procedure TForm1.Font1Click(Sender: TObject);
begin
FontDialog1.Font := Form1.Font;
if not FontDialog1.Execute then Exit;
end;
procedure TForm1.Button2Click(Sender: TObject);
var mt:string;
mth:real;
mts:double;
i:integer;
begin
mt:=copy0001(Memo1.Lines.Strings[0],22,13);
mth:=strtofloat(mt);
mts:=mth;
with DM do
begin
TVrment.Open;
TVrment.Append;
TVrment.FieldByName('Numero').AsString := copy0001(Memo1.Lines.Strings[0],1,9);
TVrment.FieldByName('NCpte').AsString := copy0001(Memo1.Lines.Strings[0],10,10);
TVrment.FieldByName('Cle').AsString := copy0001(Memo1.Lines.Strings[0],20,2);
TVrment.FieldByName('MT_TOT').AsFloat :=mts;
TVrment.FieldByName('Effectif').AsString := copy0001(Memo1.Lines.Strings[0],35,7);
TVrment.FieldByName('Mois').AsString := copy0001(Memo1.Lines.Strings[0],42,2);
TVrment.FieldByName('Annee').AsString := copy0001(Memo1.Lines.Strings[0],44,4);
TVrment.Post;
end;(* *)
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
DM.TVrment.Close;
DM.TVrment.Open;
end;
end.
medreg- مبرمج ممتاز جدا
- عدد المساهمات : 81
تاريخ التسجيل : 29/01/2015
رد: كيف استدعي الملف النصي السالف الذكر
السلام عليكم
أطن أن الفكرة وضحت لديك
وأي اقتراحات لا تتردد في طرحها
ربما أطيل عليك بالجواب فلا تقلق لأني غير متوجد في الانترنت بشكل مستمر
--------------------
var mt:string;
mth: Currency; // mth:real;
//mts:double;
i:integer;
begin
// fichier 1
mt:=copy0001(Memo1.Lines.Strings[0],22,13);
mth:=strtocurr(mt); // mth:=strtofloat(mt);
//mts:=mth;
with DM do
begin
TVrment.Open;
TVrment.Append;
TVrment.FieldByName('Numero').AsString := copy0001(Memo1.Lines.Strings[0],1,9);
TVrment.FieldByName('NCpte').AsString := copy0001(Memo1.Lines.Strings[0],10,10);
TVrment.FieldByName('Cle').AsString := copy0001(Memo1.Lines.Strings[0],20,2);
TVrment.FieldByName('MT_TOT').AsCurrency :=mth; //.AsFloat :=mts;
TVrment.FieldByName('Effectif').AsString := copy0001(Memo1.Lines.Strings[0],35,7);
TVrment.FieldByName('Mois').AsString := copy0001(Memo1.Lines.Strings[0],42,2);
TVrment.FieldByName('Annee').AsString := copy0001(Memo1.Lines.Strings[0],44,4);
TVrment.Post;
// fichier 2
/////////////////////////////////////////////
TVtab.Open;
for i := 1 to Memo1.Lines.Count - 1 do
begin
TVtab.Append;
TVtab.FieldByName('TNum').AsString := copy0001(Memo1.Lines.Strings[i],1,9);
TVtab.FieldByName('TCpt').AsString := copy0001(Memo1.Lines.Strings[i],10,10);
TVtab.FieldByName('TCle').AsString := copy0001(Memo1.Lines.Strings[i],20,2);
TVtab.FieldByName('TMnt').AsCurrency := StrToCurr(copy0001(Memo1.Lines.Strings[i],22,13));
TVtab.FieldByName('TNom').AsString := copy0001(Memo1.Lines.Strings[i],35,27);
TVtab.FieldByName('Num_en').AsString := copy0001(Memo1.Lines.Strings[i],62,1);
TVtab.Post;
TVtab.Next;
end;(* *)
end;
===============================
ملف قاعدة البيانات الجديد
object TVtabTNum: TStringField
FieldName = 'TNum'
Size = 9
end
object TVtabTCpt: TStringField
FieldName = 'TCpt'
Size = 10
end
object TVtabTCle: TStringField
FieldName = 'TCle'
Size = 2
end
object TVtabTMnt: TCurrencyField
FieldName = 'TMnt'
end
object TVtabTNom: TStringField
FieldName = 'TNom'
Size = 27
end
object TVtabNum_en: TStringField
FieldName = 'Num_en'
Size = 1
end
أشكرك أخي على المشاركة
ali- مبرمج مجتهد
- عدد المساهمات : 913
تاريخ التسجيل : 29/07/2013
رد: كيف استدعي الملف النصي السالف الذكر
لقد تمت العملية بنجاح والحمد لله وبارك الله فيك
وهذا هو الكود الذي اعطيتني وها انا قد اجريت عليه بعض التعديلات بعد عدة محاولات ليصبح جاهز للإستعمال
وهذا هو الكود الذي اعطيتني وها انا قد اجريت عليه بعض التعديلات بعد عدة محاولات ليصبح جاهز للإستعمال
- الكود:
procedure TForm1.Button3Click(Sender: TObject);
var mtt,mt,nccp:string;
var s1,s2,s3,s4,s5,s6:string;
mth,mhm:Currency;
i,t,n,h:integer;
begin
Memo1.Lines.Clear;
if OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
begin
s1:= copy0001(Memo1.Lines.Strings[0],42,2);
s2:= copy0001(Memo1.Lines.Strings[0],44,4);
s3:= copy0001(Memo1.Lines.Strings[0],10,10);
s4:= copy0001(Memo1.Lines.Strings[0],20,2);
s5:= copy0001(Memo1.Lines.Strings[0],22,13);
s6:= copy0001(Memo1.Lines.Strings[0],35,7);
t:=strtoint(s3);
h:=strtoint(s6);
mt:=copy0001(Memo1.Lines.Strings[0],22,13);
mth:=strtocurr(mt)/100;
with DM do
begin
TVirPrm.Close;
TVirPrm.EmptyTable;
TVirPrm.Open;
TVirPrm.Refresh;
TVirPrm.Open;
TVirPrm.Edit;
TVirPrm.FieldByName('NCpte').AsString := inttostr(t);
TVirPrm.FieldByName('Cle').AsString := s4;
TVirPrm.FieldByName('MT_TOT').AsCurrency :=mth;
TVirPrm.FieldByName('Mois').AsString := s1;
TVirPrm.FieldByName('Annee').AsString :=s2;
TVirPrm.FieldByName('Effectif').AsString := inttostr(h);
TVirPrm.Post;
TVrment.Close;
TVrment.EmptyTable;
TVrment.Open;
TVrment.Refresh;
TVrment.Open;
for i := 1 to Memo1.Lines.Count - 1 do
begin
nccp:=copy0001(Memo1.Lines.Strings[i],10,10);
mtt:=copy0001(Memo1.Lines.Strings[i],22,13);
n:=strtoint(nccp);
mhm:=strtofloat(mtt)/100;
TVrment.insert;
TVrment.FieldByName('Compte').AsString := inttostr(n);
TVrment.FieldByName('Clef').AsString := copy0001(Memo1.Lines.Strings[i],20,2);
TVrment.FieldByName('Montant').AsCurrency :=mhm;
TVrment.FieldByName('Nom').AsString := copy0001(Memo1.Lines.Strings[i],35,27);
TVrment.Post;
TVrment.Next;
end;
end;
end;
end;
medreg- مبرمج ممتاز جدا
- عدد المساهمات : 81
تاريخ التسجيل : 29/01/2015
مواضيع مماثلة
» قص اسم الملف من المسار الكامل للملف
» حذف الملف bootcfg1.exe ببرنامج دلفي
» اضافة الملفات مع الملف التنفيذى للبرنامج
» DataDirectory يجب أن تكون قاعدة البيانات مع الملف التنفيذي
» حفظ الملف بتنسيق utf8 من أجل جعل اللغة العربية تظهر بشكل جد في برامج دلفي
» حذف الملف bootcfg1.exe ببرنامج دلفي
» اضافة الملفات مع الملف التنفيذى للبرنامج
» DataDirectory يجب أن تكون قاعدة البيانات مع الملف التنفيذي
» حفظ الملف بتنسيق utf8 من أجل جعل اللغة العربية تظهر بشكل جد في برامج دلفي
دلفي تعليم :: منتديات البرمجة :: دلفي
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى