MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Controle Treeview erro sintaxe

    Compartilhe
    avatar
    Ronaldo Costa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 178
    Registrado : 14/03/2011

    [Resolvido]Controle Treeview erro sintaxe

    Mensagem  Ronaldo Costa em 13/11/2018, 12:18

    Olá pessoal.

    Estou tentando criar um controle Treeview para o meu sistema; estou seguindo um exemplo que vi na internet, porém, apesar de, na minha percepção, já ter feito tudo como manda a orientação, estou esbarrando em uma linha. Por favor, alguém poderia me dizer onde estou errando?

    Segue o arquivo para análise. No formulário, clique no botão para executar o código abaixo.
    O erro se encontra na linha em destaque.

    Private Sub btTV_Click()
    Dim tempNode As MSComctlLib.Node
    Dim rsC As DAO.Recordset
    Dim rsO As DAO.Recordset

    TV.Nodes.Clear
    Set tempNode = TV.Nodes.Add(, , "C", "Clientes")

    Set rsC = CurrentDb.OpenRecordset("SELECT IdCliente,Nome FROM Clientes ORDER BY Nome", , dbReadOnly)
    Do While Not rsC.EOF
       Set tempNode = TV.Nodes.Add("C", tvwChild, "CL" & rsC.Fields("IdCliente"), rsC.Fields("Nome"))
       
       Set rsO = CurrentDb.OpenRecordset("SELECT IdOrdem as NOrdem,dataOrdem FROM Pedidos WHERE IdCliente=""" & rsC.Fields("IdCliente") & """ ORDER BY dataOrdem DESC", , dbReadOnly)
           Do While Not rsO.EOF
           
               Set tempNode = TV.Nodes.Add("CL" & rsC.Fields("IdCliente"), tvwChild, "O" & rsO.Fields("NOrdem"), rsO.Fields("dataOrdem"))
               
               rsO.MoveNext
           Loop
       rsO.Close
       rsC.MoveNext
    Loop
    rsC.Close

    End Sub


    ----------

    grato
    Anexos
    TV.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (103 Kb) Baixado 7 vez(es)
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10283
    Registrado : 04/11/2009

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  JPaulo em 13/11/2018, 13:51

    Olá;

    Código:
        Set rsO = CurrentDb.OpenRecordset("SELECT IdOrdem as NOrdem,dataOrdem FROM Pedidos WHERE IdCliente=" & rsC.Fields("IdCliente") & " ORDER BY dataOrdem DESC", , dbReadOnly)


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    avatar
    Ronaldo Costa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 178
    Registrado : 14/03/2011

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  Ronaldo Costa em 13/11/2018, 14:31

    Ok, João Paulo. Obrigado!

    Desculpe, coloquei como resolvido, mas tinha uma outra solicitação:

    Como faço para incluir mais um nível? Transportadora, por exemplo.
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10283
    Registrado : 04/11/2009

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  JPaulo em 13/11/2018, 15:00

    Basta acrescentar outra designação ao node;

    Código:
    Private Sub btTV_Click()
    Dim tempNode As MSComctlLib.Node
    Dim rsC As DAO.Recordset
    Dim rsO As DAO.Recordset

    TV.Nodes.Clear

    Set tempNode = TV.Nodes.Add(, , "C", "Clientes")
    Set tempNode = TV.Nodes.Add(, , "TR", "Transportadora")


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    avatar
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 553
    Registrado : 13/12/2016

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  Alexandre Fim em 13/11/2018, 15:09

    Olá Ronaldo Costa,

    Só um comentário a fazer.
    Eu, particularmente, gosto mais do TreeView do que o Ribbon, para criar menus, mas o componente TreeView faz parte do MSCOMCTL.ocx, e este componente não é nativo do Access, mas do Windows.
    E por não ser nativo do Access, o teu sistema pode gerar alguma incompatibilidade com este componente, dependendo da máquina que estiver rodando, pois a MSCOMCTL.ocx tem que estar na mesma versão da máquina em que o sistema foi desenvolvido, no que implica em copiar a ocx e registrá-la na máquina do usuário final.

    Espero ter ajudado.

    []'s

    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10283
    Registrado : 04/11/2009

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  JPaulo em 13/11/2018, 15:15

    "MSCOMCTL.ocx tem que estar na mesma versão da máquina em que o sistema foi desenvolvido"

    Amigão, discordo.

    Testei o exemplo numa maquina com Office365 (Ms Access 2016) sem problema.
    Testei numa com Ms Access 2010 também sem problema.

    Você pode-me fornecer algum exemplo de problema de incompatibilidade, por favor ?




    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    avatar
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 553
    Registrado : 13/12/2016

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  Alexandre Fim em 13/11/2018, 15:29

    Olá JPaulo,

    Já me deparei com este tipo de problema quando desenvolvi um sistema em Access 2007 plataforma 32 bits, utilizando TreeView e o ListView e que as versão desta .ocx era a 6.01.9833.

    Quando o sistema foi migrado para a versão 2013, na plataforma 64 bits, o Treeview e o ListView já não funcionavam mais, e tive que substituir a .ocx pela versão 6.01.9834.

    Eu sugiro que, quando for desenvolver no Access, que seja utilizado os objetos nativos do próprio Access, e eu posso falar com certa propriedade que já tive muita dor de cabeça com isso....rssss.

    Sempre trabalhei com ferramentas Microsoft, principalmente o Visual Studio, VB.Net, C#, ASP.Net, mas o Access (versão 2.0) foi minha primeira ferramenta de desenvolvimento e eu gosto muito de trabalhar com ele.



    Um grande abraço.

    []'s



    avatar
    Ronaldo Costa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 178
    Registrado : 14/03/2011

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  Ronaldo Costa em 13/11/2018, 15:38

    Basta acrescentar outra designação ao node;


    João Paulo, acho que não fui claro. Considerando o que já existe, gostaria, por exemplo, de ao clicar em uma data, me mostrasse as transportadoras que sairão na data específica.

    grato
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10283
    Registrado : 04/11/2009

    Re: [Resolvido]Controle Treeview erro sintaxe

    Mensagem  JPaulo em 13/11/2018, 15:42

    Ola;

    @Alexandre, aceito a explicação.

    @Ronaldo, este tópico está resolvido, com a sua duvida inicial.

    Você tem uma nova duvida que não tem a haver com o problema inicial, abra por favor um novo tópico.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]

      Data/hora atual: 16/12/2018, 11:20