This is a migrated thread and some comments may be shown as answers.

The column names with the source SQL tables

1 Answer 129 Views
Spreadsheet
This is a migrated thread and some comments may be shown as answers.
Patrik
Top achievements
Rank 2
Patrik asked on 07 Aug 2016, 09:06 AM

Good day,
Maybe I'm wrong read, but I never found the opportunity, how to name columns by the column names in the SQL table.
SQL table I used as a source of data and need to exit in the first row contains the column names.

The result should look like the attached image.

Thank you for your help and example source code.

 

public override List<Worksheet> GetSheets()
        {
            var result = new List<Worksheet>();
 
            DataTable data = GetData();
             
            var sheet = new Worksheet();
            sheet.Name = "Srpen 2016";
 
            int rowIndex = 1;
            foreach (DataRow dataRow in data.Rows)
            {
                var row = new Row() { Index = rowIndex++ };
 
                int columnIndex = 0;
                foreach(DataColumn dataColumn in data.Columns)
                {
                    if (dataColumn.ColumnName == "DochazkaID") continue;
                     
                    string cellValue = dataRow[dataColumn.ColumnName].ToString();
 
                    var cell = new Cell() { Index = columnIndex++, Value = cellValue };
 
                    row.AddCell(cell);
                }
                sheet.AddRow(row);
            }
 
            result.Add(sheet);
 
            return result;
        }
 
        public DataTable GetData()
        {
            using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString))
            {
                conn.Open();
                string query = "SELECT Dochazka.DochazkaID,Zamestnanci.Prijmeni,Zamestnanci.Jmeno,Zakazky.Zkratka,Dochazka.MesicID,Dochazka.Den1,Dochazka.Den2,Dochazka.Den3,Dochazka.Den4,Dochazka.Den5,Dochazka.Den6,Dochazka.Den7,Dochazka.Den8,Dochazka.Den9,Dochazka.Den10,Dochazka.Den11,Dochazka.Den12,Dochazka.Den13,Dochazka.Den14,Dochazka.Den15,Dochazka.Den16,Dochazka.Den17,Dochazka.Den18,Dochazka.Den19,Dochazka.Den20,Dochazka.Den21,Dochazka.Den22,Dochazka.Den23,Dochazka.Den24,Dochazka.Den25,Dochazka.Den26,Dochazka.Den27,Dochazka.Den28,Dochazka.Den29,Dochazka.Den30,Dochazka.Den31 FROM dbo.Dochazka INNER JOIN dbo.Zamestnanci ON Dochazka.ZamestnanecID = Zamestnanci.ZamestnanecID INNER JOIN dbo.Zakazky ON Dochazka.ZakazkaID = Zakazky.ZakazkaID WHERE Dochazka.MesicID = DATEPART(MONTH, GETDATE()) ORDER BY Zamestnanci.Prijmeni";
                SqlCommand cmd = new SqlCommand(query, conn);
 
                DataTable dt = new DataTable();
                dt.Load(cmd.ExecuteReader());
                return dt;
            }
        }

 

1 Answer, 1 is accepted

Sort by
0
Accepted
Veselin Tsvetanov
Telerik team
answered on 10 Aug 2016, 08:51 AM
Hello Patrik,

The following Documentation example does exactly what you need.

Regards,
Veselin Tsvetanov
Telerik by Progress
Do you need help with upgrading your ASP.NET AJAX, WPF or WinForms projects? Check the Telerik API Analyzer and share your thoughts.
Tags
Spreadsheet
Asked by
Patrik
Top achievements
Rank 2
Answers by
Veselin Tsvetanov
Telerik team
Share this question
or