فيما يخص تحويل المبالغ الرقمية إلى كتابة حرفية
#5
حسنا

مع أن الرد الأول في نظري كاف ، واعذرني إذا قلت لك أنك ربما تعب من العمل بحيث تريد بالضبط ما تريد

أولا لا تضع المجموع العام في الجدول : لأنه خاص بجميع سطور الجدول

ثانيا سأريك أن الرد الأول كافي لكن التغيير الذي سأقوم به هو نسخ الأجراء بدل استدعائه

تحسب المجموع - توجد طرق عدة - لكنني سأعدل فقط على برنامجك
DB,StrUtils تضافان إلى Uses

حاولت التبسيط قدر الإمكان

كود :
unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, QRCtrls, QuickRpt, ExtCtrls,[color=Blue] DB,StrUtils[/color]; type TForm2 = class(TForm) . . . . . . . . . . . . procedure QRLabel2Print(sender: TObject; var Value: String); Function words(D : Double; F1 : String = 'واحدة'; F2 :String = 'واحدتين' ; F3 : String = 'واحدات' ; D1 : String = 'جزء' ; D2 : String = 'جزئين'; D3: String = 'أجزاء'; SayJust : Boolean = True) : String; private { Déclarations privées } public { Déclarations publiques } end; var Form2: TForm2; implementation uses Unit1; {$R *.dfm} Function TForm2.words(D : Double; F1 : String = 'واحدة'; F2 :String = 'واحدتين' ; F3 : String = 'واحدات' ; D1 : String = 'جزء' ; D2 : String = 'جزئين'; D3: String = 'أجزاء'; SayJust : Boolean = True) : String; [color=Blue]. . . . . . . . . words أنقل هنا محتوى الإجراء [/color] End; procedure TForm2.QRLabel2Print(sender: TObject; var Value: String); [color=Blue]حساب المجموع[/color] Function MT: Real; var Book: TBookMark; MT0: Real; begin MT0:=0; Book:=Form1.Table1.GetBookmark; try Form1.Table1.DisableControls; Form1.Table1.First; while not Form1.Table1.Eof do begin MT0 := MT0+ (Form1.Table1.FieldByName('PRIX').AsFloat * Form1.Table1.FieldByName('QTE').AsFloat); Form1.Table1.Next; end; Form1.Table1.GotoBookmark(Book); finally Form1.Table1.FreeBookmark(Book); Form1.Table1.EnableControls; end; Result:=MT0; end; [color=Blue]-------------------------------[/color] begin Value:=words(MT),'سنتيم', 'سنتيم', 'سنتيم','دينار', 'دينار', 'دينار' , false); end; end.
[صورة: attachment.php?attachmentid=174&d=1210415043]
الإجراء QRLabel2Print تتحصل عليه من خلال الحدث OnPrint ستجده في Evènements (évents) الخاص بـ QRLabel2

لتتأكد الصورة المرفقة تبين النتيجة




الملفات المرفقة
.jpg   Untitled-2.jpg (الحجم : 14.97 ك ب / التحميلات : 295)
.rar   EXEMPLE_correct.rar (الحجم : 4.77 ك ب / التحميلات : 191)
الرد


الردود في هذا الموضوع
فيما يخص تحويل المبالغ الرقمية إلى كتابة حرفية - بواسطة merouane - 10-05-2008, 11:32 AM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم