Files
itinova-budget-si/scripts/list-non-standard-codes.mjs

26 lines
910 B
JavaScript

import { createConnection } from 'mysql2/promise';
import { config } from 'dotenv';
config();
const conn = await createConnection(process.env.DATABASE_URL);
// Lister toutes les lignes dont le code n'est pas un code établissement standard (7 chiffres + 2 lettres)
const [rows] = await conn.execute(
`SELECT id, annee, etablissementCode, etablissementNom, baseRepartition
FROM opex_bases_repartition
ORDER BY etablissementCode`
);
console.log('=== Codes non-standard (parasites potentiels) ===');
for (const r of rows) {
const code = r.etablissementCode ?? '';
// Code standard = 7 chiffres + 2 lettres majuscules (ex: 1001BPT)
const isStandard = /^\d{4,7}[A-Z]{2,3}$/.test(code);
if (!isStandard) {
console.log(`id=${r.id} annee=${r.annee} code="${code}" nom="${r.etablissementNom}" base=${r.baseRepartition}`);
}
}
console.log(`\nTotal lignes: ${rows.length}`);
await conn.end();