Hi Eder,
Interesting use case. How about this design:
have a parent view model which has a collection of child view models.

The parent will hold the start and end months, eg July to October.

The child will have properties for every month, though we populate those
from the spreadsheet.

To render only the populated columns, use the TableColumnOrderService.

The parent/child collection will be a "parented" (rather than standalone)
collection.  So the service can query the parent to figure out which
properties to show and which to hide.

Another benefit of having a parent view model is that it can hold any
actions, eg read spreadsheet, export, apply etc.

HTH
Dan

On Thu, 13 Apr 2017, 19:15 L Eder, <[email protected]> wrote:

> Yes Kevin i could implement that dialog using the new collection  parameter
> feature, available in Isis release v1.14.0.
> On Apr 13, 2017 1:57 PM, "Kevin Meyer" <[email protected]> wrote:
>
> > Hi Eder,
> >
> > Since you clarified the data layout (I somehow assumed the months would
> be
> > in rows), the "simple" alternative is for the user  to delete the
> unwanted
> > columns in the worksheet before import, then the parser could use the
> > column name.
> >
> > I assume that  you have considered that and discarded it.
> >
> > Another hack would be that your dialog somehow allows the user to specify
> > the desired months (I'm thinking of a wizard model here). But I have not
> > experimented enough with the UI. Do we support multi-select from a
> list...?
> > Would this even help...?
> >
> > Regards,
> > Kevin
> >
> >
> > On 13 April 2017 19:39:43 CEST, L Eder <[email protected]> wrote:
> > >There is such a consideration i forgot to mention: this is a dynamic
> > >process, eg, each time the user does such a import, he sets new
> > >initial and final months.
> > >
> > >Thus, i should have all corresponding properties declared, while
> > >having some sort of control on which columns to render.
> > >Which property attribute(s) should i use for the control?
> > >
> > >Kevin, this excel import task happens many times in a month. Each file
> > >has plenty of rows, thus the user could not mark each target row as
> > >"import this", in risk of become tired and rejecting the application.
> > >
> > >Thanks
> > >
> > >2017-04-13 13:28 GMT-04:00, L Eder <[email protected]>:
> > >> Dan, it would be a range of columns.
> > >>
> > >> I ask in a dialog the initial month and the final month. For example,
> > >> a May  - August range.
> > >>
> > >> I then would like to import the rows only of those columns, ignoring
> > >> thus the remaining months there.
> > >>
> > >> Such a typical excel file worksheet has these columns: Item,
> > >> PartNumber, Jan Feb, ...., Dec
> > >>
> > >> So the rendered collection would be with the colums:
> > >>
> > >>            Item, PartNumber, May, June, July, August
> > >>
> > >> The data for the remining monh columns would come from another source
> > >> - the application database.
> > >>
> > >>
> > >>
> > >> 2017-04-13 7:32 GMT-04:00, Kevin Meyer <[email protected]>:
> > >>> Hi Eder,
> > >>>
> > >>> I understand that you want to import only selected rows.
> > >>>
> > >>> As Dan says, I'd like to know why you don't use your external tools
> > >(e.g.
> > >>> the source spreadsheet) to manage selection.
> > >>> Otherwise, it may be a bit of a hack, but maybe you can create a
> > >special
> > >>> column in your source sheet akin to "import this row", that your
> > >import
> > >>> module (which uses the excel module component) would use as a
> > >filter...
> > >>>
> > >>> Does this help you in any way?
> > >>> Cheers,
> > >>> Kevin
> > >>>
> > >>> On 13 April 2017 09:02:31 CEST, Dan Haywood
> > >>> <[email protected]>
> > >>> wrote:
> > >>>>Hi Eder,
> > >>>>
> > >>>>We recently updated the excel module to 1.14.1, and the new version
> > >has
> > >>>>some improved features which you might want to take a look at.
> > >>>>
> > >>>>With respect to your question, do you mean a range of rows, or a
> > >range
> > >>>>of
> > >>>>columns?
> > >>>>
> > >>>>To only process a subset of the columns, I think you just need to
> > >not
> > >>>>define any corresponding property in the view model handler you are
> > >>>>loading
> > >>>>into.
> > >>>>
> > >>>>But if the question is that you want to process a subset of rows,
> > >then
> > >>>>it's
> > >>>>the responsibility of your handler to just ignore the rows that
> > >aren't
> > >>>>important.  There is no mechanism (currently, at least) to import
> > >rows
> > >>>>1
> > >>>>thru 100 only, say.
> > >>>>
> > >>>>HTH
> > >>>>Dan
> > >>>>
> > >>>>
> > >>>>On Thu, 13 Apr 2017 at 02:41 L Eder <[email protected]> wrote:
> > >>>>
> > >>>>> Hi members:
> > >>>>>
> > >>>>> I have a sheet that includes the months of year as columns.
> > >>>>> I would like to import only a range of those columns, rather all
> > >at
> > >>>>once.
> > >>>>>
> > >>>>> Anyone could point me as to do that using the excel isis module?
> > >>>>>
> > >>>>> Thanks, Eder
> > >>>>>
> > >>>
> > >>> --
> > >>> Sent from my Android device with K-9 Mail. Please excuse my brevity.
> > >>
> >
> > --
> > Sent from my Android device with K-9 Mail. Please excuse my brevity.
>

Reply via email to