GILT NIE ALS AUGETESTET!!!!
Eine SalesLogix Tabelle umbennen openCRMS schrieb am 4. Oktober 2009 15:45 Es passiert jedem Entwickler einmal, dass er einen Tipp- oder Schreibfehler beim Erstellen einer SalesLogix-Tabelle im Architect macht. Da der Architect jedoch leider keine Option bietet eine Tabelle umzubenennen, muss man den Umweg über SQL gehen. Dies wiederum führt dazu, dass eine auf SQL Basis umbenannten Tabelle in SalesLogix nicht mehr korrekt nutzbar ist. Der Grund hierfür ist die Tatsache, dass beim Anlegen einer SalesLogix Tabelle im Databasemanager des Architects, der Tabellenname zugleich in mehreren Tabellen als Systeminformation gespeichert wird: in der Tabelle SECTABLEDEFS, RESYNCTABLEDEFS und JOINDATA.
Um diese Probleme zu umschiffen, habe ich den folgenden SQL-Script geschrieben, dass es mir erlaubt, eine SalesLogix-Tabelle, die ich im SQL Server Management Studio umbenannt habe, in SalesLogix wieder benutzen kann.
ACHTUNG: Machen Sie das nicht so einfach, falls auch Remote-Clients in dem System vorkommen könnten!
/*
GILT NIE ALS AUGETESTET!!!!
Eine SalesLogix Tabelle umbennen
openCRMS schrieb am 4. Oktober 2009 15:45
Es passiert jedem Entwickler einmal, dass er einen Tipp- oder Schreibfehler
beim Erstellen einer SalesLogix-Tabelle im Architect macht. Da der Architect
jedoch leider keine Option bietet eine Tabelle umzubenennen, muss man hierfÜr
den Umweg über SQL gehen. Dies wiederum fÜhrt dazu, dass eine auf SQL Basis
umbenannten Tabelle in SalesLogix nicht mehr korrekt nutzbar ist. Der Grund
hierf¸r ist die Tatsache, dass beim Anlegen einer SalesLogix Tabelle im
Databasemanager des Architects, der Tabellenname zugleich in mehreren Tabellen
als Systeminformation gespeichert wird:
in der Tabelle SECTABLEDEFS, RESYNCTABLEDEFS und JOINDATA.
Um diese Probleme zu umschiffen, habe ich den folgenden SQL-Script geschrieben, dass es mir erlaubt, eine SalesLogix-Tabelle, die ich im SQL Server Management Studio umbenannt habe, in SalesLogix wieder benutzen kann:
*/
Declare @myTable varchar(128)
Declare @newTableName varchar(128)
set @myTable = 'ALTER_NAME'
set @newTableName = 'NEUER_NAME'
select * from sysdba.SECTABLEDEFS where TABLENAME = @myTable
update sysdba.SECTABLEDEFS
set TABLENAME = @newTableName
where TABLENAME = @myTable
update sysdba.RESYNCTABLEDEFS
set TABLENAME = @newTableName
where TABLENAME = @myTable
update sysdba.JOINDATA
set FROMTABLE = @newTableName
where FROMTABLE = @myTable
update sysdba.JOINDATA
set TOTABLE = @newTableName
where TOTABLE = @myTable
