B4A Library lmB4XTableEx - Preview

UPDATE. Ready: https://www.b4x.com/android/forum/threads/b4x-lmb4xtableext.158817/
---------------------------------------------------------------------------------------------------

I can't resist!

I am pleased (not happy ? ) to preview one of my libraries (B4XLib, therefore with source code) which adds some useful functionality to B4XTable.

1 - Automatic creation of columns based on a database table (SQLite)

2 - Filtering similar to Excel (unlike Excel, you can decide whether the average (Avg) should be calculated on all records or only on those displayed (already filtered based on other fields!!!)

3 - Export to Excel / CVS

4 - Columns width set automatically

5 - I've already forgotten what else it does?

Although it may not seem like it, it required quite a bit of work (in fact it isn't finished yet), so I think it won't be free.


[Unfortunately I cannot publish long-lasting animated gifs, maximum 500KB]

1 - Automatic creation of columns based on a database table - and sizing:




2 - Filtering similar to Excel



Note: Anyone who copies this idea will certainly be killed! ?


--- Although it may not seem like it, it required quite a bit of work.
I think I can ask you for a donation of at least €7.5, considering the time I've invested, and you will also have the source code; what do you think?
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
Obviously the filtering dialogs (and the related code) are part of the library, not of the example project that uses it, the programmer will not have to do anything.

Furthermore, everything will be customizable, the library will provide many views and will have many properties.
 
Last edited:

bigbadfred

Member
Licensed User
Longtime User
Looks very promising, looking forward to the final result.
Would it be possible to mark specified fields as "required", a kind of data validation before saving a record?
Or let the user enter field data via a combobox filled with data from another table?
Nice job!
 

LucaMs

Expert
Licensed User
Longtime User
B4XTable is mainly used to display data, not necessarily database data.

Currently it is possible to edit data in cells using Erel's InlineEditing class, which you can use together with my library (I think it is not B4X but only for B4J, at least for the moment).

The main functionality of this library, which I really needed, is data filtering.

When this library will be ready (I hope in a very short time) I will see if I can add other features, as requested by you and possibly other members.
 
Last edited:

josejad

Expert
Licensed User
Longtime User
I will see if I can add other features, as requested by you and possibly other members
Great Job Luca!!
If I understand it right, when you click in the listview in the first gif, and select "Employees, Invoices, etc.." they are database tables and you read it automatically?
If it's that way, I think it could be fine (but I don't know how) if there were some way of hiding some columns (maybe based in the name column of the table database?)
I mean, sometimes you don't want to show the id's or some other not useful data.
 

LucaMs

Expert
Licensed User
Longtime User
Thank you.

If I understand it right, when you click in the listview in the first gif, and select "Employees, Invoices, etc.." they are database tables and you read it automatically?
Correct.


The library already has a method to hide a column:

 

LucaMs

Expert
Licensed User
Longtime User
This library is taking me longer than expected.

One reason is due to the changes to be made for the B4A version, but while developing the latter, I realized that it is better to add another feature. Instead of passing to the library only the name of the table to be loaded (and the SQL DB object), it is better to immediately give the possibility of also passing an SQL WHERE clause, so that it is possible to immediately load even only part of the records, and also a list of fields to load (or to exclude, perhaps, since these will usually be fewer).

Sorry
 
Last edited:

MrKim

Well-Known Member
Licensed User
Longtime User
Since most of the time we have to write an SQL query anyway why not just take a (simple) query and parse it? SELECT F1 Name, F2, etc FROM MyTable WHERE F5 = '1234'?
Just a suggestion.
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…