![]() |
|
جمع بيانات في التقرير عن طريق group - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : جمع بيانات في التقرير عن طريق group (/showthread.php?tid=4330) |
جمع بيانات في التقرير عن طريق group - format82 - 05-07-2012 السلام عليكم لدي جدول بها بيانات (الاسم والدائن والمدين ) كيف جمع الدائن والمدين عن طريق group بحيث يكون هنالك مجموعين (المجموع الاول يكون لفترة المحدد والمجموع الثاني يكون للفترة الذي يكون قبله وايضا يكون محددة ) الفترة الاولي يكون الارصدة الحالية والفترة الثانية يكون ارصدة مرحلة من فترة سابقة انا استطعت جمع الفترة المحددة ولكن لم استطيع للفترة السابقة هذا هو الكود كود : select name_emp,sum(daen) as sdaen,sum(mden) as smden from t_daenen where date_e between :p1 and :p2 group by name_empجمع بيانات في التقرير عن طريق group - لؤي - 05-07-2012 وعليكم السلام محاولة كود : select name_emp,sum(daen) as sdaen,sum(mden) as smden from t_daenen where date_e between :p1 and :p2 and date_e >:p2 and date_e <:p1 group by name_empجمع بيانات في التقرير عن طريق group - format82 - 06-07-2012 مشكور علي الرد ولكن sdaen و smden سيكون لاي تاريخ قبل ام بعد اذا قمت بايجاد القيم عن طريق (2 ) ADOQuery منفصلين هل من طريقة ان اربط بين الحقول في QuickReport جمع بيانات في التقرير عن طريق group - format82 - 10-07-2012 قمت بعدة محاولات وتوصلت الي كود ولكنه يعطي رسالة خطا كود : ADOQuery2.SQL.Add('select name_emp,sum(daen) as sdaen,sum(mden) as smden from t_daenen where date_e between :p1 and :p2
and name_emp in (select name_emp,sum(daen) as sdaen1,sum(mden) as smden1 from t_daenen where date_e between :p3 and :p4 group by name_emp'+')'+'group by name_emp');رسالة خطا Only one expression can be specified in the select list when the subquery is not introduced with EXISTS جمع بيانات في التقرير عن طريق group - لؤي - 10-07-2012 format82 كتب :إن لم تنجح قم بكتابة إستعلامك على أكثر من سطر أو حاول إستعمال PHP كود : ADOQuery2.SQL.TEXT:='جملة الإستعلام' أو ضع محاولتك لنعمل عليها سويا جمع بيانات في التقرير عن طريق group - format82 - 10-07-2012 مشكور اخي علي الرد انا اعمل في برنامج محاسبي هناك شاشة اسمه الدائنون فيها عديد من الاسماء وهذه الاسماء تتكرر كثيرا عرض الاسماء في شكل group بالاضافة الي مجموع الدائن ومجموع المدين في فترة المحددة واضافة لذلك ايضا مجموع الدائن ومجموع المدين لفترة سابقة وايضا محددة كل ذلك يستخرج من جدول واحد وهو جدول الدائنون وهذه هي محاولتي كود : ADOQuery2.Close;
ADOQuery2.SQL.Clear ;
ADOQuery2.SQL.Add('select name_emp,sum(daen) as sdaen,sum(mden) as smden from t_daenen where date_e between :p1 and :p2 and name_emp in (select name_emp,sum(daen) as sdaen1,sum(mden) as smden1 from t_daenen where date_e between :p3 and :p4 group by name_emp'+')'+'group by name_emp');
ADOQuery2.Parameters.ParamByName('p1').Value := datetostr(datetimepicker1.Date) ;
ADOQuery2.Parameters.ParamByName('p2').Value := datetostr(datetimepicker2.Date) ;
ADOQuery2.Parameters.ParamByName('p3').Value := datetostr(datetimepicker17.Date) ;
ADOQuery2.Parameters.ParamByName('p4').Value := datetostr(datetimepicker18.Date) ;
ADOQuery2.Open;
if ADOQuery2.Recordcount=0 then
ShowMessage('áÇ ÊæÌÏ ÈíÇäÇÊ ãÊæÝÑÉ Ýí åÐÇ ÇáãÏì')
else
begin
Form47.QuickRep1.PreviewModal;
end; |