السلام عليكم ورحمة الله وبركاته
اقوم بحساب مجموع أيام الغياب فى الكود التالى
private void e_ghyab_tx_Leave(object sender, EventArgs e)
{
var g1 = Double.Parse(((e_ghyab_mrdy_tx.Text.Trim() == string.Empty ? (object)0 : e_ghyab_mrdy_tx.Text.Trim())).ToString());
var g2 = Double.Parse(((e_ghyab_no_mortb_tx.Text.Trim() == string.Empty ? (object)0 : e_ghyab_no_mortb_tx.Text.Trim())).ToString());
var g3 = Double.Parse(((e_ghyab_tx.Text.Trim() == string.Empty ? (object)0 : e_ghyab_tx.Text.Trim())).ToString());
e_ghyab_tot_tx.Text = (g1 + g2 + g3).ToString();
}
واقوم هنا بحساب درجات الغياب لكل موظف
public void tx_ghy_TextChanged(object sender, EventArgs e)
{
if (Convert.ToDouble(e_ghyab_tot_tx.Text) == 0)
{
e_ghyab_deg_tx.Text = "26";
}
else
{
if (Convert.ToDouble(e_ghyab_tot_tx.Text) == 1)
{
e_ghyab_deg_tx.Text = "24";
}
else
{
if (Convert.ToDouble(e_ghyab_tot_tx.Text) == 2)
{
e_ghyab_deg_tx.Text = "20";
}
else
{
if (Convert.ToDouble(e_ghyab_tot_tx.Text) == 3)
{
e_ghyab_deg_tx.Text = "14";
}
else
{
if (Convert.ToDouble(e_ghyab_tot_tx.Text) == 4)
{
e_ghyab_deg_tx.Text = "6";
}
else
{
if (Convert.ToDouble(e_ghyab_tot_tx.Text) == 5)
{
e_ghyab_deg_tx.Text = "0";
}
else
{
var count = 0;
var flag = 0;
for (var i = 6; i <= Convert.ToDouble(((e_ghyab_tot_tx.Text.Trim() == string.Empty ? (object)0 : e_ghyab_tot_tx.Text.Trim())).ToString()); i++)
{
flag++;
if (flag == 1)
{
count += 6;
flag = 0;
}
}
e_ghyab_deg_tx.Text = (count * -1).ToString();
}
}
}
}
}
}
}
المشكلة فى حساب مجموع أيام الغياب والخاص به الكود الأول
وهى عند كتابة عدد ايام مثلا 1.5 لا يتم حساب عدد الأيام اى لا اجد المجموع فى e_ghyab_tot_tx = 1.5 ولكنى اجده 0 وكذلك اذا كتبت فى مربعين مثلا 0.5 و 0.5 المفترض ان يظهر مجموعهم = 1 ولكن لا يظهر ايضا ؟؟
اذا تم كتابة عدد الأيام كرقم صحيح ( 1 او 2 او ...... ) يقبله ويقوم بالحساب مع العلم ان نوع الحقل فى قاعدة البيانات Float ؟

