Esiste un'applicazione che coinvolge la fatturazione dei clienti aziendali per i servizi che i loro clienti utilizzano. Lo schema del database non riflette correttamente il modello di business. Ad esempio, su un determinato account, i servizi possono essere attivati e disattivati. C'è solo una colonna da rappresentare quando il servizio è stato disattivato e il codice sul posto aggiorna la stessa riga se il servizio viene riattivato piuttosto che aggiungere una nuova riga. Idealmente, una riga verrebbe aggiunta quando un servizio si attiva e aggiornato quando disattivato e ci sarebbe una colonna per rappresentare la data di attivazione.
Allo stato attuale, non esiste una solida cronologia di fatturazione per questi clienti aziendali, ma deve esserci da qui in poi. Impostiamo un "cutoff" per il modello precedente che è stato danneggiato e pulisci il tavolo? Aggiungiamo la colonna appropriata e iniziamo a lavorare correttamente con la tabella e controlliamo solo le righe che hanno una "data di attivazione" di null per rilevare legacy? Devono esserci diversi modi per gestirlo, ma non ho esperienza con questo tipo di situazione e vorrei conoscere alcuni approcci diversi.