Discussion on going

PageGetUsedIdentifiers for WebUI (for a batch change function)

  • 26 February 2020
  • 7 replies
  • 104 views

Userlevel 3

In short, we would like to get the function that is also available for the WinUI. This will allow us to create more general procedures to work with tables in the WebUI

 

We have an application where we use a lot of tables on different pages, like the one below. To make it easier to edit the data, we are using both an excel up and download as well as a batch change procedure. The batch change procedure we have right now works like this: take the value that is in the first month or year and copy it to the rest of the months/years. But as we have a lot of tables, it would be more convenient to be able to extract the parameters that are used on a certain page or even better, in a certain table, especially in combination with the currentpage parameter that is coming.

 

 


7 replies

Userlevel 5

Hi, @Guus Kattenbelt . Indeed a good feature.

We are using excel (up-/download) as well. We’ve buit a generic “lib” (basically runtime procedures) that uses AimmsAXLL functions, so it’s pretty easy to expand it for new tables/parameters or even a new project.

However, if the project has a lot of identifiers/combination of indexes, and if we separate the input through different workflow pages (that’s our intention), the user would need to down-/upload excel files a lot of times.

Build generic mass edit procedures using PageGetUsedIdentifiers would reduce that. Great!

Another idea: Aimms could provide some native sets (like AllIdentifiers). For instance, AllWebUITables. Also a native mapping in a binary parameter (TableIndex,IndexIdentifer). Could it be connected to webUI json? With this information we could easily develop runtime procedures to mass edit the identifiers.

Userlevel 3

Hi, @Guus Kattenbelt . Indeed a good feature.

We are using excel (up-/download) as well. We’ve buit a generic “lib” (basically runtime procedures) that uses AimmsAXLL functions, so it’s pretty easy to expand it for new tables/parameters or even a new project.

However, if the project has a lot of identifiers/combination of indexes, and if we separate the input through different workflow pages (that’s our intention), the user would need to down-/upload excel files a lot of times.

Build generic mass edit procedures using PageGetUsedIdentifiers would reduce that. Great!

Another idea: Aimms could provide some native sets (like AllIdentifiers). For instance, AllWebUITables. Also a native mapping in a binary parameter (TableIndex,IndexIdentifer). Could it be connected to webUI json? With this information we could easily develop runtime procedures to mass edit the identifiers.

That would indeed also be a great idea!

Userlevel 6

Thanks for sharing your ideas! Not on the roadmap at this time, but certainly interesting to learn from.

 

Question: Suppose you have block editing, or copy/paste features available in the table, would you still need this? 

 

Regarding the workflow  

mateusarakawa wrote:

...we separate the input through different workflow pages (that’s our intention), the user would need to down-/upload excel files a lot of times.

I can also imagine there is a place where you upload data for multiple steps at the start (1 file with TABS) and ‘only’ go through the motion of making (small) changes in the steps itself (so less need for upload/download); that will be less intrusive and provide (likely) a better user experience. This is something we do in SC Navigator where we defined a data template that captures all needed data. How do you see that?

Userlevel 3

What do you exactly mean by block editing? Select a whole bunch of cells and then just have to input the desired number once? Or that you double click the bottom of a cell and the rest of the column gets the same value? (just like in excel). 

It will definitely reduce the usecase of the batch change. And if it does all of the above, I think we could indeed do without the batchchange. 

The excels for us is also an easy way for the user to switch between scenarios, when you have two different excels for the input needed in that table.

Userlevel 6

@Guus Kattenbelt , sorry, block edit is indeed selecting a cell range and changing all to valueX. 
 

Regarding your batch change, I have also seen people use a cell change populate automatically to full column (or row) via UponChange. Not ideal as it’s kind of an unclear user experience, but possible. With Right Click Action on a cell coming soon, I can imagine you generate a menu for a selected cell with actions to e.g. copy row forward, copy column down, or more advanced, copy with increase 5%, etc. These are of course much harder to generalize via ‘standard’ table features.
 

PS: good to know is that we will use the Identifier names as a reference for Right Click Action. This way you can define 1 Right Click Action identifier per table widget and we’ll resolve based on an identifier index used the action menu to show… hope this makes sense.

Userlevel 5

Thanks for sharing your ideas! Not on the roadmap at this time, but certainly interesting to learn from.

 

Question: Suppose you have block editing, or copy/paste features available in the table, would you still need this? 

 

From our side, I think it solves most of the problem. I don’t think we would still need the batch change.

 

Regarding the workflow  

mateusarakawa wrote:

...we separate the input through different workflow pages (that’s our intention), the user would need to down-/upload excel files a lot of times.

I can also imagine there is a place where you upload data for multiple steps at the start (1 file with TABS) and ‘only’ go through the motion of making (small) changes in the steps itself (so less need for upload/download); that will be less intrusive and provide (likely) a better user experience. This is something we do in SC Navigator where we defined a data template that captures all needed data. How do you see that?

Great addition. I’ll try it out, but it probably solves our problem. Thanks!

Userlevel 3

@Guus Kattenbelt , sorry, block edit is indeed selecting a cell range and changing all to valueX. 
 

Regarding your batch change, I have also seen people use a cell change populate automatically to full column (or row) via UponChange. Not ideal as it’s kind of an unclear user experience, but possible. With Right Click Action on a cell coming soon, I can imagine you generate a menu for a selected cell with actions to e.g. copy row forward, copy column down, or more advanced, copy with increase 5%, etc. These are of course much harder to generalize via ‘standard’ table features.
 

PS: good to know is that we will use the Identifier names as a reference for Right Click Action. This way you can define 1 Right Click Action identifier per table widget and we’ll resolve based on an identifier index used the action menu to show… hope this makes sense.

Thanks for thinking along Gertjan! The UponChange would not really work for as, as we want the paramter to be flexible (should be possible to copy to other months/years, but also to fill them in on individual level. 

So block edit would be good for us. For any other solution the scalability would be most important. Because of the big amount of tables and parameters, I would like a solution where I don’t need to setup a specific parameter or procedure for every individual parameter/table. This will take quite some time to setup and to maintain. If it would be anything with a runtime lib or procedure where i can say something like, if a month index is present in a table/parameter, I want to be able to copy it to the rest of the months.

Reply


Didn't find what you were looking for? Try searching on our documentation pages:

AIMMS Developer & PRO | AIMMS How-To | AIMMS SC Navigator