Closed mnuccioarpae closed 1 year ago
L'approccio di mantenere due valori esula dal data model adottato che prevede di utilizzare due reti differenti per dati elaborati o da fonti differenti. L'approccio a due valori sarà fonte di grossi problemi, complicazioni in vari ambiti e una maledizione per le future generazioni ...
@pat1 Quindi che soluzione proponi? La 1?
decidere quali sono i dati "ufficiali" e utilizzare reti differenti per archiviare altre informazioni ad uso interno. Perchè se dovessimo aggiungere volore3 poi come facciamo ? Valore2 (o valore 1 quando si utilizza il 2) dovrebbe migrare a un'altra rete e diventare inutilizzato.
Dalle specifiche del VM2 mi sembra chiaro che il dato "ufficiale" è quello ausiliario (valore2) quando A=2. Per questo ho fatto il merge di #22.
Un dubbio che ho è se il problema debba essere risolto in meteo-vm2-to-bufr
perché scrive A=2 nel bufr senza fornire il valore ausiliario. Mi sembra più corretto che sia meteo-vm2-to-bufr
a mettere A=0 nel bufr.
io eliminerei il caso A=2 (completamente dal mondo) e metterei quando A=2 valore2 in valore1 e porterei il vecchio valore1 in un'altra rete; questo una volta unatantum nella vita e annullerei la soluzione a #22 . Poi ad esempio è il concetto di priorità associata alla rete che risolve ad esempio in una estrazione da dballe se preferisco avere valore1 o valore 2 a piacere. Questo il mio suggerimento.
@pat1 ok, ora è chiaro cosa proponi. Per me va benissimo, ma temo che manchino le risorse umane per implementare questa soluzione in tempi ragionevoli. Io aprirei un altro issue con questa proposta come sviluppo futuro. Nel frattempo propongo di metterci la pezza che ho proposto, cioè modificare meteo-vm2-to-bufr
per impostare A=0 quando A=2.
Nelle specifiche del formato VM2 c'è scritto che, se nei flag "AXXYYZZWW" A=2, allora il valore da usare è sempre quello contenuto nel campo ausiliario.
Quindi se A=2 il campo ausiliario è obbligatorio, ma:
cioè
bufr-to-meteo-vm2
genera un record non valido se A=2.Il problema è che
meteo-vm2-to-bufr
può salvare solo uno tra valore principale e valore ausiliario perché non è stato definito un b-code per il secondo valore. Salva però i flag e questi vengono lasciati tali e quali dabufr-to-meteo-vm2
.Per risolvere il problema ci sono due strade:
bufr-to-meteo-vm2
per scrivere A=0 quando A=2.