Skip to main content


Showing posts from October, 2022

Object referencing in APEX

I I saw over 100 APEX apps written by different people over the years. But I never saw an app which would leverage the object references. I believe these apps are out there hidden and protected as top secrets. Story behind Imagine you get a brief to fix charts on a Dashboard page. You open a page and there are 12 chart regions. All of them have 100+ lines query as a source with a lot of joins and multiple levels of subqueries. Just to read one query will take o lot of time. Then you have 11 more. In the end and after few hours you will realize that the code for this charts is basically the same. And now what? Fix the query on 12 regions one by one and move to another task? I asked 12 APEX senior developers how they would proceed with the queries. 9 would copy paste the query between regions 1 would use APEX_COLLECTION 1 would PL/SQL function returning query 1 would use view (finally) Yes, you can do simple changes directly on APEX components, but in many times this w

Twilight of the Oracle University? #JoelKallmanDay

L Like the fall and recent rise of the Oracle Ace program I wish there would be a rise of Oracle University. Here a few of my concerns. I am sorry if you will feel bad or if you will be offended by this. If you know how can I help to improve this situation, please let me know. Oracle Learning Subscription Imagine you buy the OLS for $4995 and as an unexpected bonus you will get a popup survey every few minutes. You are suppose to go through as much courses as possible in following 12 months to keep your investment worth it, so you will be spending a lot of time watching the courses and you will get and feedback survey at the end of every video and every chapter if not even more often. And the irony is that nobody will read it, nobody will listen to you. Al least it feels this way. And if you manage to get several cloud certifications in that year, all of them will expire in 18 months. I understand cloud changes quickly, but not everything changes and not this quickly. Oracle joi

More readable code via APEX_STRING

W We all have to concatenate strings and varibles and you have to admit that it will get ugly very quickly. Luckily someone created a sprint function we know from other programming languages. It is called APEX_STRING.FORMAT . Lets jump to the example first: What would you rather to read and maintain, before or after version? If you like the before version, you can stop reading. And if you are still here then we can be friends :-) You can pass up to 20 arguments and you have two options how to reference them. You either use "%s" and then the values are replaced in the same order as you passed them. Or you can use numbers like "%0..19" and reuse them however you need. I usually stick with "%s" unless I need to replace same value multiple times. There is a nice side effect of this type of concatenation. It is easy to run. Just copy paste the code, replace "!" with nothing, replace "%" with "&" and you can ac