26-07-19, 11:03 AM
(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(7, 2);
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(12, 1));
if (cod == 0)
return "أنثى";
else
return "ذكر";
}
public static DateTime GetBirthDate(string RakamKomy) {
int centry = 17 + Convert.ToInt32(RakamKomy.Substring(0, 1));
int BYear = Convert.ToInt32(centry.ToString() + RakamKomy.Substring(1, 2));
int BMonth = Convert.ToInt32(RakamKomy.Substring(3, 2));
int BDay = Convert.ToInt32(RakamKomy.Substring(5, 2));
return new DateTime(BYear, BMonth, BDay);
}
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 part, DateTime bDate) {
int vYears = 0, vMonths = 0, vDays = 0;
vYears = DateTime.Today.Year - bDate.Year;
vMonths = DateTime.Today.Month - bDate.Month;
vDays = DateTime.Today.Day - bDate.Day;
if (vDays < 0) { vDays = vDays + 30; vMonths--; }
if (vMonths < 0) { vMonths = vMonths + 12; vYears--; }
if (part == "d") return vDays;
if (part == "m") return vMonths;
if (part == "y") return vYears;
return -1;
}
}
وهذا كود الفورم
PHP كود :
private void Form1_Load(object sender, EventArgs e) {
this.Txt_Number.Select();
}
private void button1_Click(object sender, EventArgs 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 عموما حساسة لحالة الأحرف.
أخي أحمد
إن كان هناك استفسار في هذه الأكواد فأخبرني
شكرا على مجهودك
الملف شغال نمام لكن به خطأ فى الجنس ذكر او انثى
