Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Kakashi Hatake

Problemas p/ salvar um texto copiado do word, com VB .NET + Access

Recommended Posts

Salve Pessoal....

 

bom, o meu problema esta sendo o seguinte, fiz mais alguns testes, a aplicaçao funciona normalmente, porem, quando copio um texto do word, e colo na aplicaçao, usando o richText, na hora de salvar, é como se a aplicaçao parece de rodar quando clico no botao salvar. Se tento clicar no botao salvar novamente, ai sim ela apresenta o seguinte erro:

 

{"The connection was not closed. The connection's current state is open."}

 

apontando para seguinte trecho do codigo:

 

conexao.conexao.Open()

oDataAdapter.Fill(oDataSet, "leis")

conexao.conexao.Close()

 

nao consigo entender o que esta havendo, pois quando digito o conteudo no RichText, e salvo, ele funciona normalmente, estava achando ke era uma questao de tamanho de caracteres, mas acredito ke nao, pois mesmo quando copio e colo duas linhas de um documento word, da o mesmo problema.

 

So a nivel de esclarecimento, estou usando um campo memorando do access, um para gravar o texto, e outro para gravar a formataçao do richtext.

Eu acredito que seja algum problema com formataçao herdada do arquivo word....

 

se alguem puder ajudar..

agradeço... rs

 

abrs...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aparentemente, pela mensagem de erro, o problema é que você está tentando abrir uma conexão que *já* está aberta. Você já checou isso?

 

Abraços,

 

Graymalkin

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Graymalkin..

 

ja sim... essa mensagem de erro, se da pelo falo de eu clicar duas vezes no botao salvar....

mas antes disso, a aplicaçao ja para de rodar... sem dar erro algum... so quando torno a clicar no botao salvar, que

da essa mensagem de erro.... mas quando uso a aplicaçao sem tentar salvar um texto copiado do word... a aplicaçao rodar perfeitamente...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kakashi Hatake, já debugou pra ver onde ele trava quando o usuário cola e manda gravar?

 

Salve quintelab....

 

entao kra... esta dando a seguinte mensagem de erro....

 

"Erro de sintaxe (operador faltando) na expressão de consulta ''{\rtf1\fbidis\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\fnil\fcharset0 Microsoft Sans Serif;}}

\viewkind4\uc1\pard\ltrpar\qc\f0\fs24\par

LEI N\'ba 1.678/85 DE 14 DE FEVEREIRO DE 1985\par

\par

\pard\l'."

 

 

o que estou tentando salvar no banco é o seguinte... {\rtf1\fbidis\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\fnil\fcharset0 Microsoft Sans Serif;}}

\viewkind4\uc1\pard\ltrpar\qc\f0\fs24\par

LEI N\'ba 1.678/85 DE 14 DE FEVEREIRO DE 1985\par

\par

\pard\l'."

 

que se refere a propriedade RTF do objeto TextRich do Vb .Net...

mas quando vou salvar da esta mensagem de erro no try...

 

alguma sugestao?? rs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara eu vi que no seu texto possue aspas simples, isso que pode ta ferrando....

Da um Replace nas aspas simples para * (asterico) e no momento que você precisar mostrar na tela faça o contrário.

Acho que são aquelas aspas simples que esta travando tudo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara eu vi que no seu texto possue aspas simples, isso que pode ta ferrando....

Da um Replace nas aspas simples para * (asterico) e no momento que você precisar mostrar na tela faça o contrário.

Acho que são aquelas aspas simples que esta travando tudo...

 

 

Bicho... eu nao consigo entender kra....

 

ja usei de tudo quanto é jeito.. e nada....

 

estou usando a sql da seguinte maneira...

Dim oCmdAtualiza As New OleDbCommand("update leis set numerolei='" & txtnumerolei.Text & "', anolei = '" & txtanolei.Text & "', datalei = '" & dtdatacriacao.Text & "', prefeito = " & CStr(Me.cbprefeito.SelectedValue) & ", statuslei = " & CStr(Me.cbstatuslei.SelectedValue) & ", tipolei = " & CStr(Me.cbtipolei.SelectedValue) & ", assunto = '" & Me.txtassuntolei.Text & "', texto = '" & Me.rtxtexto.Text & "', ' where numerolei = '" & Me.txtnumerolei.Text & "'", conexao.conexao)

 

 

ele teima em nao funcionar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara tem uma aspas simples e uma virgula antes do seu where. Acho que esta errado.

Tente pegar o valor dessa sua query em tempo de execução e testar ela direto no banco.

Mas antes pode retirar aquela aspas simples e aquela virgula.

 

Falows

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara tem uma aspas simples e uma virgula antes do seu where. Acho que esta errado.

Tente pegar o valor dessa sua query em tempo de execução e testar ela direto no banco.

Mas antes pode retirar aquela aspas simples e aquela virgula.

 

Falows

 

 

Realmente quintelab.. você tem razao... mas é ke eu estava mexendo no codigo... e copiei ele sem estar correto... na verdade é este a sql..

 

oCmdInsert.Parameters.Add("@valor", OleDbType.Char)

 

Dim STR As String = "insert into leis (numerolei,anolei,datalei,prefeito,statuslei,tipolei,assunto,texto,codigorich)va

ues('" & txtnumerolei.Text & "','" & txtanolei.Text & "','" & dtdatacriacao.Text & "'," & CStr(Me.cbprefeito.SelectedValue) & "," & CStr(cbstatuslei.SelectedValue) & "," & CStr(cbtipolei.SelectedValue) & ",'" & txtassuntolei.Text & "','" & CStr(rtxtexto.Text) & "','" & Me.rtxtexto.Rtf & "')"

 

ocmdinsert.CommandText = STR

ocmdinsert.Connection = conexao.conexao

ocmdinsert.Parameters.Item("@valor").Value = Me.rtxtexto.Rtf

 

 

Dim oCmdAtualiza As New OleDbCommand("update leis set numerolei='" & txtnumerolei.Text & "', anolei = '" & txtanolei.Text & "', datalei = '" & dtdatacriacao.Text & "', prefeito = " & CStr(Me.cbprefeito.SelectedValue) & ", statuslei = " & CStr(Me.cbstatuslei.SelectedValue) & ", tipolei = " & CStr(Me.cbtipolei.SelectedValue) & ", assunto = '" & Me.txtassuntolei.Text & "', texto = '" & Me.rtxtexto.Text & "', codigorich = '" & Me.rtxtexto.Rtf.ToString & "' where numerolei = '" & Me.txtnumerolei.Text & "'", conexao.conexao)

 

 

 

a aspas simples antes do where é para fechar a que foi aberta anteriormente

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.