2013-04-02 2 views
0

Я создаю веб-проект в C# на asp.net. Я показываю данные из базы данных на веб-странице. У меня есть таблица базы данных, где столбец (месяц) показывает, в каком месяце клиент сделал заказ и другой столбец с идентификатором запаса. Каждый месяц и штокейд показаны много раз, так как разные клиенты делают заказы каждый месяц. Я хотел бы суммировать количество заказов из столбца количества за каждый месяц определенного запаса. В настоящий момент я могу отображать только одну из величин за каждый месяц, когда она петли, но хотелось бы подсчитать и отобразить общее количество за каждый месяц.суммировать значения в базе данных столбца

public static ArrayList GetActuals() 
    { 
     String strQuery = "Select * from Actual where Year = 2013"; 
     Recordset rs = DatabaseManager.GetRecordset("DB", strQuery); 

     bool bFound; 

     ArrayList Actuals = new ArrayList(); 
     while (rs != null && rs.Read()) 
     { 
      Actual A = new Actual(); 
      A.strStockNo = rs.GetFieldValueString("Stock_No").Trim(); 
      A.nMonth = rs.GetFieldValueInt("Month"); 
      A.nYear = rs.GetFieldValueInt("Year"); 
      A.nCustomer = rs.GetFieldValueInt("Customer"); 
      A.nQuantity = (float)rs.GetFieldValueDouble("Quantity"); 
      Actuals.Add(A); 

     } 

     if (rs != null) rs.Close(); 
     return Actuals; 

    } 



    float LoadActuals(ArrayList actual, String strstock, int year, int month) 
    { 

     foreach (Actual a in actual) 
     { 

      if ((a.strStockNo == strstock) && (a.nYear == year) && (a.nMonth == month)) 
      { 
       return a.nQuantity; 
      } 


     } return 0; 
    } 

Затем, когда я отобразить количество для каждого месяца ....

  int Month; 
      for (Month = 1; Month < 13; Month++) 
      { 

        float totq = LoadActuals(Act, p.strStockNo, yr, Month); 

        TableCell cell = new TableCell(); 
        cell.Text = string.Format("{0}", totq); 
      } 

Это отображается только один totq для каждого месяца, где, как я хочу, в общей сложности. Как это делается?

+4

http://mattgemmell.com/2008/12/08/what-have-you-tried/ – walther

+0

Замечательные включая ссылку, объясняющую фрустрации, но они явно новые здесь, так что постарайтесь быть приятно и конструктивный. – Clint

+0

, какую базу данных вы хотите получить в своем запросе или в коде C#? – Kashif

ответ

0

Так много вопросов, но ... быстро.

float LoadActuals(ArrayList actual, String strstock, int year, int month) 
{ 
    float quantity = 0; 
    foreach (Actual a in actual) 
    { 
     if ((a.strStockNo == strstock) && (a.nYear == year) && (a.nMonth == month)) 
     { 
      quantity += a.nQuantity; 
     } 
    } 
    return quantity; 
} 
Смежные вопросы