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á 434 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado (editado)

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
  • Consultores
Postado

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

 

 

  • Consultores
Postado

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

Postado
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

  • Consultores
Postado

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

Postado (editado)
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
  • Consultores
  • Solution
Postado

@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

Postado
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
  • Administradores
Postado

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 !!

Postado
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
  • Este tópico foi criado há 434 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.

The popup will be closed in 10 segundos...