Re: Design Ideas?

2016-06-23 Thread Dennis Bliefernicht
Hi,

> On 22.06.2016, at 11:33, Calven Eggert  wrote:
> 
> It would be great if the application could be designed so that new 
> paths/activities can be created by the user in an administration section, as 
> opposed to having the developer create new versions of the application each 
> time a new path/activity needs to be created.  Right now, I'm prepared to 
> soldier through and simply design it so that there is 1 table for each 
> activity.  I've looked at creating a generic table that has many string 
> fields and then storing the field type, etc, however, this seems like way too 
> much work (validation, etc.).  Also thought about one activity table but 75 
> fields sounds unmanageable plus the fact that there will be more activities 
> added in the next year.

This depends a lot on the underlying database of course and what your actual 
specs are. In these cases we successfully managed to use JSONB fields in 
Postgresql (in theory any string field would work). On the pro side this is 
very extensible, on the con side you need to do the validation on application 
side if required and you loose the ability to query the specialized fields. 
Especially latter can be the make-or-break argument for this; if you only fetch 
all activities for a patient for example and then want to list them or create 
and delete activities, not being able to query on the fields is a non-issue. On 
the other hand, if you need to build reports for example over all activities of 
a type or filter them by subfields, this design can quickly become a problem 
(on Postgresql / JSONB it is still queriable but that comes down to raw SQL. In 
our case where useful we do use the Boon library and adapted the EOF templates 
to automatically generate a simple wrapper between the EOF-supplied string 
representation and the more convenient Map/List.

Greetings
Dennis


--





-
Dennis Bliefernicht • Backend Development
T +49 40 357 3001 62
dennis.blieferni...@xyrality.com

XYRALITY GmbH • Friedensallee 290 • 22763 Hamburg
www.xyrality.com 
Registergericht: Hamburg HRB 115332
Geschäftsführer: Sven Ossenbrüggen
-

 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Design Ideas?

2016-06-23 Thread Samuel Pelletier
Hi Calven,

In single table inheritance, you can share table column for multiple sub 
entity, for example, you may have a total on only 30 different columns required 
to map your 75 attributes if you go strictly and only share column for 
attributes with the same name. To save columns, you may create some columns 
with generic names for each required types and map the table column to more 
specific attribute names.

Single table inheritance is the easiest one to use and always works as 
expected. The only downside is the default SQL does not create the non null 
constrains on the database, you may add them be creating custom SQL check.

If you want more flexible data storage and be able to add new activities 
without new java classes, you can also create so sort of meta activity to 
describe an activity attributes and rules and store the attributes values in a 
child table like this one:

ActivityAttributeValue
id
activityID
attributeID
numericValue
stringValue
dateValue
...

The attribute define the type of the value to store and use.

Regards,

Samuel


> Le 22 juin 2016 à 11:33, Calven Eggert  a écrit :
> 
> Hi all,
> 
> My question is not simply a WO question, however, perhaps the WO experts have 
> a best practice way of doing this in WOnder.
> 
> I've been asked to design an application that tracks a process that a patient 
> goes through, with the following:
> 
> 1. Each patient will follow one of many different paths. 
> 2. Each path consists of a number of activities and the order of the 
> activities along that path.
> 3. At the moment there are 3 different paths and 15 different kinds of 
> activities.  Each activity has different fields to store in the database. 
> (Approx. 5 fields per activity X 15 activities = 75 fields)
> 
> It would be great if the application could be designed so that new 
> paths/activities can be created by the user in an administration section, as 
> opposed to having the developer create new versions of the application each 
> time a new path/activity needs to be created.  Right now, I'm prepared to 
> soldier through and simply design it so that there is 1 table for each 
> activity.  I've looked at creating a generic table that has many string 
> fields and then storing the field type, etc, however, this seems like way too 
> much work (validation, etc.).  Also thought about one activity table but 75 
> fields sounds unmanageable plus the fact that there will be more activities 
> added in the next year.
> 
> Anyone else out there have a different solution or idea?
> 
> Calven
> 
> 
> ___
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/webobjects-dev/samuel%40samkar.com
> 
> This email sent to sam...@samkar.com

 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Design Ideas

2016-06-23 Thread Chuck Hill
I find it interesting how many of us use WO in a health care related setting.  
We did a show of hands at WOWODC a few years ago and it was about 1/3.

Chuck

On 2016-06-23, 6:05 AM, 
"webobjects-dev-bounces+chill=gevityinc@lists.apple.com on behalf of 
Stavros Panidis"  wrote:

Hi Calven,

Definitely I am not an expert! I am a amateur (translation to Greek language is 
erasi texnis which means the lover of art).

I faced the same question some years before, for the same exactly target. I 
found a solution and it works for around 3 years now at the department of 
Nephrology, Papageorgiou General Hospital, Thessaloniki, Greece.

It is something  like FileMaker where the user can create his own tables, 
adding desired variables to each table, even after a table has been created and 
filled with data

As a general design outline I use EO to make my own schema backbone and then I 
use raw sql to communicate with database.

Hope I helped  little.

Best regards

Stavros
> 
> Message: 4
> Date: Wed, 22 Jun 2016 11:33:30 -0400
> From: Calven Eggert 
> To: WebObjects-Dev 
> Subject: Design Ideas?
> Message-ID: 
> Content-Type: text/plain; charset="utf-8"
> 
> Hi all,
> 
> My question is not simply a WO question, however, perhaps the WO experts have 
> a best practice way of doing this in WOnder.
> 
> I've been asked to design an application that tracks a process that a patient 
> goes through, with the following:
> 
> 1. Each patient will follow one of many different paths. 
> 2. Each path consists of a number of activities and the order of the 
> activities along that path.
> 3. At the moment there are 3 different paths and 15 different kinds of 
> activities.  Each activity has different fields to store in the database. 
> (Approx. 5 fields per activity X 15 activities = 75 fields)
> 
> It would be great if the application could be designed so that new 
> paths/activities can be created by the user in an administration section, as 
> opposed to having the developer create new versions of the application each 
> time a new path/activity needs to be created.  Right now, I'm prepared to 
> soldier through and simply design it so that there is 1 table for each 
> activity.  I've looked at creating a generic table that has many string 
> fields and then storing the field type, etc, however, this seems like way too 
> much work (validation, etc.).  Also thought about one activity table but 75 
> fields sounds unmanageable plus the fact that there will be more activities 
> added in the next year.
> 
> Anyone else out there have a different solution or idea?
> 
> Calven
> 
> 
> -- next part --
> An HTML attachment was scrubbed...
> URL: 
> <http://lists.apple.com/archives/webobjects-dev/attachments/20160622/d1c792a3/attachment.html>
> 
> --
> 
> ___
> Webobjects-dev mailing list
> Webobjects-dev@lists.apple.com
> https://lists.apple.com/mailman/listinfo/webobjects-dev
> 
> End of Webobjects-dev Digest, Vol 13, Issue 264
> ***


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/chill%40gevityinc.com

This email sent to ch...@gevityinc.com


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Design Ideas?

2016-06-23 Thread Jérémy DE ROYER
We have bad performances on load because we have to perform a fetch each time 
we need a (personalized) value (whatever the kind of).

We did a buffer layer using NSMutableDictionary when we had to manage more than 
a thousand records.

We needed and have an easy solution to re-use and personalize records but it’s 
not the most efficient solution.

Hope it helps,

Jérémy

Le 23 juin 2016 à 14:50, Calven Eggert mailto:cal...@mac.com>> 
a écrit :

Hmmm, interesting. what if there was a single table of strings and the values 
are converted to dates, Int, etc after retrieving the records? Would this be 
very slow? (For now I'm only dealing with hundreds of records but potentially 
thousands in the near future)


Calven


On Jun 23, 2016, at 2:49 AM, Jérémy DE ROYER 
mailto:jeremy.dero...@ingencys.net>> wrote:

Hello,

We’ve made it creating a String Table, an Integer Table, a BigDecimal Table...

Each table is linked to the object using its EntityName and id (unique in our 
app).

We also designed a pool with NSMutableDictionnaries to speed up the re-read and 
update.

It’s reliable and, except the first load, it’s  pretty efficient.

It’s now easy to extend all our records and to design processes.

But we don’t use load balancing.

Jérémy

Le 22 juin 2016 à 22:28, Chuck Hill 
mailto:ch...@gevityinc.com>> a écrit :

Hi Calven,

Our GVC.SiteMaker application had some features that you might find useful.  
https://sourceforge.net/projects/gvcsitemaker/

It has a feature “Virtual Tables” that let’s user create relational tables and 
user defined UIs.  It is fully KVC compatible and reasonably fast.  It does 
come with a robust set of limitations :-) like no indexes o unique constraints. 
 Virtual Tables is an independent WO framework, but the UI part is embedded in 
the GVC.Sitemaker code.  I am not sure how much effort it would be to rip out, 
er, repurpose.  All of the default values, non-null validations, etc are in the 
UI as only a few actual tables are used to implement VirtualTables.

The University of Michigan used it campus wide until last year.  They managed 
to do some pretty extensive things with it, things that I never imagined would 
be done.

The only other way to do what you want fully open ended is to make on-the-fly 
changes to the database schema or use a No SQL data store and then you still 
have to deal with generating the UI.  If you can constrain the path and 
activities to a known set of options, then it is much easier to make something 
user extensible.

Chuck


From: 
mailto:webobjects-dev-bounces+chill=gevityinc@lists.apple.com>>
 on behalf of Calven Eggert mailto:cal...@mac.com>>
Date: Wednesday, June 22, 2016 at 8:33 AM
To: WebObjects-Dev 
mailto:webobjects-dev@lists.apple.com>>
Subject: Design Ideas?

Hi all,

My question is not simply a WO question, however, perhaps the WO experts have a 
best practice way of doing this in WOnder.

I've been asked to design an application that tracks a process that a patient 
goes through, with the following:

1. Each patient will follow one of many different paths.
2. Each path consists of a number of activities and the order of the activities 
along that path.
3. At the moment there are 3 different paths and 15 different kinds of 
activities.  Each activity has different fields to store in the database. 
(Approx. 5 fields per activity X 15 activities = 75 fields)

It would be great if the application could be designed so that new 
paths/activities can be created by the user in an administration section, as 
opposed to having the developer create new versions of the application each 
time a new path/activity needs to be created.  Right now, I'm prepared to 
soldier through and simply design it so that there is 1 table for each 
activity.  I've looked at creating a generic table that has many string fields 
and then storing the field type, etc, however, this seems like way too much 
work (validation, etc.).  Also thought about one activity table but 75 fields 
sounds unmanageable plus the fact that there will be more activities added in 
the next year.

Anyone else out there have a different solution or idea?

Calven


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  
(Webobjects-dev@lists.apple.com<mailto:Webobjects-dev@lists.apple.com>)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/jeremy.deroyer%40ingencys.net

This email sent to 
jeremy.dero...@ingencys.net<mailto:jeremy.dero...@ingencys.net>


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Design Ideas

2016-06-23 Thread Calven Eggert
Our app will not have the ability to create tables, columns, etc. in the 
production environment. Tables will have to be already created. 


Calven


> On Jun 23, 2016, at 9:05 AM, Stavros Panidis  
> wrote:
> 
> Hi Calven,
> 
> Definitely I am not an expert! I am a amateur (translation to Greek language 
> is erasi texnis which means the lover of art).
> 
> I faced the same question some years before, for the same exactly target. I 
> found a solution and it works for around 3 years now at the department of 
> Nephrology, Papageorgiou General Hospital, Thessaloniki, Greece.
> 
> It is something  like FileMaker where the user can create his own tables, 
> adding desired variables to each table, even after a table has been created 
> and filled with data
> 
> As a general design outline I use EO to make my own schema backbone and then 
> I use raw sql to communicate with database.
> 
> Hope I helped  little.
> 
> Best regards
> 
> Stavros
>> 
>> Message: 4
>> Date: Wed, 22 Jun 2016 11:33:30 -0400
>> From: Calven Eggert 
>> To: WebObjects-Dev 
>> Subject: Design Ideas?
>> Message-ID: 
>> Content-Type: text/plain; charset="utf-8"
>> 
>> Hi all,
>> 
>> My question is not simply a WO question, however, perhaps the WO experts 
>> have a best practice way of doing this in WOnder.
>> 
>> I've been asked to design an application that tracks a process that a 
>> patient goes through, with the following:
>> 
>> 1. Each patient will follow one of many different paths. 
>> 2. Each path consists of a number of activities and the order of the 
>> activities along that path.
>> 3. At the moment there are 3 different paths and 15 different kinds of 
>> activities.  Each activity has different fields to store in the database. 
>> (Approx. 5 fields per activity X 15 activities = 75 fields)
>> 
>> It would be great if the application could be designed so that new 
>> paths/activities can be created by the user in an administration section, as 
>> opposed to having the developer create new versions of the application each 
>> time a new path/activity needs to be created.  Right now, I'm prepared to 
>> soldier through and simply design it so that there is 1 table for each 
>> activity.  I've looked at creating a generic table that has many string 
>> fields and then storing the field type, etc, however, this seems like way 
>> too much work (validation, etc.).  Also thought about one activity table but 
>> 75 fields sounds unmanageable plus the fact that there will be more 
>> activities added in the next year.
>> 
>> Anyone else out there have a different solution or idea?
>> 
>> Calven
>> 
>> 
>> -- next part --
>> An HTML attachment was scrubbed...
>> URL: 
>> <http://lists.apple.com/archives/webobjects-dev/attachments/20160622/d1c792a3/attachment.html>
>> 
>> --
>> 
>> ___
>> Webobjects-dev mailing list
>> Webobjects-dev@lists.apple.com
>> https://lists.apple.com/mailman/listinfo/webobjects-dev
>> 
>> End of Webobjects-dev Digest, Vol 13, Issue 264
>> ***
> 

 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Design Ideas

2016-06-23 Thread Stavros Panidis
Hi Calven,

Definitely I am not an expert! I am a amateur (translation to Greek language is 
erasi texnis which means the lover of art).

I faced the same question some years before, for the same exactly target. I 
found a solution and it works for around 3 years now at the department of 
Nephrology, Papageorgiou General Hospital, Thessaloniki, Greece.

It is something  like FileMaker where the user can create his own tables, 
adding desired variables to each table, even after a table has been created and 
filled with data

As a general design outline I use EO to make my own schema backbone and then I 
use raw sql to communicate with database.

Hope I helped  little.

Best regards

Stavros
> 
> Message: 4
> Date: Wed, 22 Jun 2016 11:33:30 -0400
> From: Calven Eggert 
> To: WebObjects-Dev 
> Subject: Design Ideas?
> Message-ID: 
> Content-Type: text/plain; charset="utf-8"
> 
> Hi all,
> 
> My question is not simply a WO question, however, perhaps the WO experts have 
> a best practice way of doing this in WOnder.
> 
> I've been asked to design an application that tracks a process that a patient 
> goes through, with the following:
> 
> 1. Each patient will follow one of many different paths. 
> 2. Each path consists of a number of activities and the order of the 
> activities along that path.
> 3. At the moment there are 3 different paths and 15 different kinds of 
> activities.  Each activity has different fields to store in the database. 
> (Approx. 5 fields per activity X 15 activities = 75 fields)
> 
> It would be great if the application could be designed so that new 
> paths/activities can be created by the user in an administration section, as 
> opposed to having the developer create new versions of the application each 
> time a new path/activity needs to be created.  Right now, I'm prepared to 
> soldier through and simply design it so that there is 1 table for each 
> activity.  I've looked at creating a generic table that has many string 
> fields and then storing the field type, etc, however, this seems like way too 
> much work (validation, etc.).  Also thought about one activity table but 75 
> fields sounds unmanageable plus the fact that there will be more activities 
> added in the next year.
> 
> Anyone else out there have a different solution or idea?
> 
> Calven
> 
> 
> -- next part --
> An HTML attachment was scrubbed...
> URL: 
> <http://lists.apple.com/archives/webobjects-dev/attachments/20160622/d1c792a3/attachment.html>
> 
> --
> 
> ___
> Webobjects-dev mailing list
> Webobjects-dev@lists.apple.com
> https://lists.apple.com/mailman/listinfo/webobjects-dev
> 
> End of Webobjects-dev Digest, Vol 13, Issue 264
> ***


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Design Ideas?

2016-06-23 Thread Calven Eggert
Hmmm, interesting. what if there was a single table of strings and the values 
are converted to dates, Int, etc after retrieving the records? Would this be 
very slow? (For now I'm only dealing with hundreds of records but potentially 
thousands in the near future)


Calven


> On Jun 23, 2016, at 2:49 AM, Jérémy DE ROYER  
> wrote:
> 
> Hello,
> 
> We’ve made it creating a String Table, an Integer Table, a BigDecimal Table...
> 
> Each table is linked to the object using its EntityName and id (unique in our 
> app).
> 
> We also designed a pool with NSMutableDictionnaries to speed up the re-read 
> and update.
> 
> It’s reliable and, except the first load, it’s  pretty efficient.
> 
> It’s now easy to extend all our records and to design processes.
> 
> But we don’t use load balancing.
> 
> Jérémy
> 
>> Le 22 juin 2016 à 22:28, Chuck Hill  a écrit :
>> 
>> Hi Calven,
>>  
>> Our GVC.SiteMaker application had some features that you might find useful.  
>> https://sourceforge.net/projects/gvcsitemaker/
>>  
>> It has a feature “Virtual Tables” that let’s user create relational tables 
>> and user defined UIs.  It is fully KVC compatible and reasonably fast.  It 
>> does come with a robust set of limitations :-) like no indexes o unique 
>> constraints.  Virtual Tables is an independent WO framework, but the UI part 
>> is embedded in the GVC.Sitemaker code.  I am not sure how much effort it 
>> would be to rip out, er, repurpose.  All of the default values, non-null 
>> validations, etc are in the UI as only a few actual tables are used to 
>> implement VirtualTables. 
>>  
>> The University of Michigan used it campus wide until last year.  They 
>> managed to do some pretty extensive things with it, things that I never 
>> imagined would be done.
>>  
>> The only other way to do what you want fully open ended is to make 
>> on-the-fly changes to the database schema or use a No SQL data store and 
>> then you still have to deal with generating the UI.  If you can constrain 
>> the path and activities to a known set of options, then it is much easier to 
>> make something user extensible.
>>  
>> Chuck
>>  
>>  
>> From:  on behalf 
>> of Calven Eggert 
>> Date: Wednesday, June 22, 2016 at 8:33 AM
>> To: WebObjects-Dev 
>> Subject: Design Ideas?
>>  
>> Hi all, 
>>  
>> My question is not simply a WO question, however, perhaps the WO experts 
>> have a best practice way of doing this in WOnder.
>>  
>> I've been asked to design an application that tracks a process that a 
>> patient goes through, with the following:
>>  
>> 1. Each patient will follow one of many different paths. 
>> 2. Each path consists of a number of activities and the order of the 
>> activities along that path.
>> 3. At the moment there are 3 different paths and 15 different kinds of 
>> activities.  Each activity has different fields to store in the database. 
>> (Approx. 5 fields per activity X 15 activities = 75 fields)
>>  
>> It would be great if the application could be designed so that new 
>> paths/activities can be created by the user in an administration section, as 
>> opposed to having the developer create new versions of the application each 
>> time a new path/activity needs to be created.  Right now, I'm prepared to 
>> soldier through and simply design it so that there is 1 table for each 
>> activity.  I've looked at creating a generic table that has many string 
>> fields and then storing the field type, etc, however, this seems like way 
>> too much work (validation, etc.).  Also thought about one activity table but 
>> 75 fields sounds unmanageable plus the fact that there will be more 
>> activities added in the next year.
>>  
>> Anyone else out there have a different solution or idea?
>> 
>> Calven
>> 
>>  
>> ___
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
>> Help/Unsubscribe/Update your Subscription:
>> https://lists.apple.com/mailman/options/webobjects-dev/jeremy.deroyer%40ingencys.net
>> 
>> This email sent to jeremy.dero...@ingencys.net
> 
 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Design Ideas?

2016-06-22 Thread Jérémy DE ROYER
Hello,

We’ve made it creating a String Table, an Integer Table, a BigDecimal Table...

Each table is linked to the object using its EntityName and id (unique in our 
app).

We also designed a pool with NSMutableDictionnaries to speed up the re-read and 
update.

It’s reliable and, except the first load, it’s  pretty efficient.

It’s now easy to extend all our records and to design processes.

But we don’t use load balancing.

Jérémy

Le 22 juin 2016 à 22:28, Chuck Hill 
mailto:ch...@gevityinc.com>> a écrit :

Hi Calven,

Our GVC.SiteMaker application had some features that you might find useful.  
https://sourceforge.net/projects/gvcsitemaker/

It has a feature “Virtual Tables” that let’s user create relational tables and 
user defined UIs.  It is fully KVC compatible and reasonably fast.  It does 
come with a robust set of limitations :-) like no indexes o unique constraints. 
 Virtual Tables is an independent WO framework, but the UI part is embedded in 
the GVC.Sitemaker code.  I am not sure how much effort it would be to rip out, 
er, repurpose.  All of the default values, non-null validations, etc are in the 
UI as only a few actual tables are used to implement VirtualTables.

The University of Michigan used it campus wide until last year.  They managed 
to do some pretty extensive things with it, things that I never imagined would 
be done.

The only other way to do what you want fully open ended is to make on-the-fly 
changes to the database schema or use a No SQL data store and then you still 
have to deal with generating the UI.  If you can constrain the path and 
activities to a known set of options, then it is much easier to make something 
user extensible.

Chuck


From: 
mailto:webobjects-dev-bounces+chill=gevityinc@lists.apple.com>>
 on behalf of Calven Eggert mailto:cal...@mac.com>>
Date: Wednesday, June 22, 2016 at 8:33 AM
To: WebObjects-Dev 
mailto:webobjects-dev@lists.apple.com>>
Subject: Design Ideas?

Hi all,

My question is not simply a WO question, however, perhaps the WO experts have a 
best practice way of doing this in WOnder.

I've been asked to design an application that tracks a process that a patient 
goes through, with the following:

1. Each patient will follow one of many different paths.
2. Each path consists of a number of activities and the order of the activities 
along that path.
3. At the moment there are 3 different paths and 15 different kinds of 
activities.  Each activity has different fields to store in the database. 
(Approx. 5 fields per activity X 15 activities = 75 fields)

It would be great if the application could be designed so that new 
paths/activities can be created by the user in an administration section, as 
opposed to having the developer create new versions of the application each 
time a new path/activity needs to be created.  Right now, I'm prepared to 
soldier through and simply design it so that there is 1 table for each 
activity.  I've looked at creating a generic table that has many string fields 
and then storing the field type, etc, however, this seems like way too much 
work (validation, etc.).  Also thought about one activity table but 75 fields 
sounds unmanageable plus the fact that there will be more activities added in 
the next year.

Anyone else out there have a different solution or idea?

Calven


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  
(Webobjects-dev@lists.apple.com<mailto:Webobjects-dev@lists.apple.com>)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/jeremy.deroyer%40ingencys.net

This email sent to 
jeremy.dero...@ingencys.net<mailto:jeremy.dero...@ingencys.net>

 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Design Ideas?

2016-06-22 Thread Chuck Hill
Hi Calven,

Our GVC.SiteMaker application had some features that you might find useful.  
https://sourceforge.net/projects/gvcsitemaker/

It has a feature “Virtual Tables” that let’s user create relational tables and 
user defined UIs.  It is fully KVC compatible and reasonably fast.  It does 
come with a robust set of limitations :-) like no indexes o unique constraints. 
 Virtual Tables is an independent WO framework, but the UI part is embedded in 
the GVC.Sitemaker code.  I am not sure how much effort it would be to rip out, 
er, repurpose.  All of the default values, non-null validations, etc are in the 
UI as only a few actual tables are used to implement VirtualTables.

The University of Michigan used it campus wide until last year.  They managed 
to do some pretty extensive things with it, things that I never imagined would 
be done.

The only other way to do what you want fully open ended is to make on-the-fly 
changes to the database schema or use a No SQL data store and then you still 
have to deal with generating the UI.  If you can constrain the path and 
activities to a known set of options, then it is much easier to make something 
user extensible.

Chuck


From:  on behalf of 
Calven Eggert 
Date: Wednesday, June 22, 2016 at 8:33 AM
To: WebObjects-Dev 
Subject: Design Ideas?

Hi all,

My question is not simply a WO question, however, perhaps the WO experts have a 
best practice way of doing this in WOnder.

I've been asked to design an application that tracks a process that a patient 
goes through, with the following:

1. Each patient will follow one of many different paths.
2. Each path consists of a number of activities and the order of the activities 
along that path.
3. At the moment there are 3 different paths and 15 different kinds of 
activities.  Each activity has different fields to store in the database. 
(Approx. 5 fields per activity X 15 activities = 75 fields)

It would be great if the application could be designed so that new 
paths/activities can be created by the user in an administration section, as 
opposed to having the developer create new versions of the application each 
time a new path/activity needs to be created.  Right now, I'm prepared to 
soldier through and simply design it so that there is 1 table for each 
activity.  I've looked at creating a generic table that has many string fields 
and then storing the field type, etc, however, this seems like way too much 
work (validation, etc.).  Also thought about one activity table but 75 fields 
sounds unmanageable plus the fact that there will be more activities added in 
the next year.

Anyone else out there have a different solution or idea?

Calven


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Design Ideas?

2016-06-22 Thread Calven Eggert
Hi all,

My question is not simply a WO question, however, perhaps the WO experts have a 
best practice way of doing this in WOnder.

I've been asked to design an application that tracks a process that a patient 
goes through, with the following:

1. Each patient will follow one of many different paths. 
2. Each path consists of a number of activities and the order of the activities 
along that path.
3. At the moment there are 3 different paths and 15 different kinds of 
activities.  Each activity has different fields to store in the database. 
(Approx. 5 fields per activity X 15 activities = 75 fields)

It would be great if the application could be designed so that new 
paths/activities can be created by the user in an administration section, as 
opposed to having the developer create new versions of the application each 
time a new path/activity needs to be created.  Right now, I'm prepared to 
soldier through and simply design it so that there is 1 table for each 
activity.  I've looked at creating a generic table that has many string fields 
and then storing the field type, etc, however, this seems like way too much 
work (validation, etc.).  Also thought about one activity table but 75 fields 
sounds unmanageable plus the fact that there will be more activities added in 
the next year.

Anyone else out there have a different solution or idea?

Calven


 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com