All posts by m.ogun
Rapor’da görünsün, excel’e gelmesin!
Interactive report tipinde raporunuz var. Ama kullanıcılarınız raporu download ettiklerinde ekranda gösterdiğiniz tüm kolonların excel’e gelmesini istemiyorsunuz..
Bu en çok da raporda BLOB kolon varsa gerekiyor zira bu kolonu excel’e almanın bir anlamı yok.
Yapmanız gereken şu:

Görünsün ama indirdiğimde gelmesin dediğiniz kolonu soldaki ağaç’ta bulun ve seçin. Sağ frame’de Server-side Condition bölümüne gelin ve sayfayı submit ettiğinizde :REQUEST olarak gönderilen belirli ifadelerin OLMAMA koşulunu yazın.
Ben şunları yazdım:
instr(nvl(:REQUEST,'~'),'HTML') = 0 and instr(nvl(:REQUEST,'~'),'CSV') = 0 and instr(nvl(:REQUEST,'~'),'XLS') = 0 and instr(nvl(:REQUEST,'~'),'XLSX') = 0
Sayfayı save edin ve çalıştırın. Kolon ekrana gelecek ama download ettiğinizde render olmayacaktır.
[APEX] Session Sharing
Siz de benim gibi aynı workspace üzerinde birden fazla application sunuyorsanız muhtemelen kullanıcılarınız uygulamalar arasındaki geçişlerde tekrar login sayfasına yönlendirildiklerinden şikayetçilerdir :)
Bu rahatsız edici kimlik doğrulama adımını bypass etmenin bir kaç yolundan ilki tabii ki SSO (single sign-on)
Hemen uygulayabileceğiniz basitlikte olan bir diğeri ise session sharing..
Bu attribute kabaca kullanıcıya “bir kez kendini tanıttın, artık session expire olana kadar bu workspace üzerindeki diğer uygulamalarda sana tekrar login bilgilerini sormam” demenizi sağlıyor.
Shared Components/Authentication Schemes altından CURRENT olarak işaretli doğrulama yönteminize tıklayın ve SESSION SHARING bölümünü bulun. TYPE menüsünden Workspace Sharing seçerek değişiklikleri kaydedin.
Artık uygulama dışından bu uygulamaya verdiğiniz direct url ‘lerde veya apex_page.get_url ‘le hazırladığınız adreslerde kullanıcı yeniden kendini tanıtmak zorunda kalmayacak.
*tabii &SESSION. bilgisini gönderiyorsanız*
Örnek:
340 numaralı application içindesiniz ve 350 numaralı application’ın 1. sayfasına link vermek istiyorsunuz. Kullanıcınız 340 numaralı uygulamada zaten authenticated ise söz gelimi
javascript:var x=window.open('f?p=350:1:&SESSION.','_blank');
gibi oluşturduğunuz bir linke tıkladığında yeni bir sekmede, 340 numaralı uygulamadan üretilen session ID ile 350 numaralı uygulama açılacak.
Oracle APEX datepicker /*no weekend*/
Haftasonları seçilemesin istiyorsanız şöyle bir java script işinize yarayacaktır.
$('.hasDatepicker').datepicker("option", "beforeShowDay", $.datepicker.noWeekends).next('button').addClass('a-Button a-Button--calendar');
Bunu ilgili sayfanın JAVA SCRIPT:Execute when page loads alanına yazarsanız o sayfadaki tüm datepicker item’larınızda cumartesi ve pazar günlerinin silik çıktığını göreceksiniz.
Yok tümü olmasın, yalnızca belirli bir tarih seçim kutucuğu etkilensin istiyorsanız .hasDatepicker yerine substitution string formatıyla item adını yazın.
Mesela #P1_TARIH_1# gibi.
Detayları için https://askmax.blog/2018/03/01/datepicker-customization/
Windows ile macOS kurulum USB'si hazırlamak
Aslında MacBook da olsa MacMini de olsa işletim sistemini baştan kurmak özel bir çaba ya da bilgi gerektirmiyor. Cihazınızı güç düğmesinden açarken klavyenizdeki belirli tuşlara basılı tutarsanız sizi bu işlemleri yapabileceğiniz bir ön yüz karşılayacaktır.
Sonra menüden seçimler ve bir kaç tıkla cihazınıza en uygun macOS sürümü indirilir ve kurulur. Ama normal şartlar altında.. Çünkü bazen de kurulmaz :)
Sizin bu yazıyı okuma sebebiniz bu ya da başka bir şey olabilir. Bir şekilde MacOS işletim sistemini indirmek, bu imajı USB stick’inize kopyalayıp MAC ‘inize kurmak istiyorsanız ve bu işlemleri Windows yüklü bir bilgisayar ile yapmak zorundaysanız doğru yerdesiniz.
Bunu yapmak için ihtiyacınız olanlar şunlar:
- Yeterli hacimde bir USB Stick
- Kurmak istediğiniz işletim sisteminin imajı (muhtemelen .dmg uzantılı bir dosya olacak)
- Bu imajı USB stick’e yazmak için kullanacağımız bir yazılım. Ben TransMac isimli yazılımı kullandım. Ücretli bir uygulama fakat denemek için bir süre kullanmanıza müsade ediyor.
TransMac Uygulamasının Kullanımı
- Bilgisayarınızda ADMIN yetkilerine sahipseniz uygulamayı indirin ve bilgisayarınıza kurun.
- Kurulum tamamlandıktan sonra uygulamayı yine ADMIN haklarıyla açın.
- USB Stick ‘inizi bilgisayarınıza takın
TansMac uygulamasında, aşağıdaki örnekten de görebileceğiniz gibi cihazınızdaki depolama üniteleri listeleniyor olacaktır.

Bu listeden USB Stick ‘inize sağ tıklayın ve Format Disk For Mac diyin. Sonra aynı USB Stick ‘e tekrar sağ tıklayarak bu kez Restore With Disk Image diyin.
Bu aşamada TransMac uygulaması size daha önce bilgisayarınıza indirdiğiniz MacOS imajının yerini soracaktır. DMG uzantılı dosyanızı gösterin.
Ve Bekleyin. Uzun süren bir işlem. Ama bittiğinde bir bootable MacOS kurulum USB Stick ‘iniz olacak:)
OCI APEX Güncellemesi
Oracle Geçtiğimiz hafta OCI üyelerine bu günlerde buluttaki APEX ‘in 19.1 ‘den 19.2 ‘ye yükseltileceği bilgisini veren bir e-posta atmıştı.
Frankfurt hub’ınde bu güncelleme dün gerçekleşti.

İlk göze çarpan, birden fazla display value atayabildiğimiz Select List LOV ‘ler :-)

Conditional Column Formatting in APEX
I wanted to share a little trick I’ve used in APEX for a while now to conditionally format report columns based on their values. I’m sure there are plenty of alternatives to this trick, including the 4 built-in conditional alternatives for a row when using a named column template.
At a high level, this technique uses the following components:
- A hidden column in the query that returns the formatting attributes for a column. I’m going to return the color or padding-left in my examples later in this post.
- Edit the Report Attributes > Column Attributes > Column Formatting > HTML Expression of a visible column and use the hidden column to change it’s formatting. This is the same section you apply a date or number format.
Example 1 – Color Code Salary
Query
Report Attributes > Column Attributes for “SAL” > Column Formatting > HTML Expression
Example 2 –…
View original post 17 more words
Oracle bulutta bedava!
Zaten apex.oracle.com adresinden üye olup APEX kullanabiliyorduk. Fakat şimdi Oracle, kullanıcılarına Oracle Cloud ‘da ücretsiz, daima ücretsiz bir alan vaadediyor: Oracle Cloud Free Tier.

Sizin bulunduğunuz ülkeye göre sunulanlar küçük farklar gösterebilir ama bana deneme periyodu süresince kullanmam için 250EUR verildi. Bu “çek” tutarını harcayıp bitirince, ya da 30 gün dolunca deneme süresi sona ermiş oluyor. Bu aşamada dilerseniz ücretli devam ediyorsunuz, dilerseniz “daima ücretsiz sınırlı sürüm” ile devam edebiliyorsunuz.
Oracle ‘ın sürekli ücretsiz olacağını söylediği bu alanda neler yapabiliriz? Küçük ve orta ölçekte bence gayet başarılı işler çıkarılabilir. Bunu dilerseniz bir “ısınma turu” olarak alın, dilerseniz bir göz atayım diyin, ya da daha iyisi startup fikrinizi bu yapı üzerinde modelleyin.
Kabaca; bu alanda bir instance oluşturabilir,

sanal makinanıza ücretli bir Windows Server kurabilir ya da ücretsiz LINUX dağıtımları arasından dilediğiniz bir imajı kurabilir,

ORACLE DB oluşturabilir,

veri tabanınıza SQL Developer ile olduğu gibi, web arayüzünden de erişebilir

uygulama geliştirmek için APEX yükleyebilirsiniz.

Bir sanal makine kurduktan, bu kadar pratik şekilde Oracle veri tabanı ve APEX ‘e sahip olduktan sonra yapabilecekleriniz artık neredeyse sınırsız tabii ki.
Gözden kaçırmamanız gereken ayrıntı şu: Oracle Cloud ‘da oluşturacağınız ücretsiz ve her zaman ücretsiz bu hesabı profesyonel amaçlarla kullanabilirsiniz. Oracle ‘ın bu konuda bir kısıtlaması yok, aksine startup ‘ları teşvik ediyor. Ölçeğiniz büyüdükçe standart ücretsiz paketinizi güçlendirmek, söz gelimi sanal makinenizin CPU ya da belleğini artırmak istediğiniz takdirde ücretsiz paketten çıkmanız gerekecek, hepsi bu. Vakit Buldukça;
- üyeliğin başlatılması,
- veri tabanı kurulumu,
- APEX kurulumu,
- örnek bir APEX uygulaması hazırlama,
- sanal makine
- ve sanal makinemize Oracle ya da Ubuntu Linux kurulumu
konularını detaylarıyla anlatmaya çalışacağım.