OutSystems Advanced Queries

Use of comments (author: Marcel Lambrechts)

inSystems comments in code

I was creating an advanced query (see post OutSystems – Getting Database Information) for the DBCleaner application to display table space usage. When I executed the query in OutSystems Service Studio using the “Test” button, it gave a (the expected) result, so publish the application and go! Publishing the application went fine, but when I went to the page with the result of my query, it showed me an “Internal Error”.

Looking in ServiceCenter at the error, it told me that the error was ORA-00907: missing right parenthesis. Very strange to get an error on the syntax of the query, while testing the query in Service Studio worked like a charm.

Invalid commenting

After some puzzling it turned out that this error was due to some lines in the query I removed by commenting them using “–“. When I removed them the error disappeared. I started testing this with some other queries (a lot simpler) and whenever I use the “–” to comment something, Service Studio will gladly accept and run the query, but the platform will return with an internal error.

It turns out that the only acceptable way to add a comment in a query, for the OutSystems platform at least, is to use /* …. */.

So for example, the next query (using the — comment syntax) will result in an internal error:

SELECT
name,
— espace_id,
physical_table_name,
is_active
FROM ossys_entity;

And this query (using the /* */ comment syntax) will run fine:

SELECT
name,
/* espace_id, */
physical_table_name,
is_active
FROM ossys_entity;

Cause of the problem

The problem is caused by the fact that the OutSystems platform removes all Carriage Returns from the advanced querty, so the query with the “–” comment that I have listed above, will be translated by the runtime OutSystems platform to:

SELECT name, — espace_id, physical_table_name, is active FROM ossys_entity;

This way Oracle (and other database systems) will see everything after “–” as comment, thus including all other columns and the FROM clause.

Share this

Contact

Heb je vragen of opmerkingen? Aarzel niet om contact op te nemen. Dat kan via de algemene contactgegevens, rechtstreeks met de genoemde contactpersoon op een van de detailpagina’s, of via onderstaande knop.

30 januari 2025

Oracle APEX & Generative AI

inSystems is door Oracle uitgenodigd voor een update over Oracle & AI, en over het toepassen van Generative AI binnen Oracle APEX in het bijzonder. De presentatie werd verzorgd door Charles Rodriquez St’Omer en Christian Rokitta.

10 februari 2025

inSystems sponsor APEX World 2025

Ook dit jaar vindt APEX World weer plaats in Nederland. En niet zomaar een APEX World, het is namelijk een jubileum-editie. Voor de 15e keer organiseert de nlOUG dit event, en inSystems is daar uiteraard bij aanwezig.

Opdrachten uitgevoerd voor

Fokker
WVDB Adviseurs Accountants
RIGD LOXIA
VION Food Group
JUVA
Rabobank
MN Services
Ziggo
DICTU
Darling
Alphabet
inSystems KLM
GVB
Rendo
Telegraaf Media Groep
Nederlandse Spoorwegen
Gemeente Apeldoorn
Ahold
Thales
TenneT
CBR
BMW
Allianz
TU Eindhoven
IBM
UBR Uitvoeringsorganisatie Bedrijfsvoering Rijk
Greenchoice
RAVU
Gemeente Gouda
Van Iperen Groeispecialisten
Arval BNP Paribas
Multi Tank Card
VAA ICT Consultancy
Universiteit Tilburg
Provincie Utrecht
Cannock
Rechtspraak
Stedin
PC Uitvaart
CB Logistics
Syntrus Achmea Real Estate & Finance
SVB
Oracle University
Politie
Altran
Eneco
Gemeente Den Haag
Ministerie van Economische Zaken, Landbouw & Innovatie
ING Bank
Bank Mendes Gans
VTTI
Leaseplan
ASR Nederland