منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer (/showthread.php?tid=49276)



كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer - moh61 - 22-06-24

السلام عليكم لدي تقرير ولغة الويندوز واعدادات المنطقة هي السعودية والتقرير لدي افتراضي حسب لغة الويندوز لان يوحد لدي عملة ايضا

كيف يمكنني التعديل بالكود التالي لتحويل التاريخ الى ميلادي من الهجري

حاولت اعدل بالخصائص ولاكن لم تزبط معي كما هو مبين بالصورة

PHP كود :
Format(Fields!Dateexpense.Value,"yyyy/MM/dd"



RE: كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer - ابو انس - 22-06-24

وعليكم السلام
بما يتعلق بموضوع نوع التاريخ حسب ما توصلت اليه افضل ما استطعت التوصل اليه هو ان يكون باعدادات البرنامج خيار يمكن المستخدم من اختيار نوع التاريخ وتنسيقه وتنسيق الارقام ..الخ وعندما يختار المستخدم تفضيلاته يتم التعديل على ملف الريجستري في ويندوز


RE: كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer - moh61 - 22-06-24

نعم ماهي الطريقة أنا احتاج فقط على التعديل على الكود بناءاً على التاريخ الميلادي


RE: كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer - Taha Okla - 22-06-24

استخدم الدالة التالية لتعديل التاريخ من عربي لشمسي ..

كود :
   Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

       TextBox2.Text = GetSunDate(Today.Date) '  المدخل يجب أن يكون من نوع تاريخ
   End Sub

   Public Function GetSunDate(pDate As DateTime) As String
       Dim ci As CultureInfo = CultureInfo.GetCultureInfo("en-AE")
       Return pDate.ToString("yyyy/MM/dd", ci)
   End Function



RE: كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer - Kamil - 22-06-24

لتحويل تاريخ من التقويم الهجري إلى التقويم الميلادي  واستخدامه في Report Viewer، يمكنك اتباع الخطوات التالية:

الخطوات:
1. إنشاء دالة للتحويل :
يمكنك إنشاء دالة .تقوم بتحويل التاريخ من التقويم الهجري إلى التقويم الميلادي باستخدام مكتبة System.Globalization.HijriCalendar.

PHP كود :
Imports System.Globalization

Public Module DateConverter
    Public 
Function ConvertHijriToGregorian(hijriDate As String) As String
        
' Parse the hijriDate string to a DateTime object
        Dim hijriDateTime As DateTime = DateTime.ParseExact(hijriDate, "yyyy/MM/dd", CultureInfo.InvariantCulture, DateTimeStyles.None)

        ' 
Create a HijriCalendar instance
        Dim hijriCalendar 
As New HijriCalendar()

 
       ' Convert the Hijri date to Gregorian
        Dim gregorianDateTime As DateTime = hijriCalendar.ToDateTime(hijriDateTime.Year, hijriDateTime.Month, hijriDateTime.Day, 0, 0, 0, 0)

        ' 
Return the Gregorian date in the desired format
        Return gregorianDateTime
.ToString("yyyy/MM/dd")
 
   End Function
End Module 

2. استخدام الدالة في تقرير Report Viewer:
بعد إنشاء الدالة ، يمكنك استخدامها في تقرير Report Viewer لتحويل التواريخ من التقويم الهجري إلى التقويم الميلادي.

قم بفتح تقريرك في Visual Studio.
حدد العنصر حيث ترغب في عرض التاريخ المحول.
انقر بزر الماوس الأيمن على العنصر واختر "Expression".
في الحقل "Set expression for: Value", ادخل الكود التالي لاستدعاء الدالة التي قمت بإنشائها:

PHP كود :
=DateConverter.ConvertHijriToGregorian(Fields!Dateexpense.Value

شرح الكود:
DateConverter.ConvertHijriToGregorian(Fields!Dateexpense.Value): يستدعي الدالة ConvertHijriToGregorian التي أنشأتها في الخطوة الأولى، ويمرر لها قيمة التاريخ من الحقل Fields!Dateexpense.Value الذي يفترض أنه التاريخ في التقويم الهجري.
ملاحظات:
تأكد من تعديل التنسيق "yyyy/MM/dd" في دالة ParseExact و ToString حسب التنسيق الذي تحتاجه.
يجب أن يتم تعيين هذه الكود في كلاس يمكن الوصول إليه (public module) في المشروع الخاص بك.
تأكد من أن المكتبات اللازمة System و System.Globalization مُضافة إلى مشروعك.
باستخدام هذه الطريقة، يمكنك بسهولة تحويل التاريخ من التقويم الهجري إلى التقويم الميلادي في تقارير Report Viewer باستخدام الدالة التي أنشأتها .