Siebel External Table Oluşturma



SIEBEL EXTERNAL TABLE OLUŞTURMA

Selamlar bu yazı ekip arkadaşım Yener İpeksaç tarafından yazılmış olup ayrıca medium üzerinden de paylaşılmıştır.


    Selamlar, öncelikle siebel’da external table neden oluşturuyoruz sorusunu yanıtlamak isterim. Siebel’da external table oluşturma sebebimiz, siebel database’inde olan fakat başka bir şemada bulunan tablo ya da başka bir database’de bulunan bir tablodan data çekmek — yetki varsa — ( select ), data yaratmak — yetki varsa — ( insert ), data güncellemek — yetki varsa — ( update ), data silmek — yetki varsa — ( delete ) fonksiyonlarını kullanmaktır.


Şimdi nasıl yapacağımız konusunda detaylı bilgi vermeye çalışacağım;


1- Hangi tabloda işlem yapacaksak o tablonun viewini oluşturmalıyız.


Diyelim ki; siebel database’inde siebel şeması dışında bir şemadaki tabloda işlem yapmak istiyoruz bu tabloya bakan db view oluşturmalıyız.

Örnek; MSFA.BB_ASSET tablosu.

Aşağıdaki komut ile bu tablonun bir db view’ını oluşturuyoruz. ( bu scriptte tablonun tüm kolonlarını alıyoruz fakat db view oluştururken istediğiniz kolonları da alabilirsiniz ) Ve yetki veriyoruz.

— — — — — — — — — — — -

CREATE OR REPLACE VIEW MSFA.TTG_BB_ASSET

AS

SELECT *

FROM MSFA.BB_ASSET;

GRANT DELETE, INSERT, SELECT, UPDATE

ON MSFA.TTG_BB_ASSET TO SSE_ROLE;

COMMIT;

— — — — — — — — — —

2- Oluşturduğumuz view’in ddl’ini oluşturmalıyız.


Bunun için birden fazla yol var aslında ben burda birini anlatacağım ( her sql tools’undan ( toad, sql developer vs. ) farklı şeklinde alınıyor. Örnekte SQL Developer üzerinden alınacak.

Yarattığımız view’in declaration’ına gitmeliyiz. Bunu nasıl yapacağız?

· İster view a select çekip, ctrl tuşuna basarak view isminin üstüne tıklayabilirsiniz. Aşağıdaki ekran görüntüsünde tabloya select çekildikten sonra ctrl tuşuna basınca olan görüntü bulunmaktadır.




· İsterseniz de tabloya select çektikten sonra tablo ismine sağ tıklayıp ‘Open Declaration’ diyebilirsiniz.




Her ikisinde de aşağıdaki görüntüdeki sekme gelecektir.




Burada Actions’a tıklayıp Export diyoruz.



Gelen sayfa aşağıdaki gibi olacaktır. Burada datayla işimiz olmadığı için Export Data flagini kaldırıyoruz. Encoding varsa ‘unicode’ seçiyoruz. Dosyayı nereye atacağımızı belirleyip Next diyoruz. Son görüntü aşağıdaki gibidir.



Ardından aşağıdaki görüntüdeki gibi yeni bir bölüm gelecektir, burada herhangi bir şey yapmadan Finish diyoruz.




Daha sonra inen dosyamızı kontrol edip doğrulunu teyit ediyoruz. Burada aslında db view i create ederkenki sql in kolonları olan halini göreceksiniz. Eğer 1.adımda db view’i oluştururken select * yerine kolon isimleriyle oluşturduysanız 2.adımı atlayıp direkt o scripti bir sql dosyası olarak herhangi bir yere kaydedebilirsiniz. Bu oluşan dosyaya biz ddl diyoruz.



3- DDL dosyasını Siebel Tools’a External Table olarak import etmek.

Siebel Tools’ta Object Explorer’dan Table kısmına gelip aşağıda görüntüde de belirtildiği gibi herhangi bir row’a sağ tıklayıp New Object Wizards.. ardından da External Table Schema Import seçeneğini seçiyoruz.



Daha sonra üç alanlı bir ekran açılacaktır.

İlk alan -> Siebel Project -> lockladığımız siebel projesini seçiyoruz.

İkinci alan -> Şema kaynağının tipi -> DDL / Analytics

Üçüncü alan -> İşlemden sonra oluşacak olan external table’in group code’u. -> Yapılacak table ne ile alakalıysa onu hatırlatacak ilk üç harfi girebilirsiniz. Siebel External Table ve External Viewları EX_ prefixyle ve _0000001 suffixiyle yaratıyor, sizin verdiğiniz üç harfi araya koyuyor, eğer aynı isimden iki tane external view ya da external table verirseniz suffix i 1 arttırarak ilerletiyor. Örneğin; üç harf ‘SFA’ vermiş olalım. EX_SFA_0000001

Next diyoruz.



Ardından gelecek olan ekranda bizden external table’in bulunduğu database bilgisini ve 2.adımda oluşturduğumuz ddl’in pathini istiyor.

Bunları girip next diyoruz.


Ardından açılacak olan ekranda bize Data Source’u sorup, oluşturulacak olan tablonun ismini gösteriyor. Buradaki örnekte aynı data source daha önceden yaratıldığı için “Runtime Data Source Name” daha önceden ortama tanımlı olan bir data source girilmiştir. Yeni bir data source olacak ise burayı boş bırakarak ilerleyiniz. İlerleyen steplerde burayı nasıl dolduracağınızı anlatacağım. Finish diyoruz.





Artık Siebel Tools üzerinde external tablomuz oluşmuş oldu. Burada yazan Alias kısmı external view’in adı olacaktır ( default olarak öyle gelmekte )





Bir sonraki adımda anlatacak olduğum Data Source oluşturma adımından önce ( ismini önceden belirlemeniz gerekmektedir ) aşağıdaki kısmı mutlaka doldurmanızı tavsiye ederim. Burada diğer adımda belirtecek olduğumuz DataSource’u ortamda tanımladıktan sonra bu tablonun hangi DataSource üzerinden nereye bağlanacağını sağlamaktasınız. İsterseniz bu tabloya bakan bir Business Component yaratıp ardından Applet yaratıp bu tablo üzerinde hem data gösterip hem güncelleme yapabilirsiniz, isterseniz yaptığınız Business Component’i Integration Object Component’e bağlayıp, Web Servisle başka sistemlere iletebilirsiniz ya da Web Servis üzerinden size gelen bilgileri bu tabloya yazdırabilirsiniz.




4- DataSource oluşturma

GUI de Sitemap üzerinden -> Administration — Server Configuration -> Enterprises — Profile Configuration ekranına gidilir. Burada aşağıdaki gibi Profile Configuration oluşturulur.

Profile -> Profil ismi -> profile configuration’un ismidir.

Alias -> Siebel toolsta ve diğer configurationlarda kullanılacak olan Profile Configurationun tanımıdır.

Subsystem Type -> InfraDatasources olmalıdır.

Description -> Datasource’in neden eklediği konusunda açıklama yazılabilir.

Gelelim bu profile configuration’un ( Data Source )’nin parametrelerine (en alttaki applet) , burada önemli olan 8 tane parametre değeri vardır, diğerleri defaulttaki gibi kalabilir.

· DSConnectString -> Siebel Server filesystem’inde bulunacak olan ve external table’imizin bağlı olduğu database’in bilgilerinin bulunduğu tnsnames.ora dosyasındaki database’in alias adıdır.

· DSDLLName -> sscdo90 olmalıdır.

· DSUsername -> external tablonun bulunduğu database’ye giriş yapabilecek kullanıcı adıdır. (tabloya da erişimi olmalıdır.)

· DSPassword -> external tablonun bulunduğu database’ye giriş yapabilecek kullanıcının şifresidir. (tabloya da erişimi olmalıdır.)

· DSTrxDbConnReconnectIntervalSeconds -> 120 olmalıdır.

· DSTableOwner -> External tablonun bulunduğu databasedeki external tablonun yaratıldığı şemanın ismidir.

· DSFileSystem ( advanced parametrelerde bulunur) -> Filesystem bilgisidir.

· DSSQLStyle ( advanced parametrelerde bulunur) -> OracleCBO olmalıdır.






5- External tablonun baktığı DataSource’u kullanabilmek için component datasource’una append etmek.

4. adımda oluşturmuş olduğumuz DataSource’u nerede kullanmak istiyorsak; örneğin; Bu datasource’u kullanarak siebel gui job tanımlayacaksak Workflow Process Batch Manager componentine, web servislerde kullanacaksak EAI Object Manager componentine, GUI de appletlerde kullanacaksak applicationumuzun bağlı olduğu çalıştığı Application Object Manager componentine aşağıda belirteceğimiz şekilde datasource eklenmelidir.

GUI de Sitemap üzerinden -> Administration — Server Configuration -> Enterprises — Component Definitions ekranına gidilir. Burada ilgili component query edilir ve Menu’den Start Reconfiguration seçilir.






Ardından en alttaki applette “OM — Named Data Source name” parametresi sorgulanır ( tırnaklar olmadan ). Ve value değerine yeni oluşturduğumuz DataSource’un Alias ismi varolan değerin sonuna , koyarak yazılır. Kayıt kaydedilir (CTRL + S ).





Daha sonra bir üstteki applette ( Component Definitions ) Menu ye tıklanarak, Commit Reconfiguration denir.



Ardından ilgili componentlere ya da siebel enterprise’a komple restart atılır ve data source kullanılabilir durumda olacaktır.



Yorumlar

Bu blogdaki popüler yayınlar

Siebel OpenUI Presentation Model ve Physical Renderer Yapısı

Long running query'ler için Query Plan fixleme

Profile Attribute Listesi