Ir para conteúdo
  • Cadastre-se

CTE : RECUPERAR CSTIcms do ARQUIVO XML


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

Recommended Posts

  • Membros Pro
Postado

Prezado Companheiros

Boa Tarde!

Inicialmente quero pedir desculpas se minha dúvida é muito simples.

Estou implementando uma rotina que lê o Arquivo XML do Conhecimento de Transporte Eletrônico e gera o Documento no Banco de Dados com suas respectivas Duplicatas no Contas a Pagar.

Uma das funções da rotina é recuperar a Situação Tributária do ICMS declarada no Arquivo XML ( 00,10,20,30,...90).

E justamente neste ponto eu estou cheio de dúvidas.
Até cheguei no seguinte caminho : CTe.imp.ICMS.SituTrib, mas não sei como seguir adiante.

Sabem os companheiros como posso recuperar a CST do Icms ?
 

  • Consultores
Postado

Num primeiro momento vou fazer uma pergunta que pode ajudar bastante. leu os manuais do CTe e notas técnicas e seus layouts?

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
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 !!

  • Solution
Postado
15 minutos atrás, AnDes Sistemas disse:

Prezado Companheiros

Boa Tarde!

Inicialmente quero pedir desculpas se minha dúvida é muito simples.

Estou implementando uma rotina que lê o Arquivo XML do Conhecimento de Transporte Eletrônico e gera o Documento no Banco de Dados com suas respectivas Duplicatas no Contas a Pagar.

Uma das funções da rotina é recuperar a Situação Tributária do ICMS declarada no Arquivo XML ( 00,10,20,30,...90).

E justamente neste ponto eu estou cheio de dúvidas.
Até cheguei no seguinte caminho : CTe.imp.ICMS.SituTrib, mas não sei como seguir adiante.

Sabem os companheiros como posso recuperar a CST do Icms ?
 

Boa tarde,

através do programa exemplo do componente ACBrCTe você conseguirá solucionar essa questão. A única diferença é que ao invés de setar o enumerado, você vai checar o enumerado retornado e gravar no seu banco de dados.

  • Curtir 1

Cleber C. Ferreira
Analista de Sistemas e Consultor
Email e
Skype: [email protected]
Formiga-MG

  • Membros Pro
Postado

Senhor Cleber

Bom Dia!

Baseado no Programa Exemplo eu criei a rotina conforme exibo logo abaixo.

Será que ficou correto ?

Grato

var
  stCstICMS : String;
begin
  // Ticket : 52595 : tento identificar a CST de ICMS que veio no Arquivo XML
  stCstICMS := '';
  if doc.CTe.Emit.enderEmit.UF = doc.CTe.Rem.enderReme.UF then
    begin
      if (doc.CTe.Imp.ICMS.ICMS00.CST = cst00) then
        stCstICMS := '00'
      else if (doc.CTe.Imp.ICMS.ICMS20.CST = cst20) then
        stCstICMS := '20'
      else if (doc.CTe.Imp.ICMS.ICMS45.CST = cst45) then
        stCstICMS := '45'
      else if (doc.CTe.Imp.ICMS.ICMS60.CST = cst60) then
        stCstICMS := '60'
      else if (doc.CTe.Imp.ICMS.ICMS90.CST = cst90) then
        stCstICMS := '90';
    end
  else
    begin
      if (doc.CTe.Imp.ICMS.ICMSOutraUF.CST = cst00) then
        stCstICMS := '00'
      else if (doc.CTe.Imp.ICMS.ICMSOutraUF.CST = cst20) then
        stCstICMS := '20'
      else if (doc.CTe.Imp.ICMS.ICMSOutraUF.CST = cst45) then
        stCstICMS := '45'
      else if (doc.CTe.Imp.ICMS.ICMSOutraUF.CST = cst60) then
        stCstICMS := '60'
      else if (doc.CTe.Imp.ICMS.ICMSOutraUF.CST = cst90) then
        stCstICMS := '90';
    end;

 

 

 

  • Este tópico foi criado há 1406 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...
The popup will be closed in 10 segundos...