Пример #1
0
 public static DataSet GetDataSetFromJanusGridExDS(Janus.Windows.GridEX.GridEX JanusGridEx, string tableName)
 {
     DataSet JanusDataSet = new DataSet();
     DataTable JanusDataTable = new DataTable();
     DataRow JanusDataRow = null;
     Janus.Windows.GridEX.GridEXRow[] JanusRows;
     JanusRows = JanusGridEx.GetRows();
     int columnas = JanusGridEx.RootTable.Columns.Count;
     string nivelAnterior = "";
     for (int registros = 0; registros < JanusGridEx.RowCount; registros++)
     {
         if (JanusGridEx.GetRow(registros).Table.Caption != nivelAnterior)
         {
             if (JanusDataTable.Columns.Count > 0)
             {
                 JanusDataSet.Tables.Add(JanusDataTable);
             }
             nivelAnterior = JanusGridEx.GetRow(registros).Table.Caption;
             JanusDataTable = new DataTable("TablaColumnas" + registros.ToString());
             columnas = JanusGridEx.GetRow(registros).Cells.Count;
             if (JanusGridEx.GetRow(registros).Table.Caption != "Finan1" && JanusGridEx.GetRow(registros).Table.Caption != "Nivel1")
             {
                 int nivel = Convert.ToInt32(JanusGridEx.GetRow(registros).Table.Caption.Substring(5, 1));
                 for (int nroNivel = 1; nroNivel < nivel; nroNivel++)
                 {
                     System.Data.DataColumn dcParaTabular = new DataColumn();
                     dcParaTabular.ColumnName = "n" + nroNivel.ToString();
                     dcParaTabular.Caption = "";
                     if (!JanusDataTable.Columns.Contains("n" + nroNivel.ToString()))
                     {
                         JanusDataTable.Columns.Add(dcParaTabular);
                     }
                 }
             }
             for (int q = 0; q < columnas; q++)
             {
                 if (JanusGridEx.GetRow(registros).Cells[q].Column.Visible == true)
                 {
                     Janus.Windows.GridEX.GridEXColumn gec = JanusGridEx.GetRow(registros).Cells[q].Column;
                     System.Data.DataColumn dc = new DataColumn();
                     dc.ColumnName = gec.Key;
                     dc.Caption = gec.Caption;
                     if (!JanusDataTable.Columns.Contains(gec.Key))
                     {
                         JanusDataTable.Columns.Add(dc);
                     }
                 }
             }
             JanusDataTable.AcceptChanges();
         }
         JanusDataRow = JanusDataTable.NewRow();
         for (int counter = 0; counter < columnas; counter++)
         {
             string columna = "";
             columna = Convert.ToString(JanusGridEx.GetRow(registros).Cells[counter].Column.Key);
             if (EsFilaDeAgrupamiento(JanusGridEx.GetRow(registros)))
             {
                 string auxValor = Convert.ToString(JanusGridEx.GetRow(registros).GroupValue);
                 int nivel = Convert.ToInt32(JanusGridEx.GetRow(registros).Table.Caption.Substring(5, 1));
                 auxValor += Convert.ToString(JanusDataRow[nivel - 1]);
                 if (JanusGridEx.GetRow(registros).GroupValue != null && JanusGridEx.GetRow(registros).GroupValue.GetType() == System.Type.GetType("System.DateTime"))
                 {
                     JanusDataRow[nivel - 1] = ((DateTime)JanusGridEx.GetRow(registros).GroupValue).ToString("MM/dd/yyyy") + Convert.ToString(JanusDataRow[0]);
                 }
                 else
                 {
                     JanusDataRow[nivel - 1] = auxValor;
                 }
                 break;
             }
             else if (JanusGridEx.GetRow(registros).Cells[columna].Column.Visible == true)
             {
                 if (JanusGridEx.GetRow(registros).Cells[columna].Value != null && JanusGridEx.GetRow(registros).Cells[columna].Value.GetType() == System.Type.GetType("System.DateTime"))
                 {
                     JanusDataRow[columna] = ((DateTime)JanusGridEx.GetRow(registros).Cells[columna].Value).ToString("MM/dd/yyyy");
                 }
                 else
                 {
                     JanusDataRow[columna] = JanusGridEx.GetRow(registros).Cells[columna].Text;
                 }
             }
         }
         JanusDataTable.Rows.Add(JanusDataRow);
         JanusDataTable.AcceptChanges();
     }
     JanusDataSet.Tables.Add(JanusDataTable);
     return JanusDataSet;
 }
Пример #2
0
 /// <summary>
 /// 	Devuelve un DataTable de un GridEx
 /// </summary>
 /// <param name="JanusGridEx"></param>
 /// <param name="tableName"></param>
 /// <returns></returns>
 public static DataSet GetDataSetFromJanusGridEx(Janus.Windows.GridEX.GridEX JanusGridEx, string tableName)
 {
     DataSet JanusDataSet = new DataSet();
     DataTable JanusDataTable = new DataTable(tableName);
     DataRow JanusDataRow = null;
     Janus.Windows.GridEX.GridEXRow[] JanusRows;
     JanusRows = JanusGridEx.GetRows();
     int columnas = JanusGridEx.RootTable.Columns.Count;
     if (JanusGridEx.GroupTotals == Janus.Windows.GridEX.GroupTotals.Never)
     {
         for (int q = 0; q < columnas; q++)
         {
             if (JanusGridEx.RootTable.Columns[q].Visible == true)
             {
                 Janus.Windows.GridEX.GridEXColumn gec = JanusGridEx.RootTable.Columns[q];
                 System.Data.DataColumn dc = new DataColumn();
                 dc.ColumnName = gec.Key;
                 dc.Caption = gec.Caption;
                 if (!JanusDataTable.Columns.Contains(gec.Key))
                 {
                     JanusDataTable.Columns.Add(dc);
                 }
             }
         }
         JanusDataTable.AcceptChanges();
         for (int registros = 0; registros < JanusGridEx.RowCount; registros++)
         {
             JanusDataRow = JanusDataTable.NewRow();
             for (int counter = 0; counter < columnas; counter++)
             {
                 string columna = Convert.ToString(JanusGridEx.RootTable.Columns[counter].Key);
                 if (EsFilaDeAgrupamiento(JanusGridEx.GetRow(registros)))
                 {
                     string auxValor = Convert.ToString(JanusGridEx.GetRow(registros).GroupValue);
                     auxValor += Convert.ToString(JanusDataRow[0]);
                     if (JanusGridEx.GetRow(registros).GroupValue != null && JanusGridEx.GetRow(registros).GroupValue.GetType() == System.Type.GetType("System.DateTime"))
                     {
                         JanusDataRow[0] = ((DateTime)JanusGridEx.GetRow(registros).GroupValue).ToString("MM/dd/yyyy") + Convert.ToString(JanusDataRow[0]);
                     }
                     else
                     {
                         JanusDataRow[0] = auxValor;
                     }
                     break;
                 }
                 else if (JanusGridEx.RootTable.Columns[columna].Visible == true)
                 {
                     if (JanusGridEx.GetRow(registros).Cells[columna].Value != null && JanusGridEx.GetRow(registros).Cells[columna].Value.GetType() == System.Type.GetType("System.DateTime"))
                     {
                         JanusDataRow[columna] = ((DateTime)JanusGridEx.GetRow(registros).Cells[columna].Value).ToString("MM/dd/yyyy");
                     }
                     else
                     {
                         JanusDataRow[columna] = JanusGridEx.GetRow(registros).Cells[columna].Text;
                     }
                 }
             }
             JanusDataTable.Rows.Add(JanusDataRow);
             JanusDataTable.AcceptChanges();
         }
     }
     else
     {
         for (int q = 0; q < columnas; q++)
         {
             if (JanusGridEx.RootTable.Columns[q].Visible == true)
             {
                 Janus.Windows.GridEX.GridEXColumn gec = JanusGridEx.RootTable.Columns[q];
                 System.Data.DataColumn dc = new DataColumn();
                 dc.ColumnName = gec.Key;
                 dc.Caption = gec.Caption;
                 if (!JanusDataTable.Columns.Contains(gec.Key))
                 {
                     JanusDataTable.Columns.Add(dc);
                 }
             }
         }
         JanusDataTable.AcceptChanges();
         for (int registros = 0; registros < JanusGridEx.RowCount; registros++)
         {
             JanusDataRow = JanusDataTable.NewRow();
             for (int counter = 0; counter < columnas; counter++)
             {
                 string columna = Convert.ToString(JanusGridEx.RootTable.Columns[counter].Key);
                 if (EsFilaDeAgrupamiento(JanusGridEx.GetRow(registros)))
                 {
                     string auxValor = Convert.ToString(JanusGridEx.GetRow(registros).GroupValue);
                     auxValor += Convert.ToString(JanusDataRow[0]);
                     if (JanusGridEx.GetRow(registros).GroupValue != null && JanusGridEx.GetRow(registros).GroupValue.GetType() == System.Type.GetType("System.DateTime"))
                     {
                         JanusDataRow[0] = ((DateTime)JanusGridEx.GetRow(registros).GroupValue).ToString("MM/dd/yyyy") + Convert.ToString(JanusDataRow[0]);
                     }
                     else
                     {
                         JanusDataRow[0] = auxValor;
                     }
                     break;
                 }
                 else if (JanusGridEx.RootTable.Columns[columna].Visible == true)
                 {
                     if (JanusGridEx.GetRow(registros).Cells[columna].Value != null && JanusGridEx.GetRow(registros).Cells[columna].Value.GetType() == System.Type.GetType("System.DateTime"))
                     {
                         JanusDataRow[columna] = ((DateTime)JanusGridEx.GetRow(registros).Cells[columna].Value).ToString("MM/dd/yyyy");
                     }
                     else
                     {
                         JanusDataRow[columna] = JanusGridEx.GetRow(registros).Cells[columna].Text;
                     }
                 }
             }
             JanusDataTable.Rows.Add(JanusDataRow);
             JanusDataTable.AcceptChanges();
         }
     }
     JanusDataSet.Tables.Add(JanusDataTable);
     return JanusDataSet;
 }