Una (probabile) risposta me la do da solo: se metto l'operazione di scrittura all'interno dell'ultimo If del ciclo, quello che legge se il tiporiga = "NAI" dovrei essere sicuro di:
- essere arrivato all'ultima riga del "blocco" che parte da BGM e finisce a NAI (compreso)
- ho valorizzato tutte le variabili con i campi che mi servono per quel blocco, perchè non sono ancora uscito fuori dal ciclo
- scrivo tutto l'output sullo stesso rigo
Un'altra soluzione potrebbe essere adottare un valore sentinella, che imposto a false durante tutti gli If precedenti, e lo pongo a true quando arrivo all'ultima riga del blocco. Quando sentinella = true, scrivo su file di destinazione
Qualche commento alle possibili soluzioni? O sto tirando fuori una cagata pazzesca?