cancel
Showing results for 
Search instead for 
Did you mean: 

Problemas com a função /XNFE/CTE_TRANSFORMER após atualização do GRC NFe10 do SP18 para SP22

Former Member
0 Kudos

Boa tarde!

Após atualizarmos nosso GRC NFe10 do SP18 para o SP22 a função /XNFE/CTE_TRANSFORMER foi "completamente comentada" e apareceu a mensagem:  "This FM is deprecated!!! Don't use".

O problema é que esta função era usada internamente em um processo que não pode parar.

Alguém saberia me dizer se foi liberada alguma outra função em substituição desta?

Até o momento não encontrei nada referente a esta função.

Att.,

Maycon Menezes

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Bom dia à todos.

Apenas dando um retorno para vocês, a solução mais rápida, não a melhor, mas a que nos atendeu no momento foi adaptar a função standard.

Basicamente usei a função '/XNFE/CTE_EXTRACT_VERSAO' e fiz alguns ajustes nos valores retornados. Isso resolveu o nosso problema!

Desde já agradeço a colaboração de todos!

Answers (3)

Answers (3)

Former Member
0 Kudos

Maycon Sylva,

Estava com este mesmo problema e criei uma copia da função Standard e funcionou.

att,

Wellington Oliveira.

Former Member
0 Kudos

Opa, bom dia Wellington.

Sim, a solução que encontrei foi algo parecido. Mas não fiz exatamente uma cópia, pois alguns objetos chamados por essa função também foram desativados. Sendo assim como uma solução imediata, por não ter muito tempo para esperar, adaptamos essa função e funcionou.

Former Member
0 Kudos

Ótimo Maycon,

O importante é que deu certo para todos nós. haha

Abraços.

Wellington Oliveira.

Former Member
0 Kudos

Maycon, XNFE/NFE_TRANSFORMER_PROCESS é o que você pode usar para buscar as infos que voce quer. Porém, a SAP já sinalizou que irá obsoletar esta FM num futuro próximo tb. Estamos sempre correndo este risco ... rsrs. Abracos. Daniel

Former Member
0 Kudos

Obrigado!

Sim, infelizmente esta questão de usar funções standard da SAP são bem complicadas, pois eles tem a liberdade de obsoletar a qualquer momento.

O ideal é realmente desenvolver algo.

Eduardo_Rubia
Product and Topic Expert
Product and Topic Expert
0 Kudos

Maycon,

Talvez a /XNFE/TRANSFORM_CTE_TO_DB_IN te atenda.

Infelizmente esta perda de compatibilidade é um risco assumido a se fazer uso de funções não liberadas, pois a SAP apenas olha para os colaterais standard, sem considerar desenvolvimentos envolvidos.

Se esta FM que indiquei não ajudar, sugiro navegar nas funções disparadas a partir do proxy relativo ao processo Z que você estiver usando. Exemplo: se for recebimento de CT-e, recomendo estudar a interface CFB2B_procCTe_IB.

Boa sorte,

Abs,

Eduardo

Former Member
0 Kudos

Eduardo, bom dia.

Infelizmente o único parâmetro que essa função /XNFE/TRANSFORM_CTE_TO_DB_IN não possui é o ET_STRUCTURES que é justamente o único que nós precisamos.

Mas sua dica está nos auxiliando na análise.

Obrigado!

Eduardo_Rubia
Product and Topic Expert
Product and Topic Expert
0 Kudos

Maycon,

Qual a finalidade exata do uso da função de transform?

Em que contexto a chamada a ela estará inserido?

Att,

Eduardo

Former Member
0 Kudos

Eduardo, boa noite,

Estamos com o mesmo problema reportado: fizemos o upgrade para o SP22 neste final de semana (08/11/2015) e agora a função /XNFE/CTE_TRANSFORMER se tornou obsoleta. Utilizamos esta função para obter os dados de Inscrição Estadual, UFs (tags UFIni, UFEnv, UFFim) e também os dados de transporte (tag infModal e todas as tags dentro desta) - que só estão presentes no XML e no parâmetro ET_STRUCTURES desta função - para fazer algumas validações e tratamentos de acordo com regras de negócio internas do cliente.

Estamos tentando utilizar a função /XNFE/TRANSFORM_CTE_TO_DB_IN, porém os dados acima descritos necessários para as regras de negócio não estão disponíveis.

Como estamos com a grande maioria dos CT-es aguardando escrituração em Produção, estamos a ponto de copiar a função /XNFE/CTE_TRANSFORMER para uma função Z, descomentando todo o código e chamando esta função Z no lugar da standard.

Se tiver outra sugestão que nos permita permanecer mais SAP e menos ZAP, é bem-vinda!

Edit: O contexto onde a função é chamada é no método /XNFE/IF_BADI_FLEXIBLE_STEP_CT~STEP_AFTER_DACTE. Os processos de CTe do cliente são tratados no processo CTEFLXBL.

Former Member
0 Kudos

Eduardo, essa função era utilizada para a leitura e tratamento do XML em nosso GRC, dados estes que na sequência são transmitidos (LT_STRUCTURE) para o nosso ambiente ECC no qual serão utilizados por alguns processos de logística e fretes.

Obs.: Essa função é chamada dentro de um Z que é executado via JOB.

former_member182503
Active Contributor
0 Kudos

Bom dia Andre,

tenho exatamente o mesmo cenario aqui. Ainda estamos na fase de planejamento do upgrade e essa informação veio a calhar.

Na documentação da BAdI a SAP recomenda o uso da classe CL_PROXY_XML_TRANSFORM para mapear as estruturas do XML para as estruturas ABAP.

Daí, ou você copia o antigo standard, ou você implementa uma função sua usando as mesmas tecnicas usadas pelo standard e tem que se preocupar em atualizar a função a cada nova modificação no proxy/xml, ou... se lasca.

[]'s

JN

Eduardo_Rubia
Product and Topic Expert
Product and Topic Expert
0 Kudos

Já tentaram usar a /XNFE/TRANSFORM_CTE_TO_UI?

A interface parece fazer justamente o que buscam: importa xml string, exporta dados estruturados.

Former Member
0 Kudos

Usamos esta função com sucesso parcial (rs)... Infelizmente esta função não retorna a data e hora da aprovação (tag  inf_prot-dh_recbto). Aliás, a tag infProt não é retornada pela função /XNFE/TRANSFORM_CTE_TO_UI, ao contrário da função /XNFE/CTE_TRANSFORMER

Former Member
0 Kudos

Para resolver de forma definitiva, utilizamos a função SMUM_XML_PARSE, passando o XML (formato XSTRING), e lendo a tabela de retorno XML_TABLE pela tag. Foi a forma que encontramos para trazer também os campos do protocolo do XML.