Exemplos de uso para DataSet e DataTable
- Criando Tabelas
#region TABELA TOTAIS (5 Campos)
public void CriaTabelaTotais()
{
DataTable TOTAL = new DataTable();
TOTAL.Columns.Add(“BLOCO”);
TOTAL.Columns.Add(“REGS”);
TOTAL.Columns.Add(“BASE”);
TOTAL.Columns.Add(“PIS”);
TOTAL.Columns.Add(“COFINS”);
TOTAL.TableName = “TOTAL”;
dsTOTAIS.Tables.Add(TOTAL);
}
#endregion
- Adicionar Linhas na Tabela
DataRow dr = dsTOTAIS.Tables[“TOTAL”].NewRow();
dr[“CAMPO”] = dado.ToString();
dsTOTAIS.Tables[“TOTAL”].Rows.Add(dr);
- Select Padrão sobre DataSet
string SQL0200 = “COD_ITEM='” + item[“COD_ITEM”].ToString() + “‘”;
DataRow[] Linha1100 = dsBLOCOSEXT100.Tables[“1101”].Select(SQL0200);
- Limpando DataSet
dsEFDOriginal.Tables[“EFD_ORIGINAL”].Rows.Clear();
- Copiar uma DataRow de outros DataSet
dsEFDOriginal.Tables[“TabelaOrigem”].ImportRow(dr);
- Copiando um DataRow para um DataTable
DataRow[] resultFAT3 = dtFAT_ORD.Select(“NUMERO_OP=’-1′”,”RESERVA ASC, VALOR DESC”);
DataTable TABTESTE = new DataTable();
resultFAT3.CopyToDataTable<DataRow>(TABTESTE, LoadOption.Upsert);
- Capturar uma Planilha para DataSet
OleDbDataAdapter MyCommand;
OleDbConnection(“Provider=Microsoft.ACE.OLEDB.12.0;Data Source=” + sFile + “;Extended Properties=Excel 12.0;”);
MyCommand = new System.Data.OleDb.OleDbDataAdapter(“SELECT * FROM [EMPRESA$]”, MyConnection);
MyCommand.TableMappings.Add(“Table”, “EMPRESA”);
MyCommand.Fill(dsXLS_EMPRESA);
- Select para DataRow
DataRow[] result = table.Select(“Date > #6/1/2001#”);
- Select para DataTable
string SQL0200 = “BLOCO=’0200′ AND CNPJ='” + this.pdCNPJ.Text.ToString().Trim() + “‘”;
DataTable Linha0200EFDOriginal = dsEFDOriginal.Tables[“EFD_ORIGINAL”].Select(SQL0200).CopyToDataTable();
- Leitura Sequencial de TXT com PIPE
if (File.Exists(this.radTextBox2.Text) == true)
{
// Conta as linhas
int xlinabertura = countWithReadAndBufferSize(this.radTextBox2.Text);
// Loop
using (StreamReader strEFD = new StreamReader(File.Open(this.radTextBox2.Text, FileMode.Open), System.Text.Encoding.Default))
{
dsEFDOriginal.Tables[“EFD_ORIGINAL”].Rows.Clear();
while ((alinha = strEFD.ReadLine()) != null)
{
// Atribui o Dados da Linha para Tabela
if (alinha.Trim() != “” && alinha.Substring(0,1)==”|”)
{
efdLinhas++;
//string[] lines = alinha.Split(‘|’);
DataRow dr = dsEFDOriginal.Tables[“EFD_ORIGINAL”].NewRow();
dr[“IDLINHA”] = efdLinhas;
dr[“TXT”] = alinha.ToString();
dsEFDOriginal.Tables[“EFD_ORIGINAL”].Rows.Add(dr);
}
}
}
}