none
Problemas com 2 selects RRS feed

  • Pergunta

  • Bom dia pessoal,

    Estou trabalhando com C# ASP

    Tenho 2 botões que fazem consultas diferentes no banco, 1 - Sintetico, 2 - Analitico e Estou fazendo um select pelo evento click do botão, quando faço a consulta pelo botão 1 - Sintetico, o resultado aparece na Gridview normalmente ai faço a consulta com o botão 2 - Analitico, também aparece na Gridview normalmente.

    Mas... quando volto a clicar no botão 1 - Sintetico ele me da erro...

    A field or property with the name 'DTMOVTO' was not found on the selected data source.

    Mas funcionou da 1º vez... porque que no retorno do click no botão 1 - Sintetico  não funcionou????

    Utilizo apenas 1 Gridview para as 2 consultas...

    Se alguem puder me ajudar ficarei muito grato...


    Luiz Carlos

    sexta-feira, 22 de março de 2013 11:55

Respostas

  • Luiz,

    Você está eliminando 2 vezes as colunas do grid. Você elimina novamente depois que você define o DataSource do grid.

    gdrel.DataSource = tabela;
    gdrel.Columns.Clear();
    Deixe só o da primeira linha do bloco.


    Carlos Eduardo Ferreira

    • Marcado como Resposta LC-Locker sexta-feira, 22 de março de 2013 16:22
    sexta-feira, 22 de março de 2013 14:28

Todas as Respostas

  • Olá,

    Favor postar o código.

    sexta-feira, 22 de março de 2013 12:06
  • Luiz,

    Seria mais fácil se você postasse o código.

    Provavelmente quando você clica no botão Sintético o GridView é gerado sem a exibição do campo DTMOVTO, e quando você clica no botão Analítico você cria dinamicamente o campo DTMOVTO no GridView e quando você clica novamente no botão Sintético o GridView tenta popula o campo DTMOVTO mas ele não existe na fonte de dados.

    Configure o gridview para gerar as colunas automaticamente e veja se o erro para de ocorrer? 


    Carlos Eduardo Ferreira


    sexta-feira, 22 de março de 2013 12:08
  • Botão Sintetico:
     
    protected void cal01_SelectionChanged(object sender, EventArgs e)
            {
                //imbt01.Visible = true;
                Label3.Visible = true;
                imbt02.Visible = true;
                Label5.Visible = true;
                imbt03.Visible = true;
                imbt04.Visible = true;
                imbt05.Visible = true;
                Label6.Visible = true;

                bt01.Enabled = false;
                bt2.Enabled = true;
                DateTime data;
                string sql;
                SqlConnection conn = new SqlConnection();
                String connection = ConfigurationManager.ConnectionStrings["APLICACAO"].ConnectionString;
                conn = new SqlConnection();
                conn.ConnectionString = connection;
                data = cal01.SelectedDate;
                string date = data.ToString("dd/MM/yyyy");
                sql =
                "SELECT SUBSTRING(b.DTMOVTO,1,10) AS 'Data Movimento', " +
                "CASE WHEN b.TIPOMOV = 'E' THEN 'ENTRADA' ELSE 'SAIDA' END AS 'Tipo Movimento', " +
                "CASE WHEN b.TPPESSOA = 1 THEN 'FUNCIONARIO' " +
                "WHEN b.TPPESSOA = 2 THEN 'VISITANTE' " +
                "WHEN b.TPPESSOA = 3 THEN 'PRESTADOR DE SERVIÇO'  " +
                "ELSE 'TRANSPORTADOR DE CARGA' END AS 'Tipo Pessoa', " +
                "SUM(CASE WHEN RTRIM(A.PLVEIC) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB1) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB2) <> '' THEN 1 ELSE 0 END) AS 'Quantidade Placa', " +
                "SUM( " +
                "CASE " +
                "WHEN RTRIM(A.PLVEIC) <> '' AND  RTRIM(COALESCE(A.PLVEICOCR,'')) <> '' AND " +
                "RTRIM(A.PLVEIC) = RTRIM(COALESCE(A.PLVEICOCR,'')) AND RTRIM(COALESCE(A.PLVEICOCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END + " +
                "CASE " +
                "WHEN RTRIM(A.PLREB1) <> '' AND  RTRIM(COALESCE(A.PLREB1OCR,'')) <> '' AND  " +
                "RTRIM(A.PLREB1) = RTRIM(COALESCE(A.PLREB1OCR,'')) AND RTRIM(COALESCE(A.PLREB1OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END +  " +
                "CASE " +
                "WHEN RTRIM(A.PLREB2) <> '' AND  RTRIM(COALESCE(A.PLREB2OCR,'')) <> '' AND " +
                "RTRIM(A.PLREB2) = RTRIM(COALESCE(A.PLREB2OCR,'')) AND RTRIM(COALESCE(A.PLREB2OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END " +
                ") AS 'Quantidade OCR', " +
                "CONVERT(DECIMAL(10,1), " +
                "(CONVERT(DECIMAL(10,1), " +
                "SUM( " +
                "CASE " +
                "WHEN RTRIM(A.PLVEIC) <> '' AND  RTRIM(COALESCE(A.PLVEICOCR,'')) <> '' AND " +
                "RTRIM(A.PLVEIC) = RTRIM(COALESCE(A.PLVEICOCR,'')) AND RTRIM(COALESCE(A.PLVEICOCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END + " +
                "CASE " +
                "WHEN RTRIM(A.PLREB1) <> '' AND  RTRIM(COALESCE(A.PLREB1OCR,'')) <> '' AND " +
                "RTRIM(A.PLREB1) = RTRIM(COALESCE(A.PLREB1OCR,'')) AND RTRIM(COALESCE(A.PLREB1OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END + " +
                "CASE " +
                "WHEN RTRIM(A.PLREB2) <> '' AND  RTRIM(COALESCE(A.PLREB2OCR,'')) <> '' AND " +
                "RTRIM(A.PLREB2) = RTRIM(COALESCE(A.PLREB2OCR,'')) AND RTRIM(COALESCE(A.PLREB2OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END " +
                ")) " +
                "/ " +
                "CONVERT(DECIMAL(10,1), " +
                "SUM(CASE WHEN RTRIM(A.PLVEIC) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB1) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB2) <> '' THEN 1 ELSE 0 END))) * 100.0) " +
                "AS '% Acerto' " +
                "FROM branst027.portalrfb.dbo.ZRFB003 a, portalrfb.dbo.ZRFB002 b  " +
                "WHERE b.IDEVENTO = a.IDPORTAL AND ((SUBSTRING(b.DTMOVTO,1,10)='" + date + "')) " +
                "group by SUBSTRING(b.DTMOVTO,1,10), " +
                "CASE WHEN b.TIPOMOV = 'E' THEN 'ENTRADA' ELSE 'SAIDA' END, CASE WHEN b.TPPESSOA = 1 THEN 'FUNCIONARIO' " +
                "WHEN b.TPPESSOA = 2 THEN 'VISITANTE' " +
                "WHEN b.TPPESSOA = 3 THEN 'PRESTADOR DE SERVIÇO' " +
                "ELSE 'TRANSPORTADOR DE CARGA' END " +

    "UNION ALL " +

                "SELECT " +
                "'TOTAL => ', " +
                "' ', " +
                "' ', " +

                "SUM(CASE WHEN RTRIM(A.PLVEIC) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB1) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB2) <> '' THEN 1 ELSE 0 END) AS 'QTPLACA', " +

                "SUM( " +
                "CASE " +
                "WHEN RTRIM(A.PLVEIC) <> '' AND  RTRIM(COALESCE(A.PLVEICOCR,'')) <> '' AND " +
                "RTRIM(A.PLVEIC) = RTRIM(COALESCE(A.PLVEICOCR,'')) AND RTRIM(COALESCE(A.PLVEICOCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END + " +
                "CASE " +
                "WHEN RTRIM(A.PLREB1) <> '' AND  RTRIM(COALESCE(A.PLREB1OCR,'')) <> '' AND " +
                "RTRIM(A.PLREB1) = RTRIM(COALESCE(A.PLREB1OCR,'')) AND RTRIM(COALESCE(A.PLREB1OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END + " +
                "CASE " +
                "WHEN RTRIM(A.PLREB2) <> '' AND  RTRIM(COALESCE(A.PLREB2OCR,'')) <> '' AND " +
                "RTRIM(A.PLREB2) = RTRIM(COALESCE(A.PLREB2OCR,'')) AND RTRIM(COALESCE(A.PLREB2OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END " +
                ") AS 'QTOCR', " +

                "CONVERT(DECIMAL(10,1), " +
                "(CONVERT(DECIMAL(10,1), " +
                "SUM( " +
                "CASE " +
                "WHEN RTRIM(A.PLVEIC) <> '' AND  RTRIM(COALESCE(A.PLVEICOCR,'')) <> '' AND " +
                "RTRIM(A.PLVEIC) = RTRIM(COALESCE(A.PLVEICOCR,'')) AND RTRIM(COALESCE(A.PLVEICOCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END + " +
                "CASE " +
                "WHEN RTRIM(A.PLREB1) <> '' AND  RTRIM(COALESCE(A.PLREB1OCR,'')) <> '' AND " +
                "RTRIM(A.PLREB1) = RTRIM(COALESCE(A.PLREB1OCR,'')) AND RTRIM(COALESCE(A.PLREB1OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END + " +
                "CASE " +
                "WHEN RTRIM(A.PLREB2) <> '' AND  RTRIM(COALESCE(A.PLREB2OCR,'')) <> '' AND " +
                "RTRIM(A.PLREB2) = RTRIM(COALESCE(A.PLREB2OCR,'')) AND RTRIM(COALESCE(A.PLREB2OCRJU,'')) IN ('SUCESSO', 'SUCCESS') THEN 1 ELSE 0 END " +
                ")) " +
                "/ " +
                "CONVERT(DECIMAL(10,1), " +
                "SUM(CASE WHEN RTRIM(A.PLVEIC) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB1) <> '' THEN 1 ELSE 0 END + CASE WHEN RTRIM(A.PLREB2) <> '' THEN 1 ELSE 0 END))) * 100.0) " +
                "AS 'PNACERTO' " +

                "FROM branst027.portalrfb.dbo.ZRFB003 a, portalrfb.dbo.ZRFB002 b  " +
                "WHERE b.IDEVENTO = a.IDPORTAL AND ((SUBSTRING(b.DTMOVTO,1,10)='" + date + "')) " +
                "ORDER BY 1,2,3";

                conn.Open();
                SqlCommand cmd = new SqlCommand(sql, conn);
                DataTable tabela = new DataTable();
                SqlDataReader dr = cmd.ExecuteReader();
                tabela.Load(dr);
                gdrel.DataSource = tabela;
                gdrel.DataBind();

                conn.Close();
            }

    2 - Analitico
     
    protected void bt2_Click(object sender, EventArgs e)
            {
                //imbt01_Click(null, null);
                bt01.Enabled = true;
                bt2.Enabled = false;
                imbt01.Visible = true;
                Label3.Visible = true;
                imbt02.Visible = true;
                Label5.Visible = true;
                imbt03.Visible = true;
                imbt04.Visible = true;
                imbt05.Visible = true;
                Label6.Visible = true;
                DateTime data;
                string sql;
                String connection = ConfigurationManager.ConnectionStrings["APLICACAO"].ConnectionString;
                SqlConnection conn = new SqlConnection();
                conn = new SqlConnection();
                conn.ConnectionString = connection;
                data = cal01.SelectedDate;
                string date = data.ToString("dd/MM/yyyy");
                sql = "SELECT SUBSTRING(b.DTMOVTO,1,10) AS 'DTMOVTO', CASE WHEN b.TIPOMOV = 'E' THEN 'ENTRADA' ELSE 'SAIDA' END AS 'TIPOMOV', CASE WHEN b.TPPESSOA = 1 THEN 'FUNCIONARIO' WHEN b.TPPESSOA = 2 THEN 'VISITANTE' WHEN b.TPPESSOA = 3 THEN 'PRESTADOR DE SERVIÇO' ELSE 'TRANSPORTADOR DE CARGA' END AS 'TPPESSOA', B.RAZAOSOCIAL, B.NMPESSOA, CASE WHEN A.PLVEICOCRJU IN ('SUCESSO', 'SUCCESS') AND RTRIM(A.PLVEIC) <> '' AND RTRIM(COALESCE(A.PLVEICOCR,'')) <> '' AND RTRIM(A.PLVEIC) = RTRIM(COALESCE(A.PLVEICOCR,'')) THEN 'S' ELSE CASE WHEN RTRIM(A.PLVEIC) = '' THEN ' ' ELSE 'N' END END AS 'OCR PLACA', A.PLVEIC, CASE WHEN A.PLREB1OCRJU IN ('SUCESSO', 'SUCCESS') AND RTRIM(A.PLREB1) <> '' AND RTRIM(COALESCE(A.PLREB1OCR,'')) <> '' AND RTRIM(A.PLREB1) = RTRIM(COALESCE(A.PLREB1OCR,'')) THEN 'S' ELSE CASE WHEN RTRIM(A.PLREB1) = '' THEN ' ' ELSE 'N' END END AS 'OCR PLACA REB1', A.PLREB1, CASE WHEN A.PLREB2OCRJU IN ('SUCESSO', 'SUCCESS') AND RTRIM(A.PLREB2) <> '' AND RTRIM(COALESCE(A.PLREB2OCR,'')) <> '' AND RTRIM(A.PLREB2) = RTRIM(COALESCE(A.PLREB2OCR,'')) THEN 'S' ELSE CASE WHEN RTRIM(A.PLREB2) = '' THEN ' ' ELSE 'N' END END AS 'OCR PLACA REB2', A.PLREB2, B.IDEVENTO AS 'ID', B.DTMOVTO AS 'DATA E HORA', FOPLVEICOCR, FOPLREB1OCR, FOPLREB2OCR FROM branst027.portalrfb.dbo.ZRFB003 a, portalrfb.dbo.ZRFB002 b  WHERE b.IDEVENTO = a.IDPORTAL AND (SUBSTRING(b.DTMOVTO,1,10) = '" + date + "') ORDER BY 1,2,3,4,5";
                conn.Open();
                SqlCommand cmd = new SqlCommand(sql, conn);
                DataTable tabela = new DataTable();
                SqlDataReader dr = cmd.ExecuteReader();
                //tabela.Load(dr);
                gdrel.DataSource = dr;

                //define que as colunas não serão geradas automaticamente
                gdrel.AutoGenerateColumns = false;

                //define e realiza a formatação de cada coluna
                BoundField coluna1 = new BoundField();
                coluna1.DataField = "DTMOVTO";
                coluna1.HeaderText = "Data Movimento";
                gdrel.Columns.Add(coluna1);
                BoundField coluna2 = new BoundField();
                coluna2.DataField = "TIPOMOV";
                coluna2.HeaderText = "Tipo Movimento";
                gdrel.Columns.Add(coluna2);
                BoundField coluna3 = new BoundField();
                coluna3.DataField = "TPPESSOA";
                coluna3.HeaderText = "Tipo Pessoa";
                coluna3.HtmlEncode = false;
                gdrel.Columns.Add(coluna3);
                BoundField coluna4 = new BoundField();
                coluna4.DataField = "RAZAOSOCIAL";
                coluna4.HeaderText = "Razão";
                coluna4.HtmlEncode = false;
                gdrel.Columns.Add(coluna4);
                BoundField coluna5 = new BoundField();
                coluna5.DataField = "NMPESSOA";
                coluna5.HeaderText = "Nome Pessoa";
                coluna5.HtmlEncode = false;
                gdrel.Columns.Add(coluna5);
                BoundField coluna6 = new BoundField();
                coluna6.DataField = "OCR PLACA";
                coluna6.HeaderText = "OCR PLACA";
                coluna6.HtmlEncode = false;
                gdrel.Columns.Add(coluna6);
                BoundField coluna7 = new BoundField();
                coluna7.DataField = "PLVEIC";
                coluna7.HeaderText = "Placa Veiculo";
                coluna7.HtmlEncode = false;
                gdrel.Columns.Add(coluna7);
                BoundField coluna8 = new BoundField();
                coluna8.DataField = "OCR PLACA REB1";
                coluna8.HeaderText = "OCR Reboque1";
                coluna8.HtmlEncode = false;
                gdrel.Columns.Add(coluna8);
                BoundField coluna9 = new BoundField();
                coluna9.DataField = "PLREB1";
                coluna9.HeaderText = "Placa Reboque1";
                coluna9.HtmlEncode = false;
                gdrel.Columns.Add(coluna9);
                BoundField coluna10 = new BoundField();
                coluna10.DataField = "OCR PLACA REB2";
                coluna10.HeaderText = "OCR Reboque2";
                coluna10.HtmlEncode = false;
                gdrel.Columns.Add(coluna10);
                BoundField coluna11 = new BoundField();
                coluna11.DataField = "PLREB2";
                coluna11.HeaderText = "Placa Reboque2";
                coluna11.HtmlEncode = false;
                gdrel.Columns.Add(coluna11);
                BoundField coluna12 = new BoundField();
                coluna12.DataField = "ID";
                coluna12.HeaderText = "ID";
                coluna12.HtmlEncode = false;
                gdrel.Columns.Add(coluna12);
                BoundField coluna13 = new BoundField();
                coluna13.DataField = "DATA E HORA";
                coluna13.HeaderText = "DATA E HORA";
                coluna13.HtmlEncode = false;
                gdrel.Columns.Add(coluna13);
                gdrel.DataBind();
                conn.Close();
            }


    Luiz Carlos


    • Editado LC-Locker sexta-feira, 22 de março de 2013 12:28 erro
    sexta-feira, 22 de março de 2013 12:20
  • Luiz,

    Tente eliminar as colunas do grid antes de gera-las novamente com o código abaixo:

    gdrel.Columns.Clear();


    Carlos Eduardo Ferreira

    sexta-feira, 22 de março de 2013 12:26
  • Obrigado pela resposta, mas..

    gdrel.Columns.Clear(); tirou o erro e deixou sem aparecer a Gridview no retono do click do botão Sintetico.

    Clico no Sintetico e vem normal, Clico no Analitico vem normal, clico no Sintetico novamente e vem sem a Grid...

    Coloquei o gdrel.Columns.Clear(); no botão 1 e fiz testes e depois no 2... no incio e depois no fim...


    Luiz Carlos

    sexta-feira, 22 de março de 2013 12:45
  • Luiz,

    Como a sua idéia é gerar as colunas do grid dinamicamente, você precisa eliminar as colunas antes de gerar as novas (nos dois botões).

    Que tipo de controle é o cal01?


    Carlos Eduardo Ferreira

    sexta-feira, 22 de março de 2013 12:52
  • E ae tuco, blz cara?

    Bicho, o que você pode fazer é colcar duas Grid's e realizar o bind na grid adquada para cada situação.... é uma opção...

    Em qual pedaço do código você usou esta linha?

    gdrel.Columns.Clear();


    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCPD

    sexta-feira, 22 de março de 2013 12:56
  • Cal01 é um calendario que coloquei para que o usuário selecione a data que ele quer consultar o relatorio.

    Luiz Carlos

    sexta-feira, 22 de março de 2013 12:56
  • Pode tentar isso também!!!
    gridview.DataSource=null;
    gridview.DataBind();


    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCPD

    sexta-feira, 22 de março de 2013 13:00
  • Coloquei no inicio e depois no fim, primeiro no botão Sintetico e depois no Analitico...

    Luiz Carlos

    sexta-feira, 22 de março de 2013 13:03
  • Coloque no começo do sintetico!!!

    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCPD

    sexta-feira, 22 de março de 2013 13:05
  • Luiz,

    Se você colocou no início e no fim, você eliminou as colunas do gridview, as gerou novamente e depios eliminou de novo. Por isso o gridview não era carregado.

    Como disse anteriormente, você precisa por esse código no ínicio do bloco de código de cada botão.


    Carlos Eduardo Ferreira

    sexta-feira, 22 de março de 2013 13:07
  • Cara coloquei nos dois controles do botão e nada...

    protected void bt01_Click(object sender, EventArgs e)
            {
                gdrel.Columns.Clear();
                cal01_SelectionChanged(null, null);
                bt01.Enabled = false;
                bt2.Enabled = true;
            }


    protected void bt2_Click(object sender, EventArgs e)
            {
                gdrel.Columns.Clear();
                //imbt01_Click(null, null);
                bt01.Enabled = true;
                bt2.Enabled = false;
                imbt01.Visible = true;
                Label3.Visible = true;
                imbt02.Visible = true;
                Label5.Visible = true;
                imbt03.Visible = true;
                imbt04.Visible = true;
                imbt05.Visible = true;
                Label6.Visible = true;
                DateTime data;
                string sql;
                String connection = ConfigurationManager.ConnectionStrings["APLICACAO"].ConnectionString;
                SqlConnection conn = new SqlConnection();
                conn = new SqlConnection();
                conn.ConnectionString = connection;
                data = cal01.SelectedDate;
                string date = data.ToString("dd/MM/yyyy");
                sql = "SELECT SUBSTRING(b.DTMOVTO,1,10) AS 'DTMOVTO', CASE WHEN b.TIPOMOV = 'E' THEN 'ENTRADA' ELSE 'SAIDA' END AS 'TIPOMOV', CASE WHEN b.TPPESSOA = 1 THEN 'FUNCIONARIO' WHEN b.TPPESSOA = 2 THEN 'VISITANTE' WHEN b.TPPESSOA = 3 THEN 'PRESTADOR DE SERVIÇO' ELSE 'TRANSPORTADOR DE CARGA' END AS 'TPPESSOA', B.RAZAOSOCIAL, B.NMPESSOA, CASE WHEN A.PLVEICOCRJU IN ('SUCESSO', 'SUCCESS') AND RTRIM(A.PLVEIC) <> '' AND RTRIM(COALESCE(A.PLVEICOCR,'')) <> '' AND RTRIM(A.PLVEIC) = RTRIM(COALESCE(A.PLVEICOCR,'')) THEN 'S' ELSE CASE WHEN RTRIM(A.PLVEIC) = '' THEN ' ' ELSE 'N' END END AS 'OCR PLACA', A.PLVEIC, CASE WHEN A.PLREB1OCRJU IN ('SUCESSO', 'SUCCESS') AND RTRIM(A.PLREB1) <> '' AND RTRIM(COALESCE(A.PLREB1OCR,'')) <> '' AND RTRIM(A.PLREB1) = RTRIM(COALESCE(A.PLREB1OCR,'')) THEN 'S' ELSE CASE WHEN RTRIM(A.PLREB1) = '' THEN ' ' ELSE 'N' END END AS 'OCR PLACA REB1', A.PLREB1, CASE WHEN A.PLREB2OCRJU IN ('SUCESSO', 'SUCCESS') AND RTRIM(A.PLREB2) <> '' AND RTRIM(COALESCE(A.PLREB2OCR,'')) <> '' AND RTRIM(A.PLREB2) = RTRIM(COALESCE(A.PLREB2OCR,'')) THEN 'S' ELSE CASE WHEN RTRIM(A.PLREB2) = '' THEN ' ' ELSE 'N' END END AS 'OCR PLACA REB2', A.PLREB2, B.IDEVENTO AS 'ID', B.DTMOVTO AS 'DATA E HORA', FOPLVEICOCR, FOPLREB1OCR, FOPLREB2OCR FROM branst027.portalrfb.dbo.ZRFB003 a, portalrfb.dbo.ZRFB002 b  WHERE b.IDEVENTO = a.IDPORTAL AND (SUBSTRING(b.DTMOVTO,1,10) = '" + date + "') ORDER BY 1,2,3,4,5";
                conn.Open();
                SqlCommand cmd = new SqlCommand(sql, conn);
                DataTable tabela = new DataTable();
                SqlDataReader dr = cmd.ExecuteReader();
                tabela.Load(dr);
                gdrel.DataSource = tabela;
                gdrel.Columns.Clear();

                //define que as colunas não serão geradas automaticamente
                gdrel.AutoGenerateColumns = false;

                //define e realiza a formatação de cada coluna
                BoundField coluna1 = new BoundField();
                coluna1.DataField = "DTMOVTO";
                coluna1.HeaderText = "Data Movimento";
                gdrel.Columns.Add(coluna1);
                BoundField coluna2 = new BoundField();
                coluna2.DataField = "TIPOMOV";
                coluna2.HeaderText = "Tipo Movimento";
                gdrel.Columns.Add(coluna2);
                BoundField coluna3 = new BoundField();
                coluna3.DataField = "TPPESSOA";
                coluna3.HeaderText = "Tipo Pessoa";
                coluna3.HtmlEncode = false;
                gdrel.Columns.Add(coluna3);
                BoundField coluna4 = new BoundField();
                coluna4.DataField = "RAZAOSOCIAL";
                coluna4.HeaderText = "Razão";
                coluna4.HtmlEncode = false;
                gdrel.Columns.Add(coluna4);
                BoundField coluna5 = new BoundField();
                coluna5.DataField = "NMPESSOA";
                coluna5.HeaderText = "Nome Pessoa";
                coluna5.HtmlEncode = false;
                gdrel.Columns.Add(coluna5);
                BoundField coluna6 = new BoundField();
                coluna6.DataField = "OCR PLACA";
                coluna6.HeaderText = "OCR PLACA";
                coluna6.HtmlEncode = false;
                gdrel.Columns.Add(coluna6);
                BoundField coluna7 = new BoundField();
                coluna7.DataField = "PLVEIC";
                coluna7.HeaderText = "Placa Veiculo";
                coluna7.HtmlEncode = false;
                gdrel.Columns.Add(coluna7);
                BoundField coluna8 = new BoundField();
                coluna8.DataField = "OCR PLACA REB1";
                coluna8.HeaderText = "OCR Reboque1";
                coluna8.HtmlEncode = false;
                gdrel.Columns.Add(coluna8);
                BoundField coluna9 = new BoundField();
                coluna9.DataField = "PLREB1";
                coluna9.HeaderText = "Placa Reboque1";
                coluna9.HtmlEncode = false;
                gdrel.Columns.Add(coluna9);
                BoundField coluna10 = new BoundField();
                coluna10.DataField = "OCR PLACA REB2";
                coluna10.HeaderText = "OCR Reboque2";
                coluna10.HtmlEncode = false;
                gdrel.Columns.Add(coluna10);
                BoundField coluna11 = new BoundField();
                coluna11.DataField = "PLREB2";
                coluna11.HeaderText = "Placa Reboque2";
                coluna11.HtmlEncode = false;
                gdrel.Columns.Add(coluna11);
                BoundField coluna12 = new BoundField();
                coluna12.DataField = "ID";
                coluna12.HeaderText = "ID";
                coluna12.HtmlEncode = false;
                gdrel.Columns.Add(coluna12);
                BoundField coluna13 = new BoundField();
                coluna13.DataField = "DATA E HORA";
                coluna13.HeaderText = "DATA E HORA";
                coluna13.HtmlEncode = false;
                gdrel.Columns.Add(coluna13);
                gdrel.DataBind();
                conn.Close();
            }

    Ainda continua deixando a volta do Sintetico sem Grid

     Será que teria mais alguma solução...?


    Luiz Carlos

    sexta-feira, 22 de março de 2013 13:42
  • Luiz,

    Você está eliminando 2 vezes as colunas do grid. Você elimina novamente depois que você define o DataSource do grid.

    gdrel.DataSource = tabela;
    gdrel.Columns.Clear();
    Deixe só o da primeira linha do bloco.


    Carlos Eduardo Ferreira

    • Marcado como Resposta LC-Locker sexta-feira, 22 de março de 2013 16:22
    sexta-feira, 22 de março de 2013 14:28
  • Obrigado pela ajuda pessoal!!!

    Luiz Carlos

    sexta-feira, 22 de março de 2013 16:23