منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[تم الحل]مشكلة فى جلب قيمة من داتا جريد فيو - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175)
+--- قسم : قسم اسئلة C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=176)
+--- الموضوع : [تم الحل]مشكلة فى جلب قيمة من داتا جريد فيو (/showthread.php?tid=30246)

الصفحات: 1 2 3 4 5 6 7 8


RE: مشكلة فى جلب قيمة من داتا جريد فيو - maxruined - 13-07-19

(13-07-19, 06:15 PM)asemshahen5 كتب : ضع الكود التالي :

PHP كود :
       private void cmbaccountname_SelectedIndexChanged(object senderEventArgs e)
 
       {
 
           textBox5.Clear();
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString()==cmbaccountname.Text && item.Cells[6].Value.ToString()==cmbprojectnumber.Text)
 
               {
 
                   textBox5.Text item.Cells[5].Value.ToString();
 
               }
 
           }
 
       
تمام بس فيه مشكلة خد بالك هو كدا اخد اخر قيمة مكتوبة من غير ما يزيد عليها بواحد يعني المفروض يكتب payment 4 بما ان فيه قبلها payment 3 



RE: مشكلة فى جلب قيمة من داتا جريد فيو - asemshahen5 - 13-07-19

تفضل هذا الكود بعد التعديل :

PHP كود :
       private void cmbaccountname_SelectedIndexChanged(object senderEventArgs e)
 
       {
 
           textBox5.Clear();
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text && item.Cells[6].Value.ToString() == cmbprojectnumber.Text)
 
               {
 
                   textBox5.Text item.Cells[5].Value.ToString();
 
               }
 
           }
 
           int k 0;
 
           int n=0;
 
           if (textBox5.TextLength 0)
 
           {
 
               string newString Regex.Replace(textBox5.Text"[^.0-9]""");
 
               k int.Parse(newString);
 
           }
 
           n=k;
 
           n+=1;
 
           textBox5.Text textBox5.Text.Replace(k.ToString(),n.ToString());
 
       



RE: مشكلة فى جلب قيمة من داتا جريد فيو - maxruined - 13-07-19

(13-07-19, 07:20 PM)asemshahen5 كتب : تفضل هذا الكود بعد التعديل :

PHP كود :
       private void cmbaccountname_SelectedIndexChanged(object senderEventArgs e)
 
       {
 
           textBox5.Clear();
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text && item.Cells[6].Value.ToString() == cmbprojectnumber.Text)
 
               {
 
                   textBox5.Text item.Cells[5].Value.ToString();
 
               }
 
           }
 
           int k 0;
 
           int n=0;
 
           if (textBox5.TextLength 0)
 
           {
 
               string newString Regex.Replace(textBox5.Text"[^.0-9]""");
 
               k int.Parse(newString);
 
           }
 
           n=k;
 
           n+=1;
 
           textBox5.Text textBox5.Text.Replace(k.ToString(),n.ToString());
 
       


بيجبلي ان فيه خطأ هنا 





RE: مشكلة فى جلب قيمة من داتا جريد فيو - asemshahen5 - 13-07-19

using System.Text.RegularExpressions;


RE: مشكلة فى جلب قيمة من داتا جريد فيو - maxruined - 13-07-19

(13-07-19, 07:36 PM)asemshahen5 كتب : using System.Text.RegularExpressions;


فيه مشكلة اخيره وهى ان لو فيه شخص مش موجود له دفعه من البدايه فى المفروض يجبلي payment 1 

الكود شغال تمام بس لو كان فيه دفعه جاهزه ومكتوبة payment 1 بيكمل عليها 
لكن لو مفيش بيديني فراغ
والله غلبتك معليش



RE: مشكلة فى جلب قيمة من داتا جريد فيو - asemshahen5 - 13-07-19

عدله ليكون هكذا :

PHP كود :
       private void cmbaccountname_SelectedIndexChanged(object senderEventArgs e)
 
       {
 
           textBox5.Clear();
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text && item.Cells[6].Value.ToString() == cmbprojectnumber.Text)
 
               {
 
                   textBox5.Text item.Cells[5].Value.ToString();
 
               }
 
           }
 
           int k 0;
 
           int n 0;
 
           if (textBox5.TextLength 0)
 
           {
 
               string newString Regex.Replace(textBox5.Text"[^.0-9]""");
 
               k int.Parse(newString);
 
           }
 
           n k;
 
           n += 1;
 
           textBox5.Text textBox5.Text.Replace(k.ToString(), n.ToString());
 
           if (textBox5.Text.Length==0)
 
           {
 
               textBox5.Text "payment 1";
 
           }
 
       



RE: مشكلة فى جلب قيمة من داتا جريد فيو - maxruined - 14-07-19

(13-07-19, 08:48 PM)asemshahen5 كتب : عدله ليكون هكذا :

PHP كود :
       private void cmbaccountname_SelectedIndexChanged(object senderEventArgs e)
 
       {
 
           textBox5.Clear();
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text && item.Cells[6].Value.ToString() == cmbprojectnumber.Text)
 
               {
 
                   textBox5.Text item.Cells[5].Value.ToString();
 
               }
 
           }
 
           int k 0;
 
           int n 0;
 
           if (textBox5.TextLength 0)
 
           {
 
               string newString Regex.Replace(textBox5.Text"[^.0-9]""");
 
               k int.Parse(newString);
 
           }
 
           n k;
 
           n += 1;
 
           textBox5.Text textBox5.Text.Replace(k.ToString(), n.ToString());
 
           if (textBox5.Text.Length==0)
 
           {
 
               textBox5.Text "payment 1";
 
           }
 
       


اخى العزيز شكراً جداً جداً ليك 

الكود اشتغل وتمام 
بس فيه حاجه بسيطه كمان وهي ان لو ضفت واحد مثلا عنده دفعه سابقه بيكتبليى payment 2 وتمام وزي الفل بس لو جيت اضيفله دفعه تانى فى نفس الوقت بيكتبلي برضوا payment 2 لازم اقفل الفورم وافتحه تانى علشان يكتبلي payment 3 .
بتمني حل للمشكلة دى 
والف مليون شكر ليك اخوى بجد شكراً اوي



RE: مشكلة فى جلب قيمة من داتا جريد فيو - asemshahen5 - 14-07-19

في نهاية زر الحفظ اعد تحميل الداتا غريد .


RE: مشكلة فى جلب قيمة من داتا جريد فيو - maxruined - 14-07-19

(14-07-19, 03:54 PM)asemshahen5 كتب : في نهاية زر الحفظ اعد تحميل الداتا غريد .

انا عامل كدا فعلاً بس برضوا لازم اطلع من الفورم وافتحه تانى 



RE: مشكلة فى جلب قيمة من داتا جريد فيو - asemshahen5 - 14-07-19

أضف الكود التالي :

PHP كود :
       private void cmbaccountnameIndexChanged()
 
       {
 
           if (cmbaccountname.Text != "System.Data.DataRowView" && cmbprojectnumber.Text != "")
 
           {
 
               string SqlStr "SELECT * FROM CHEQUES WHERE S_N in (SELECT MAX(S_N) AS S_N FROM CHEQUES AS CHEQUES_1 WHERE Beneficiary_Name = N'" cmbaccountname.Text "' AND Project_Number = " cmbprojectnumber.Text ")";
 
               DataTable Dtx = new DataTable();
 
               SqlDataAdapter SqlAdapter = new SqlDataAdapter(SqlStrsqlcon);
 
               SqlAdapter.Fill(Dtx);
 
               textBox5.Clear();
 
               foreach (DataRow item in Dtx.Rows)
 
               {
 
                   if (item["Beneficiary_Name"].ToString() == cmbaccountname.Text && item["Project_Number"].ToString() == cmbprojectnumber.Text)
 
                   {
 
                       textBox5.Text item["Description"].ToString();
 
                   }
 
               }
 
               int k 0;
 
               int n 0;
 
               if (textBox5.TextLength 0)
 
               {
 
                   string newString Regex.Replace(textBox5.Text"[^.0-9]""");
 
                   k int.Parse(newString);
 
               }
 
               n k;
 
               n += 1;
 
               textBox5.Text textBox5.Text.Replace(k.ToString(), n.ToString());
 
               if (textBox5.Text.Length == 0)
 
               {
 
                   textBox5.Text "payment 1";
 
               }
 
           }
 
       

عدل كود cmbaccountname_SelectedIndexChanged ليصبح هكذا :

PHP كود :
       private void cmbaccountname_SelectedIndexChanged(object senderEventArgs e)
 
       {
 
           cmbaccountnameIndexChanged();
 
       

عدل كود زر الحفظ ليصبح هكذا :

PHP كود :
       private void button1_Click(object senderEventArgs e)
 
       {
 
           if (string.IsNullOrWhiteSpace(textBox2.Text))
 
           {
 
               try
                
{
 
                   dat.Add_Cheque(Convert.ToInt32(textBox1.Text), cmbaccountname.TexttextBox3.TexttextBox4.TexttextBox5.TextConvert.ToInt32(cmbprojectnumber.Text), textBox7.Text);
 
                   MessageBox.Show("Add Successful""Add"MessageBoxButtons.OKMessageBoxIcon.Information);
 
                   this.dataGridView1.DataSource dat.Get_Cheque_Data();
 
                   cmbaccountnameIndexChanged();
 
               }
 
               catch
                
{
 
                   return;
 
               }
 
           }
 
           else
            
{
 
               try
                
{
 
                   dat.Add_Cheque(Convert.ToInt32(textBox1.Text), textBox2.TexttextBox3.TexttextBox4.TexttextBox5.TextConvert.ToInt32(cmbprojectnumber.Text), textBox7.Text);
 
                   MessageBox.Show("Add Successful""Add"MessageBoxButtons.OKMessageBoxIcon.Information);
 
                   this.dataGridView1.DataSource dat.Get_Cheque_Data();
 
                   cmbaccountnameIndexChanged();
 
               }
 
               catch
                
{
 
                   return;
 
               }
 
           }
 
       

و بكدا تكون مشكلتك انحلت باذن الله .