السلام عليكم لدي تقرير ولغة الويندوز واعدادات المنطقة هي السعودية والتقرير لدي افتراضي حسب لغة الويندوز لان يوحد لدي عملة ايضا
كيف يمكنني التعديل بالكود التالي لتحويل التاريخ الى ميلادي من الهجري
حاولت اعدل بالخصائص ولاكن لم تزبط معي كما هو مبين بالصورة
PHP كود :
= Format(Fields!Dateexpense.Value,"yyyy/MM/dd")
وعليكم السلام
بما يتعلق بموضوع نوع التاريخ حسب ما توصلت اليه افضل ما استطعت التوصل اليه هو ان يكون باعدادات البرنامج خيار يمكن المستخدم من اختيار نوع التاريخ وتنسيقه وتنسيق الارقام ..الخ وعندما يختار المستخدم تفضيلاته يتم التعديل على ملف الريجستري في ويندوز
نعم ماهي الطريقة أنا احتاج فقط على التعديل على الكود بناءاً على التاريخ الميلادي
استخدم الدالة التالية لتعديل التاريخ من عربي لشمسي ..
كود :
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
لتحويل تاريخ من التقويم الهجري إلى التقويم الميلادي واستخدامه في 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 باستخدام الدالة التي أنشأتها .