Skip to main content

Kscope18 flashback

After a few nights of good sleep (that means more than the average 4 to 5 hours at Kscope), it is time to sit back and evaluate what happened last week. I arrived on Thursday night before the event, just in time to catch Danny Bryant at the bar for "just one last beer" (I don't know how often I heard, and used, that phrase last week).
The whole Friday was filled with an all day Board Meeting, mainly discussing the future of ODTUG, a reception and a fine dinner. Since a couple of years, Saturday is the Community Service Day. This year, an impressive number of people showed up and were transferred to "Up Orlando", to make its easier for them to help the people that really need some help. All kinds of different activities were done, like cleaning, filling shelves, painting chairs etc.
 After that there is another tradition: bag stuffing. All those (about 1500) bags didn't get delivered with all those goodies in there! A number of volunteers created the most efficient human machinery to fill those bags. An hour or so at the poolside to wind down, before registration opened and the people started to drop in in huge numbers. The evening was concluded with an unscheduled "Spirit Tasting" event - very risky at the start of the conference!

The Sunday started off after breakfast with a joint Database/APEX symposium session by Mike Hitchwa on the Oracle RAD stack: REST. APEX. Database. You don't need more than that to create stunning, reliable applications in the most efficient way! Most other sessions that day I had to skip due to "Board Duties" like the rehearsal of Monday's General Session, but I returned just in time to hear Joel's "State of the Union". A great APEX future is ahead of us! An APEX MOOC, a new Certification (with NO WEBSHEETS QUESTIONS!) and APEX Office Hours. And of course rewarding Juergen Schuster for all his work for the APEX Community! Next was the Welcome Reception, dressed up as your favourite character. I was glad more people than the Board and the Conference Committee came dressed up! I got quite some attention and remarks wearing my Ironman costume (it took a few drinks to feel at least somewhat comfortable wearing it) ... even in the days after!
Apparently some things can't be unseen ;-)

Monday started off with the General session - with the clips we made in January as an attempt to make it somewhat funny. If we succeeded or not ... I leave that up to you. The videos will appear on YouTube soonish I heard.
In between the meetings, interviews etc I managed to catch at least two full sessions, one of it was  "APEX as a Progressive Web App (PWA)" by Vincent Morneau. Really interesting stuff, maybe not for the next couple of weeks or months, but keep an eye on it for the future!
After Happy Hour it was "Community Nights". Database/BI Trivia, EPM Lip Sync Battle and APEX Show & Tell. I went from one to the other and back to catch as much of the community vibe I could. After this there was another huge Happy Hour sponsored by some if the vendors in the hotel lobby bar (again "ok, just one more...").

Tuesday started early with the 5K "Fun Run" in the sauna named Florida. The temperature is not the
problem here, but the 98% humidity makes running longer than 10 minutes really hard. But nevertheless about a 100 people showed up early o' clock to torture themselves (and feel good afterwards).
After two interesting sessions, the ACE Briefing and one session by myself, it was time for the ACE Dinner. This turns more and more into a reunion. People you haven't even spotted during the first few days turn up here. And a lot of new ACE's were announced, amongst who quite a number of APEX developers! A recognition for the community!

Wednesday I managed to catch two more sessions (about Additional Templating Engines and Docker)  before I had to head up for the Leadership Graduation. For the people that are unaware of this: every year ODTUG invites a group of people into the Leadership Program. They work their way through a curriculum ending with a presentation of their end result to the Board. This year's group did very well with a very useful and elaborate project.
And after that it was time to get dressed up for the Wednesday event party at Andretti's. I guess the karts were everyones favourite, although I also spotted lines for the Zombie shooting and some other attractions. About half of the group went to the after party in Mangos, the other half created their own (just little more quiet) afterparty in the lobby bar - and that's were I was for just one more drink ;-)

Thursday, already the last day of the conference. A lot of people had quite a hard time to get up and attend the sessions, luckily we started rather late with the "#LetsWreckThisTogether APEX Talks". And as usual they were great. All grouped around one subject: JavaScript. And as I am most certainly not an expert in this matter, I picked up some interesting facts and ideas here and there!
And after the Closing Session it was time to end this year's show. I could finally spend another two hours at the pool before heading to the airport for the (long) trip home.

Although Kscope is a totally different experience when you are on the Board (not necessarily worse, just different), I had a blast - just like all the previous years.

I hope to see you all back in Seattle at Kscope19!


Popular posts from this blog

apex_application.g_f0x array processing in Oracle 12

If you created your own "updatable reports" or your custom version of tabular forms in Oracle Application Express, you'll end up with a query that looks similar to this one:
then you disable the "Escape special characters" property and the result is an updatable multirecord form.
That was easy, right? But now we need to process the changes in the Ename column when the form is submitted, but only if the checkbox is checked. All the columns are submitted as separated arrays, named apex_application.g_f0x - where the "x" is the value of the "p_idx" parameter you specified in the apex_item calls. So we have apex_application.g_f01, g_f02 and g_f03. But then you discover APEX has the oddity that the "checkbox" array only contains values for the checked rows. Thus if you just check "Jones", the length of g_f02 is 1 and it contains only the empno of Jones - while the other two arrays will contain all (14) rows. So for processing y…

Adding items to your Interactive Grid Toolbar

The APEX Interactive Grid uses the Toolbar widget to create the default Toolbar showing the Search box, Actions menu, Save button etc. And since quite a while there is a nice Plugin "Extend IG Toolbar" by Marko Goricki that makes it very easy to add additional buttons to the Toolbar.

But what if you need more than a button? 
Inspecting the contents of widget.toolbar.js, you can easily spot there can be added more to the Toolbar than just a button: The type of control, available values:
The first example will show a way to easily switch from one filter to another. Of course we could use the standard functionality and create two different Report views, but using a Radio Group on the Toolbar gives a more "Tab" like user experience.

So how can we create a Radio Group that looks like a switch in the Toolbar?
In the Javascript Code …

Refresh selected row(s) in an Interactive Grid

In my previous post I blogged about pushing changed rows from the dabatase into an Interactive Grid. The use case I'll cover right here is probably more common - and therefore more useful!

Until we had the IG, we showed the data in a report (Interactive or Classic). Changes to the data where made by popping up a form page, making changes, saving and refreshing the report upon closing the dialog. Or by clicking an icon / button / link in your report that makes some changes to the data (like changing a status) and ... refresh the report.  That all works fine, but the downsides are: The whole dataset is returned from the server to the client - again and again. And if your pagination size is large, that does lead to more and more network traffic, more interpretation by the browser and more waiting time for the end user.The "current record" might be out of focus after the refresh, especially by larger pagination sizes, as the first rows will be shown. Or (even worse) while you…