SQLite - Query Like Appybuilder?

Hi team,

I have a question regarding the SQLite component. Hopefully it makes sense.

With the SQLite component that was in Appybuilder, you could run a query and directly use this query. With Kodular it seems you have to use the “After Query” handler.

For example, I’d like to do something like:
Set [Label.text] to [SQLite Query (Select * from Table)]

This was possible when I was building with Appybuilder. Is this possible in Kodular? Maybe there is a different extension I can use?

Currently I am doing this in Kodular with the [SQLite After Query] handler, but this makes it more complicated for me as then the hander needs to be set up to handle every single query made (i.e. for every single query I am currently tagging the query with a Query Code, checking the code with an [IF] block and then responding with a procedure but this is such a long workaround).

2 Likes

my sqlite extension can do it
https://puravidaapps.com/sqlite.php
Taifun

3 Likes

Will try to implement same into Kodular: SQLite updates · Issue #11 · Kodular/Kodular-Creator-Issue-Tracker · GitHub

4 Likes

Thank you both for the replies. I’ve just bought the Extension and sent you a message.

Hopefully it does get added into Kodular as a feature as it’s really hard to make queries in Kodular at the minute.

@justxelliot Aren’t you able to do this in the “After Query” event block?

@Hossein

Yes technically but it gets more confusing as you have more queries. Let’s say I have more labels that need to query the SQLite to get the text. I would need to filter in the “After Query” block to know which query I was sending because every query in the app triggers the “After Query” block.

With Appybuilder I could just use two blocks for any query:
Set Label.text to - Query
without having to trigger the “After Query” block.

Before buying Taifun’s extension I was doing this with the “After Query” block by setting a global variable to a number before each query and then using “If” blocks to filter and see which number was set before calling a procedure.

I hope this makes sense.

@justxelliot Totally understand your point. We were checking into options of adding a parameter to “After Query” that will indicate who caller was:

  • Query block
  • RawQuery block
  • etc

Using above, you’ll be able to use IF control block to find who caller was and add appropriate processing logic.

However, above doesn’t solve your issue. My concern about a block that returns results in same, is for queries that return large resultset. This will hang the app until results are returned. Having said that, never heard of anyone complaining about that in AppyBuilder, but still we need to look into future. Let us think some more about this

No problem, I’ll be happy to test it out when it’s updated.

For now I’m happy enough using Taifun’s extension. My data tables are quite small (about 100 by 10) so for me it works great.

2 Likes

I confirm the difficulties reported by @justxelliot
. I too with appybuilder managed the result of the query in the command itself and not in the event, which complicates things a lot.
It took me several hours to handle situations that I solved in a short time with the appybuilder component. I am forced to purchase the paid extension.

This is already implemented and is ready for next release

Thanks, but I’m in a hurry to fix it. I purchased the @Taifun extension which is very simple to use and I find the return of sql messaging very useful, especially in case of errors, it specifies the type of error well.
Really well done. Thank you

thank you very much for your feedback!
Taifun