تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشروع استخراج بيانات الرقم القومى
#1
السلام عليكم ورحمة الله تعالى وبركاته
اعضاء المنتدى الكرام
كل عام وانت جميعا بخير
مرفق ملف لاستخراج البيانات من الرقم القومى 
يعمل جيدا دون اى اخطاء بلغه  VB.net

هل من الممكن ننفيذ هذا المشروع بلغه السي شارب


الملفات المرفقة
.rar   Test_Number.rar (الحجم : 70.4 ك ب / التحميلات : 15)
الرد
تم الشكر بواسطة: سعود , asemshahen5 , asemshahen5
#2
وعليكم السلام ورحمة الله وبركاته
اخي الكريم اسمح لي بهذه الكلمات وان لم تعجبك لاترد ....  فاحذفها مباشرة لاني لا احب ان ازعج احد لكني احب ابداء راي ارى فيه منفعة .
افتح صفحة لاحدى مواقع التحويل من vb to csharp  واضف لمشروع جديد الكلاسات والموديولات والفورمات واحدة تلو الاخرى بعد اتمام كل كلاس انتقل للاخر.
وابدا بالبحث عن vb to c# converter
عند التوقف عند كل خطوة  اذكر تفاصيل تلك الخطوة .
لان عدم ذكر التفاصيل سنعود بك الى الخطوة الاولى وبهذا لن تحصل على المطلوب بشكل سريع.
أرجو والله ان لا تنزعج مما كتبته الان.
والسلام عليكم ورحمة الله  وبركاته
الرد
#3
(25-07-19, 09:24 PM)سعود كتب : وعليكم السلام ورحمة الله وبركاته
اخي الكريم اسمح لي بهذه الكلمات وان لم تعجبك لاترد ....  فاحذفها مباشرة لاني لا احب ان ازعج احد لكني احب ابداء راي ارى فيه منفعة .
افتح صفحة لاحدى مواقع التحويل من vb to csharp  واضف لمشروع جديد الكلاسات والموديولات والفورمات واحدة تلو الاخرى بعد اتمام كل كلاس انتقل للاخر.
وابدا بالبحث عن vb to c# converter
عند التوقف عند كل خطوة  اذكر تفاصيل تلك الخطوة .
لان عدم ذكر التفاصيل سنعود بك الى الخطوة الاولى وبهذا لن تحصل على المطلوب بشكل سريع.
أرجو والله ان لا تنزعج مما كتبته الان.
والسلام عليكم ورحمة الله  وبركاته
مافيش ازعاج ولا حاجه استاذي الفاضل

لو فيه رابط لموقع يناسب ما تقوله ارجو ارفاقه
وشكرا ليك
الرد
#4
إقتباس :لو فيه رابط لموقع يناسب ما تقوله ارجو ارفاقه

وشكرا ليك
كتبت لك رابط للبحث واول نتيجة رائعة .
ان كان قصدك تحويل مشروع كامل من لغة لاخرى فهنا  لا اعلم انه يوجد ولم اقصده اصلا .
التحويل يكون جيد وممتاز للاجراءات  تنسخ اجراء واحد متكامل بدون نقص وتلصقه ويقوم بتحويله بعد نقر الزر المسؤول عن ذلك.
انت الان لديك خبرة من موضوعك السابق.
ولا اظنه صعب عليك اكمال المشروع.
على كل حال اعطيتك طريقة من الطرق اللي استخدمها ويستخدمها غيري.
الرد
#5
(25-07-19, 09:55 PM)سعود كتب :
إقتباس :لو فيه رابط لموقع يناسب ما تقوله ارجو ارفاقه

وشكرا ليك
كتبت لك رابط للبحث واول نتيجة رائعة .
ان كان قصدك تحويل مشروع كامل من لغة لاخرى فهنا  لا اعلم انه يوجد ولم اقصده اصلا .
التحويل يكون جيد وممتاز للاجراءات  تنسخ اجراء واحد متكامل بدون نقص وتلصقه ويقوم بتحويله بعد نقر الزر المسؤول عن ذلك.
انت الان لديك خبرة من موضوعك السابق.
ولا اظنه صعب عليك اكمال المشروع.
على كل حال اعطيتك طريقة من الطرق اللي استخدمها ويستخدمها غيري.

للاسف جربت الموقع والنتيجه فيها اخطاء كثيره 
دا كود داخل مدييول لغه VB.net
 ومفروض انه يتغير ل سي شارب
كود :
Function GetMohafza(ByVal RakamKomy As String) As String
       Dim MOhfza As String
       Dim cod As String

       cod = Mid(RakamKomy, 8, 2)

       Select Case cod
           Case "01"
               [MOhfza] = "القاهرة"
           Case "02"
               [MOhfza] = "الاسكندرية"
           Case "16"
               [MOhfza] = "الغربية"
           Case "33"
               [MOhfza] = "مطروح"
           Case "24"
               [MOhfza] = "المنيا"
           Case "18"
               [MOhfza] = "البحيرة"
           Case "25"
               [MOhfza] = "أسيوط"
           Case "27"
               [MOhfza] = "قنا"
           Case "17"
               [MOhfza] = "المنوفية"
           Case "12"
               [MOhfza] = "الدقهلية"
           Case "15"
               [MOhfza] = "كفر الشيخ"
           Case "26"
               [MOhfza] = "سوهاج"
           Case "13"
               [MOhfza] = "الشرقية"
           Case "14"
               [MOhfza] = "القليوبية"
           Case "22"
               [MOhfza] = "بنى سويف"
           Case "24"
               [MOhfza] = "المنيا"
           Case "19"
               [MOhfza] = "الاسماعيلية"
           Case "21"
               [MOhfza] = "الجيزة"
           Case "28"
               [MOhfza] = "أسوان"
           Case "29"
               [MOhfza] = "الاقصر"
           Case Else
               [MOhfza] = "unknown"
       End Select
       GetMohafza = MOhfza
   End Function

   Function Gender(ByVal RakamKomy As String) As String
       Dim cod As Integer
       cod = Mid(RakamKomy, 13, 1)
       If cod Mod 2 = 0 Then
           Gender = "أنثى"
       Else
           Gender = "ذكر"
       End If
   End Function

   Function BirthDate(ByVal RakamKomy As String) As Date
       Try
           Dim centry As Integer = Mid(RakamKomy, 1, 1)
           Dim BYear As String = IIf(centry = 2, 19, IIf(centry = 3, 20, 21)) & "" & Mid(RakamKomy, 2, 2)
           Dim BMonth As String = Mid(RakamKomy, 4, 2)
           Dim BDay As String = Mid(RakamKomy, 6, 2)
           BirthDate = CDate(BDay & "/" & BMonth & "/" & BYear)
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try

   End Function

   Function Calcday(ByVal vDate1 As Date, ByVal vdate2 As Date)
       Dim vMonths As Integer, vDays As Integer
       vMonths = DateDiff("m", vDate1, vdate2)
       vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
       If vDays < 0 Then
           vMonths = vMonths - 1
           vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
       End If
       Calcday = vDays '& "يوم "
   End Function

   Function CalcMonth(ByVal vDate1 As Date, ByVal vdate2 As Date)
       Dim vMonths As Integer, vDays As Integer
       vMonths = DateDiff("m", vDate1, vdate2)
       vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
       If vDays < 0 Then
           vMonths = vMonths - 1
           vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
       End If
       vMonths = vMonths Mod 12
       CalcMonth = vMonths '& "شهر "
   End Function

   Function Calcyear(ByVal vDate1 As Date, ByVal vdate2 As Date)
       Dim vYears As Integer, vMonths As Integer, vDays As Integer
       vMonths = DateDiff("m", vDate1, vdate2)
       vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
       If vDays < 0 Then
           vMonths = vMonths - 1
           vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
       End If
       vYears = vMonths \ 12
       Calcyear = vYears '& "سنه "
   End Function

End Module
الرد
تم الشكر بواسطة: asemshahen5 , الحازمي , الحازمي , حريف برمجة
#6
أخي أمون

هناك أكواد لا توجد في السي شارب، ولابد لك من برمجة بديل، وهذا ما فعلته في الكلاس التالي

هذا تحويل للموديول وأسميته ClassFuctions  (لغة C لا يوجد بها موديول)
أضف كلاس بالإسم ClassFuctions وضع فيه هذا الكود
PHP كود :
class ClassFuctions
{

 
   public static string GetMohafza(string RakamKomy) {
 
       String MOhfza "unknown";
 
       String cod RakamKomy.Substring(72);
 
       switch (cod) {
 
           case "01":
 
               MOhfza "القاهرة";
 
               break;
 
           case "02":
 
               MOhfza "الاسكندرية";
 
               break;
 
           case "16":
 
               MOhfza "الغربية";
 
               break;
 
           case "33":
 
               MOhfza "مطروح";
 
               break;
 
           case "24":
 
               MOhfza "المنيا";
 
               break;

 
           case "18":
 
               MOhfza "البحيرة";
 
               break;
 
           case "25":
 
               MOhfza "أسيوط";
 
               break;
 
           case "27":
 
               MOhfza "قنا";
 
               break;
 
           case "17":
 
               MOhfza "المنوفية";
 
               break;

 
           case "12":
 
               MOhfza "الدقهلية";
 
               break;
 
           case "15":
 
               MOhfza "كفر الشيخ";
 
               break;
 
           case "26":
 
               MOhfza "سوهاج";
 
               break;
 
           case "13":
 
               MOhfza "الشرقية";
 
               break;
 
           case "14":
 
               MOhfza "القليوبية";
 
               break;
 
           case "22":
 
               MOhfza "بنى سويف";
 
               break;
 
           //case "24":
 
           //    MOhfza = "المنيا";
 
           //    break;
 
           case "19":
 
               MOhfza "الاسماعيلية";
 
               break;
 
           case "21":
 
               MOhfza "الجيزة";
 
               break;
 
           case "28":
 
               MOhfza "أسوان";
 
               break;
 
           case "29":
 
               MOhfza "الاقصر";
 
               break;
 
           default:
 
               MOhfza "unknown";
 
               break;
 
       }
 
       return MOhfza;
 
   }

 
   public static string GetGender(string RakamKomy) {
 
       int cod Convert.ToInt32(RakamKomy.Substring(121));
 
       if (cod == 0)
 
           return "أنثى";
 
       else
            return 
"ذكر";
 
   }

 
   public static DateTime GetBirthDate(string RakamKomy) {
 
       int centry 17 Convert.ToInt32(RakamKomy.Substring(01));
 
       int BYear Convert.ToInt32(centry.ToString() + RakamKomy.Substring(12));
 
       int BMonth Convert.ToInt32(RakamKomy.Substring(32));
 
       int BDay Convert.ToInt32(RakamKomy.Substring(52));
 
       return new DateTime(BYearBMonthBDay);
 
   }

 
   public static int GetAgeDays(DateTime bDate) {
 
       return GetAgePartValue("d"bDate);
 
   }

 
   public static int GetAgeMonths(DateTime bDate) {
 
       return GetAgePartValue("m"bDate);
 
   }

 
   public static int GetAgeYears(DateTime bDate) {
 
       return GetAgePartValue("y"bDate);
 
   }

 
   private static int GetAgePartValue(string partDateTime bDate) {
 
       int vYears 0vMonths 0vDays 0;
 
       vYears DateTime.Today.Year bDate.Year;
 
       vMonths DateTime.Today.Month bDate.Month;
 
       vDays DateTime.Today.Day bDate.Day;
 
       if (vDays 0) { vDays vDays 30vMonths--; }
 
       if (vMonths 0) { vMonths vMonths 12vYears--; }
 
       if (part == "d") return vDays;
 
       if (part == "m") return vMonths;
 
       if (part == "y") return vYears;
 
       return -1;
 
   }



وهذا كود الفورم
PHP كود :
private void Form1_Load(object senderEventArgs e) {
 
   this.Txt_Number.Select();
}

private 
void button1_Click(object senderEventArgs e) {
 
   if (this.Txt_Number.Text.Trim().Length == 14) {
 
       this.TextBox1.Text ClassFuctions.GetMohafza(this.Txt_Number.Text); //المحافظه//
 
       this.TextBox2.Text ClassFuctions.GetGender(this.Txt_Number.Text);  //النوع//
 
       this.TextBox3.Text ClassFuctions.GetBirthDate(this.Txt_Number.Text).ToString("yyyy/MM/dd"); //تاريخ الميلاد//
 
       this.TextBox4.Text ClassFuctions.GetAgeDays(Convert.ToDateTime(this.TextBox3.Text)).ToString();   //حساب السن يوم//
 
       this.TextBox5.Text ClassFuctions.GetAgeMonths(Convert.ToDateTime(this.TextBox3.Text)).ToString(); //حساب السن شهر//
 
       this.TextBox6.Text ClassFuctions.GetAgeYears(Convert.ToDateTime(this.TextBox3.Text)).ToString();  //حساب السن سنه//
 
       this.TextBox7.Text Convert.ToDateTime(this.TextBox3.Text).AddYears(60).AddDays(-1).ToString("yyyy/MM/dd"); //سن المعاش//

 
   }
 
   else {
 
       this.TextBox1.Clear();
 
       this.TextBox2.Clear();
 
       this.TextBox3.Clear();
 
       this.TextBox4.Clear();
 
       this.TextBox5.Clear();
 
       this.TextBox6.Clear();
 
       this.TextBox7.Clear();
 
   }


مع ملاحظة التدقيق في أسماء الأدوات، لأن لغة C عموما حساسة لحالة الأحرف.


أخي أحمد
إن كان هناك استفسار في هذه الأكواد فأخبرني
الرد
تم الشكر بواسطة: حريف برمجة , asemshahen5 , Rabeea Qbaha
#7
(26-07-19, 05:17 AM)الحازمي كتب : أخي أمون

هناك أكواد لا توجد في السي شارب، ولابد لك من برمجة بديل، وهذا ما فعلته في الكلاس التالي

هذا تحويل للموديول وأسميته ClassFuctions  (لغة C لا يوجد بها موديول)
أضف كلاس بالإسم ClassFuctions وضع فيه هذا الكود
PHP كود :
class ClassFuctions
{

 
   public static string GetMohafza(string RakamKomy) {
 
       String MOhfza "unknown";
 
       String cod RakamKomy.Substring(72);
 
       switch (cod) {
 
           case "01":
 
               MOhfza "القاهرة";
 
               break;
 
           case "02":
 
               MOhfza "الاسكندرية";
 
               break;
 
           case "16":
 
               MOhfza "الغربية";
 
               break;
 
           case "33":
 
               MOhfza "مطروح";
 
               break;
 
           case "24":
 
               MOhfza "المنيا";
 
               break;

 
           case "18":
 
               MOhfza "البحيرة";
 
               break;
 
           case "25":
 
               MOhfza "أسيوط";
 
               break;
 
           case "27":
 
               MOhfza "قنا";
 
               break;
 
           case "17":
 
               MOhfza "المنوفية";
 
               break;

 
           case "12":
 
               MOhfza "الدقهلية";
 
               break;
 
           case "15":
 
               MOhfza "كفر الشيخ";
 
               break;
 
           case "26":
 
               MOhfza "سوهاج";
 
               break;
 
           case "13":
 
               MOhfza "الشرقية";
 
               break;
 
           case "14":
 
               MOhfza "القليوبية";
 
               break;
 
           case "22":
 
               MOhfza "بنى سويف";
 
               break;
 
           //case "24":
 
           //    MOhfza = "المنيا";
 
           //    break;
 
           case "19":
 
               MOhfza "الاسماعيلية";
 
               break;
 
           case "21":
 
               MOhfza "الجيزة";
 
               break;
 
           case "28":
 
               MOhfza "أسوان";
 
               break;
 
           case "29":
 
               MOhfza "الاقصر";
 
               break;
 
           default:
 
               MOhfza "unknown";
 
               break;
 
       }
 
       return MOhfza;
 
   }

 
   public static string GetGender(string RakamKomy) {
 
       int cod Convert.ToInt32(RakamKomy.Substring(121));
 
       if (cod == 0)
 
           return "أنثى";
 
       else
            return 
"ذكر";
 
   }

 
   public static DateTime GetBirthDate(string RakamKomy) {
 
       int centry 17 Convert.ToInt32(RakamKomy.Substring(01));
 
       int BYear Convert.ToInt32(centry.ToString() + RakamKomy.Substring(12));
 
       int BMonth Convert.ToInt32(RakamKomy.Substring(32));
 
       int BDay Convert.ToInt32(RakamKomy.Substring(52));
 
       return new DateTime(BYearBMonthBDay);
 
   }

 
   public static int GetAgeDays(DateTime bDate) {
 
       return GetAgePartValue("d"bDate);
 
   }

 
   public static int GetAgeMonths(DateTime bDate) {
 
       return GetAgePartValue("m"bDate);
 
   }

 
   public static int GetAgeYears(DateTime bDate) {
 
       return GetAgePartValue("y"bDate);
 
   }

 
   private static int GetAgePartValue(string partDateTime bDate) {
 
       int vYears 0vMonths 0vDays 0;
 
       vYears DateTime.Today.Year bDate.Year;
 
       vMonths DateTime.Today.Month bDate.Month;
 
       vDays DateTime.Today.Day bDate.Day;
 
       if (vDays 0) { vDays vDays 30vMonths--; }
 
       if (vMonths 0) { vMonths vMonths 12vYears--; }
 
       if (part == "d") return vDays;
 
       if (part == "m") return vMonths;
 
       if (part == "y") return vYears;
 
       return -1;
 
   }



وهذا كود الفورم
PHP كود :
private void Form1_Load(object senderEventArgs e) {
 
   this.Txt_Number.Select();
}

private 
void button1_Click(object senderEventArgs e) {
 
   if (this.Txt_Number.Text.Trim().Length == 14) {
 
       this.TextBox1.Text ClassFuctions.GetMohafza(this.Txt_Number.Text); //المحافظه//
 
       this.TextBox2.Text ClassFuctions.GetGender(this.Txt_Number.Text);  //النوع//
 
       this.TextBox3.Text ClassFuctions.GetBirthDate(this.Txt_Number.Text).ToString("yyyy/MM/dd"); //تاريخ الميلاد//
 
       this.TextBox4.Text ClassFuctions.GetAgeDays(Convert.ToDateTime(this.TextBox3.Text)).ToString();   //حساب السن يوم//
 
       this.TextBox5.Text ClassFuctions.GetAgeMonths(Convert.ToDateTime(this.TextBox3.Text)).ToString(); //حساب السن شهر//
 
       this.TextBox6.Text ClassFuctions.GetAgeYears(Convert.ToDateTime(this.TextBox3.Text)).ToString();  //حساب السن سنه//
 
       this.TextBox7.Text Convert.ToDateTime(this.TextBox3.Text).AddYears(60).AddDays(-1).ToString("yyyy/MM/dd"); //سن المعاش//

 
   }
 
   else {
 
       this.TextBox1.Clear();
 
       this.TextBox2.Clear();
 
       this.TextBox3.Clear();
 
       this.TextBox4.Clear();
 
       this.TextBox5.Clear();
 
       this.TextBox6.Clear();
 
       this.TextBox7.Clear();
 
   }


مع ملاحظة التدقيق في أسماء الأدوات، لأن لغة C عموما حساسة لحالة الأحرف.


أخي أحمد
إن كان هناك استفسار في هذه الأكواد فأخبرني
الله ينور عليك استاذي الغالى
شكرا على مجهودك 

الملف شغال نمام لكن به خطأ فى الجنس ذكر او انثى
الرد
تم الشكر بواسطة: الحازمي , الحازمي
#8
السلام عليكم 
احي استبدل الرقم في كود الجنس (حدث سهوا) 12 اجعلها 13
هذا الكود
PHP كود :
public static string GetGender(string RakamKomy) {
 
       int cod Convert.ToInt32(RakamKomy.Substring(121));
 
       if (cod == 0)
 
           return "أنثى";
 
       else
            return 
"ذكر";
 
   
احعله هكذا
PHP كود :
public static string GetGender(string RakamKomy) {
 
       int cod Convert.ToInt32(RakamKomy.Substring(131));
 
       if (cod == 0)
 
           return "أنثى";
 
       else
            return 
"ذكر";
 
   
الرد
تم الشكر بواسطة: الحازمي , الحازمي
#9
أخي أحمد

إذا كان رقم ترتيب رمز النوع (ذكر/أنثى) هو الثالث عشر فتصحيح الخطأ يكون cod == 1

أخي ابراهيم
Substring يبدأ ترقيم الترتيب من 0 بخلاف Mid الذي يبدأ ترقيم الترتيب من 1
لهذا كان رقم الترتيب لرمز النوع 12 وليس 13 لأنني استخدمت Substring وليس Mid


أخي أحمد
إذا كان هناك استفسار آخر في الكود فأخبرني
الرد
تم الشكر بواسطة: asemshahen5
#10

.zip   Est3lam.zip (الحجم : 46.12 ك ب / التحميلات : 12)
.zip   Est3lam.zip (الحجم : 46.12 ك ب / التحميلات : 12) سلام عليكم روحمة الله عندي مثال قديم ولا اعرف ان كان هو نفس الفكره وكذا لا اعرف من صممه
الرد
تم الشكر بواسطة: asemshahen5 , الحازمي


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [C#.NET] كيف عمل قاعدة بيانات mysql ورفعها ع سيرفر وربط البرنامج بلسيرفر GeRoO 0 71 18-01-20, 05:38 PM
آخر رد: GeRoO
  حفظ صورة في قاعدة بيانات عبدالكريم رشدان 0 58 17-01-20, 01:14 PM
آخر رد: عبدالكريم رشدان
  [سؤال] مشروع انشاء موقع شات روم جماعي Tamer2beed 1 93 01-01-20, 05:39 PM
آخر رد: asemshahen5
  استشارة بشراء استضافة لرفع قاعدة بيانات sql server Rabeea Qbaha 0 97 21-12-19, 05:09 AM
آخر رد: Rabeea Qbaha
  جلب بيانات من برنامج exe منفصل إلى نافذة مشروعك tfarejdz 3 361 28-11-19, 07:55 PM
آخر رد: ali.alfoly
  مساعدة باعادة تصميم قاعدة بيانات. Rabeea Qbaha 5 289 17-11-19, 07:25 AM
آخر رد: new2016
  مساعدة بخصوص حفظ و عرض الصور من قاعدة بيانات sql server vivinecoryate 4 254 06-10-19, 02:26 PM
آخر رد: kiki
  مشكلة في تعديل سجل في قاعدة بيانات اكسيس asemshahen5 5 310 06-10-19, 02:23 PM
آخر رد: kiki
  كيفيه تمرير بيانات من فورم 1 الي فورم 2 عبر داتا جريد فيو faysal13_13@hotmail.com 14 571 08-09-19, 04:30 AM
آخر رد: faysal13_13@hotmail.com
  طلب مساعدة في انشاء استدعاء بيانات من قاعدة اكسس العريفي 0 165 31-08-19, 01:45 PM
آخر رد: العريفي

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


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