Oracle Application Express 3.1’e Genel Bir Bakış Bir Oracle Tanıtım Yazısı Şubat 2008 Not: Aşağıda yer alanlar genel bir ürün yönetimimizin ana hatlarını çizmek amacıyla hazırlanmıştır. Sadece bilgilendirme amacında olup herhangi bir taahhütle ilişkilendirilmemelidir. Herhangi bir ürün, kod ya da işlevsellik sağlama konusunda bir taahhütte bulunmamaktadır ve satın alma kararları sadece bu belgeye dayandırılmamalıdır. Oracle ürünleri için tanımlanan özellik ve işlevlerin geliştirilmesi, piyasaya sürülmesi ve zamanlaması sadece Oracle’ın takdirindedir. Oracle Application Express’e Genel Bir Bakış İdari Özet Giriş Faydalar Birleştirme Yoluyla Daha İyi Erişim Bilgilerinizi Web Üzerinden, Karmaşıklıklar Olmadan Temin Etmek En İyi Dahili (Built in) Uygulamalar Uygulama ve sayfa yapısında tutarlılık ve standardizasyon Kullanıcı ara yüzü, uygulama mantığı ve veri erişiminin ayrılması Merkezi kimlik doğrulama (authentication) ve yetkilendirme (authorization) Ayrı depolanmış çevrilebilir diziler (translatable strings) Mimariye Genel Bir Bakış Tam Barındırıcılı Çözüm Çalışma Alanları: Bir Veri Tabanını Paylaşmak Uygulama Oluşturucusu SQL Atölyesi Hizmet Programları (Utilities) Yönetim Uygulamaları Taşımak (Migrating) Çalışma Alanı şemaları Bağlantılar Uygulama Geliştirme Özellikleri Otomatik Oturum Durumu Yönetimi Bildirimsel Veri Girişi Formları Tamamen Şablonla Çalışan Kullanıcı Ara Yüzü (User Interface –UI) Güçlü Raporlama Etkileşimli Raporlama PDF Basımı ve BI Publisher Bütünleştirmesi PL/ SQL, JavaScript ve AJAX ile Tamamen Uzatılabilirlik Grafik Dahili Dosya Yükleme Kapasitesi E‐posta Uyarıları Esnek Kimlik Doğrulama Gelişmiş Güvenlik Yeniden Kullanılabilir Kontrol Kuralları Sadece Yürütme Süresi Kurulumu Sonuç Oracle Application Express’e Genel Bir Bakış 3 3 3 4 4 5 5 5 6 6 6 8 8 9 9 10 10 11 11 11 11 11 12 12 14 14 15 16 17 17 18 18 18 18 18 19 Sayfa 2 Oracle Application Express’e Genel Bir Bakış İDARİ ÖZET Oracle Database 11g’nin bir özelliği olan Oracle Application Express, hızlı web uygulaması geliştirmesi ile Oracle Database’in gücünü birleştirmektedir. Kolay kullanılabilir tarayıcı (browser) tabanlı uygulama oluşturucusu, geliştiricilere ve programcı olmayanlara çok kısa bir süre içerisinde veri ile çalışan web uygulamalarını geliştirmelerine ve konuşlandırmalarına olanak sağlamaktadır. Oracle Application Express’ten faydalanmak, işletmeniz içerisindeki elektronik tablolarda ve kişisel Veri Tabanlarında dağınık durumda bulunan verilerin yönetimini ve güvenliğini birleştirmenize yardımcı olacaktır. Aynı zamanda, bilgileri web tarayıcısına sahip herhangi biri için kullanılabilir hale getirmek, bilgi erişimini geliştirecektir. GİRİŞ Artık, her bilgisayarda Internet’e ya da Intranet’e sanal olarak bağı bir web tarayıcısı bulunmaktadır, dolayısıyla işletmenizdeki bilgi akışını geliştirme imkanları çok geniştir. Yeni uygulamalar, yazılımın dağıtılmasına ihtiyaç duyulmadan çalıştırılıp güncellenebilmektedir. Herkesin, herhangi bir bilgisayardan, en son bilgilere erişimi bulunmaktadır ve kullanıcılar neredeyse kesintisiz bir şekilde bir uygulamadan diğerine geçebilmektedir. Tüm bunların altında yatan esas gerçek ise bu potansiyelin büyük bir kısmının hala fark edilmemiş olmasıdır. Elektronik tabloların değiştirilmesi, birleştirilmesi ve temizlenmesiyle, veri toplama ve paylaşma zor bir görev haline gelmiştir. Önemli veriler, metin işleme belgelerinde, metin dosyalarında ve masaüstü bilgisayarlardaki Veri Tabanlarında kilitli durumdadır. Bölümler ve iş kolları, güvenli olmayan ve işletmenin web konuşlandırması için tasarlanmayan araçlarla basit işletme süreçlerini otomatikleştirmeye çalışarak zaman kaybetmektedir. Bu makale, Oracle Application Express’in faydalarını, mimarisini, özelliklerini ve size Oracle Application Express’in web konuşlandırmalı raporlama ve veri girişi uygulamalarını bir Oracle Database’inde birleştirilmiş veriler üzerinde hızlı bir şekilde geliştirmeniz konusunda nasıl yardımcı olacağını tanımlanmaktadır. FAYDALAR Birçok organizasyon, bilgileri yönetmek için elektronik tablolar ve kişisel Veri Tabanları kullanarak değerli vakitlerini harcamaktadırlar. Bu ürünlerin Oracle Application Express’e Genel Bir Bakış Sayfa 3 kullanımı kolay olsa da, web üzerinde iyi konuşlanmamakta, verilerin eş zamanlı güncellenmesini düzgün bir şekilde idare etmemekte ve çok az bir güvenlik sağlamaktadır. Oracle Application Express, bilgilerin yakalanmasına, dağıtımına ve yönetimine temel faydalar getirerek yeni bir yaklaşım sunmaktadır. Birleştirme Yoluyla Daha İyi Erişim Birçok küçük çalışma grubu Veri Tabanını ve elektronik tabloları tek bir Oracle Database’de birleştiren Oracle Application Express, aşağıda yer alan faydaları sağlamaktadır: • Birçok kullanıcıdan eş zamanlı güncellemelere olanak sağlayıp aynı zamanda, bilgileriniz için tek bir gerçek kaynağa gerçek zamanlı erişim sağlayarak, elektronik tablolarda ve kişisel veri tabanları da kilitli olan verilerin web üzerinde dağıtılması sayesinde, gelişmiş erişim. • Elektronik tabloların eklentiler halinde e‐postalarla gönderilmesinin ve verilerin birden çok kopyasının birleştirilmesinin ya da temizlenmesinin önüne geçilerek, zaman tasarrufu. • Parçalanmış bilgilerin, güvenilir, güvenli, ölçeklendirilebilir ve uzmanlarca yönetilen Oracle Database içerisine birleştirilmesi aracılığıyla, geliştirilmiş güvenlik ve kullanılabilirlik. • Daha önce oluşturamadığınız uygulamaları oluşturmak (“hızlı ve kirli” uygulamalar bile tüm işletmenin kullanımı için anında web üzerine konuşlandırılmaktadır). Geliştiricilerin ya da son kullanıcıların kontrolünü ya da esnekliğini kısıtlamadan, birleştirmenin faydalarına ulaşılabilmektedir. Bilgilerinizi Web Üzerinden, Karmaşıklıklar Olmadan Temin Etmek Veri ile çalışan uygulamalar genellikle, işletme içerisindeki bilgi akışını kolaylaştırarak, işletme süreçlerini en uygun hale getirmek için oluşturulmuştur. Web uygulamalarını oluşturmak, uygulamayı “anlaması” (plumbing) ve geliştirme çalışmasının yükünü azaltması gereken, ancak maalesef, var olan işletme sorunlarını çözmeyen, yinelemeli ve yorucu görevlerle doludur. Bir uygulamanın “anlaşılması” süreci, aşağıda yer alan bölümler gibi bazı düşük seviye görevlerin ele alınmasını içermektedir: • Doğal olarak durum bilgisiz (stateless) olan http protokolü üzerinde oturum durumunun sürdürülmesi • Kullanıcı kimliklerinin doğrulanması ve erişim kurallarının uygulanması • Verilere eş zamanlı erişimin uygun bir şekilde idare edilmesinin garanti altına alınması Oracle Application Express’e Genel Bir Bakış Sayfa 4 • Bir ya da birden çok uygulama boyunca tutarlı bir kullanıcı ara yüzünün sürdürülmesi • Uygulamanın uygun dil ve yerel ayarları kullanarak çalıştığından emin olunması İşletmeniz içerisinde, optimize edilecek iş sürecine aşina olan çaışanların, bir web uygulamasının oluşturulması yükünü taşımaması gerekmektedir. Oracle Application Express, her uygulamaya gereken tüm becerileri otomatik olarak sağlayarak bu yükü ortadan kaldırmaktadır. Bu süreç işletme süreci uzmanlarının yaptıkları en iyi işi yapmalarına yardım etmektedir: var olan sorunu çözmek. En İyi Dahili Uygulamalar Oracle Application Express, web uygulamalarının oluşturulması için belirlenmiş en iyi dahili uygulamalara sahiptir. Genel hataları engelleyen ve geliştirici üretkenliğini geliştiren bu en iyi uygulamalardır. Örneğin, bir web uygulamasını oluştururken bir geliştirici istemeyerek de olsa manüel olarak, uygulama boyunca erişim kontrolünü idare etmek adına mantığı dağıtabilmektedir. Bu yüzden erişim kontrolünü yöneten esas kurallar üzerinde değişiklikler yapmak zorlaşmaktadır. Ya da bir geliştirici bir uygulamayı oluşturmaya başlarken, o uygulamanın bir gün biden fazla dilde sağlanması gerekeceğinin farkında olamayabilir. Application Express’in uygulama oluşturucusu tarafından sağlanan çerçeve bu tür hataların yapılamamasını garanti altına almaktadır. Aşağıda yer alan en iyi uygulamalar Oracle Application Express’in içerisine yerleştirilmiştir. Uygulama ve sayfa yapısında tutarlılık ve standardizasyon Oracle Application Express, sayfaları tüm uygulama boyunca canlandırmak (render) ve işlemek için önceden tanımlanmış bir metodoloji kullanmaktadır. Bu, sayfaların bir araya gelmesini hızlandırırken, aynı zamanda, bir sayfanın nasıl çalıştığını anlamak için kodlara ve komut dosyalarına (scripts) bakılmasına gerek olmadığından, bakımı da kolaylaştırmaktadır. Bir geliştirici, Oracle Application Express'te, uygulamayı daha önce görmemiş olsa bile, bir sayfanın hangi işlevi yürüttüğünü ve nasıl çalıştığını, hızlı bir şekilde söyleyebilmektedir. Kullanıcı ara yüzü, uygulama mantığı ve veri erişiminin ayrılması Application Express’in, sayfalar, alanlar (regions), raporlar, etikler ve bir uygulamanın diğer bileşenleri için şablonları (templates) kullanma yolu, geliştiricileri, kullanıcı ara yüzünü ya da uygulamamanın görünüşünü, mantığından ve işlevselliğinden ayırması konusunda desteklemektedir. Bunun birçok faydası bulunmaktadır. İlk olarak bu ayrım, uygulamanın tanımının anlaşılmasını kolaylaştırmakta ve uygulamanın özünü anlamak için HTML kodu sayfaları boyunca ayırma yapmanızı gerektirmemektedir. İkinci olarak bu ayırımın sürdürülmesi, kullanıcı ara yüzü hakkında karar vermeden, çalışmaya uygulamanı mantığından başlayabilmeniz anlamına gelmektedir. Hatta aynı anda diğer bir kişi de uygulamanın kullanıcı ara yüzü üzerinde çalışabilmektedir. Son olarak, uygulamanın görünümü değiştirmek için, her Oracle Application Express’e Genel Bir Bakış Sayfa 5 sayfayı ya da uygulamanın bileşenlerini değiştirmek yerine sadece birkaç şablonun değiştirilmesini yeterlidir. Merkezi kimlik doğrulama ve yetkilendirme Kimlik doğrulama ve yetkilendirmeyi yöneten kurallar merkezi ve uygulamanın mantığından bağımsız olarak tanımlanmıştır. Bu, kullanıcının kimliğinin onaylanmasının ve oluşturulmasının yolunu, geliştirmenin herhangi bir noktasında uygulamanın mantığına dokunmadan değiştirebilmeniz anlamına gelmektedir. Yetkilendirme şemaları, erişim kontrolü kurallarını merkezi bir yerden tanımlamanıza ve uygulamanın hemen hemen tüm bilişenleri ile ilişkilendirmenize yardımcı olmaktadır. Bu sayede, kimin neyi görüntülediği ve kimin hangi işlevi gerçekleştirdiği konununsa en yüksek esneklik garanti altına alınmaktadır. Ayrı depolanmış çevrilebilir diziler Oracle Application Express, bir uygulamanın tüm tanımını Veri Tabanında saklamaktadır. Uygulama tanımı, alan (field) etiketleri, bölge başlıkları ve rapor sütunu üst başlıkları gibi bileşenlerde bulunan çevrilebilir metinleri kapsamaktadır. Application Express, geliştirme süreci boyunca çevrilebilir dizilerin kayıtlarını otomatik olarak saklayarak, üçüncü bir partinin çeviri gerçekleştirmesi için tüm dizilerin tek bir dosyaya taşınmasına imkan sağlamaktadır. MİMARİYE GENEL BİR BAKIŞ Oracle Application Express, uygulamaların tanımlarını saklayan bir yardımcı veri (metadata) deposu ve sayfaların canlandırılması ve işletilmesi için bir motorundan meydana gelmektedir. Motor tarafından yürütülen ek görevler şunları içermektedir: • oturum durumu yönetimi • kimlik doğrulama hizmetleri • yetkilendirme hizmetleri • sayfa akışı kontrolü • onaylamaların işletilmesi Motor, PL/SQL içerisine uygulanmıştır ve bu motora İliştirilmiş (Embedded) PL/SQL Ağ Geçidi (şekil 1) ya da Oracle http Server (Apache) ve mod_plsql (şekil 2) aracılığıyla bir web tarayıcısından erişilmektedir. Uygulamalar, Veri Tabanı tablolarında saklanan yardımcı veri depolarından, gerçek zamanlı olarak canlandırılmaktadır. Uygulamaların oluşturulması ya da uzatılması, kod yaratılmasına neden olmamaktadır. Aksine, yardımcı Oracle Application Express’e Genel Bir Bakış Sayfa 6 veriler, Veri Tabanı tablolarında yaratılmakta ya da değiştirilmekte ve saklanmaktadır. Uygulama ister Oracle Application Express geliştirme ortamında isterse Oracle Application Express kullanılarak oluşturulmuş bir uygulamada çalıştırılsın, süreç ikisi için de aynıdır. Tarayıcı, uygun Oracle Application Express PL/SQL çağrısına çevrilen bir URL talebi göndermektedir. Veri Tabanı PL/SQL’i işledikten sonra, sonuçlar tarayıcınıza HTML olarak geri aktarılmaktadır. Benzersiz bir oturum durum yönetimi metodu, en düşük CPU kaynak tüketimini garanti altında almaktadır. Oturum durumu Veri Tabanında yönetilmektedir. Her sayfa görüntülenmesi yeni bir Veri Tabanı oturumunda sonuçlanmaktadır, böylelikle Application Express motoru bir sayfayı canlandırmamakta ya da işlememekte ve Veri Tabanı işleme kaynakları tüketilmemektedir. Şekil 1 ‐ Oracle Application Express Mimarisi: İliştirilmiş PL/SQL Ağ Geçidi (Oracle Veri Tabanı 11.1 ya da daha yüksek ya da Oracle Veri Tabanı 10g XE) Şekil 2 ‐ Oracle Application Express Mimarisi: mod_plsql ile birlikte Oracle HTTP Server (Apache) (Oracle Veri Tabanı 11.1 öncesi sürümler ve 11.1 ya da daha yüksek olanlar ile bir seçenek) Oracle Application Express’e Genel Bir Bakış Sayfa 7 TAM BARINDIRICILI ÇÖZÜM Oracle Application Express, paylaşımlı çalışma grubu Veri Tabanı hizmeti içerisine tek bir Oracle Veri Tabanına dönmektedir. Bu hizmete, geliştiricilerin ya da son kullanıcıların bilgisayarlarına herhangi bir yazılım kurulmasına gerek kalmaksızın, bir tarayıcı aracılığıyla basit bir şekilde erişilebilmektedir. Çalışma Alanları: Bir Veri Tabanını Paylaşmak Bazı verileri takip etmek ve diğerleriyle web üzerinden paylaşmak isteyen herhangi bir kişi, Oracle Application Express içerisindeki self‐servis kaydolma sihirbazını kullanarak, bir çalışma alanına kaydolabilmektedir. Bir çalışma alanı, kullanıcıların kendi konularını, verilerini ve uygulamalarını özel olarak korurken aynı zamanda birden fazla kullanıcının aynı Oracle Application Express kurulumu içerisinde çalışmalarına olanak sağlayan sanal bir Veri Tabanıdır. Şekil 3 – Bir Veri Tabanını Çalışma Alanlarıyla Paylaşmak Şekil 3’te gösterildiği gibi, tek bir Oracle Veri tabanı, her birinin bir ya da daha fazla Veri Tabanı şemasına erişime sahip olduğu (A’dan F’ye), birden çok Oracle Application Express çalışma alanı içerebilmektedir (Çalışma Alanı 1’den 3’e kadar). Böylelikle birden çok geliştirme çalışması aynı Veri tabanında birbirlerine müdahale etmeden gerçekleşebilmektedir. Bir çalışma alanına kaydolma sırasında, yeni bir şema talep edilebilmekte ya da tablolar, görüntüler ve saklanmış prosedürler gibi Veri Tabanı nesneleriyle birlikte var olan bir şema, çalışma alanıyla ilişkilendirilebilmektedir. Çalışma alanı talepleri, web tabanlı bir ara yüz kullanılmasını onaylamak adına, bir Oracle Application Express yöneticisi için sıraya sokulmaktadır. Bir çalışma alanına girildiğinde (şekil 4), kullanıcın aşağıda yer alan bileşenleri erişimi sağlanmaktadır: Oracle Application Express’e Genel Bir Bakış Sayfa 8 • • • • • • • Uygulama Oluşturucusu SQL Atölyesi Hizmet Programları Yönetim Aktarmalar (Migrations) Çalışma Alanı taslakları Bağlantılar Şekil 4 ‐ Oracle Application Express açılış sayfası Uygulama Oluşturucusu Uygulama Oluşturucusu, bir HTML kullanıcı ara yüzünü, tablolar, görüntülemeler ve prosedürler gibi Veri Tabanı nesnelerinin üzerinde bir araya getirmek için en uygun hale getirilmiştir. Raporlama ve veri girişi uygulamaları oluşturmak için birçok sihirbaz sağlamaktadır. Bu özellik hakkındaki detaylar daha sonraki bölümlerde ele alınmıştır. SQL Atölyesi SQL Atölyesi, bir web tarayıcısı aracılığıyla Veri Tabanıyla etkileşim kurmanıza olanak sağlayan bir araçtır. Bu özellik şunları içermektedir: • Veri Tabanı nesnelerini görüntülemek Oracle Application Express’e Genel Bir Bakış Sayfa 9 • Tablolar, görüntülemeler, tetikleyiciler (triggers) ve diziler (sequences) gibi Veri Tabanı nesnelerini yaratmak • Komut dosyalarını yaratmak, düzeltmek ve çalıştırmak Aynı zamanda yerel dosya sisteminizden, komut dosyalarını yükleyebilir ve indirebilirsiniz • SQL komutlarını, şifre gerektirmeyen (anonymous) PL/SQL’leri, komut dosyalarını ve kayıtlı sorgulamaları çalıştırmak • Veri Tabanı nesneleri aramak ve filtrelemek, nesneler arasında ilişki oluşturmak, biçimlendirilmiş sorgulama sonuçlarını görüntülemek ve sorgulamaları kaydetmek için Sorgulama Oluşturucusu (Query Builder ) Hizmet Programları Veri Atölyesi, yapılandırılmış verilerini Veri Tabanı tabloları içerisine aktarmanıza (export) ya da Veri Tabanı Tablolarından getirmenize (import) yardımcı olmaktadır. Örneğin, elektronik tablo verilerini getirme sihirbazı sayesinde, bir Veri Tabanı tablosu oluşturup, verileri elektronik bir tablodan tek bir operasyona getirebilirsiniz. Diğer Veri Atölyesi özellikleri şunları içermektedir: • Virgülle ayrılan değerler (comma separated values ‐ CSV) ya da sekme ile ayrılan değerler (tab separated values) gibi yapısal metin dosyalarından veriler getirmek • Herhangi ayırıcılı bir tabloya verileri aktarmak • DDL yaratmak • Nesne raporlarını görüntülemek • Bırakılmış (dropped) Veri Tabanı nesnelerini eski değerine döndürmek Yönetim Bir çalışma alanı yöneticisi olarak, uygulamaların geliştirildiği ve konuşlandırıldığı ortam üzerinde kontrolünüz bulunmaktadır. Çalışma alanı yönetimi özelliği şunları içermektedir: • Oturum durumu, günlük (log) dosyaları, hizmet sonlandırması, şema talepleri, depolama talepleri, şema raporları, seçenekler ve uygulama modelleri gibi hizmetlerin yönetimi • Kullanıcıların ve kullanıcı gruplarının yönetimi • Son kullanıcı ve geliştirici faaliyetlerini, sayfa görüntülemesinde ve sisteme giriş denemelerinde olan değişiklikleri denetlemek Sağda yer alan görev listesi, aşağıdaki bağlantıları görüntülemektedir: • Şifrenizi değiştirmek Oracle Application Express’e Genel Bir Bakış 10 • Temel ürün bilgilerini listeleyen sayfa hakkında Uygulamaları Taşımak Oracle Application Express Uygulama Taşıma Atölyesi (Application Migration Workshop), bir Microsoft Access uygulamasını taşımanıza ve getirilen nesnelerden bir Oracle Application Express uygulaması yaratmanıza olanak sağlamaktadır. Çalışma alanı şemaları Liste, Veri Tabanıyla ilişkili ve dolayısıyla bu çalışma alanı içerisinde erişilebilir olan şemaları göstermektedir. Bağlantılar Aşağıda yer alan Application Express kaynaklarına erişmek için bu liste kullanılmaktadır: • Oracle Teknoloji Ağı • Tartışma Forumu • Kullanıcı El Kitabı UYGULAMA GELİŞTİRME ÖZELLİKLERİ Şimdiye kadar, Application Express’in, ilgi çekici, çok yönlü ve dayanıklı veri ile çalışan bir web uygulamasının geliştirilmesi ve konuşlandırılması için gereken düşük düzey becerileri programlama ihtiyacınızı ortadan kaldırarak, gelişimi ve verimliliği geliştirdiğini öğrendik. Bu bölümde, bu noktayı açıklamak için, birkaç önemli web geliştirmesi özelliğini detaylandıracağız. Otomatik Oturum Durumu Yönetimi Oracle Application Express, geliştiricilere oturum durumu değerlerini uygulamalarındaki herhangi bir sayfadan "alma" ve "ayarlama” becerileri sunarak, oturum durumunu net bir şekilde Veri Tabanında sürdürmektedir. Her oturuma, Oracle Application Express kurulumu içerisinde kendine özgü bir tanımlayıcı (ya da oturum kimliği) tahsis edilmiştir. Oracle Application Express motoru, bu oturum kimliklerini, her sayfa görüntülemesinden önce ve sonra, bir uygulamanın çalışma verilerini (ya da oturum durumunu) saklamak ve geri almak için kullanmaktadır. Oracle Application Express’e Genel Bir Bakış 11 Bildirimsel Veri Girişi Formları Sihirbazlar ve önceden oluşturulmuş birçok parçacık (widget) aracılığıyla, veri yakalamak ve bunları Veri Tabanına girmek ya da güncellemek için hızlı bir şekilde formlar oluşturabilirsiniz. Formlar aşağıda yer alan özelliklerle geliştirilebilmektedir: • Geniş çaplı dahili HTML parçacıkları • Veri doğrulamaları (validations) • Paylaşımlı değerler listesi • Alan düzeyi yardımı • Üstte açılan (pop‐up) takvim Form sihirbazları, araya sokma, güncelleme ve silme işlemlerini gerçekleştirmek için gereken tüm veri mantığını oluşturmaktadır. Veri mantığı, eş zamanlı erişim sağlayan birden çok kullanıcının Veri Tabanındaki veri bütünlüğünü tehlikeye atmadığından emin olmak için, kayıp güncelleme tespitini de içermektedir. Aynı zamanda, çizelge biçimindeki (tabular) formlar, çok sıralı formlar, rapor ile birlikte tablo üzerindeki formlar, bir web hizmeti üzerinde olan formlar, bir SQL Sorgulaması üzerindeki formlar, ana detay formları ve Özet sayfaları gibi daha gelişmiş formlar da desteklenmektedir. Şekil 5 ‐ Application Express ile oluşturulmuş bir form Tamamen Şablonla Çalışan Kullanıcı Ara Yüzü Oracle Application Express ile oluşturulmuş bütün uygulamalar tamamen şablonla çalışmaktadır. Şablonlar bir uygulamanın hemen hemen her bileşeni için kullanılmaktadır: sayfalar, bölgeler, raporlar, listeler, alan etiketleri, menüler, butonlar ve üstte açılan değer listeleri. Uygulama Oracle Application Express’e Genel Bir Bakış 12 Oluşturucusu sadece yapılmaya hazır tasarım temalarıyla birlikte gelmeyip aynı zamanda, isteğe göre uyarlanmış basamaklı stil sayfaları (cascading style sheets ‐ CSS), Javascript ve imgeleri içeren HTML’ler kullanarak kendi şablonlarınızı oluşturmanıza olanak sağlamaktadır. Şablonlar önce türlerine göre (breadcrumb – genellikle sayfanın üstünde yer alan ve sayfanın site içerisindeki yerini gösteren tanımlama‐ buton, bölge, rapor vs.) daha sonra o tür içerisindeki her şablonun amacını tanımlayarak, şablon sınıflarına göre düzenlenmektedir. Her şablon türü bir grup standart sınıf ve sekiz özel sınıf sağlamaktadır. Aşağıdaki şekilde gösterildiği gibi 3.1 versiyonu iki yeni tema içermektedir. Şekil 6 – Tamamen şablonla çalışan uygulama oluşturması Genel (public) tema, bir çalışma alanı ve uygulama içerisinden bir tema seçilerek oluşturulabilmektedir. Bu temayı düzenlemek için, temanın dışında bir uygulama yaratıp daha sonra temayı uygulama içerisinde temayı düzenleyiniz. Artık güncellenmiş uygulama teması içerisinde yeni bir genel tema oluşturup, tema deposuna ekleyebilirsiniz. Oracle Application Express’e Genel Bir Bakış 13 Güçlü Raporlama Uygulama oluşturucusunu kullanarak raporlar, sonuçları SQL sorgulaması biçiminde hazırlanarak, hızlı bir şekilde oluşturulabilmektedir. Kolay Rapor sihirbazı, kullanıcıyı, SQL bilgisine ihtiyaç duymadan bir rapor oluşturabilme konusunda yönlendirmektedir. Raporlama motorunun özellikleri şunları içermektedir: • Rapor Düzenini ve Sayfa Düzenlemesini kontrol etmek • Diğer raporlara ya da grafiklere sütun bağlamak • Bir raporu bir XML dosyası ya da bir CSV dosyası olarak aktarmak • Güncellenebilir bir Sütun tanımlamak • Sütun Araları • Sütun tabanlı sınıflandırma • Sütunların ne zaman gösterileceğini kontrol etmek • Sütun değerlerine HTML tabanlı ifadeler uygulamak Şekil 7 ‐ Application Express ile oluşturulmuş bir Rapor Etkileşimli Raporlama Etkileşimli Raporlama Alanı, son kullanıcın raporları özelleştirmesine olanak sağlayan yenilikçi bir teknoloji uygulamasıdır. Bu, geliştirme süresini ve çabasını azaltırken, eş zamanlı olarak uygulama işlevselliğini de geliştirmektedir. Dinamik raporlama alanı kullanıcıların aşağıdakileri gerçekleştirmesine olanak sağlamaktadır: • Görüntülemek/göstermek istedikleri sütunu seçerek, verinin düzenini özelleştirmek • Filtreler uygulamak • Vurgulama ve sınıflandırmaya olanak sağlamak • Araları, kümeleri (aggregations), farklı grafikleri ve kendi hesaplamalarını tanımlamak Oracle Application Express’e Genel Bir Bakış 14 • Raporun birden çok çeşidini yaratmak ve isimlendirilmiş rapor ya da virgülle ayrılmış dosyalara çıktı olarak kaydetmek ya da PDF, Word, Excel belgesi olarak yazdırmak Şekil 8 ‐ Application Express ile oluşturulmuş Etkileşimli Rapor PDF Basımı ve BI Publisher Bütünleştirmesi Raporlar aynı zamanda, PDF, Word, Excel ya da HTML belgesine aktarılabilmektedir. Bir rapor sunucusu yapılandırıldığı ve tanım detayları Application Express’ e girildiği zaman, herhangi bir rapor bölgesi, özelleştirilebilir rapor özellikleri ve otomatik sayfa numaralamasını da içeren, yazdırılabilir bir rapor halinde çıkarılabilmektedir. Bildirimsel ara yüz PDF basımı sayesinde çıkış belgesi ile geniş çaplı özellikler ilişkilendirebilirsiniz (örneğin, rapor Sayfası ölçüsünü, Arka plan rengini ayarlayabilir, sayfa başlığı ekleyebilirsiniz). Oracle Business Intelligence (BI) Publisher’ı rapor sunucusu olarak kullanarak, “yüksek duyarlılığa” sahip raporlar şekil 8’de gösterildiği gibi birleştirilebilmektedir. BI Publisher, birden çok tabloyla (örneğin temel‐ detay), grafikle ve Application Express’den geçen diğer parametrelerle birleşen karmaşık rapor şemaları geliştirmek için, bir MS Word eklentisi sağlamaktadır. Bu rapor şablonları daha sonra Application Express içerisine yüklenebilmekte, bir URL aracılığıyla erişilebilmekte ve bir butondan ya da bağlantıdan çağrılabilmektedir. • PDF Raporlamasına gelen yeni geliştirmeler şunları içermektedir: • Çok Kaynaklı Sorgulamalar • Bir PDF raporu yaratmak ve bir BLOB değişkeni olarak erişmek • Word Eklentisi için geliştirilmiş veri kaynağı desteği Oracle Application Express’e Genel Bir Bakış 15 Şekil 9 – Application Express ve BI Publisher ile oluşturulmuş “Yüksek Duyarlılığa” sahip raporlar PL/ SQL, JavaScript ve AJAX ile Tamamen Uzatılabilir Application Express, sihirbazlar ve önceden oluşturulmuş bileşenler aracılığıyla, Veri Tabanı merkezli web uygulamalarına hızlı geliştirmeler sunmaktadır. Ancak, aracın basitliği, özel PL/SQL ya da Javascript ile bir uygulamanın işlevselliğini genişletmek için gereken esnekliği engellememektedir. Uygun olduğunda, uygulama oluşturucusu, birkaç PL/SQL satırı biçiminde özel mantık sağlamanıza ya da var olan PL/SQL prosedürünü ya da işlevini ya da var olan Javascript kitaplığından bir Javascript işlevi çağırmanıza izin vermektedir. Örneğin, Application Express dahili bildirimsel doğrulamaları sağlamakta ancak aynı zamanda kendi Javascript tabanlı doğrulamalarınızı oluşturmanıza da olanak sağlamaktadır. Eşzamansız Javascript ve XML (AJAX), istemci ve web sunucusu arasındaki faaliyetleri gerçekleştirmek için kolaylıkla birleştirilebilmektedir. Bu süreç, çaba gerektiren işletme gereksinimlerini karşılamak ve müşteri kullanılabilirliliğini ve tatminini arttırmak için kullanıcı ara yüzünü daha fazla geliştirme becerisi sağlamaktadır. Yeni AJAX becerileri, AJAX Sayfa Düzenlemesi ve AJAX takvimini içermektedir. Javascript kitaplıkları şunları içermektedir: • Geliştirilmiş Sayfa Yükleme Süresi • JavaScript & CSS bastırılması (suppress) • Her sayfada bulunan Javascript işlevleri ve nesneleri • Özel Web 2.0 becerilerini oluşturmak ve yükseltmek • Belgelenmiş Javascript API’ları Oracle Application Express’e Genel Bir Bakış 16 Grafik Uygulama oluşturucusu tarafından üç çeşit grafik sağlanmaktadır. İlk tür Flash Grafik tabanlıdır ve çoklu çubuk, sıra ve pasta grafiklerini, eş zamansız (asynchronous ) güncelleme gibi çeşitli özelliklerle birlikte sunmaktadır. Bildirimsel kontroller, animasyonlar, renklendirme, etiketleme ve göstergeleri içeren birçok özellik için sunmaktadır. İkinci tür HTML ve gif imgeleri tabanlıdır, yatay ve dikey çubuk grafiklerini sağlamaktadır. Üçüncü tür ise, Web grafikleri için bir XML dili olan Scalable Vector Graphics (SVG) tabanlıdır ve çubuk, sıra ve pasta grafiklerini sunmaktadır. Şekil 10 ‐ Application Express Web Hizmetleri Bütünleştirmesi ile oluşturulan grafikler Oracle Application Express içerisinde geliştirilen uygulamalar, SOAP kullanılarak harici web hizmetlerine çağrı birleştirebilmektedirler. Web hizmeti cevapları XSL sayfa yönergesi (style sheet) kullanılarak dönüştürülebilmekte ve bir sayfaya birleştirilebilmekte ya da sadece bir oturum durumunda saklanabilmektedir. Bu özellik, harici sunucularda çalışan mantık ya da süreçlerle bütünleşmenin oldukça güçlü bir yoludur. Dahili Dosya Yükleme Kapasitesi Uygulama Oluşturucusu, son kullanıcının belge ya da diğer dosyaları yüklemesini gerektiren uygulama kitaplıklarını (belge gibi) oluşturmak için bir “Dosya Tara…” parçacığı içermektedir. Yüklenen dosyalar otomatik olarak Veri tabanında saklanmakta ve indirme için kolaylıkla bir rapor içerisine birleştirilebilmektedir. Oracle Application Express’e Genel Bir Bakış Sayfa 17 E‐posta Uyarıları Birçok uygulama, belirli bir ticari durum gerçekleştiğinde gönderilmek üzere E‐posta biçiminde uyarılar gerektirmektedir (örneğin bir müdürün satın alma talebini onayladığı durumlarda). Application Express, uygulamanızdan kolaylıkla e‐posta gönderebilmeniz için Veri Tabanı tarafından sağlanan UTL_SMTP üzerinde API tabanlı bir paket içermektedir. Bu e‐postalar aynı zamanda eklentileri de içerebilmektedir. Esnek Kimlik Doğrulama Bir kimlik doğrulama şeması, kullanıcının kimliğini doğrulayacak ve daha sonra Oracle Application Express motorunu, doğrulamanın başarılı olduğuna ve uygun kullanıcı adıyla giriş yapıldığına dair bilgi verecek bir yöntemdir. Kullanıcı adı, Oracle Application Express içerisinde ya da harici bir giriş sayfasından (örneğin Oracle Application Server Single Sign‐On kullanıldığı durumlarda olduğu gibi) gelebilmektedir. Oracle Application Express uygulamaları kimlik doğrulama şemalarının herhangi bir zaman değiştirilmesine olanak sağlamaktadır. Bu, geliştiriciye herhangi bir uygulama mantığını değiştirmeden, kimlik doğrulamasını (örneğin LDAP ‐Lightweight Directory Access Protocol‐ ya da Oracle Application Server Single Sign‐On tabanlı) değiştirme esnekliğini sunmaktadır. Gelişmiş Güvenlik Artık, geliştiricinin öğe (item) oturum durumunu koruma görevini kolaylaştıran, yeni Gizli ve Korumalı bir öğe türü dahil edilmiştir. Bunun yanında, dahili sayfa süreç türleri de (DML operasyonları) bulunmaktadır (muhtemel SQL püskürtme saldırılarını ortadan kaldırmak için geliştirilmiş). Yeniden Kullanılabilir Kontrol Kuralları Yetkilendirme şemaları olarak adlandırılan erişim kontrolü kuralları merkezi olarak tanımlanabilmekte ve bir uygulama içerisindeki bileşenlere uygulanarak tekrar kullanılabilmektedir. Örneğin, yetkilendirme şemaları, tek bir alandan ya da butondan tüm uygulamaya kadar olan erişimi kontrol edebilmektedir. Yetkilendirme şemaları, ‘X değişkeninin değeri Y olmalıdır’ şeklindeki ya da daha karmaşık ve Veri Tabanını sorgulayan ya da LDAP dizini (directory) içerisinde arama gerçekleştiren bildirimsel komutlar kullanılarak tanımlanabilmektedir. Sadece Yürütme Süresi Kurulumu Yükleyici (installer) ile birlikte sağlanan komut dosyaları, Oracle Application Express’in ‘Tam Geliştirme’ ya da ‘Yürütme Süresi’ sürümleri arasında geçiş yapabilmenize olanak sağlamaktadır. ‘Sadece Yürütme Süresi’ komut dosyası çalıştırıldığında, ayrı bir Yönetim Kullanıcı Ara Yüzü bulunmayacaktır. Oracle Application Express’e Genel Bir Bakış Sayfa 18 Sadece uygulamayı çalıştırmak için gerekli olan paketler oluşturulmaktadır. APEX_INSTANCE_ADMIN Paketi, bu ortamın yönetilmesine olanak sağlayan yardımcı programları sağlamaktadır. Örnek “Özelikleri” ve “Ayarları” almak ve ayarlamak için SQL*Plus’a bağlanmalısınız. Bu süreç, aşağıdaki nedenlerden dolayı daha iyi güvenlik sağlamaktadır: • Bilgisayar korsanları ve kötü niyetli kullanıcılar için daha az giriş noktasına sahip olması • Uygulamaların en düşük Veri Tabanı ayrıcalıklarıyla çalıştırılması • Geliştiricilerin bir Yürütme Süresi Ortamından veri ya da sayfaları yanlışlıkla değiştirmelerinin ya da silmelerinin engellenmesi • Üretim ve test örnekleri için ideal olması SONUÇ İşletme içerisindeki değerli verileri elektronik tablolara ve kişisel Veri Tabanlarına dağıtmak, bilgi akışını aksatmakta ve güvenlik ihlali riskini aşırı derecede arttırmaktadır. Oracle Application Express’in eşsiz mimarisi verilerinizi birleştirip, güvenlik altına almanıza olanak sağlarken aynı zamanda bu verileri bir web tarayıcısına sağlayarak erişimi geliştirmektedir. Oracle Application Express’in uygulama oluşturucusu, web geliştirmesi için optimize edilmiş zengin özellikler sunmakta ve böylelikle sınırlı geliştirme tecrübesine sahip çalışanlar bile veri ile çalışan web uygulaması oluşturup, konuşlandırabilmektedir. Oracle Application Express’e Genel Bir Bakış Sayfa 19 Oracle Application Express’e Genel Bir Bakış Şubat 2008 Yazar: David Peake Katkıda Bulunan Yazarlar: Oracle Corporation Dünya Genel Merkezi 500 Oracle Parkway Redwood Shores, CA 94065 A.B.D Dünya çapındaki talepler için: Telefon: +1.650.506.7000 Fax: +1.650.506.7200 www.oracle.com Oracle Corporation interneti güçlendiren yazılımlar sunmaktadır. Oracle, Oracle Corporation’a ait tescilli bir markadır. Burada kaynak olarak gösterilen çeşitli ürün ve hizmet isimleri, Oracle Corporation’a ait markalar olabilirler. Bahsi geçen diğer tüm ürünler ve hizmetler, kendi sahiplerine ait markalar olabilirler. Telif Hakları © 2002 Oracle Corporation Tüm Hakları Saklıdır.