MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    [Resolvido]Formatação Rich TextBox do SQL Server

    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 11/8/2017, 20:54

    Senhores, realizo uma conexão ao um BD SQL Server para buscar alguns dados... Dentre eles tem uma Campo do tipo Texto Longo (access) que possui formatação, acredito que seja Rich TextBox.

    Existe alguma forma de Remover essa formatação?

    Terei a necessidade de Exportar esses dados para o Excel, então a Limpeza da formatação do texto ocorreria em consulta. Não posso alterar a tabela, apenas consultar os dados.


    Veja o Modelo dos dados de um Campo:

    {\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
    {\colortbl ;\red0\green0\blue0;}
    \viewkind4\uc1\pard\cf1\fs20 Texto1 aaaaa\par
    \par
                  Texto2 xxxxxx. As informa\'e7\'f5es foram transmitidas em
    \par
    Veiculo: Yamaha/Factor - Cor: Roxa - Placa: AAA0000\par
    \par
    \f1\par
    }


    Veja como Fica o Texto:
    [Resolvido]Formatação Rich TextBox do SQL Server Sem_ty15


    Utilizando ControleActivex e uma .OCX (RTF2 Control) é possível Chegar a esse resultado em Formulário e Relatório... Porem não sei como fazer para exportar os dados para Excel sem a Formatação.

    Obs: São Muitos dados! Algo em torno de 800 Registros por dia com um período de 6 Anos. Então qualquer movimentação e bem demorada!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Alvaro Teixeira 11/8/2017, 22:38

    Olá Fábio,
    Que tipo de campo é no mssql, não como vê no Access, confira diretamente no sql.
    Verifique se é Blob

    Abraço
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 12/8/2017, 01:59

    Entao meu amigo, nao tenho acesso algum ao Sgbd da aplicacao que gera esses dados.
    Sabe aqueles sistemas "Engessados" que nao da pra fazer quase nada e a empresa nao passa informacao alguma e nem abre o Acesso.
    Entao estou de Maos atadas. Mas ja consegui evoluir muito... So falta pequenas coisas e o o pior e esse tipo de Campo.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Alvaro Teixeira 12/8/2017, 12:33

    Olá Amigo Fabio,
    Fiquei um pouco confuso.
    Não tem acesso, no entanto na mensagem nº 1 diz "realizo uma conexão ao um BD SQL Server".
    Eu acredito que o referido campo "texto longo" seja um campo BLOB em que se pode gravar via stram diveros tipos de ficheiro.
    Exemplo: pdf, txt, xls, etc
    Veja mais informações no tópico abaixo:
    https://www.maximoaccess.com/t23419-resolvido-gravar-upload-arquivos-pdf-jpg-docx-xlsx-zip-em-uma-tabela-vinculada-ao-sql-server

    Ora se consegue ralizar a conexão, então tem acesso ao SGBD e à respectiva tabela de dados.
    Se instalar o SSMS (Microsoft SQL Server Management Studio) consegue aceder ao Banco de Dados e possivelmente à estrutura.
    O SSMS pode ser instalado gratuitamente, verifique na instalação das versõs Express do SQL.

    Abraço
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 12/8/2017, 17:21

    O acesso que faço é com o Access via ODBC. O Usuario fornecido tem acesso somente leitura dos dados.
    ... Se instalar o SSMS (Microsoft SQL Server Management Studio). Tentarei essa dica para ver se o usuário fornecido pode logar no Banco e verificar essas informações no SQL.

    Retorno assim que fizer os testes.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 14/8/2017, 17:24

    Meu amigo, consegui acessar a Base dados pelo SSMS (Microsoft SQL Server Management Studio). Porem, verifiquei que o campo em questão se trata de um campo tipo Texto.

    Veja imagem a Baixo:
    [Resolvido]Formatação Rich TextBox do SQL Server Sem_ty16

    Achei estranho, pois mostra limite de 16... Porem esse campo armazena Muitos dados... Ja vi caso em que se ocupa 1 Pagina completa com caracteres.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Alvaro Teixeira 15/8/2017, 12:02

    Olá Fabio, foi retirada a dúvida.

    Estive a verificar a estrututa e parece que não existe dúvidas, é o formato RTF gravado diretamente num campo Texto.
    Para o que pretende usando PlainText, função nativa do Access acho que resolve.

    Crie uma consulta e teste, exemplo:

    Código:
    Obs: PlainText([Observacao])

    Abraço
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 15/8/2017, 17:09

    Opa amigo, muito Boa a Dica! Porem o comando não remove por completo.
    Na realidade ele remove apenas as quebras de Linha.... \plan

    Ja pensei em utilizar o Replace... Porem o Texto a ser substituído muda de acordo com a formatação...


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Alvaro Teixeira 15/8/2017, 18:22

    Olá, tente postar dois ou tres registos numa base de dados num campo memo.
    Para se ver o que se consegue fazer.
    Abraço
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 17/8/2017, 01:19

    Segue o Exemplo.
    No anexo tem os dados na tabela, e uma imagem de como fica o Texto Apos a conversão.
    dropbox.com/s/h0g6st96gwurtd1/Exemplo.rar

    Grato pela atenção!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Alvaro Teixeira 19/8/2017, 12:51

    Olá Fabio Paes,
    Assim fica mais fácil para testar.
    Na minha opinião o mais indicado seria criar o respectivo ficheiro RTF numa pasta temporaria e depois importar dos ficheiros.
    No entanto também pode existir a possibilidade de remover a formatação RTF.
    Vou efetuar uns testes.
    Abraço
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Alvaro Teixeira 19/8/2017, 13:50

    Olá Fabio Paes,

    Encontrei código na net que já faz a conversão.
    É necessário ajustar para os caracteres com acentuação, já faz para alguns será necessário ajustar para os restantes.

    Veja o código:
    Código:
    Public Function RemoveRTFFromString(ByVal str As String) As String
    'Origem ...:  http://www.ozgrid.com/forum/showthread.php?t=170465
    'Alterado .:  Alvaro Teixeira (ahteixeira) 2017


        If str <> "" Then
            Dim resStr As String
            Dim regEx1 As Object
            
            Set regEx1 = CreateObject("VBScript.RegExp")
            With regEx1
                .Global = True
                .IgnoreCase = False
                .MultiLine = True 'Only changes how script reads newlines (FALSE = treats entire string as one line.  TRUE = treats each line of text [up to newline chars] as one line)
            End With
            
             'Remove all {\code}  ,  \code  ,  and  }}  kinds of patterns
            regEx1.Pattern = "({\\)(.*)(}+)|(\\)([a-zA-Z0-9_;-]+)|(\}*)(\s*)(\}*)$"
            resStr = regEx1.Replace(str, "")
            
             'Replace all non-tab and space \s chars with a space " " (so lines of text are seperated)
            regEx1.Pattern = "\r|\n|\v|\f"
            resStr = regEx1.Replace(resStr, " ")
            
             'Trim ends
            regEx1.Pattern = "^( +)|( +)$"
            resStr = regEx1.Replace(resStr, "")
            
            Set regEx1 = Nothing

            'tratamento cararteres portugueses
            resStr = Replace(resStr, "\'ea", "ê")
            resStr = Replace(resStr, "\'e9", "é")
            resStr = Replace(resStr, "\'c9", "É")
            resStr = Replace(resStr, "\'e3", "ã")
            resStr = Replace(resStr, "\'c3", "Ã")
            resStr = Replace(resStr, "\'c1", "Á")
            resStr = Replace(resStr, "\'d3", "Ó")
            resStr = Replace(resStr, "\'c7", "Ç")
            resStr = Replace(resStr, "\'e7", "ç")
            resStr = Replace(resStr, "\'cd", "Í")
            resStr = Replace(resStr, "\'ed", "í")
            '.... adicionar restantes

            'fim tratamento
             RemoveRTFFromString = resStr
        Else
             RemoveRTFFromString = str
        End If

    End Function

    Segue o meu teste, espero que ajude.
    Abraço
    Anexos
    [Resolvido]Formatação Rich TextBox do SQL Server AttachmentRemoverRTFdeString.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (17 Kb) Baixado 18 vez(es)
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 19/8/2017, 15:01

    Meu amigo fico muito grato pelo tempo que utimizou pra me ajudar... Ainda nao testei, mas ansioso pra testar.
    So pela leitura codigo sei que ira funcionar sim...


    Olha que vasculhei a net atraz disso o.




    Assim q testar eu posto o resultado. Muito Obrigado!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  FabioPaes 19/8/2017, 21:53

    Meu amigo! Muito grato pela solução! Funcionou na perfeição! E ficou rápido o suficiente pra ser bem utilizada!

    Segue com as mudanças dos novos caracteres especiais:
    Código:
    Public Function RemoveRTFFromString(ByVal str As String) As String
    'Origem ...:  http://www.ozgrid.com/forum/showthread.php?t=170465
    'Alterado .:  Alvaro Teixeira (ahteixeira) 2017


        If str <> "" Then
            Dim resStr As String
            Dim regEx1 As Object
           
            Set regEx1 = CreateObject("VBScript.RegExp")
            With regEx1
                .Global = True
                .IgnoreCase = False
                .MultiLine = True 'Only changes how script reads newlines (FALSE = treats entire string as one line.  TRUE = treats each line of text [up to newline chars] as one line)
            End With
           
            'Remove all {\code}  ,  \code  ,  and  }}  kinds of patterns
            regEx1.Pattern = "({\\)(.*)(}+)|(\\)([a-zA-Z0-9_;-]+)|(\}*)(\s*)(\}*)$"
            resStr = regEx1.Replace(str, "")
           
            'Replace all non-tab and space \s chars with a space " " (so lines of text are seperated)
            regEx1.Pattern = "\r|\n|\v|\f"
            resStr = regEx1.Replace(resStr, " ")
           
            'Trim ends
            regEx1.Pattern = "^( +)|( +)$"
            resStr = regEx1.Replace(resStr, "")
           
            Set regEx1 = Nothing

            'tratamento cararteres portugueses
            resStr = Replace(resStr, "\'ea", "ê")
            resStr = Replace(resStr, "\'e9", "é")
            resStr = Replace(resStr, "\'c9", "É")
            resStr = Replace(resStr, "\'e3", "ã")
            resStr = Replace(resStr, "\'c3", "Ã")
            resStr = Replace(resStr, "\'c1", "Á")
            resStr = Replace(resStr, "\'d3", "Ó")
            resStr = Replace(resStr, "\'c7", "Ç")
            resStr = Replace(resStr, "\'e7", "ç")
            resStr = Replace(resStr, "\'cd", "Í")
            resStr = Replace(resStr, "\'ed", "í")
            resStr = Replace(resStr, "\'e1", "á")
            resStr = Replace(resStr, "\'f5", "õ")
            resStr = Replace(resStr, "\'fa", "ú")
            resStr = Replace(resStr, "\'f3", "ó")
            resStr = Replace(resStr, "\'ba", "ª")
            resStr = Replace(resStr, "\'ca", "Ê")
            resStr = Replace(resStr, "\'d5", "Õ")
            resStr = Replace(resStr, "\'aa", "ª")
            resStr = Replace(resStr, "\'fc", "->") 'Esse aqui é o tique de OK igual simbolo Nike, mas troquei pela seta
            resStr = Replace(resStr, "\'dc", "Ü")
            resStr = Replace(resStr, "\'c2", "Â")
            resStr = Replace(resStr, "\'b0", "º")
            resStr = Replace(resStr, "\'f4", "ô")
            '.... adicionar restantes

            'fim tratamento
            RemoveRTFFromString = resStr
        Else
            RemoveRTFFromString = str
        End If

    End Function


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Alvaro Teixeira 19/8/2017, 22:44

    Olá Amigo Fábio,
    Fico feliz por ter ajudado.
    Fica mais esta para este grande fórum que é o MaximoAccess.
    Abraço

    Conteúdo patrocinado


    [Resolvido]Formatação Rich TextBox do SQL Server Empty Re: [Resolvido]Formatação Rich TextBox do SQL Server

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 09:25