In Mercator-versies na 26/03/2017 worden bij de structuurcontrole via de geavanceerde tools uniciteitsbeperkingen toegevoegd aan de categorietabellen die gekoppeld zijn aan de informatiebestanden:
- CAT_ANA
- CAT_CLI
- CAT_DEST
- CAT_FOU
- CAT_GEN
- CAT_IMM
- CAT_PROJ
- CAT_STCK (zonder O)
- CAT_TACT
- CAT_XLEAD
- CAT_YPREST
De toegevoegde unieke index wordt automatisch aangemaakt als
create unique index CAT_CLI_UNIQUE_NAME_PER_TYPE on dbo.CAT_CLI (TYPE, NOM)
Het is mogelijk dat de huidige gegevens in de database niet aan deze nieuwe beperkingen voldoen. Om dit te corrigeren, moet u dit SQL-script uitvoeren, hier gegeven voor de tabel CAT_CLI en aangepast aan de tabel met het uniciteitsprobleem.
select nom,type,min(id) as id into #CAT_CLI_tmp from CAT_CLI group by type,nom
alter table CAT_CLI disable trigger all
delete from CAT_CLI
insert into CAT_CLI (nom,type,id) select * from #CAT_CLI_tmp
alter table CAT_CLI enable trigger all
drop table #CAT_CLI_tmp
Merk op dat het deactiveren van de trigger noodzakelijk is, omdat de trigger die gedefinieerd is voor het verwijderen van records, de fiches van het overeenkomstige informatiebestand aanpast door de velden die gekoppeld zijn aan de verwijderde categorieën leeg te maken.