Cita:
Empezado por Neftali [Germán.Estévez]
Nosotros lo que hacemos es generar un nuevo RF después de la modificación y lo comparamos con el anterior (sin tener en cuenta campos como fecha, huella,...). Simplificando un poco.
|
Amplío un poco la idea por si a alguien le interesa.
Realmente no se comparan XMLs directamente, si no que se convierten a objetos delphi y lo que realmente se comparan son los objetos.
¿Porqué este paso de más?
Porque comparar objetos nos permite más libertad en algunos casos. Por ejemplo, si en una versión 1.2 se amplían los decimales de un campo total (como ya pasó en ticketBAI), al comparar XMLs devolvería que son diferentes, si comparamos objetos (delphi) podemos decir que 13.05 es lo mismo que 13.0500. También para solventar problemas con nuevos campos en versiones posteriores o cambios de campos que pasan de obligatorio a no-obligatorio y al revés.
Por experiencia en TBAI, los objetos dan más potencia y libertad en estos casos.