Re: D2W: Pattern for complex object creation
Re: D2W: Pattern for complex object creation
- Subject: Re: D2W: Pattern for complex object creation
- From: Ramsey Gurley <email@hidden>
- Date: Thu, 29 Mar 2012 17:48:43 -0700
Come to WOWODC. David and I will be doing a D2W lab. It will be a perfect opportunity to ask questions about D2W flow and such :-)
Ramsey
On Mar 29, 2012, at 5:18 PM, Tim Worman wrote:
> I love reading stuff like this - really useful. Every time I try to use D2W I get a certain distance into it and then feel as as if I'd be faster developing a standard WO app than navigating a whole new manner of thinking (and composing rules). Figuring out how to make a D2W app flexible has been hard for me to wrap my head around.
>
> Thanks for the great ideas!
>
> Tim
>
> On Mar 29, 2012, at 4:57 PM, Ramsey Gurley <email@hidden> wrote:
>
>> On Mar 29, 2012, at 4:27 PM, David Holt wrote:
>>
>>>
>>> On 2012-03-29, at 4:23 PM, Ramsey Gurley wrote:
>>>
>>>> More than one way to skin a cat here. I'd probably just set up a wizard.
>>>>
>>>> step 1, choose a practice with an ERD2WEditToOneRelationship that filters the list to only practices with billables that have no invoice.
>>>> step 2, choose billables form a filtered list for that practice with an ERD2WEditToManyRelationship component.
>>>
>>> Can you use information entered in Step one to inform step two?
>>
>> Sure. Just set the restrictedChoiceKey to resolve to a method on the EO. Something like object.billablesForCurrentPracticeWithoutInvoice. Then use the practice set in step one to filter the list for step 2.
>>
>>>
>>>> step 3, edit invoice date
>>>> validate and save accordingly
>>>>
>>>> Ramsey
>>>>
>>>>
>>>> On Mar 29, 2012, at 3:20 PM, Paul Hoadley wrote:
>>>>
>>>>> Hi Ramsey,
>>>>>
>>>>> On 30/03/2012, at 2:21 AM, Ramsey Gurley wrote:
>>>>>
>>>>>> On Mar 29, 2012, at 2:31 AM, Paul Hoadley wrote:
>>>>>>
>>>>>>> Anyway, the subject above is probably a misnomer: I'm not trying to create particularly complex objects, but I am trying to do something outside CRUD, which is pretty much all I've ever done with D2W before. In the model, a Billable object has an optional to-one relationship to Invoice. When I create a Billable, it initially has no related Invoice. Later I will create an Invoice for a client, and collect together some set of Billables, and the relationship is created at that time. And that's the bit I need a pattern for: Invoice creation. Billable also has a mandatory relationship to Practice (i.e., a client), and a startTime timestamp. When I go to create an Invoice, I'd give the Invoice a date and select a Practice, and then I want to add, say, all of the Billables that (a) belong to no other Invoice, (b) point to the same Practice, and (c) have a startTime that falls before the new Invoice.date.
>>>>>>
>>>>>> Well, you can just set the practice, the invoice date, and then save changes. In Invoice.willInsert() fetch the billables and add them to the relationship just before the save takes place. :-) Or is that too automatic?
>>>>>
>>>>> It's more automatic than I was thinking, but it sounds alright. Say if I wanted to review the list of Billables before saving, though, what would you do then?
>>>>>
>>>>>
>>>>> --
>>>>> Paul Hoadley
>>>>> http://logicsquad.net/
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Do not post admin requests to the list. They will be ignored.
>>>>> Webobjects-dev mailing list (email@hidden)
>>>>> Help/Unsubscribe/Update your Subscription:
>>>>>
>>>>> This email sent to email@hidden
>>>>
>>>> _______________________________________________
>>>> Do not post admin requests to the list. They will be ignored.
>>>> Webobjects-dev mailing list (email@hidden)
>>>> Help/Unsubscribe/Update your Subscription:
>>>>
>>>> This email sent to email@hidden
>>>
>>
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list (email@hidden)
>> Help/Unsubscribe/Update your Subscription:
>>
>> This email sent to email@hidden
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden