MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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

    Variaveis dinamicas para utilização de metodos

    pedropfinot
    pedropfinot
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 18/08/2017

    Variaveis dinamicas para utilização de metodos Empty Variaveis dinamicas para utilização de metodos

    Mensagem  pedropfinot 30/11/2020, 10:31

    Olá,

    Estou há alguns dias pesquisando sobre e não estou conseguindo encontrar nada que resolva o meu "problema".

    A questão é a seguinte, vou tentar explicar de uma forma simples, mesmo não sendo.

    Eu tenho um formulário aonde preciso movimentar alguns subform dentro dele, com o metodo .Move, até ai sem problemas eu posso simplesmente executar:
    form_subform.move 0, 10

    Esse é um form para visualização de relatorios, então, esses subforms que estão dentro são filtros específicos de cada relatório, por exemplo:
    - Quero um relatório de vendas no periodo 01/01/20 a 31/12/20 , com status do pedido x e do cliente y.
    No meu caso eu estou utilizando 2 subforms que eu chamo de "parâmetros" são eles (pVendas e pCliente). Então no meu formulário principal o sistema ja esta entendendo quais subforms é para mostrar referente a qual relatorio estou solicitando, isso já ta ok, porém, dentro das limitações do Access eu coloquei 5 subforms (por enquanto), um logo abaixo do outro, eles estão na seguinte ordem:

    - pVendas;
    - pCliente;
    - pItensFornecedor;
    - pExcursao;
    - pRepresentante;

    Nesse caso acima que eu citei o relatório em questão utiliza os filtros pVendas e pCliente, como um esta abaixo do outro a estética do meu formulário fica boa, porém, quando eu seleciono um outro relatório:
    - Quero um relatório de vendas no período X e do representante Y;
    O formulário já entende que esse relatório não utiliza os subforms: pCliente, pItensFornecedor e pExcursao, ai a estética do meu formulário fica um subform lá em cima e os espaços que seriam dos outros subforms em branco abaixo.

    Então eu estava tentando o seguinte, salvar em alguma variável, por exemplo "VariavelX" e substituir o comando:
    form_subform.move 0, 10 para VariavelX.move 0,10

    Se existir essa possibilidade já vai resolver o meu problema, porque ai nesse caso eu deixo o formulário dinâmico, caso venha criar mais 10 subforms.

    Obs: Já tentei a opção de deixar marcado "Pode ampliar e reduzir", mas não funcionou como esperado, não sei se estou fazendo do modo correto.
    Obs2: Não consigo postar o arquivo do aplicativo pois o banco de dados é em PostgreSQL.

    Obs3: Hoje o meu form está dessa form, estou modificando pois toda vez que preciso adicionar um novo relatorio ao sistema, preciso incluir no ribbon, no modulo do ribbon e as vezes adicionar um filtro diferente, aonde vai começar a criar uma barra de rolagem e para o usuario isso fica muito ruim.

    Formulário atual
    Variaveis dinamicas para utilização de metodos Form_a10

    Novo formulário
    Nesse novo form, já da pra vocês verem aonde eu falo que fica um espaço em branco.
    Variaveis dinamicas para utilização de metodos Form_n10


    Peço desculpas se caso ficou difícil o entendimento.

    Agradeço desde já a atenção de todos.
    ANTONILDO CORDEIRO
    ANTONILDO CORDEIRO
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 02/04/2019

    Variaveis dinamicas para utilização de metodos Empty Re: Variaveis dinamicas para utilização de metodos

    Mensagem  ANTONILDO CORDEIRO 30/11/2020, 16:48

    Boa tarde, Pedro!!
    usando o ao redimencionar do formulario nao resolveria?
    pedropfinot
    pedropfinot
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 18/08/2017

    Variaveis dinamicas para utilização de metodos Empty Re: Variaveis dinamicas para utilização de metodos

    Mensagem  pedropfinot 1/12/2020, 15:12

    Boa tarde!!!!

    Acredito que nunca utilizei, como funciona?
    ANTONILDO CORDEIRO
    ANTONILDO CORDEIRO
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 02/04/2019

    Variaveis dinamicas para utilização de metodos Empty Re: Variaveis dinamicas para utilização de metodos

    Mensagem  ANTONILDO CORDEIRO 2/12/2020, 15:37

    Boa tarde!!
    desculpa a demora

    use esse codigo no ao redimensionar do seu formulario

    DoCmd.MoveSize 0, 1200
    o zero é distancia da esquerda para a direita da sua tela e o 1200 da direita para esquerda
    avatar
    lamonjr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 0%

    Sexo : Masculino
    Localização : Australia
    Mensagens : 2
    Registrado : 14/12/2012

    Variaveis dinamicas para utilização de metodos Empty Referência

    Mensagem  lamonjr 9/12/2020, 21:45

    Tento nomeform(variavelnomesubform).Move x, y?
    avatar
    sosergio
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 23/08/2013

    Variaveis dinamicas para utilização de metodos Empty Re: Variaveis dinamicas para utilização de metodos

    Mensagem  sosergio 10/12/2020, 00:18

    Minha sugestão e formatar todos os subforms e sobrepor uns sobre os outros, utilizar .visible para ocultar e mostrar de acordo com sua necessidade.
    pedropfinot
    pedropfinot
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 18/08/2017

    Variaveis dinamicas para utilização de metodos Empty Re: Variaveis dinamicas para utilização de metodos

    Mensagem  pedropfinot 10/12/2020, 03:10

    Boa noite a todos, peço desculpas pela inatividade. Foram dias muito corridos.

    Vou responder cada um.

    ANTONILDO CORDEIRO escreveu:
    Boa tarde!!
    desculpa a demora

    use esse codigo no ao redimensionar do seu formulario

    DoCmd.MoveSize 0, 1200
    o zero é distancia da esquerda para a direita da sua tela e o 1200 da direita para esquerda

    Antonio, tudo bem? Eu cheguei a testar a sua ideia, mas não funcionou tbm. Se caso tiver alguma outra, ficaria muito agradecido.


    lamonjr escreveu:
    Tento nomeform(variavelnomesubform).Move x, y?

    Lamonjr, tudo bem? Essa foi a minha primeira tentativa, dessa forma o access não reconhece a informação que esta dentro da variavel para chamar o metodo .move.

    Eu estava fazendo algo nesse sentido:
    Form_rel_frmBaseRelatorio. & nomeVariavel & .move x,y
    "Form_rel_frmBaseRelatorio." & nomeVariavel & ".move x,y"

    Tentei de umas 10x diferentes.

    Se caso eu estiver fazendo algo errado, estou aberto a aprender a maneira correta.


    sosergio escreveu:
    Minha sugestão e formatar todos os subforms e sobrepor uns sobre os outros, utilizar .visible para ocultar e mostrar de acordo com sua necessidade.

    Sosergio, tudo bem? Sua sugestão não é ruim, mas já cheguei a pensar tbm e acaba não dando certo, por exemplo: São 5 subforms.
    Se eu colocar um sobre o outro, ai vamos dizer quando o usuario selecionar o relatorio "x", o sistema vai entender qual subform é pra aparecer, tem alguns relatorios que eu utilizo somente 1 subform, mas tem varios outros que eu preciso de 2 ou 3. Ai nesse caso como eu faria para que um subform ficasse abaixo do outro.

    Se existir alguma forma de fazer dessa maneira eu topo o teste, pois eu estou fazendo o oposto, estou colocando um abaixo do outro e tentando alinhar eles para cima, mas se tiver essa forma de alinhar eles para baixo, dando certo é o importante.

    Agradeço desde ja a atenção de todos.



    avatar
    lamonjr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 0%

    Sexo : Masculino
    Localização : Australia
    Mensagens : 2
    Registrado : 14/12/2012

    Variaveis dinamicas para utilização de metodos Empty Referência dinâmica de nome de subformulario

    Mensagem  lamonjr 10/12/2020, 15:34

    Usa assim:
    Me(variavel_nome_sub).Visível = True
    Assim você torna visível o subformulario especificado na variável.
    Se quiser manda seu email que envio um exemplo.
    lamonjr@gmail.com
    avatar
    lindomar
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 05/03/2011

    Variaveis dinamicas para utilização de metodos Empty Variaveis dinamicas

    Mensagem  lindomar 11/12/2020, 15:25

    Bom dia

    Não modelei seu exemplo para uma pratica (teste)
    Mas posso lhes ajudar dando uma dica se for possivel dentro do seu projeto.
    dentro do formulário principal contrua uma função com os parametros
    SubForm com a propriedade string (formname) para a visibilidade de cada um.
    SBMove as long para o valor de distanciamento do movimento, caso tenha mais de um método de movimento adicione SBMove2...

    Agora vamos a Ideia principal

    Adicione um reset dos subformulários aos filtros
    Tipo, filtro 01 preciso de apenas um subform ao executar o seu filtro antes do filtro execute a função orientado-a qual form estará visível e apos isso a sua movimentação do subform
    Após orientar os formulários desejáveis aplique seu filtro.

    Exemplo:
    Tipo Filtro 01
    Reset todos os formulários ao padrão
    FunçãoSBRelatorio("SForm01", posição 01, posição 02)
    FunçãoSBRelatorio("SForm04" , posição 01, posição 02) Move distância (distância para baixo ou lado do form visível 01)
    o mesmos para os tipos seguintes filtros

    Na função seria
    Sbform as Form
    SbForm.visible = true
    SbForm.move SBMove2, SBMove2 (o tipo será conforme subForm ou controle do subForm)

    Com base no que passou do seu projeto creio que entenderá perfeitamente.

      Data/hora atual: 17/6/2021, 18:19