DUVIDA RTF MYSQL
Conecta True
StrSql = [Ô]INSERT INTO processtexto([Ô]
StrSql = StrSql & [Ô]iduser,textodocumento,datahora,publico)[Ô]
StrSql = StrSql & [Ô] Values ([ô][Ô]
StrSql = StrSql & 2 & [Ô][ô],[ô][Ô]
StrSql = StrSql & rt1.TextRTF & [Ô][ô],[ô][Ô]
StrSql = StrSql & Format(Date, [Ô]yyyy-mm-dd[Ô]) & [Ô] [Ô] & Format(Time, [Ô]hh:mm:ss[Ô]) & [Ô][ô],[ô][Ô]
StrSql = StrSql & chPub.Value & [Ô][ô])[Ô]
With Conexao
.BeginTrans
.Execute (StrSql)
.CommitTrans
End With
OU seja, Strsql = Strsql & rt1.textRTF é o meu richtextbox.. para recuperar a informacao do banco estou fazendo assim :
Conecta True
Set rcst = New ADODB.Recordset
StrSql = [Ô][Ô] & [Ô]select * from processtexto WHERE ID=[ô][Ô] & 8 & [Ô][ô][Ô]
rcst.Open StrSql, Conexao, adOpenKeyset, adLockOptimistic
If rcst.RecordCount <> 0 Then
rcst.MoveFirst
rt1.TextRTF = rcst([Ô]textodocumento[Ô])
End If
o sistema esta trazendo o seguinte preenchimento para mim..
tf1ansiansicpg1252deff0deflang1046fonttblf0fnilfcharset0 Times New Roman;viewkind4uc1pardf0fs24 teste0 par
Ou seja, como eu tenho que carregar essa informação?
???????????????????????????????????????????????<?????????????????
Ex: para garvar eu uso o replace assim: vsStrConv = Replace(RTB_Conteudo.TextRTF, [Ô][ô][Ô], [Ô]€[Ô])
Ex: e para ler eu uso o replace assim: StrConv = Replace(.RTFS, [Ô]€[Ô], [Ô][ô][Ô])
abs
Citação::
ANGELS é o seguinte esse campo do ritchtext o .textRTF é as configurações do texto,,,, entao no seu banco de dados por exemplo voce vai ter que criar o campo TEXTO_NORMAL e TEXTO_FORMATO, na hora de gravar voce manda pro campo texto_nomral o rtf.text e no campo texto_formato o rtf.textRTF na hora de abrir esse campos para visualização voce primeiro carrega o campo texto na propriedade .text, e logo em seguinda voce carrega o campo_formato na propriedade .textRTF, pronto seu texto esta sendo visualizado como voce formatou no RitchTextBox,,, detalhe dentro dessa formatação dependendo do caracter que voce formatar como Negrito, Italico, etc o campo textRTF usa aspas simples como parametro isso ira gerar a quebra do seu comando sql entao eu faço a seguinte manobra eu substituo com replace o caracter [Ô][ô][Ô] pelo caracter [Ô]€[Ô] que é um caracter que ele nunca vai usar como parametro de configuraçao e na hora de mostrar na tela eu desfaço com o replace mesmo só que invertido....
Ex: para garvar eu uso o replace assim: vsStrConv = Replace(RTB_Conteudo.TextRTF, [Ô][ô][Ô], [Ô]€[Ô])
Ex: e para ler eu uso o replace assim: StrConv = Replace(.RTFS, [Ô]€[Ô], [Ô][ô][Ô])
abs
Amigo, veja so..
Gravando
StrSql = [Ô]INSERT INTO processtexto([Ô]
StrSql = StrSql & [Ô]iduser,textodocumento,datahora,publico,textodocumentortf)[Ô]
StrSql = StrSql & [Ô] Values ([ô][Ô]
StrSql = StrSql & 2 & [Ô][ô],[ô][Ô]
StrSql = StrSql & rt1.Text & [Ô][ô],[ô][Ô]
StrSql = StrSql & Format(Date, [Ô]yyyy-mm-dd[Ô]) & [Ô] [Ô] & Format(Time, [Ô]hh:mm:ss[Ô]) & [Ô][ô],[ô][Ô]
StrSql = StrSql & chPub.Value & [Ô][ô],[ô][Ô]
StrSql = StrSql & Replace(rt1.TextRTF, [Ô][ô][Ô], [Ô]€[Ô]) & [Ô][ô])[Ô]
Retornando os dados..
If rcst.RecordCount <> 0 Then
rcst.MoveFirst
rt1.Text = rcst([Ô]textodocumento[Ô])
rt1.TextRTF = Replace(rcst([Ô]textodocumentortf[Ô]), [Ô]€[Ô], [Ô][ô][Ô])
End If
e ele ta me retornando.
tf1ansiansicpg1252deff0deflang1046fonttblf0fnilfcharset0 Courier New Baltic;f1fnilfcharset0 Times New Roman;viewkind4uc1pardqcf0fs24 TESTO0f1 par
Citação:ANDPAG, realmente amigo, ele estava simplesmente imendando a string toda, tirando as barras, agora o processo vai se resolver, eu troquei as barras pelo caracter la.. deu certinho.. obrigado amigo.. abraçao.. fica com Deus, iria ficar 10 anos para descobrir o que tava rolando. rsrs.:
Entao... algum detalhe ai na linha da configuração vai estar se perdendo... ele faz justamente isso quando algum caracter esta fora do padrão na propriedade textRTF tenta fazer uns testes ai sem gravar no banco.... tipo, digite um texto ai em negrito com alguma cor, e crie um botao pra poder printar na tela as propriedades .text e a .textRTF pra voce conferir se esta gravando igualzinho ao que vai printar na tela.... porque o caminho é esse ai mesmo... sofri pra dana pra descobrir esse esquema principalmente no caso das aspas simples... Eu uso esse RitchTextBox em um gerador de contratos, o caminho é esse mesmo... primeiro o texto depois o textRTF, inclusive se vc ir debugando vc vai ver que primeiro entra o texto normal e depois que é inserido o RTF ele formata o texto,,,, quando houver alguma falha ai no RTF ele nao vai formatar e sim colocar esse texto ai que esta retornando pra voce... da uma comparada na tela pq talvez no caso do MySQL ele pode estar trocando outro caracter tb na hora que é gravado no banco,,, nesse meu sistema eu uso o SQL Server....