![]() |
|
|
![]() | #1 |
مدير عام منتديات جريت بلينز العربية | ![]() السلام عليكم ورحمة الله كمطور تقارير في برنامج جريت بلينز قد تضطر أحيانا لكتابة المبلغ النهائي في بعض التقارير وخصوصا التقارير التي يستلمها العميل أو المورد (مثل الفاتورة - سند القبض - كشف الحساب -طباعة الشيك ... إلخ). في كاتب التقاريرReport Writer لايمكنك أن تكتب التفقيط باللغة العربية بدون استخدام الـVBA وتكتب كود طويل جدا لترجمة هذه الأرقام الى كلمات ... لذلك وضعت مايكروسوفت ملف ( Chunk File ) يمكن أن تضعه في مجلد جريت بلينز وتصمح عندك خاصية التفقيط موجودة بدون الحاجة الى استخدام الفيجوال بيسك VBA قم بتحميل الملف المرفق من الملف التالي http://www.gp4arab.com/files/Arabic_...p4arab.com.zip والتعليمات موجودة بالداخل ملاحظة: لا تحمل الملف على نسخة جريت بلينز قبل النسخة الثامنة. والله الموفق __________________ Monzer Osama Saudia Arabia - Jeddah 00966501826235 Microsoft Certified Business Management Solutions Professional Microsoft Certified Trainer |
![]() | ![]() |
![]() | #2 |
عضو نشيط | ![]() جزاك الله كل خير لإن دى كانت مشكله كبيره لك شكرى |
![]() | ![]() |
![]() | #3 |
مدير عام منتديات جريت بلينز العربية | ![]() وإياك أخي محمد بعد زمان ... وحشتنا يا شيخ .... ![]() __________________ Monzer Osama Saudia Arabia - Jeddah 00966501826235 Microsoft Certified Business Management Solutions Professional Microsoft Certified Trainer |
![]() | ![]() |
![]() | #4 | ||
مشرف سابق
| ![]() اكثر من رائع | ||
![]() | ![]() |
![]() | #5 | ||
عضو جديد تاريخ التسجيل: Sep 2007 المشاركات: 1
| ![]() شكرا لكم مع تحياتي لك العاملين على البرامج عبدالله عمر علي | ||
![]() | ![]() |
![]() | #6 | ||
عضو نشيط تاريخ التسجيل: Jun 2007 الدولة: Saudi Arabia المشاركات: 56
| ![]() شكرا جزيلا لك أخي منذر كان بودي أن أشاركك الفرحة ، ولكن .. ![]() يبدو أن هذا الملف لا يفيد إلا في طباعة Payable Checks في البرنامج للأسف إلى الآن لم تضع مايكروسوفت أمر تفقيط للعربي كما هو لللغة الانجليزية | ||
![]() | ![]() |
![]() | #7 |
مدير عام منتديات جريت بلينز العربية | ![]() ولا يهمك أخي حسن ... والله ما اخرب عليك الفرحة ![]() تفضل هذا لكود يظهر لك العربي .... كود: Public Function ConvertCurrencyToArabic(MyNumber As String) As String Dim temp Dim Riyal, Halalah Dim DecimalPlace, Count, CountDigit ReDim Place(9) As String Place(2) = "ÃáÜÜÜÝ æ" Place(3) = "ãÜáÜíÜæä æ " Place(4) = "ÈÜáÜíÜæä æ" Place(5) = "ÊÜÑáíæä æ" MyNumber = Trim(Str(MyNumber)) DecimalPlace = InStr(MyNumber, ".") If DecimalPlace > 0 Then temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2) Halalah = ConvertTens(temp) MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) End If Count = 1 CountDigit = 3 Do While MyNumber <> "" If Left(MyNumber, 1) = "2" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" Then Riyals = "à áÝÇä æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "2" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" Then Riyals = "à áÝÇä " Exit Do End If If Left(MyNumber, 1) = "1" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" Then Riyals = "ÃáÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "1" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" Then Riyals = "ÃáÝ " Exit Do End If If Left(MyNumber, 1) = "3" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" And CountDigit = 3 Then Riyals = "ËáÇËÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "3" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" And CountDigit = 3 Then Riyals = "ËáÇËÉ ÂáÇÝ " Exit Do End If If Left(MyNumber, 1) = "4" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" And CountDigit = 3 Then Riyals = "ÃÑÈÚÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "4" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" And CountDigit = 3 Then Riyals = "ÃÑÈÚÉ ÂáÇÝ " Exit Do End If If Left(MyNumber, 1) = "5" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" And CountDigit = 3 Then Riyals = "ÎãÓÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "5" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" And CountDigit = 3 Then Riyals = "ÎãÓÉ ÂáÇÝ " Exit Do End If If Left(MyNumber, 1) = "6" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" And CountDigit = 3 Then Riyals = "ÓÊÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "6" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" And CountDigit = 3 Then Riyals = "ÓÊÉ ÂáÇÝ " Exit Do End If If Left(MyNumber, 1) = "7" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" And CountDigit = 3 Then Riyals = "ÓÈÚÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "7" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" And CountDigit = 3 Then Riyals = "ÓÈÚÉ ÂáÇÝ " Exit Do End If If Left(MyNumber, 1) = "8" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" And CountDigit = 3 Then Riyals = "ËãÇäíÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "8" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" And CountDigit = 3 Then Riyals = "ËãÇäíÉ ÂáÇÝ " Exit Do End If If Left(MyNumber, 1) = "9" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) <> "000" And CountDigit = 3 Then Riyals = "ÊÓÚÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "9" And Len(MyNumber) = 4 And Mid(MyNumber, 2, 3) = "000" And CountDigit = 3 Then Riyals = "ÊÓÚÉ ÂáÇÝ " Exit Do End If If Left(MyNumber, 2) = "10" And Len(MyNumber) = 5 And Mid(MyNumber, 2, 4) <> "0000" And CountDigit = 3 Then Riyals = "ÚÔÑÉ ÂáÇÝ æ" temp = ConvertHundreds(Right(MyNumber, 3)) Riyals = Riyals & temp Exit Do End If If Left(MyNumber, 1) = "1" And Len(MyNumber) = 5 And Mid(MyNumber, 2, 4) = "0000" And CountDigit = 3 Then Riyals = "ÚÔÑÉ ÂáÇÝ " Exit Do End If temp = ConvertHundreds(Right(MyNumber, 3)) If temp <> "" Then Riyals = temp & " " & Place(Count) & " " & Riyals End If If Len(MyNumber) > 3 Then MyNumber = Left(MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = Count + 1 CountDigit = CountDigit + 3 Loop Select Case Riyals Case "" Riyals = "áÇíæÌÏ ãÈáÛ" Case "One" Riyals = " ÑíÇá æÇÍÜÏ " Case Else Riyals = Riyals & " ÑíÜÜÇá " End Select Select Case Halalah Case "" Halalah = " ÝÞØ áÇ ÛíÑ" Case "æÇÍÏ" Halalah = " æ åááÉ æÇÍÏÉ ÝÞØ áÇ ÛíÑ" Case Else Halalah = " æ " & Halalah & " åááÉ ÝÞØ áÇ ÛíÑ" End Select ConvertCurrencyToArabic = Riyals & Halalah End Function __________________ Monzer Osama Saudia Arabia - Jeddah 00966501826235 Microsoft Certified Business Management Solutions Professional Microsoft Certified Trainer آخر تعديل بواسطة Monzer Osama ، 06-Sep-2007 الساعة 06:51 PM. |
![]() | ![]() |
![]() | #8 |
مدير عام منتديات جريت بلينز العربية | ![]() كود: Private Function ConvertHundreds(MyNumber) Dim Result As String If Val(MyNumber) = 0 Then Exit Function MyNumber = Right("000" & MyNumber, 3) If Left(MyNumber, 1) <> "0" And Left(MyNumber, 1) <> "1" And Left(MyNumber, 1) <> "2" Then If Mid(MyNumber, 2, 1) <> "0" Then Result = ConvertDigit(Left(MyNumber, 1)) & "ãÜÇÆÜÉ æ" Else Result = ConvertDigit(Left(MyNumber, 1)) & "ãÜÇÆÜÉ " End If End If If Mid(MyNumber, 2, 1) <> "0" Then Result = Result & ConvertTens(Mid(MyNumber, 2)) Else Result = Result & ConvertDigit(Mid(MyNumber, 3)) End If If Mid(MyNumber, 1, 1) = "2" And Mid(MyNumber, 2, 2) <> "00" Then Result = "ãÜÇÆÊÇä æ" & ConvertTens(Mid(MyNumber, 2)) Else If Mid(MyNumber, 1, 1) = "2" And Mid(MyNumber, 2, 2) = "00" Then Result = "ãÜÇÆÊÇä " End If End If If Mid(MyNumber, 2, 2) <> "00" And Mid(MyNumber, 1, 1) = "1" Then Result = "ãÜÇÆÜÉ æ " & ConvertTens(Mid(MyNumber, 2)) Else If Mid(MyNumber, 2, 2) = "00" And Mid(MyNumber, 1, 1) = "1" Then Result = "ãÜÇÆÜÉ " End If End If ConvertHundreds = Trim(Result) End Function Private Function ConvertTens(Mytens) Dim Result As String If Val(Left(Mytens, 1)) = 1 Then Select Case Val(Mytens) Case 10: Result = " ÚÔÜÑÉ " Case 11: Result = " ÅÍÏì ÚÔÜÑ " Case 12: Result = " ÅËäÜí ÚÔÜÑ " Case 13: Result = " ËáÇËÉ ÚÔÜÑ " Case 14: Result = " ÃÑÈÚÜÉ ÚÔÜÑ " Case 15: Result = " ÎãÓÜÉ ÚÔÜÑ " Case 16: Result = " ÓÜÊÉ ÚÔÜÑ " Case 17: Result = " ÓÜÈÚÉ ÚÔÜÑ " Case 18: Result = " ËãÇäíÜÉ ÚÔÜÑ " Case 19: Result = " ÊÓÜÚÉ ÚÔÜÑ " Case Else End Select Else Select Case Val(Left(Mytens, 1)) Case 2: Result = " ÚÔÜÑæä " Case 3: Result = " ËÜáÇËæä " Case 4: Result = " ÃÑÈÚÜæä " Case 5: Result = " ÎãÓÜÜæä " Case 6: Result = " ÓÜÜÊæä " Case 7: Result = " ÓÜÜÈÚæä " Case 8: Result = " ËÜãÜÇäæä " Case 9: Result = " ÊÓÜÜÚæä " Case Else End Select If Val(Right(Mytens, 1)) = "0" Then Result = ConvertDigit(Right(Mytens, 1)) & Result Else Result = ConvertDigit(Right(Mytens, 1)) & " æ" & Result End If End If ConvertTens = Result End Function Private Function ConvertDigit(MyDigit) Select Case Val(MyDigit) Case 1: ConvertDigit = "æÇÍÜÏ" Case 2: ConvertDigit = "ÅËÜäÜÇä" Case 3: ConvertDigit = "ËÜáÇË" Case 4: ConvertDigit = "ÃÑÈÜÚ" Case 5: ConvertDigit = "ÎãÜÓ" Case 6: ConvertDigit = "ÓÜÊ" Case 7: ConvertDigit = "ÓÜÈÜÚ" Case 8: ConvertDigit = "ËãÇä" Case 9: ConvertDigit = "ÊÜÓÜÚ" End Select End Function Private Sub Report_BeforePF(SuppressBand As Boolean) arabic.Value = Trim(ConvertCurrencyToArabic(NetWagesPayRun.Value)) End Sub فقط أضف حقل calculated Feild بالريبورت وسميه arabic وأضفه للفيجوال بيسك[/code] __________________ Monzer Osama Saudia Arabia - Jeddah 00966501826235 Microsoft Certified Business Management Solutions Professional Microsoft Certified Trainer آخر تعديل بواسطة Monzer Osama ، 06-Sep-2007 الساعة 06:52 PM. |
![]() | ![]() |
![]() | #9 | ||
عضو نشيط تاريخ التسجيل: Jun 2007 الدولة: Saudi Arabia المشاركات: 56
| ![]() يسلموا على الكود أنا بالفعل لدي كود لتفقيط العربي ( طبعا ليس بهذه الاحترافية ![]() ولكن الحسرة هو عدم اهتمام مايكروسوفت بتوفير دعم هذا التفقيط مثل التفقيط الانجليزي ، مع كبر حجم سوق gp في المنطقة ![]() | ||
![]() | ![]() |
![]() | #10 | ||
عضو جديد تاريخ التسجيل: Sep 2007 المشاركات: 12
| ![]() مشكووووووووووووووووووووور | ||
![]() | ![]() |
![]() |
يتصفح الموضوع حالياً : 1 (0 عضو و 1 ضيف) | |
أدوات الموضوع | |
انواع عرض الموضوع | |
|
|
![]() | ||||
الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
الكتابة باللغة العربية | Hassanb | منتدى الإقتراحات والشكاوي | 3 | 02-Dec-2014 10:18 AM |
دروس تعليم الكريستال ريبورت 10 باللغة العربية | Monzer Osama | أدوات التقارير التي لا تنتمي لبرنامج جريت بلينز | 26 | 04-Oct-2014 12:52 AM |
دليل استخدام باللغة العربية | yahiaz | تعرف على جريت بلينز .... | 7 | 26-Dec-2013 04:13 PM |
عرض تقديمي لجريت بلينز باللغة العربية | osamamakled | منتدى جريت بلينز العام | 7 | 01-Aug-2013 10:16 AM |
سؤال عن دليل استخدام جريت بلينز10 باللغة العربية ( أرجو المساعدة | ah_toybi | الجزيئ المالي (GL - AP - AR – BM - FA - AC ... ets.) | 2 | 11-Jul-2013 02:00 AM |