Thoughts about the configuration api and Improvement Requests
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
I do not understand why something as simple as being able to change the value of a cell in the configuration table is not yet available. My main use case involves using a script to generate rows in the configuration table.
Please add the ability to create rows and change a cell expression ASAP, at least for the top table.
I did go ahead and use the API in a script just to try it out.
Accessing a row in the configuration table is easy using "configuration_table.rows.itemByName()".
However, the API for accessing cells is very awkward as it does not provide access by column name.
1. There is no way to use the column title to access a cell.
2. there is no way to use the column title to access the column ID
3 terminology is not consistent - rows have names, but columns have titles.
That leads to a very awkward requirement to iterate through the columns and record titles and Ids to be able to use the column id for cell access.
Example:
id_map = {} # map column names/titles to column IDs
for column in configuration.columns:
id_map[column.title] = column.id
cell = row.getCellByColumnId(id_map[column_name]) # now I can access the cell in a given row by name
Please add row.cellByName(column_name) ASAP.
BTW, I do understand why IDs are used in software instead of names internally, allowing references to be valid even when names change. I have been writing software for a long time using GUIDs as internal identifiers. However, a user trying to write a simple script should not have to use internal IDs to access information.
Another improvement to the Configuration Table would be to replace
returnValue = configurationTable_var.getCell(column, row)
with
returnValue = configurationTable_var.getCell(row_name, column_name)
I do not see a use case for access by row or column numbers. In contrast, quickly accessing a single cell knowing the row name and column name is highly likely.