B4XTable.SetData expects a List where each entry in the list is an array of objects with the data of a single row.
The data can come from any source you like.
Example of loading the data from a SQL database:
Step #1: add the columns.
Step #2: fill the Data list with the data coming from the SQL db.
Step #3: call B4XTable.SetData.
B4A project is attached.
Database source: http://www.sqlitetutorial.net/sqlite-sample-database/
The data can come from any source you like.
Example of loading the data from a SQL database:
B4X:
B4XTable1.AddColumn("Customer Id", B4XTable1.COLUMN_TYPE_NUMBERS)
B4XTable1.AddColumn("Name", B4XTable1.COLUMN_TYPE_TEXT)
B4XTable1.AddColumn("Company", B4XTable1.COLUMN_TYPE_TEXT)
B4XTable1.AddColumn("Address", B4XTable1.COLUMN_TYPE_TEXT)
Dim Data As List
Data.Initialize
Dim rs As ResultSet = sql.ExecQuery("SELECT CustomerId, FirstName, LastName, Company, Address FROM customers")
Do While rs.NextRow
Dim row(4) As Object
row(0) = rs.GetDouble("CustomerId")
row(1) = rs.GetString("FirstName") & " " & rs.GetString("LastName")
row(2) = rs.GetString("Company")
'Some of the values are Null. We need to convert them to empty strings:
If row(2) = Null Then row(2) = ""
row(3) = rs.GetString("Address")
Data.Add(row)
Loop
rs.Close
B4XTable1.SetData(Data)
Step #2: fill the Data list with the data coming from the SQL db.
Step #3: call B4XTable.SetData.
B4A project is attached.
Database source: http://www.sqlitetutorial.net/sqlite-sample-database/