Usuário com melhor resposta
GRIVIEW RETORNA SEMPRE O PRIMEIRO VALOR

Pergunta
-
Boa tarde prezados,
Estou precisando muito da ajuda de vocês. Vou explicar a situação:
Meu Objetivo: Fazer alteração registro de acordo com a linha selecionada no GridView
Como é feito: Há uma busca na tela o usuário digita o nome da pessoa por exemplo aí faço uma nova query e substituo no SqlDataSource do um Bind SqlDataSource e no Griview.
Erro: Quando utilizo a busca retorna um valor, porém quando seleciono o registro vem os dados sempre do primeiro registro. Como devo resolver isso ??????????
Tenho um SqlDataSource com uma query retornando os registro do banco de dados, por sua vez tenho GriView conectado a esse SqlDataSource até aí tudo bem, mas tenho uma
Tenho um SqlDataSource já conectado ao banco e com a seguinte query no SelectQuery
--DOSSIE
select
--Arquivo
a.id Codigo_Arquivo,
s.Nome Secretaria,
s.Id Codigo_Secretaria,
seto.nome Setor,
seto.id_setor Codigo_Setor,
a.Setor_Outro,
a.Anotacoes_Indexacao,
c.Nome Categoria,
c.Id Codigo_Categoria,
--No caso de processo
P.Id Codigo_Dossie,
p.Nome Nome_Dossie,
p.Cpf Cpf,
p.Matricula Matricula,
p.Vinculo,
p.Aposentado,
p.Volumes,
p.Periodo_Trabalho,
--Localização
ca.nome Caixa, ca.Id Codigo_Caixa,
pra.Nome Prateleira, pra.Id Codigo_Prateleira,
est.Nome Estante, est.Id Codigo_Estante,
cor.Nome Corredor, cor.Id Codigo_Corredor
,a.Caminho
from Arquivos a
inner join Categorias c on a.Categorias_Id = c.Id
inner join Secretarias s on a.Secretarias_Id = s.Id
inner join Setores seto on a.Id_Setor = seto.id_setor
inner join Dossie_Prontuario p on a.Id = p.Arquivos_Id
inner join Caixas ca on a.Caixas_Id = ca.Id
inner join Prateleiras pra on ca.Prateleiras_Id = pra.Id
inner join Estantes est on ca.Estantes_Id = est.Id
inner join Corredores cor on ca.Corredores_Id = cor.Id
where Categorias_Id = 3E a lógica para trocar a query no botão buscar é essa aqui:
protected void Btn_Executar_Click(object sender, EventArgs e)
{
string sql = "";
if (Ddl_Operador.SelectedItem.Value == "=")
{
sql = @"----DOSSIE
select
--Arquivo
a.id Codigo_Arquivo,
s.Nome Secretaria,
s.Id Codigo_Secretaria,
seto.nome Setor,
seto.id_setor Codigo_Setor,
a.Setor_Outro,
a.Anotacoes_Indexacao,
c.Nome Categoria,
c.Id Codigo_Categoria,
--No caso de processo
P.Id Codigo_Dossie,
p.Nome Nome_Dossie,
p.Cpf Cpf,
p.Matricula Matricula,
p.Vinculo,
p.Aposentado,
p.Volumes,
p.Periodo_Trabalho,
--Localização
ca.nome Caixa, ca.Id Codigo_Caixa,
pra.Nome Prateleira, pra.Id Codigo_Prateleira,
est.Nome Estante, est.Id Codigo_Estante,
cor.Nome Corredor, cor.Id Codigo_Corredor
,a.Caminho
from Arquivos a
inner join Categorias c on a.Categorias_Id = c.Id
inner join Secretarias s on a.Secretarias_Id = s.Id
inner join Setores seto on a.Id_Setor = seto.id_setor
inner join Dossie_Prontuario p on a.Id = p.Arquivos_Id
inner join Caixas ca on a.Caixas_Id = ca.Id
inner join Prateleiras pra on ca.Prateleiras_Id = pra.Id
inner join Estantes est on ca.Estantes_Id = est.Id
inner join Corredores cor on ca.Corredores_Id = cor.Id
where Categorias_Id = 3 and " + Ddl_Campo.SelectedItem.Value + " " + Ddl_Operador.SelectedItem.Value + " " + "'" + T_Resultado.Text + "'";
}
else
{
sql = @"--DOSSIE
select
--Arquivo
a.id Codigo_Arquivo,
s.Nome Secretaria,
s.Id Codigo_Secretaria,
seto.nome Setor,
seto.id_setor Codigo_Setor,
a.Setor_Outro,
a.Anotacoes_Indexacao,
c.Nome Categoria,
c.Id Codigo_Categoria,
--No caso de processo
P.Id Codigo_Dossie,
p.Nome Nome_Dossie,
p.Cpf Cpf,
p.Matricula Matricula,
p.Vinculo,
p.Aposentado,
p.Volumes,
p.Periodo_Trabalho,
--Localização
ca.nome Caixa, ca.Id Codigo_Caixa,
pra.Nome Prateleira, pra.Id Codigo_Prateleira,
est.Nome Estante, est.Id Codigo_Estante,
cor.Nome Corredor, cor.Id Codigo_Corredor
,a.Caminho
from Arquivos a
inner join Categorias c on a.Categorias_Id = c.Id
inner join Secretarias s on a.Secretarias_Id = s.Id
inner join Setores seto on a.Id_Setor = seto.id_setor
inner join Dossie_Prontuario p on a.Id = p.Arquivos_Id
inner join Caixas ca on a.Caixas_Id = ca.Id
inner join Prateleiras pra on ca.Prateleiras_Id = pra.Id
inner join Estantes est on ca.Estantes_Id = est.Id
inner join Corredores cor on ca.Corredores_Id = cor.Id
where Categorias_Id = 3 and " + Ddl_Campo.SelectedItem.Value + " " + Ddl_Operador.SelectedItem.Value + " " + "'%" + T_Resultado.Text + "%'";
}
Sql_Consulta_Dossie.SelectCommand = sql;
Sql_Consulta_Dossie.DataBind();
Gv_Consulta.DataBind();
}
Já no GridView no RowCommand é a seguinte:
if (e.CommandName == "Select")
{
int index = int.Parse((string)e.CommandArgument);
index = Convert.ToInt32(e.CommandArgument);
Label Larquivo = (Label)Gv_Consulta.Rows[index].FindControl("Label1");
Label Ldossie = (Label)Gv_Consulta.Rows[index].FindControl("Label9");
Label Lassunto = (Label)Gv_Consulta.Rows[index].FindControl("Label12");//Arquivo
Label Lsetoroutro = (Label)Gv_Consulta.Rows[index].FindControl("Label6");
Label Lanotacaoindexacao = (Label)Gv_Consulta.Rows[index].FindControl("Label19");}
Analista, Programador e Web Designer
- Editado Fábio MBS terça-feira, 14 de agosto de 2018 20:48
Respostas
-
Boa tarde,
Por falta de retorno essa thread está encerrada.
Se necessário favor abrir uma nova thread.
Atenciosamente,Filipe B de Castro
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Filipe B CastroModerator quarta-feira, 19 de setembro de 2018 19:24
Todas as Respostas
-
Boa tarde, Fábio MBS. Tudo bem?
Obrigado por usar o fórum MSDN.
Essa seria uma questão de "How to/Customização" ou "Break Fix/Erro"?
Atenciosamente,Filipe B de Castro
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
Boa tarde,
Por falta de retorno essa thread está encerrada.
Se necessário favor abrir uma nova thread.
Atenciosamente,Filipe B de Castro
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Filipe B CastroModerator quarta-feira, 19 de setembro de 2018 19:24