Aylık arşivler: Şubat 2018

Sap BO IDT UDT Veri Tabanı Eşanlamlı Tablolar (Database Table Synonym)

Sap Business Objects Information Design Tool IDT (veya Universe Design Tool UDT) ile veritabanındaki eşanlamlı tabloları (synonym) universe e (platforma) eklerken karşılaşılan durum.

Örnek senaryo: Veri tabanı Oracle. T tablosu A şemasında (schema) yer alsın. S sinonimi de B şemasında yer alsın. Raporlama işlemleri B şemasından yapıldığı için B şemasındaki sinonimin kullanılması istensin. Universe ün veri tabanı bağlantı kullanıcısı B olsun.

Yukarıdaki gibi bir senaryoda B.S (B şemasındaki S sinonimi) universe e eklendiğinde universe e tablo eklenir ama sinonimin kolonları IDT veya UDT ile tespit edilemez. Çünkü IDT ve UDT de sinonim kolonları ALL_TAB_COLUMNS ta (oracle da tabloların kolon bilgilerinin tutulduğu oracle dahili tablosunda) arar.

select * from ALL_TAB_COLUMNS where OWNER=’B’ and table_name=’S’;

IDT veya UDT eklenen tablo kolonlarını almak için yukarıdaki gibi bir sorgu gönderir; ama eklenen obje tipi sinonim olduğu için (tablo olmadığı için) ALL_TAB_COLUMNS da yer almaz ve kolonlar bulunamaz.

Eklenen sinonim universe e kolonsuz bir şekilde eklenmiş olur. Çözüm için universe e sinonim eklememek her zaman gerçek tabloyu eklemek tercih edilebilir ya da önce gerçek tablo eklenip sonra universe te şema adı ve tablo adı değiştirilir (Change Qualifier/Owner, Edit and Rename Table). Bu sayede kolonların gerçek tablodan alınması sağlanmış ve sorgular da sinonimden oluşturulmuş olur.