o meu repeater está no selectedIndex = 1 to meu viewStack, quando
tento setar o dataprovider ele, ele diz que o objeto (repeater) não
existe.

meu httpservice:
<mx:HTTPService
            id="sql_vitrineDetalhe"
            method="POST"
            url="http://intranet.na5.com.br/osgtungaloy.com.br/xml/
xml_vitrine_detalhe.asp"
            fault="onError(event)"
            result="resultado_detalhe(event);">
        <mx:request xmlns="">
                <cd_referencia>{cd_referencia}</cd_referencia>
                </mx:request>
    </mx:HTTPService>

função de retorno do httpservice:
public function resultado_detalhe(event:ResultEvent):void{
        if (event.result.produtos != 'null'){
                if (event.result.produtos.item is ArrayCollection){
                   arrProdutos = event.result.produtos.item as ArrayCollection;
                } else {
                        newArray = 
ArrayUtil.toArray(event.result.produtos.item);
                    arrProdutos = new ArrayCollection(newArray);
                }
                arrMacho = arrProdutos;
        } else {
                Alert.show('O produto não foi encontrado.');
                viewStack.selectedIndex = 0;
        }
}

meu viewstack:
<mx:ViewStack id="viewStack" width="100%" height="100%">
   <mx:HBox width="100%" height="100%" verticalScrollPolicy="off"
horizontalScrollPolicy="off">
      <componente:com_pesquisa arrPesquisa_ponta="{arrPonta}"
arrPesquisa_subcategoria="{arrSubcategoria}" width="200"
height="100%" />
      <componente:com_vitrine arrDados="{arrMachos}" />
   </mx:HBox>
   <componente:com_vitrine_detalhe arrDados_detalhe="{arrMacho}" />
</mx:ViewStack>

com_vitrine_detalhe:

<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml"; width="100%"
height="100%" backgroundColor="#ffffff" cornerRadius="3"
creationComplete="init()">
        <mx:Script>
                <![CDATA[
                        import mx.collections.ArrayCollection;
                        [Bindable] public var arrDados_detalhe:ArrayCollection;
                ]]>
        </mx:Script>

        <mx:XMLListCollection id="xmllcTratado"/>


        <mx:VBox width="50%" height="100%">
                <mx:Label
text="{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.ds_norma_pt}"
width="100%" id="txt_norma" fontWeight="bold" fontSize="12"/>
                <mx:Label text="Referência:
{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.ds_referencia}"
id="txt_referencia" width="100%"/>
                <mx:HBox width="100%" height="100%" verticalAlign="middle">
                        <mx:Image id="txt_imagem" width="50%">

<mx:source>{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.ds_imagem}</
mx:source>
                        </mx:Image>
                        <mx:VBox width="50%" height="100%">
                                <mx:Label text="Tipos de Furo"/>
                                <mx:Repeater id="rep_furo" 
dataProvider="{xmllcTratado}">
                                        <mx:Label  text="{'Furo: '+ [EMAIL 
PROTECTED]"
width="100%" />
                                </mx:Repeater>

                                <mx:Label text="Tipo:
{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.ds_ponta_pt}"/
>
                                <mx:Label text="Norma:
{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.ds_simbolo}"/
>
                                <mx:Label text="Material e Tratamento"/>
                                <mx:Label text="Ângulo da Hélice"/>
                        </mx:VBox>
                </mx:HBox>
                <mx:Panel width="100%" height="100" layout="absolute" 
title="Grupos
de Materiais">
                </mx:Panel>
        </mx:VBox>

        <mx:VBox width="50%" height="100%" horizontalAlign="center">
                <mx:Button label="Voltar"
click="parentDocument.viewStack.selectedIndex = 0" textAlign="center"/
>
                <mx:Image width="80%" height="80"/>
                <mx:Label text="Especificações do Produto"/>
                <mx:Image>

<mx:source>{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.ds_imagem_especificacao}</
mx:source>
                </mx:Image>

        </mx:VBox>
        <mx:Script>
       <![CDATA[
           public function init():void {
               xmllcTratado.source =
XMLList(arrDados_detalhe).item.furos.furo;
           }
       ]]>
     </mx:Script>
</mx:HBox>


On 3 abr, 15:09, Beck Novaes <[EMAIL PROTECTED]> wrote:
> Chute: Tente setar o dataProvider do seu repeater no evento Result da
> chamada do seu HTTPService.
>
> []'s
> Beck Novaes
>
> On Apr 3, 2:00 pm, Pat <[EMAIL PROTECTED]> wrote:
>
>
>
> > Tentei fazer igualzinho vc, criei o init e tudo, mas ele não aceita
>
> > <mx:Script>
> >        <![CDATA[
> >            public function init():void {
> >                xmllcTratado.source =
> > parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.furos.furo; //
> > meu httpservice
> >                        ou
> >                xmllcTratado.source =
> > parentDocument.sql_vitrineDetalhe.lastResult.item.furos.furo; // meu
> > httpservice
> >            }
> >        ]]>
> >    </mx:Script>
>
> > ele dá esse erro, quando vou acessar a página:
> > TypeError: Error #1009: Cannot access a property or method of a null
> > object reference.
>
> > On 3 abr, 14:31, Pat <[EMAIL PROTECTED]> wrote:
>
> > > Nossa, aqui num rola!
>
> > > se eu deixo o lastResult.produtos, ele escreve "Furos:" 4vezes mas sem
> > > o valor do source (que já mudei pra src_furo, pra num dar conflito com
> > > as palavras do flex), se eu tiro o .produtos, ele não escreve "Furo:"
> > > nenhuma vez, ou seja, errado, pq eu tenho quatro tipos de Furos.
>
> > > On 3 abr, 14:17, Luis Eduardo - Suprasis Softwares
>
> > > <[EMAIL PROTECTED]> wrote:
> > > >     Oi Pat,
>
> > > >     Para enviar o xml do lastResult é só vc usar um trace normal e
> > > > copiar e colar do console.  Mas vc enviou o xml direitinho!  Era isso 
> > > > mesmo.
> > > >     O problema, acho eu, é que o primeiro nó do lastResult, o "produtos"
> > > > vai se tornar o próprio lastResult, então ele não precisa ser 
> > > > referenciado.
> > > >     Ficaria uma linha assim:
> > > > parentDocument.sql_vitrineDetalhe.lastResult.item.furos.furo
>
> > > >     Eis o código. Qualquer coisa é só dar um grito aí.
>
> > > >     Ah!  se puder evitar usar palavras reservadas do ActionScript ou do
> > > > framework do Flex dentro dos XMLs pode te evitar umas dores de cabeças
> > > > boas. Já andei perdendo umas horas com isso. Aquela sua propriedade
> > > > "source" pode dar conflito se vc usar esse XML em alguns outros locais.
>
> > > >     abraços,
> > > >     Luís Eduardo.
>
> > > > ----------------
>
> > > > <?xml version="1.0" encoding="utf-8"?>
> > > > <mx:Application
> > > >     xmlns:mx="http://www.adobe.com/2006/mxml";
> > > >     creationComplete="init()"
>
> > > >     <mx:XMLList xmlns="" id="xmlCru">
> > > >         <produtos>
> > > >                     <item>
> > > >                       <cd_referencia>204</cd_referencia>
> > > >                       <ds_referencia>109/D (3º)</ds_referencia>
> > > >                       <ds_simbolo>DIN 5157</ds_simbolo>
> > > >                       <ds_norma_pt>Rosca Whitworth para 
> > > > Tubo</ds_norma_pt>
> > > >                       <ds_sigla>BSP (G)</ds_sigla>
> > > >                       <ds_imagem>../../fotos/8A-204.jpg</ds_imagem>
>
> > > > <ds_imagem_especificacao>../../fotos/8A.gif</ds_imagem_especificacao>
> > > >                         <furos>
> > > >                           <furo source="menor_passante" />
> > > >                           <furo source="maior_passante" />
> > > >                           <furo source="menor_cego" />
> > > >                           <furo source="maior_cego" />
> > > >                         </furos>
> > > >                     </item>
> > > >                 </produtos>
> > > >     </mx:XMLList>
>
> > > >     <mx:XMLListCollection id="xmllcTratado"/>
>
> > > >     <mx:Label text="Tipos de Furo"/>
> > > >    <mx:Repeater id="rep_furo" dataProvider="{xmllcTratado}">
> > > >       <mx:Label text="{XML(rep_furo.currentItem)[EMAIL PROTECTED]" 
> > > > width="50" />
> > > >    </mx:Repeater>
>
> > > >    <mx:Script>
> > > >        <![CDATA[
> > > >            public function init():void {
> > > >                xmllcTratado.source = xmlCru.item.furos.furo;
> > > >            }
> > > >        ]]>
> > > >    </mx:Script>
>
> > > > </mx:Application>
>
> > > > ----------------
>
> > > > Pat escreveu:
>
> > > > > rss, desculpa aí, eu to modificando a estrutura do xml e agora já é
> > > > > outro nome.
>
> > > > > xml:
> > > > > <produtos>
> > > > > - <item>
> > > > >   <cd_referencia>204</cd_referencia>
> > > > >   <ds_referencia>109/D (3º)</ds_referencia>
> > > > >   <ds_simbolo>DIN 5157</ds_simbolo>
> > > > >   <ds_norma_pt>Rosca Whitworth para Tubo</ds_norma_pt>
> > > > >   <ds_sigla>BSP (G)</ds_sigla>
> > > > >   <ds_imagem>../../fotos/8A-204.jpg</ds_imagem>
> > > > >   <ds_imagem_especificacao>../../fotos/8A.gif</
> > > > > ds_imagem_especificacao>
> > > > > - <furos>
> > > > >   <furo source="menor_passante" />
> > > > >   <furo source="maior_passante" />
> > > > >   <furo source="menor_cego" />
> > > > >   <furo source="maior_cego" />
> > > > >   </furos>
> > > > >   </item>
> > > > >   </produtos>
>
> > > > > chamado no meu código:
>
> > > > > <mx:Label text="Tipos de Furo"/>
> > > > >    <mx:Repeater id="rep_furo"
> > > > > dataProvider="{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.f­­­uros.furo}">
> > > > >       <mx:Label  text="{'Furo: '+ XML(rep_furo.currentItem)[EMAIL 
> > > > > PROTECTED]"
> > > > > width="100%" />
> > > > >    </mx:Repeater>
>
> > > > > se eu coloco pra escrever rep_furo.currentIndex, ele nomeia 0, 1, 2,
> > > > > 3, 4, mas assim do jeito que tah ele não escreve nada.
>
> > > > > num to entendendo pq =/
>
> > > > > sobre enviar o xml do lastResult, eu num sei como faço isso!
>
> > > > > On 3 abr, 13:48, Luis Eduardo - Suprasis Softwares
> > > > > <[EMAIL PROTECTED]> wrote:
>
> > > > >>     Ué...  o certo é "cego", "ic_cego" ou "ds_furo" ??  agora já me
> > > > >> perdi todo aqui!  :)
> > > > >>     Me parece que é só esse o problema. O xml de retorno vem de um 
> > > > >> jeito
> > > > >> e vc tenta acessar a propriedade dele de outro.
> > > > >>     Tem como vc nos enviar o xml do lastResult do jeito que ele vem?
>
> > > > >>     aí fica tranquilo trocar naquele código-exemplo e ver na prática.
>
> > > > >>     abraço,
> > > > >>     Luís Eduardo.
>
> > > > >> Pat escreveu:
>
> > > > >>> Ohh Luis, valewww heim.
>
> > > > >>> entendi, no meu caso nem compensa o filtro pois vou usar todos os
> > > > >>> registros que vem no xml, do jeitinho que vem, mas valeww, fica aí a
> > > > >>> dica pra quando for necessário.
>
> > > > >>> sobre o ic_cego, é assim qeu está no xml mesmo, eu enviei um modelo 
> > > > >>> do
> > > > >>> meu xml, mas não respeitei os nomes naum, era mais a estrutura 
> > > > >>> mesmo.
>
> > > > >>> agora deixei assim:
>
> > > > >>> <mx:Label text="Tipos de Furo"/>
> > > > >>>    <mx:Repeater id="rep_furo"
> > > > >>> dataProvider="{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.f­­­­uros.furo}">
> > > > >>>       <mx:Label text="{'Furo: '+ XML(rep_furo.currentItem)[EMAIL 
> > > > >>> PROTECTED]"
> > > > >>> width="50" />
> > > > >>>    </mx:Repeater>
>
> > > > >>> O problema agora é que aparece Furo:, e não aparece o valor que está
> > > > >>> em ds_furo, sempre fica vazio.
> > > > >>> Sabe pq???
>
> > > > >>> On 3 abr, 08:54, Luis Eduardo - Suprasis Softwares
> > > > >>> <[EMAIL PROTECTED]> wrote:
>
> > > > >>>>     Olá Pat,
>
> > > > >>>>     Na linha onde vc usa:  <mx:Label
> > > > >>>> text="[EMAIL PROTECTED]" width="50"
> > > > >>>>     contém dois erros: o currentItem retorna um Object e não um 
> > > > >>>> xml, por
> > > > >>>> isso vc recebeu o aviso do FlexBuilder dizendo "not found on 
> > > > >>>> Object".
> > > > >>>> Pra resolver isso é só fazer um cast de Object para XML.
> > > > >>>>     O segundo erro é que no seu xml o atributo cego de um furo é
> > > > >>>> escrito:  <furo tipo="1" cego="false"/>  mas na hora de tentar 
> > > > >>>> recuperar
> > > > >>>> o valor, em vez de "cego" vc usou "ic_cego".
>
> > > > >>>>     Fiz um código de exemplo pra mostrar o que eu quis dizer com o 
> > > > >>>> "FOR
> > > > >>>> EACH" do email anterior na hora de processar um xml. Vc vai 
> > > > >>>> precisar
> > > > >>>> fazer uma adaptação aí, espero que corra tudo bem. No exemplo eu 
> > > > >>>> filtrei
> > > > >>>> os furos de tipo 1, só mostrando os de tipo 2 no repeater.
>
> > > > >>>>     abraço,
> > > > >>>>     Luís Eduardo.
>
> > > > >>>> ---------  código  -------------
>
> > > > >>>> <?xml version="1.0" encoding="utf-8"?>
> > > > >>>> <mx:Application
> > > > >>>>     xmlns:mx="http://www.adobe.com/2006/mxml";
> > > > >>>>     creationComplete="init()"
>
> > > > >>>>     <mx:XMLList xmlns="" id="xmlCru">
> > > > >>>>         <produto>
> > > > >>>>           <valor1>bla</valor1>
> > > > >>>>           <valor2>bla</valor2>
> > > > >>>>           <valor3>bla</valor3>
> > > > >>>>           <furos>
> > > > >>>>              <furo tipo='1' cego='true' />
> > > > >>>>              <furo tipo='2' cego='false' />
> > > > >>>>              <furo tipo='1' cego='true' />
> > > > >>>>              <furo tipo='2' cego='true' />
> > > > >>>>           </furos>
> > > > >>>>         </produto>
> > > > >>>>     </mx:XMLList>
>
> > > > >>>>     <mx:XMLListCollection id="xmllcTratado"/>
>
> > > > >>>>     <mx:Label text="Tipos de Furo"/>
> > > > >>>>    <mx:Repeater id="rep_furo" dataProvider="{xmllcTratado}">
> > > > >>>>       <mx:Label text="{XML(rep_furo.currentItem)[EMAIL PROTECTED]" 
> > > > >>>> width="50" />
> > > > >>>>    </mx:Repeater>
>
> > > > >>>>    <mx:Script>
> > > > >>>>        <![CDATA[
> > > > >>>>            public function init():void {
> > > > >>>>                for each (var furo:XML in xmlCru..furo) {
> > > > >>>>                    if (String([EMAIL PROTECTED]) == "2") {
> > > > >>>>                        xmllcTratado.addItem( furo );
> > > > >>>>                    }
> > > > >>>>                }
> > > > >>>>            }
> > > > >>>>        ]]>
> > > > >>>>    </mx:Script>
>
> > > > >>>> </mx:Application>
>
> > > > >>>> -------------------------------
>
> > > > >>>> Pat escreveu:
>
> > > > >>>>> Olha, eu tava tentando assim:
>
> > > > >>>>> <mx:Label text="Tipos de Furo"/>
> > > > >>>>>    <mx:Repeater id="rep_furo"
> > > > >>>>> dataProvider="{parentDocument.sql_vitrineDetalhe.lastResult.produtos.item.f­­­­­uros.furo}">
> > > > >>>>>       <mx:Label
>
> ...
>
> mais »- Ocultar texto entre aspas -
>
> - Mostrar texto entre aspas -
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a