¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Como determinar e exibir diferenças em um arquivo XML: módulo de funções ou classe semelhante ao Screen Split Editor

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 9 Vistas
0
Cargando...

Olá a todos,

Existe um módulo de funções ou uma classe para determinar e exibir diferenças em um arquivo (xml)? Similar ao Editor de Tela Dividida?

(SE39) ou Comparação de Código Fonte Abap FM: WB_SPLIT_EDITOR_VRS_START.

Infelizmente, ambas as ferramentas só podem ser usadas para código abap.

Mas eu preciso disso para um arquivo ou arquivo XML.

Atenciosamente
Uwe

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

quynh.doanmanh , isso é praticamente o que mencionei em minha resposta anterior. XSLT são transformações e, assim como qualquer outro DDIC, existem versões e funcionalidades de comparação.

No entanto, de acordo com meu conhecimento atual, ainda deve ser capaz de criar esses objetos DDIC (temporários), e nem sempre será possível.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Vejo que há gestão de versões na transação STRANS, então você poderia criar uma transformação XML lá e comparar as versões...

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Até agora, eu diria que 'não pode ser feito de forma elegante' com as ferramentas atuais da SAP (a menos que você construa tudo sozinho).

Eu tive essa tarefa uma vez também, e a única maneira que encontrei para resolvê-la foi criando uma entrada XSLT DDIC para ambos os arquivos XML (ou um arquivo 'de texto') com cl_o2_api_xsltdesc=>create_new( ) "API: Programa XSLT -> Criar nova entrada no sistema de armazenamento" e então comparando-os com SUBMIT rsvrsfu3 "Comparação de versões: Módulos de função (fontes)" . (E excluindo os objetos XSLT DDIC após a comparação, é claro)

O problema com isso é que você só pode usá-lo no sistema de Desenvolvimento, a menos que seu sistema de Teste/Qualidade ou até mesmo de Produção esteja aberto para criar entradas DDIC ? (caso contrário, você receberá a mensagem "Não são permitidas alterações no Repositório ou na Customização entre clientes").

Ou então, você pode conectar seu Sistema de Desenvolvimento à Produção, extrair os dados necessários e fazer a comparação no Sistema de Desenvolvimento para os dados produtivos. Como mencionei, isso não é feito 'de forma elegante'.

Ainda há inconvenientes na função de comparação de código com rsvrsfu3 , já que os dois arquivos devem ser muito semelhantes, caso contrário, às vezes o programa pode não encontrar linhas 'coincidentes' (sem alterações ou ligeiramente alteradas) e, em vez disso, afirmar que uma foi excluída e a outra inserida, quando na realidade é a mesma ou apenas ligeiramente alterada. E você também deve pensar em qual arquivo deve ser o 'novo' e qual é o 'antigo', para que a categorização do relatório em 'inserido' e 'excluído' não fique muito confusa. Portanto, neste momento, você obterá melhores resultados com editores de texto modernos (como notepad++, bbEdit, TextWrangler), que incluem comparações de arquivos e pastas, ou onde há um plugin disponível. Eu só segui esse caminho na SAP no meu caso, porque sempre havia vários 'arquivos' para comparar e eu não queria baixá-los, nomeá-los, compará-los, tirar minhas conclusões, etc.

(Exibir o XML funciona perfeitamente com CALL FUNCTION 'SDIXML_DOM_TO_SCREEN'.)

1. Exemplo de XML serializado que pode ser visualizado como XML ou comparado com outro XML com uma função 'COMPARAR':

2. Exemplo de extração de dados de customização de outro cliente/sistema (por exemplo, de produção para sistema de desenvolvimento) para comparar diferentes 'versões' (por exemplo, Customização para Cálculos de Preços)

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Opção 1: baixar os arquivos e usar ferramentas como o Notepad++ para comparar esses arquivos
Opção 2: usar a ferramenta de depuração "diff" para comparar os arquivos como uma cadeia ou tabela

Não conheço nenhuma ferramenta padrão da SAP para comparar XML em dynpro/webdynpro/ui5

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?