Ir para conteúdo
  • Cadastre-se

dev botao

C# - CTe - compl.xObs


Ver Solução Respondido por Daniel InfoCotidiano,
  • Este tópico foi criado há 385 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Boa tarde, estamos com um problema no preenchimento do xObs da tag compl em C#, estamos alimentando a OBS com o seguinte conteúdo:

TRUCK
PLACA TESTE
LINHA 3


A Obs. está alimentada corretamente na var, que é adicionada no CarregarIni(), conforme print abaixo:
image.thumb.png.39bd6979f5d87082ed68c5aa6c6fb193.png
 

Pegando o conteúdo do newCTe.ToString(), que é a classe CTe.cs, a Obs ainda está alimentada, porém, a quebra de linha está aplicada ao invés de representada por \r\n(não sei se está correto ou não).
image.png.e32fdcf9f274bb79494ca3d74fa1b463.png

Porém após o .Assinar e o .Validar, que gera o XML do CT-e, apenas a primeira linha da Obs está sendo gerada, conforme imagem abaixo:
  image.png.2317d96a5a3066a47974f2dce5f591e2.png

De forma alguma isso interfere o uso, mas temos clientes que utilizam a Obs para informar placa do veículo entre outras informações necessárias, e por conta disso apenas a primeira linha aparece na impressão do CT-e.

Editado por Lindomar S. Menezes
Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde,

Criada a TK-4408 para avaliação.

Obrigado pela contribuição.

  • Curtir 1
Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Lindomar,

Tente desta forma:

xObs=Truck;Placa Teste;Linha 3;Cashback disponivel: R$ 2.000,00;Cashback disponivel: R$ 2.000,00;Cashback disponivel: R$ 2.000,00

Note que usei o caracter ";" para gerar uma quebra de linha ao imprimir o DACTE.

  • Curtir 2
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

6 horas atrás, Italo Giurizzato Junior disse:

Bom dia Lindomar,

Tente desta forma:

xObs=Truck;Placa Teste;Linha 3;Cashback disponivel: R$ 2.000,00;Cashback disponivel: R$ 2.000,00;Cashback disponivel: R$ 2.000,00

Note que usei o caracter ";" para gerar uma quebra de linha ao imprimir o DACTE.

Olá Italo, o \r\n para quebra de linha é da própria linguagem de programação, não somos nós que colocamos a quebra de linha como \r\n, mas sim, se substituirmos o \r\n por ; funciona corretamente, mas ai é preciso fazer isso em todos os lugares que possuem quebra de linha, ir colocando Replace pra ajustar.

image.thumb.png.8bcfa2a38d794cb282ae5df2cab53d9d.png

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Lindomar,

O ACBr se utiliza do caractere ";" para indicar uma quebra de linha, uma vez que o \r\n (posso estar escrevendo besteira) no XML vai se tornar um #13#10 e esses caracteres vão ser removidos automaticamente antes do XML ser assinado.

  • Curtir 2
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

7 minutos atrás, Italo Giurizzato Junior disse:

Boa tarde Lindomar,

O ACBr se utiliza do caractere ";" para indicar uma quebra de linha, uma vez que o \r\n (posso estar escrevendo besteira) no XML vai se tornar um #13#10 e esses caracteres vão ser removidos automaticamente antes do XML ser assinado.

Seria possível alguma alteração na rotina do INI do C# pra substituir \r\n para ;? Pois acredito que isso vai ocorrer em demais usuários caso padrão seja diferente de ";"

Editado por Lindomar S. Menezes
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Lindomar,

Como não sou eu que cuido da Lib, vou passar esse caso para o pessoal, eles vão retornar aqui mesmo neste tópico com uma resposta mais assertiva.

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

@Lindomar S. Menezes
Bom dia !
vou explicar a nossa situação o pq desta quebra de linha. Esta quebra de linha já é um padrão desde o uso do ACBrMonitorPlus.
Como existem diversas linguagens diferentes que utilizam as Soluções do ACBr desde c, clipper, cobol... enfim até as mais atuais, não temos um validador específico para cada linguagem.
E adotamos o padrão ; (ponto e vírgula) e em alguns casos o | (pipe) para a quebra de linha.
De qualquer forma, como mencionou o Ítalo, vamos verficar com o time.
 

  • Curtir 2
Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Link para o comentário
Compartilhar em outros sites

2 minutos atrás, Daniel InfoCotidiano disse:

@Lindomar S. Menezes
Bom dia !
vou explicar a nossa situação o pq desta quebra de linha. Esta quebra de linha já é um padrão desde o uso do ACBrMonitorPlus.
Como existem diversas linguagens diferentes que utilizam as Soluções do ACBr desde c, clipper, cobol... enfim até as mais atuais, não temos um validador específico para cada linguagem.
E adotamos o padrão ; (ponto e vírgula) e em alguns casos o | (pipe) para a quebra de linha.
De qualquer forma, como mencionou o Ítalo, vamos verficar com o time.
 

Perfeito, obrigado @Daniel InfoCotidiano, de qualquer forma, por hora, resolvemos fazendo replace do \r\n para ; (ponto e vírgula), agradeço a atenção

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia pessoal

Conforme explicado pelos colegas do time, a separação de quebra de linha é padrão para todos, e alterar para algo diferente pode gerar outras dificuldades, afinal podemos ter outros pedidos semelhantes de colegas que utilizam outras linguagens.

At.

  • Curtir 3
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

Em 14/09/2023 at 10:19, Juliana Tamizou disse:

Bom dia pessoal

Conforme explicado pelos colegas do time, a separação de quebra de linha é padrão para todos, e alterar para algo diferente pode gerar outras dificuldades, afinal podemos ter outros pedidos semelhantes de colegas que utilizam outras linguagens.

At.

Perfeito, já adequamos nosso código aqui, muito obrigado pessoal!

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 385 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.