isis-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephen Cameron <steve.cameron...@gmail.com>
Subject Re: add-on ideas
Date Sun, 30 Aug 2015 20:40:52 GMT
see inline comments

On Mon, Aug 24, 2015 at 8:01 AM, Stephen Cameron <steve.cameron.62@gmail.com
> wrote:

>
> Thanks for these good suggestions, looks like its all covered, if I can
> accept Word as part of the solution. Out of interest I will take a look at
> Apache Open Office Writer.
>
> On Sun, Aug 23, 2015 at 11:58 PM, Dan Haywood <
> dan@haywood-associates.co.uk> wrote:
>
>> Hi Steve,
>>
>> thanks for these thoughts, comments within...
>>
>> On 19 August 2015 at 23:05, Stephen Cameron <steve.cameron.62@gmail.com>
>> wrote:
>>
>> > Hello Isis users,
>> >
>> > Just want to mention some ideas that have come up via discussions with
>> > client.
>> >
>> > Sticky Notes / Reminders
>> >
>> > The small application I am building is essentially a Client Relationshp
>> > Management (CRM) system. A big part of it is to schedule interactions
>> > (mainly just phone calls) to clients into the future and to allocate
>> those
>> > to specific volunteers. I'm now interested to make use of the existing
>> > to-do demo app as part of my project. I've had the idea of making this
>> > generic so it can be used anywhere to add sticky notes that refer to
>> one or
>> > more domain objects, Its an extension of the bookmark idea essentially.
>> >
>> >
>> We have something similar to this in Estatio, namely the concept of an
>> "Event".  The idea is that object can be an "event source", and thus
>> multiple events - essentially entries in a diary - can be associated with
>> that domain object.
>>
>> Rather than using Isis' bookmarks though ... which don't allow referential
>> integrity to be enforced at the DB layer ... we have implemented this
>> using
>> the "poly" addon [2].  This is a pattern that was originally developed on
>> the big (.NET) naked objects system in Ireland, and so I ported over to
>> Java and Isis.
>>
>> Anyway, rather than reusing the ToDoItem, I suggest you grab the event
>> package from Estatio and use that instead.
>>
>>
>> This does seem to be the way to go, thanks

>
>>
>>
>> > Forms Design.
>> >
>> > My client is interested to still have some paper forms, and when this
>> > subject comes up I always think one aspect of DDD is ultimately to let
>> > domain experts change their own models.
>> >
>> > Maybe this is why MS Access and Excel are so dominant? Also, why people,
>> > when a system doesn't provide all their needs, find work-arounds that
>> > usually involve private spreadsheets as secondary data stores. I have
>> seen
>> > a few of those in the past week.
>> >
>> > So, a legitimate question that arises is "Will we be able to change it
>> or
>> > do we need to pay an expert?". Being such an expert who wants to be paid
>> > its easy to say, "sorry you cannot change it, but with Apache Isis its
>> not
>> > that costly to add changes, in fact its desirable to do so (so you don't
>> > end up using spreadsheets)".
>> >
>> > Getting to the point, a specific challenge is these paper forms, should
>> the
>> > client maintain a Word Document version and a web-based data entry
>> version?
>> > Its the same data-model, but the Word Document can be changed by the
>> client
>> > and the web-based forms not. Given that web-forms can have a print
>> > stylesheet associated with them, this seems a sad situation to me.
>> >
>> > This is an old chestnut for me, and now again it comes up. I'd like to
>> try
>> > solving it in Apache Isis. With its meta-model and via use of an EAV
>> > database design, or a graph database maybe, this seems possible.
>> >
>> >
>> We do have an addon for this, namely the "docx" add-on [3].  This allows
>> the template to be authored by the end users in Word (with the Developer
>> tab enabled), and then programmatically mail-merge in the document.  Some
>> coding is required (though there can be a standard set of fields always
>> merged in, eg an address or the current user, date, or freeform notes.
>>
>> Again, I ported this over from the .NET app, where the design has stood up
>> well.
>>
>>
>> This is not so satisfactory, its a one-way solution to get data into a
Word document, but I am actually mainly desiring to go the other way. To
use the form capabilities of Word, or at least my client seems to want
that.

Electronic forms are a big deal these days, and its possible to think of
them as another 'viewer' in the Naked Objects style. So users enter data
and submit the form electronically. It should be possible to design an OO
model in Isis and use that as the intial template for the electronic form,
which an Isis user can 'beautify' to their hearts content.

Apache Open Office seems to have possibilities (and Word is probably
similar, but I don't own a copy). You can design a form document, generate
a PDF version of that and it can submit entered data for processing. The OO
Writer form can interact with an JDBC data-source as well. All this seems
to be within the capabilities of general users to tweek.

In terms of generating a form, there is the metamodel interface that I can
make use of, also I read that Isis can generate an XML snapshot with an
associated XSD, the XSD can be used in a XForms generation tool I part
developed a few years ago.

Aside from OO Writer and PDF, there is the way it really should be done in
my opinion, which is via HTML and web-services. With HTML 5 being able to
store data, off-line web-forms are possible. When time allows I will pick
this up, using the Restful Objects interface.


>
>> > One other solution I have seen is just to add some 'generic' properties
>> > into the data model entities, that the user can make use of to add
>> things
>> > as they think of them. Periodically these can be properly renamed (by an
>> > expert), but it does allow the user to add simple things on the fly.
>> >
>> >
>> Exactly... this is what we do.
>>
>> Cheers
>> Dan
>>
>>
>>
>> > Regards
>> > Steve Cameron
>> >
>>
>>
>> [1]
>>
>> https://github.com/estatio/estatio/tree/master/estatioapp/dom/src/main/java/org/estatio/dom/event
>> [2] https://github.com/isisaddons/isis-module-poly
>> [3] https://github.com/isisaddons/isis-module-docx
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message