samesdavis Posted October 23, 2018 at 12:41 PM Report #612154 Posted October 23, 2018 at 12:41 PM Olá pessoal, Estou precisando de ajuda com um código aqui. Uso o BindingSource para filtrar os dados da minha grid , porém quando o nome tem acentos, por exemplo Débora ou Debora está dando inconsitencia nos relatórios. Como faço para que mando eu digitar os dados na textbox, o BindingSource ignore a acentuação dos nomes? mesmo que eu digite Debora, ele irá trazer os nomes com Débora e Debora.
Rechousa Posted October 23, 2018 at 12:54 PM Report #612155 Posted October 23, 2018 at 12:54 PM (edited) Viva, Como tens o teu BindingSource? Partilha, pf. Edited October 23, 2018 at 12:54 PM by Rechousa Pedro Martins Sharing is Knowledge! http://www.linkedin.com/in/rechousa
samesdavis Posted October 23, 2018 at 01:02 PM Author Report #612156 Posted October 23, 2018 at 01:02 PM 3 horas atrás, Rechousa disse: Viva, Como tens o teu BindingSource? Partilha, pf. public void FiltrarGrid() { var cFiltro = new List<string>(); if (!string.IsNullOrEmpty(TxtNM_MEMFiltro.Text.Trim())) { cFiltro.Add(String.Format("NM_MEM LIKE '%{0}%'", TxtNM_MEMFiltro.Text)); } if (cFiltro.Count >= 1) { queryFilter = String.Join(" AND ", cFiltro); bs.Filter = queryFilter; } else { bs.Filter = ""; } }
Rechousa Posted October 23, 2018 at 01:14 PM Report #612157 Posted October 23, 2018 at 01:14 PM (edited) A base de dados é SQL Server? Se for, podes utilizar a COLLATE clause para indicar ao SQL Server que pretendes que a condição ignore acentuação e maísculas/minúsculas, exemplo: -- Exemplos de carateres considerados: a,A,ã,Ã,á,à,Á,À SELECT * FROM dbo.Tabela WHERE campo COLLATE LATIN1_GENERAL_CI_AI LIKE '%a%' - LATIN1_GENERAL é a COLLATION recomendada para carateres latinos - CI -> Case Insensitive, ou seja, não diferencia entre maiúsculas e minúsculas - AI -> Accent Insensitive, ou seja, ignora acentuação Espero ter ajudado, Edited October 23, 2018 at 01:16 PM by Rechousa 1 Report Pedro Martins Sharing is Knowledge! http://www.linkedin.com/in/rechousa
samesdavis Posted October 23, 2018 at 01:22 PM Author Report #612158 Posted October 23, 2018 at 01:22 PM 3 horas atrás, Rechousa disse: A base de dados é SQL Server? Se for, podes utilizar a COLLATE clause para indicar ao SQL Server que pretendes que a condição ignore acentuação e maísculas/minúsculas, exemplo: -- Exemplos de carateres considerados: a,A,ã,Ã,á,à,Á,À SELECT * FROM dbo.Tabela WHERE campo COLLATE LATIN1_GENERAL_CI_AI LIKE '%a%' Espero ter ajudado, A base de dados é Ms Access
Rechousa Posted October 23, 2018 at 01:26 PM Report #612159 Posted October 23, 2018 at 01:26 PM Ok. Como é que tens nos relatórios? Pedro Martins Sharing is Knowledge! http://www.linkedin.com/in/rechousa
samesdavis Posted October 23, 2018 at 01:29 PM Author Report #612160 Posted October 23, 2018 at 01:29 PM 3 horas atrás, Rechousa disse: Ok. Como é que tens nos relatórios? Não entendi a pergunta? A minha base de dados é Ms Access, portando não aceitou aquele COOLATE que você citou. Na minha tabela tenho dados com acentos e outros sem acentos. No relatórios do reportviewer , desejo que saia o nome "normal" da pessoal, ou seja, com ou sem acento.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now