السلام عليكم ورحمة الله تعالى وبركاته
عندما اضغط على زر لتنفيذ عملية حسابية تظهر هذه الرسالة ويتوقف عن إتمام عملية الحساب
insufficient memory for this operation
table: G:\compta\bilan.db
علما بأنني استعمل dataModule1و dataModule2و dataModule3و DataModule4
وكل واحدة من الأربعة تحتوي على 19 قاعدة بيانات أي مجموع قواعد البيانات التي يحتوي عليها برنامجي هي 76 قاعدة بيانات و23 فورم
هذه الرسالة تظهر لي في الفورم 23 التي تحتوي على جدول حوصلة كل الحقول الموجودة في كل الجداول والمسمى Table_Recap
عند الضغط يبدأ في العمل إلى أن يصل إلى قاعدة من البيانات ويتوقف عليها بهذه الرسالة التي سبق وان اشرت لها في اعلى الموضوع
الكود المكتوب تحت الحدث الخاص بزر تنفيذ عملية الحساب هو كالآتي :
table_recap.edit; table_recapMT_BPD.value:=dataModule2.table_bpdMT_A1.value + dataModule2.table_bpsMT_A1.value+dataModule2.table_bpnMT_A1.Value; إلى آخر جدول ثم أضع في الآخر Table_Recap.post;
حاولت غلق كل الجداول ذاي كل فورم وضعت فيها مثل هذا الكود
لكل جدول في DataModule وضعت في الحدث
procedure TDataModule1.Table_artAfterDelete(DataSet: TDataSet); begin DbiSaveChanges(Table_art.handle); end; procedure TDataModule1.Table_artAfterEdit(DataSet: TDataSet); begin DbiSaveChanges(Table_art.handle); end; procedure TDataModule1.Table_artAfterPost(DataSet: TDataSet); begin DbiSaveChanges(Table_art.handle); end; procedure TDataModule1.Table_artAfterClose(DataSet: TDataSet); begin DbiSaveChanges(Table_art.handle); end; procedure TDataModule1.Table_artBeforeClose(DataSet: TDataSet); begin DbiSaveChanges(Table_art.handle); end; procedure TDataModule1.Table_artBeforePost(DataSet: TDataSet); begin DbiSaveChanges(Table_art.handle); end;
في الحدث OnShow
procedure TForm1.FormShow(Sender: TObject); begin with dataModule1 do begin table_art.Open; end; with dataModule2 do begin table_bpd.open; end; with dataModule3 do begin table_bpr.Open; end; with dataModule4 do begin table_cal.Open; end;
ثم في الحدث OnClose
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin with dataModule1 do begin table_art.Close; end; with dataModule2 do begin table_bpd.Close; end; with dataModule3 do begin table_bpr.Close; end; with dataModule4 do begin table_cal.Close; end;
أرجو إن كان هنا حل لهذه المشكلة افيدونا به وجزاكم الله عنا كل خير
