João,

Muito obrigado. Esta é a solução. Não só vai resolver o meu problema como
vai evitar o uso destes getters que não gosto muito e como vai retirar o
trabalho extra dos bindings.

Vou implementar isto na minha framework para lidar de forma automático.

Gracias.


No dia 7 de Março de 2014 às 15:23, João Fernandes <
[email protected]> escreveu:

> Hugo errado, podes muito bem fazer na resposta do servidor para efectuar o
> dito trabalho.
>
> Implementei na nossa app exactamente esse trabalho na função
> http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/rpc/remoting/RemoteObject.html#convertResultHandlere
> http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/rpc/remoting/RemoteObject.html#convertParametersHandlerpara
>  lidar exactamente com o tratamento de informação na receção ou envio
> de dados para o backend. No nosso caso foi para o ajuste automático dos
> objectos Date para acertar os valores por causa dos fusos horários.
>
> Só temos o código num único sitio que trata da informação e acaba por ser
> mais leve pois o processo só ocorre 1x, ao receber e ao enviar os dados
> enquanto que se fizesse no getter, se tivesse que fazer bindings à
> propriedade, o código seria executado para cada binding existente o que
> torna um processo mais "pesado".
>
>
>
>
> 2014-03-07 14:38 GMT+00:00 Hugo Ferreira <[email protected]>:
>
>> Miguel,
>>
>>
>> As queries são feitas a nível do backend e este é responsável por lidar
>> com qualquer conflito de nomes entre motores de BDs e funciona
>> impecavelmente, inclusivé palavras reservadas.
>> Os dados são devolvidos em AMF, sendo que os campos data (são sempre
>> especíais entre BDs), são devolvidos no formato caracter pelo backend.
>>
>> Do lado do frontend uso getter/setter para trabalhar directamente com o
>> tipo de dados Date.
>>
>> Posso sempre fazer coisas como não ter este getter no model e trabalhar o
>> valor fora dele mas é algo que me vai obrigar a repetir esse código, o que
>> não quero.
>>
>>
>>
>>
>> No dia 7 de Março de 2014 às 13:21, Miguel Vaz <[email protected]>escreveu:
>>
>> Já é mais alguma coisa, hugo. :-)
>>>
>>> Os queries são feitos do teu lado? Se sim, podes mascarar (alias) os
>>> field names, independentemente do nome original. É básico e certamente já
>>> consideraste isso, tanto que imagino que não te resolva o problema. Estou a
>>> assumir que queres criar um VO e atribuir facilmente os dados, sem
>>> reatribuições.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> 2014-03-07 13:15 GMT+00:00 Hugo Ferreira <[email protected]>:
>>>
>>> Miguel: Eu percebi. No entanto como indicado é uma propriedade de uma
>>>> classe (tal como o João mostrou) e queria que nos abstraímos da origem dos
>>>> dados. Neste caso é um webservice e por detrás deste 2 bds possíveis (sql
>>>> server e mysql) mas lá está é irrelevante para o caso. Se é possível
>>>> alterar na origem com uma série de implicações, é (podia não ser) mas lá
>>>> está como indiquei no primeiro e-mail, esse será o último cenário.
>>>>
>>>> João: É verdade. Não há qualquer com a criação de uma propriedade em
>>>> si. O problema está num getter.
>>>>
>>>>
>>>> public class MyCustomClass
>>>>
>>>> {
>>>>
>>>> public var Date:*;
>>>>
>>>> [Transient]
>>>>
>>>>  public function get dateAS():Date
>>>>
>>>>  {
>>>>
>>>>  return Dates.toDate(Date);
>>>>
>>>>  }
>>>>
>>>>
>>>> É usado * porque a origem dos dados não é DateTime e pode vir de uma BD
>>>> SQL Server ou MySQL, etc ...
>>>>
>>>> O problema acontece no dateAS():Date.
>>>>
>>>>
>>>> Obrigado desde já,
>>>> Hugo.
>>>>
>>>>
>>>> No dia 7 de Março de 2014 às 10:20, João Fernandes <
>>>> [email protected]> escreveu:
>>>>
>>>> Hugo tens a certeza que não podes criar
>>>>>
>>>>> public class CustomClass
>>>>> {
>>>>>      public function CustomClass
>>>>>      {
>>>>>      }
>>>>>      public var Date:Date;
>>>>> }
>>>>>
>>>>> Acabei de adicionar esta variável a um VO meu e compilou sem qualquer
>>>>> problema.
>>>>>
>>>>>
>>>>> 2014-03-07 10:18 GMT+00:00 Miguel Vaz <[email protected]>:
>>>>>
>>>>>  Hugo: A minha pergunta não estava envolvida em teorias sobre se
>>>>>> devias ou não utilizar palavras reservadas, mas era relativa ao teu
>>>>>> problema específico, se está/vem em um xml, se vem de uma bd, etc. para 
>>>>>> que
>>>>>> pudesse tentar ajudar a encontrar uma alternativa para contornar a
>>>>>> limitação.
>>>>>>
>>>>>>
>>>>>> 2014-03-07 10:07 GMT+00:00 Hugo Ferreira <[email protected]>:
>>>>>>
>>>>>> Bom dia,
>>>>>>>
>>>>>>> Miguel: Não me leves a mal, mas a questão não é se devia de usar mas
>>>>>>> sim como usar. Devemos evitar o uso de palavras reservadas quando 
>>>>>>> possível
>>>>>>> (embora eu não concorde pois se o campo ou classe é Date, porque é que 
>>>>>>> devo
>>>>>>> inventar um nome que retira o significado do classe ou propriedade). 
>>>>>>> Posso
>>>>>>> te arranjar mil e uma razões para o uso de palavras reservadas como a
>>>>>>> integração com outro sistema que usa essa variável mas não quero 
>>>>>>> disperçar
>>>>>>> a razão deste e-mail.
>>>>>>>
>>>>>>> APintex: Obrigado. Não encontrei na net como fazer o escape de
>>>>>>> situações como esta e não me importo de andar com escape atrás porque 
>>>>>>> temos
>>>>>>> de mesmo de distinguir o que é código nosso da framework.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> No dia 7 de Março de 2014 às 10:03, APintex Gmail <[email protected]
>>>>>>> > escreveu:
>>>>>>>
>>>>>>> Bom dia Hugo,
>>>>>>>>
>>>>>>>> Tive um problema parecido na importação de um xml, o qual tinha um
>>>>>>>> elemento com o nome 'country-code'.
>>>>>>>> No itemRenderer que utiliza esse informação, ainda consegui com
>>>>>>>> data.['country-code'], mas utilizando data.country-code dava erro na
>>>>>>>> designação 'code'.
>>>>>>>> Não consegui outra forma, depois de perder um dia, alterei para
>>>>>>>> 'countrycode' e ponto final. Mais tarde investigo.
>>>>>>>> António Pinto
>>>>>>>>
>>>>>>>> No dia 07/03/2014, às 09:48, Hugo Ferreira <[email protected]>
>>>>>>>> escreveu:
>>>>>>>>
>>>>>>>>  Bom dia,
>>>>>>>>
>>>>>>>>
>>>>>>>> Necessito de criar um campo com o nome "Date" numa classe AS3.
>>>>>>>> Sendo uma palavra reservada para o tipo de dados de data, como é que 
>>>>>>>> posso
>>>>>>>> contornar este problema. Alterar o nome Date não está nos meus planos e
>>>>>>>> será o último dos últimos recursos.
>>>>>>>>
>>>>>>>>
>>>>>>>> Obrigado,
>>>>>>>> Hugo.
>>>>>>>>
>>>>>>>> --
>>>>>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>>>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>>>>>> do Grupos do Google.
>>>>>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>>>>>> mesmo, envie um email para [email protected].
>>>>>>>> Para publicar neste grupo, envie um email para
>>>>>>>> [email protected].
>>>>>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>>>>>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>>
>>>>>>>>  --
>>>>>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>>>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>>>>>> do Grupos do Google.
>>>>>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>>>>>> mesmo, envie um email para [email protected].
>>>>>>>> Para publicar neste grupo, envie um email para
>>>>>>>> [email protected].
>>>>>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>>>>>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>
>>>>>>>  --
>>>>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>>>>> do Grupos do Google.
>>>>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>>>>> mesmo, envie um email para [email protected].
>>>>>>> Para publicar neste grupo, envie um email para
>>>>>>> [email protected].
>>>>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>>>>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>>  --
>>>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>>>> do Grupos do Google.
>>>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>>>> mesmo, envie um email para [email protected].
>>>>>> Para publicar neste grupo, envie um email para [email protected]
>>>>>> .
>>>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>>>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>> João Fernandes
>>>>>
>>>>> --
>>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>>> do Grupos do Google.
>>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>>> mesmo, envie um email para [email protected].
>>>>> Para publicar neste grupo, envie um email para [email protected].
>>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>  --
>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>> do Grupos do Google.
>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>> mesmo, envie um email para [email protected].
>>>> Para publicar neste grupo, envie um email para [email protected].
>>>> Visite este grupo em http://groups.google.com/group/riapt.
>>>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>>>
>>>
>>>  --
>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
>>> Grupos do Google.
>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
>>> envie um email para [email protected].
>>> Para publicar neste grupo, envie um email para [email protected].
>>> Visite este grupo em http://groups.google.com/group/riapt.
>>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>>
>>
>>  --
>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
>> Grupos do Google.
>> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
>> envie um email para [email protected].
>> Para publicar neste grupo, envie um email para [email protected].
>> Visite este grupo em http://groups.google.com/group/riapt.
>> Para obter mais opções, visite https://groups.google.com/d/optout.
>>
>
>
>
> --
>
> João Fernandes
>
> --
> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
> Grupos do Google.
> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
> envie um email para [email protected].
> Para publicar neste grupo, envie um email para [email protected].
> Visite este grupo em http://groups.google.com/group/riapt.
> Para obter mais opções, visite https://groups.google.com/d/optout.
>

-- 
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade 
Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google.

Para anular a subscrição deste grupo e parar de receber emails deste grupo, 
envie um email para [email protected].
Para publicar uma mensagem neste grupo, envie um e-mail para 
[email protected].
Visite este grupo em http://groups.google.com/group/riapt.
Para mais opções, consulte https://groups.google.com/d/optout.

Responder a