السلام عليكم ورحمة الله تعالى وبركاته
اعمل على نسخة الدلفي 10.3.1 ريو وقاعدة البيانات ابسوليت داتا بيز
في ورقة الطباع تظهرؤ السجلات متكررة ول اعرف ما السبب رغم ان السجلات تحتو على اربع سجلات لكل حقل واعني الحقل cph
حسب الشرط
هذه هي الصورة المتعلقة بالمعاينة
[attachment=4022]
وهذا هو الكود المستعمل على المحررfrxreport1 في الحدث onbeforprint
وللتوضيح
من المفروض ان تكون المعاينة حسب هذه الصورة
[attachment=4023]
اعمل على نسخة الدلفي 10.3.1 ريو وقاعدة البيانات ابسوليت داتا بيز
في ورقة الطباع تظهرؤ السجلات متكررة ول اعرف ما السبب رغم ان السجلات تحتو على اربع سجلات لكل حقل واعني الحقل cph
حسب الشرط
هذه هي الصورة المتعلقة بالمعاينة
[attachment=4022]
وهذا هو الكود المستعمل على المحررfrxreport1 في الحدث onbeforprint
كود :
procedure TForm2.frxReport1BeforePrint(Sender: TfrxReportComponent);
var TCph01,TCph02,TCph03,TCph04,RtMta,RtMtb,MtsA,TxtMA,TxtNA,MtsB,TxtMB,TxtNB,
MtsC,TxtMC,TxtNC,MtsD,TxtMD,TxtND:TfrxMemoView;
begin
TxtMA:= TfrxMemoView(frxReport1.FindObject('MemoA'));
TxtNA:= TfrxMemoView(frxReport1.FindObject('MemoB'));
MtsA:= TfrxMemoView(frxReport1.FindObject('MemoC'));
TCph01:= TfrxMemoView(frxReport1.FindObject('MChp01'));
TxtMB:= TfrxMemoView(frxReport1.FindObject('MemoD'));
TxtNB:= TfrxMemoView(frxReport1.FindObject('MemoE'));
MtsB:= TfrxMemoView(frxReport1.FindObject('MemoF'));
TCph02:= TfrxMemoView(frxReport1.FindObject('MChp02'));
TxtMC:= TfrxMemoView(frxReport1.FindObject('MemoG'));
TxtNC:= TfrxMemoView(frxReport1.FindObject('MemoH'));
MtsC:= TfrxMemoView(frxReport1.FindObject('MemoJ'));
TCph03:= TfrxMemoView(frxReport1.FindObject('MChp03'));
TxtMD:= TfrxMemoView(frxReport1.FindObject('MemoK'));
TxtND:= TfrxMemoView(frxReport1.FindObject('MemoL'));
MtsD:= TfrxMemoView(frxReport1.FindObject('MemoM'));
TCph04:= TfrxMemoView(frxReport1.FindObject('MChp04'));
if DM.TB2.Fieldvalues['MT']<>0 then
begin
if (DM.TB2.FieldValues['Cph']='10')And(DM.TB2.FieldValues['Tpe']='D')then
begin
TCph01.Memo.Text:= DM.TB2.Fieldvalues['Cph'];
TxtMA.Memo.Text:= DM.TB2.Fieldvalues['CdeA'];
TxtNA.Memo.Text:= DM.TB2.Fieldvalues['Nom'];
MtsA.Memo.Text:= FormatFloat('#,##0.00',DM.TB2.Fieldvalues['MT']);
end;
if (DM.TB2.FieldValues['Cph']='11')And(DM.TB2.FieldValues['Tpe']='D')then
begin
TCph02.Memo.Text:= DM.TB2.Fieldvalues['Cph'];
TxtMB.Memo.Text:= DM.TB2.Fieldvalues['CdeA'];
TxtNB.Memo.Text:= DM.TB2.Fieldvalues['Nom'];
MtsB.Memo.Text:= FormatFloat('#,##0.00',DM.TB2.Fieldvalues['MT']);
end;
if (DM.TB2.FieldValues['Cph']='12')And(DM.TB2.FieldValues['Tpe']='D')then
begin
TCph03.Memo.Text:= DM.TB2.Fieldvalues['Cph'];
TxtMC.Memo.Text:= DM.TB2.Fieldvalues['CdeA'];
TxtNC.Memo.Text:= DM.TB2.Fieldvalues['Nom'];
MtsC.Memo.Text:= FormatFloat('#,##0.00',DM.TB2.Fieldvalues['MT']);
end;
if (DM.TB2.FieldValues['Cph']='13')And(DM.TB2.FieldValues['Tpe']='D')then
begin
TCph04.Memo.Text:= DM.TB2.Fieldvalues['Cph'];
TxtMD.Memo.Text:= DM.TB2.Fieldvalues['CdeA'];
TxtND.Memo.Text:= DM.TB2.Fieldvalues['Nom'];
MtsD.Memo.Text:= FormatFloat('#,##0.00',DM.TB2.Fieldvalues['MT']);
end;
end;
end;
وللتوضيح
من المفروض ان تكون المعاينة حسب هذه الصورة
[attachment=4023]