- conheça também:
acronsoft
acrondesign
DeveloperFlex - Soluções para Desenvolvedores Visual DataFlex
contato@developerflex.com.br | (55 11) 4378-1115
A CTeLibrary suporta a versão 3.00 do CT-e a partir da versão 2017/02.
O prazo final da vigência da versão 2.00 está marcado para 04/12/2017. Portanto, a não ser que haja uma prorrogação, os desenvolvedores têm até 03/12/2017 para atualizar suas aplicações que hoje estão trabalhando com a versão 2.00 para utilizarem a versão 3.00 do CT-e.
Destacaremos aqui as principais mudanças para auxiliá-lo neste processo.
É importante ressaltar que não podemos garantir que todas as alterações realizadas na versão 3.00 estejam nesta documentação. Portanto, recomendamos que você examine o manual de orientação do contribuinte.
Antes de começar a migração para esta nova versão, faça um backup completo de seu ambiente de desenvolvimento, a fim de que possa ser possível retornar à versão anterior no caso de algum problema.
Na versão 3.00 do XML do CT-e, foi incluído o CT-e Outros Serviços, ou simplesmente, CT-e OS. O CT-e OS usa o modelo 67 e substitui a Nota Fiscal de Serviço de Transporte, modelo 7, para acobertar os serviços a seguir:
Foram incluídas duas novas funções na CTeLibrary para suportar o CT-e OS:
O CT-e OS possui um schema XML específico e diferente do CT-e modelo 57. Se precisa desenvolver o CT-e OS para algum cliente, consulte manual de orientação do contribuinte.
As tags de data e hora agora são do tipo TDateTimeUTC. Este tipo requer a data no formato UTC completo com a informação do TimeZone. Esta representação já é utilizada atualmente no projeto da NF-e.
Na versão 3.00 do layout do CT-e, serão aceitos os horários de qualquer região do mundo (faixa de horário UTC de -11 a +12) e não apenas faixas de horário do Brasil.
Um exemplo de data neste formato: 2017-07-08T13:00:15-03:00.
O desenvolvedor precisará revisar sua aplicação para gerar as datas que requerem este novo formato.
As tags "xLAgEmi" e "IdT" não existem mais na versão 3.00. Recomendamos que você altere sua rotina de geração do XML para não preencher mais estas tags. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para elas.
O grupo opcional "peri" foi incluído no modal aéreo. Informe os dados deste grupo na estrutura, se necessário, para a função CTeGeraXML gerar o grupo.
O grupo natCarga agora deve ser gerado logo após a tag dPrevAereo. O desenvolvedor não precisa fazer nenhuma alteração quanto a isto, pois a função CTeGeraXML se encarregará de gerar na ordem correta.
Além disso, a tag "cIMP" for removida e não será mais gerada. Recomendamos que você altere sua rotina de geração do XML para não preencher mais esta tag. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para elas.
O grupo opcional "seg" foi incluído no CT-e multimodal. Informe os dados deste grupo na estrutura, se necessário, para a função CTeGeraXML gerar o grupo.
As tags "dPrev", "lota" e "CIOT" não existem mais na versão 3.00. Recomendamos que você altere sua rotina de geração do XML para não preencher mais estas tags. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para elas.
Os grupos "valePed", "veic", "lacRodo" e "moto" foram removidos na versão 3.00. Recomendamos que você altere sua rotina de geração do XML para não preencher mais estes grupos e suas tags. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para este grupo.
A tag forPag que era opcional na versão 2.00 foi removida na versão 3.00. Recomendamos que você altere sua rotina de geração do XML para não preencher mais esta tag. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para ela.
Foi incluída uma nova tag "indGlobalizado" dentro do grupo "ide". Informe o valor no campo correspondente da estrutura caso deseje gerar esta tag em seu XML.
Foi incluída uma nova tag "indIEToma" dentro do grupo "ide". Informe o valor no campo correspondente da estrutura para gerar esta tag em seu XML. Esta tag é obrigatória.
Uma nova tag "vCargaAverb" foi adicionada no grupo infCarga. Informe o valor no campo correspondente da estrutura caso deseje gerar esta tag em seu XML.
O grupo infCte.infCTeNorm.seg não existe mais na versão 3.00. Recomendamos que você altere sua rotina de geração do XML para não preencher mais este grupo e suas tags. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para este grupo.
O grupo infCte.infCTeNorm.peri não existe mais na versão 3.00. Recomendamos que você altere sua rotina de geração do XML para não preencher mais este grupo e suas tags. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para este grupo.
Foi incluída uma nova tag "refCteAnu" dentro do grupo infCte.infCTeNorm.infCTesub. Informe o valor no campo correspondente da estrutura caso deseje gerar esta tag em seu XML.
Foi incluída uma nova tag "indAlteraToma" dentro do grupo infCte.infCTeNorm.infCTesub. Informe o valor no campo correspondente da estrutura caso deseje gerar esta tag em seu XML.
A tag "refCteAnu", que ficava dentro do grupo "tomaNaoICMS", agora fica dentro do grupo infCteSub. Para gerar esta tag, preencha o campo correto na estrutura que será passada para a função CTeGeraXML.
O grupo "tomaNaoICMS" foi removido na versão 3.00. Recomendamos que você altere sua rotina de geração do XML para não preencher mais este grupo e suas tags. Se você não alterar, a função de CTeGeraXML simplesmente irá ignorar qualquer valor informado para este grupo.
O grupo opcional "infGlobalizado" foi incluído em infCte.infCTeNorm. Informe os dados deste grupo na estrutura, se necessário, para a função CTeGeraXML gerar o grupo.
O grupo opcional "infServVinc" foi incluído em infCte.infCTeNorm. Informe os dados deste grupo na estrutura, se necessário, para a função CTeGeraXML gerar o grupo.
O campo "chave" dentro do grupo infCte.infCteComp mudou de nome para "chCTe". A fim de que os desenvolvedores não tenham que alterar nada em seu código fonte, mantivemos o nome do campo na estrutura tCTe_infCTeComp com o nome "chCTe".