Structured Table
Similar to the table widget, the structured table can hold structured data. But there are a few fundamental differences:
- The rows and columns are predefined and named.
- The data type per column can be defined. Possible data types are text, number and boolean.
- The data of a structured table can be accessed via getters and setters and is stored in a structured way in the database.
An example of a structured table in the object editor is shown below:

The definition in the class definition of the table above would look like:

Via code, the data of this field can be accessed as shown in the following code snippets:
$structuedData = $object->getExample(); //Delivers an Object_Data_StructuredTable object with an associated array for the rows and columns p_r($structuedData); //Delivers an associated array of row CommunityEdition with all columns p_r($structuedData->getCommunityedition()); //Delivers an associated array of row CommunityEdition with all columns p_r($structuedData->getCommunityedition__support()); //Delivers an associated array of row CommunityEdition with all columns p_r($structuedData->setCommunityedition__support("Forum")); //Alternave way of setting data to a structured table $data = array(); $data['communityedition']['opensource'] = true; $structuedData->setData($data);
Based on the definition of above, following database columns are generated (FIELDNAME__ROWNAME#COLUMNNAME):
example__CommunityEdition#OpenSource example__CommunityEdition#Price example__CommunityEdition#Support example__EnterpriceEdition#OpenSource example__EnterpriceEdition#Price example__EnterpriceEdition#Support example__StandardEdition#OpenSource example__StandardEdition#Price example__StandardEdition#Support
Within these columns the data is stored. Because of that, queries can be executed on each cell of the structured table.