Posts

Showing posts from September, 2018

Setting up SQL*Plus with the help of an Oracle Docker container

Image
Working with Oracle Database's I like to install the Oracle instant client - probably the biggest reason for me is that it gives me access to SQL*Plus. Personally, I think the installation is very straight forward, but the number one complaint I hear is its too difficult to set up. So, how can you get access to SQL*Plus without this "difficult" installation process? Say hello to the Oracle instant client docker container. If you head over to https://container-registry.oracle.com , navigate to the database section, you will notice 3 repositories: So, you will see the second one in the list is named "instantclient" - exactly what we need! side note: this container is a little out of date, being last updated over a year ago, but I'd say the latest version isn't crucial for most needs. So, if you click into instantclient, you will need to sign in first so that you can accept the license agreement. You will also need to sign into the registry

Clearing error state of an Interactive Grid column

Image
On a recent project, there was a requirement that when they save data they don't want any validations to come into play, and it's only when they go to submit the transaction that validation errors should appear. So I had a set up where the Save button (AJAX) was removed from interactive grid toolbar, and the form page form has two buttons: "SAVE" and "SUBMIT". Following this design pattern, if I click SUBMIT with a validation failure in the data, the relevant row would be highlighted in the interactive grid: Now as a user I decide I don't want to submit the page anymore, but rather just do a save. However, clicking save I won't be able to get the page submitted without changing the value of that field (or as an alternate situation, the validation may be dependent on some other page item, which I could have corrected but still the error state of the grid/line will be present). APEX will not submit the page and I would get an error that I