with the event that is broadcast to execute the command, pass the field in the 
ML that is being updated, that should do it if I understand correctly.
 
Dimitrios Gianninas
Developer
Optimal Payments Inc.
 

________________________________

From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Kevin
Sent: Tuesday, March 13, 2007 2:17 AM
To: [email protected]
Subject: [flexcoders] Pass ModelLocator reference to Command?



Here is where I am struggling. I have created a component extended 
from the TextInput field to update certain fields in my database.

The text property of the TextInput class is bound to a value form the 
ModelLocator. When this value is changed (focusOut event) a general 
command is sent to the database with an id that indicates which 
database field should be updated. The update happens and a 'success' 
result is returned to the Command. The idea is that fields are 
updated as the user tabs rather than using a 'submit' button. 
Everything is working well up to this point, until....

On a successful database update, I can't figure out a way to update 
the modelLocator from the Command. Since this is a generic Command I 
need to be able to dynamically tell the Command which ModelLocator 
property to update on which call. Here are the solutions I have 
thought of but I can't seem to get anything working.

1) Pass a reference to the ModelLocator property that needs updating 
and then update that reference in the Command. Unfortunately, I 
can't figure out how (and if I even can) pass a true reference to the 
Command. It seems that everything I try just get passed as a string.

2) Pass a string to the Command that can be parsed into a ML 
reference. This can work...sometimes on simple VO's, but gets very 
complicated with nest VO's in ArrayCollections. I am not sure there 
is an easy way to do this...

3) Create some sort of hash map or array map that maps certain 
'codes' to ModelLocator properties. This seems rather brittle & time 
consuming.

4) Create 2-way binding using the Binding class. I was able to do 
this and make it work, however, I couldn't find a way to do it 
dynamically, where the 'destination' property could be a variable and 
not a string. Also, I could only set this while in the view, which 
means, the ModelLocator would get updated before it was confirmed 
that the server update was successful. Obviously this is a little 
dangerous.

I am out of ideas, but I still think there must be a way to achieve 
this. Any thoughts???

Thanks for the help,

Kevin


 

-- 
WARNING
-------
This electronic message and its attachments may contain confidential, 
proprietary or legally privileged information, which is solely for the use of 
the intended recipient.  No privilege or other rights are waived by any 
unintended transmission or unauthorized retransmission of this message.  If you 
are not the intended recipient of this message, or if you have received it in 
error, you should immediately stop reading this message and delete it and all 
attachments from your system.  The reading, distribution, copying or other use 
of this message or its attachments by unintended recipients is unauthorized and 
may be unlawful.  If you have received this e-mail in error, please notify the 
sender.

AVIS IMPORTANT
--------------
Ce message électronique et ses pièces jointes peuvent contenir des 
renseignements confidentiels, exclusifs ou légalement privilégiés destinés au 
seul usage du destinataire visé.  L'expéditeur original ne renonce à aucun 
privilège ou à aucun autre droit si le présent message a été transmis 
involontairement ou s'il est retransmis sans son autorisation.  Si vous n'êtes 
pas le destinataire visé du présent message ou si vous l'avez reçu par erreur, 
veuillez cesser immédiatement de le lire et le supprimer, ainsi que toutes ses 
pièces jointes, de votre système.  La lecture, la distribution, la copie ou 
tout autre usage du présent message ou de ses pièces jointes par des personnes 
autres que le destinataire visé ne sont pas autorisés et pourraient être 
illégaux.  Si vous avez reçu ce courrier électronique par erreur, veuillez en 
aviser l'expéditeur.

Reply via email to