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

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (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 - 24-07-19

(24-07-19, 12:02 AM)asemshahen5 كتب : عدله ليكون :

PHP كود :
private void SumAmount() 
 
   {
        
double Sum 0;
        foreach (
DataGridViewRow item in dataGridView1.Rows)
        {
 
       if (item.Cells[2].Value.ToString() == cmbaccountname.Text.ToString() || item.Cells[7].Value.ToString() == cmbaccountname.Text.ToString())
 
           {
 
               Sum+=Convert.ToDoubleitem.Cells[1].Value);
 
           }
        }
        
textBox6.Text Sum.ToString();
 
   

والله غلبتك معايا بجد اسف
بس انا غلطت فوق وكتبت ان المجموع 1440 ولكن هو المفروض يكون 1100 عفواً اخى العزيز 



لو اخدت بالك ان القيمه اللى هي 340 البروجيكت نمبر بتاعها 6687 وليس 6760 زي ما انا محدد فى الكومبوبوكس project Nu
انا عايز لما احدد البروجيكت نمبر من الكومبوبوكس واحدد الاسم من الكومبوبوكس اللي اسمه exiting accounts 
يجمعلي كل المبالغ الخاصه بالاسم دا سواء كان الاسم فى العامود benificiary name او كان فى العامود notes 
بجد تعبتك وغلبتك معايا اوي 
واسف علي الخطأ بتاعي



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

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

PHP كود :
       private void SumAmount() 
 
       {
 
           double Sum 0;
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text.ToString() || 
 
                   item.Cells[7].Value.ToString() == cmbaccountname.Text.ToString() )
 
               {
 
                   if (item.Cells[6].Value.ToString() == cmbprojectnumber.Text.ToString())
 
                   {
 
                       Sum+=Convert.ToDoubleitem.Cells[1].Value);
 
                   }
 
               }
 
           }
 
           textBox6.Text Sum.ToString();
 
       



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

(24-07-19, 01:01 AM)asemshahen5 كتب : عدل الكود ليكون :

PHP كود :
       private void SumAmount() 
 
       {
 
           double Sum 0;
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text.ToString() || 
 
                   item.Cells[7].Value.ToString() == cmbaccountname.Text.ToString() )
 
               {
 
                   if (item.Cells[6].Value.ToString() == cmbprojectnumber.Text.ToString())
 
                   {
 
                       Sum+=Convert.ToDoubleitem.Cells[1].Value);
 
                   }
 
               }
 
           }
 
           textBox6.Text Sum.ToString();
 
       

اخوى العزيز بتأسف مره تانى لتعبك معايا 
الكود اشتغل وتمام 
بس فيه مشكلة لما بضيف سطر جديد بيجبلي الخطا دا 


بعدين بيقفل البرنامج وبفتحه تانى بيشتغل وتمام ... ولما بضيف سطر جديد بيحصل نفس الكلام كل مره 
انا كان عندى سؤال بس
الكود دا شغال وتمام 

كود :
     private void SumAmount()
      {
          string SqlStr = "SELECT sum(Amount)as Amount, Beneficiary_Name, Project_Number FROM CHEQUES WHERE(Beneficiary_Name = N'" + cmbaccountname.Text + "') AND (Project_Number = " + cmbprojectnumber.Text + ") group by Beneficiary_Name, Project_Number";
          SqlDataAdapter Fadp = new SqlDataAdapter(SqlStr, sqlcon);
          DataTable Fdt = new DataTable();
          Fadp.Fill(Fdt);
          if (Fdt.Rows.Count>0)
          {
              textBox6.Text = Fdt.Rows[0]["Amount"].ToString();
          }
          else
          {
              textBox6.Clear();
          }
      }

ولكن به مشكلة واحد بس انه مش بيحسبلي القيمه بتاعه الحساب لو كانت موجوده فى العامود اللى اسمه Notes 

لو ينفع تعدلي الكود دا علشان يشتغل يبقي كويس اوى 
شكراً جداً اخى العزيز والغالي علي تفاعلك معايا



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

PHP كود :
        private void SumAmount() 
 
       {
 
           double Sum 0;
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text.ToString() || item.Cells[7].Value.ToString() == cmbaccountname.Text.ToString() )
 
               {
 
                   if (item.Cells[6].Value.ToString() == cmbprojectnumber.Text.ToString())
 
                   {
 
                       Sum+=Convert.ToDoubleitem.Cells[1].Value);
 
                   }
 
               }
 
           }
 
           textBox6.Text Sum.ToString();
 
       

أو عدل الاستعلام ليكون :

PHP كود :
string SqlStr "SELECT sum(Amount)as Amount FROM CHEQUES WHERE(Beneficiary_Name = N'" cmbaccountname.Text "') 
AND (Project_Number = " 
cmbprojectnumber.Text ")or(Notes=N'" cmbaccountname.Text "'and (Project_Number = " cmbprojectnumber.Text "))" 



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

(24-07-19, 01:01 AM)asemshahen5 كتب : عدل الكود ليكون :

PHP كود :
       private void SumAmount() 
 
       {
 
           double Sum 0;
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               if (item.Cells[2].Value.ToString() == cmbaccountname.Text.ToString() || 
 
                   item.Cells[7].Value.ToString() == cmbaccountname.Text.ToString() )
 
               {
 
                   if (item.Cells[6].Value.ToString() == cmbprojectnumber.Text.ToString())
 
                   {
 
                       Sum+=Convert.ToDoubleitem.Cells[1].Value);
 
                   }
 
               }
 
           }
 
           textBox6.Text Sum.ToString();
 
       


كم انت عظيم واكثر من رائع 

الكود اللى بعتهولي اللى هو دا كان شغال بس اظاهر كدا كان العيب فى البرنامج نفسه مش عارف ايه اللى حصل 
كود :
       private void SumAmount()
       {
           string SqlStr = "SELECT sum(Amount)as Amount FROM CHEQUES WHERE(Beneficiary_Name = N'" + cmbaccountname.Text + "') AND(Project_Number = " + cmbprojectnumber.Text + ")or(Notes = N'" + cmbaccountname.Text + "'and(Project_Number = " + cmbprojectnumber.Text + ")) ";
           SqlDataAdapter Fadp = new SqlDataAdapter(SqlStr, sqlcon);
           DataTable Fdt = new DataTable();
           Fadp.Fill(Fdt);
           if (Fdt.Rows.Count > 0)
           {
               textBox6.Text = Fdt.Rows[0]["Amount"].ToString();
           }
           else
           {
               textBox6.Clear();
           }
       }

جربته تانى اشتغل وزى الفل 
بجد شكراً جداً جداً ليك 
دمت متألقاً اخوى asemshahen5



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

العظيم هو الله .

استغفر الله العلي العظيم .

الحمد الله و الشكر الله موفق انشاء الله .


RE: [تم الحل]مشكلة فى جلب قيمة من داتا جريد فيو - Hmd30 - 24-07-19

PHP كود :
private void button1_Click(object senderEventArgs e) {
 
   double amount SumAmount(6760"Magdy kamel");
 
   textBox6.Text amount.ToString();
}


public 
double SumAmount(int Project_Numberstring Beneficiary_Name) {
 
   double amount 0;

 
   string sql =
 
       " SELECT Sum([Amount]) AS Amount,                           " +
 
       " FROM   [CHEQUES]                                          " +
 
       " WHERE  ( [Project_number] = @prjNum )                     " +
 
       "        AND ( [Beneficiary_name] OR [Notes] = @bnfName )   ";

 
   using (SqlCommand cmd = new SqlCommand(sqlsqlcon)) {
 
       cmd.Parameters.AddWithValue("@prjNum"Project_Number);
 
       cmd.Parameters.AddWithValue("@bnfName"Beneficiary_Name);

 
       if (sqlcon.State != ConnectionState.Opensqlcon.Open();
 
       amount = (double)cmd.ExecuteScalar();
 
       sqlcon.Close();

 
   }

 
   return amount;




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

(24-07-19, 01:29 AM)Hmd30 كتب :
PHP كود :
private void button1_Click(object senderEventArgs e) {
 
   double amount SumAmount(6760"Magdy kamel");
 
   textBox6.Text amount.ToString();
}


public 
double SumAmount(int Project_Numberstring Beneficiary_Name) {
 
   double amount 0;

 
   string sql =
 
       " SELECT Sum([Amount]) AS Amount,                           " +
 
       " FROM   [CHEQUES]                                          " +
 
       " WHERE  ( [Project_number] = @prjNum )                     " +
 
       "        AND ( [Beneficiary_name] OR [Notes] = @bnfName )   ";

 
   using (SqlCommand cmd = new SqlCommand(sqlsqlcon)) {
 
       cmd.Parameters.AddWithValue("@prjNum"Project_Number);
 
       cmd.Parameters.AddWithValue("@bnfName"Beneficiary_Name);

 
       if (sqlcon.State != ConnectionState.Opensqlcon.Open();
 
       amount = (double)cmd.ExecuteScalar();
 
       sqlcon.Close();

 
   }

 
   return amount;

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



RE: [تم الحل]مشكلة فى جلب قيمة من داتا جريد فيو - maxruined - 01-08-19

السلام عليكم اخوى عاصم
كان عندى سؤال بعد اذنك
فى الصورة دى مثلا



فى خانه ال Net Balance 
ازاى اخليها تساوى ال Total Debit (+) اول خانه فى عامود ال Balance وهو 0.6 (-) ال Total Credit 
بمعني
net balance = total debit + 0.6  + total credit 
والمفروض الناتج يكون = 84.850
حاولت كتير الصراحه بس مش قادر اجمع اول سطر فى عامود ال Balance وهو ال 0.6



RE: [تم الحل]مشكلة فى جلب قيمة من داتا جريد فيو - asemshahen5 - 02-08-19

PHP كود :
       private void SumDgvCell()
 
       {
 
           double Sum0 0;
 
           double Sum1 0;
 
           double Sum2 0;
 
           foreach (DataGridViewRow item in dataGridView1.Rows)
 
           {
 
               Sum0 += Convert.ToDouble(item.Cells[4].Value);//Debit
 
               Sum1 += Convert.ToDouble(item.Cells[5].Value);//Credit
 
               //Sum2 += Convert.ToDouble(item.Cells[6].Value);//Balance
 
           }
 
           Sum2 Sum0 Sum1;//net balance
 
           textBox1.Text Sum2.ToString();//net balance