اخواني عندي برنامج رواتب موظفين معمول بفجوال بيسك 6 ومرتبط بالكريستال ريبورت 10 والعمليات الحسابية موجودة في الكريستال ريبورت وكذلك عندي كود في الفجوال بيسك لتفقيط الاعداد
المطلوب
اريد ان اظهر القيم الحسابية الموجودة في التقرير بالحروف
ولكم مني فائق الاحترام للاهتمامك بالامر
أهلا أخي , لم أستطع فتح ملف الكريستال ريبورت يبدو أن الإصدار الذي تستخدمه 10 والذي لدي الإصدار رقم 8.5 , فما رأيك , لماذا لا تستخدم تقارير الـ ActiveReport فهي بقوة الكريستال وأسهل منه بكثير في التعامل وهي الأفضل بالنسبة للفيجول بيسك6 .
السلام عليكم
اخي الكريم ضع التفقيط في module لكي تستطيع استدعائه من اي جزء من البرنامج
وانا ايضا للاسف لا يوجد لدي كريستال ربورت ولم استطيع فتح البرنامج
اتمنى من الاعضاء تقديم المساعدة ان امكن
يعطيك العافية
السلام عليكم
هل تريد تحويل المبلغ في text1 الى حروف وظهورها في التقرير بالأحرف
أهلا , أخي العزيز , قمت بالتعديل وإن شاء الله يضبط معك , في البداية توجد خاصية تابعة للأدوات أو التكستات المنشأه في تقرير الكريستال ريبورت تستطيع بواسطتها إسناد أو وضع قيم في الأداة مباشره قبل إظهار التقرير في أداة عرض الكريستال ريبورت التي بإسم CRViewer1 , هذا إسم الخاصية :
إذا في البداية سنقوم بجلب إجمالي مبالغ الرواتب بعد الخصم ونضعه في متغير نصي وسيكون هذا المتغير النصي معرف في الموديل Module1 ويكون Public لكي يكون مرئي في جميع فورمات البرنامج , وطريقة جلب أو أخذ إجمالي الرواتب بعد الخصم هي بأني قمت بإضافة أداة DataControl جديدة بإسم Data1 وتكون مخفية حيث بهذه الاداة سنقوم بالإتصال بقاعدة البيانات وتنفيذ إستعلام يجلب لنا إجمالي الرواتب طبعاً مع تطبيق العمليات الحسابية ثم نضعه في المتغير الخاص بذلك المذكور أعلاه :
كود :
Data1.DatabaseName = App.Path & "\D2017.mdb"
Data1.RecordSource = "Select SUM(A1+A2-A3) as Total From RI"
Data1.Refresh
If Data1.Recordset.RecordCount > 0 Then
MonyChar = Data1.Recordset![Total]
Else
MonyChar = "0"
End If
, ثم نقوم بتحويل رقم إجمالي الرواتب المخزن في المتغير النصي إلى المبلغ بالحروف وأيضاً بعد التحويل نضع المبلغ بالحروف في نفس المتغير :
كود :
MonyChar = BADRMEDIA(MonyChar)
بعد ذلك نقوم بإظهار الفورم2 الذي يوجد عليه أداة عرض التقرير CRViewer1 , ثم في حدث الـ Form_Load للفورم2 سنقوم بإضافة سطرين على الكود الموجود في الحدث مسبقاً هاذي هي السطرين :
كود :
Report.Text11.SetText Trim$(MonyChar)
Me.Refresh
حيث Text11 هو إسم التكست الموجود في التقرير والذي سيتم وضع فيه المبلغ بالحروف , تأكد من صحة الإسم , وسيكون كود حدث الـ Form_Load للفورم2 بعد الإضافة عليه بهذا الشكل :
كود :
Screen.MousePointer = vbHourglass
Report.Text11.SetText Trim$(MonyChar)
Me.Refresh
CRViewer1.ReportSource = Report
CRViewer1.ViewReport
Screen.MousePointer = vbDefault
- شغل المشروع بما أنه يشتغل عندك من غير مشاكل , وشوف النتيجة إن شاء الله يضبط , لأنه عندي في جهازي لم يعمل المشروع ولم يفتح التقرير الموجود في المشروع .
- تحياتي .
ودي إضافة بطريقة اخر مع كود الأخ احمد وانشاء أداة بالكود
بالتوفيق