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


3 participantes

    [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  Silvio 7/4/2022, 18:55

    Bom dia / boa tarde / boa noite.

    Prezados, gostaria de coletar, saber e conhecer a opinião de vocês a respeito do enunciado no tópico.

    Qual o melhor caminho para isso ?

    1- em cada front end ter uma rotina, que ao chegar em determinado horário o front end mesmo se encerra ?

    ou

    2- uma rotina para escolher qual front end escolher para fechar ?


    Motivo...as 20h00 de segunda a sexta eu rodo o Cobian para fazer o BKP do sistema. E sempre olho o Log de eventos do mesmo.
    E percebo que em certo dias, ele não está fazendo...tem alguém esquecendo o sistema logado ainda no servidor. E isso impede de realizar o BKP.


    Então, gostaria que opinassem qual o melhor caminho a ser seguido.

    Abraços a todos.



    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3845
    Registrado : 22/11/2016

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty Re: [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  DamascenoJr. 8/4/2022, 02:52

    Tópico movido de "Módulo e VBA".

    Silvio, penso que ter um contador nos front-ends que cheque a hora para saber se fecha ou não pode acabar afetando o desempenho do seu sistema.

    Minha dica seria ter um script no agendador de tarefas para forçar o fechamento dos programas que desejas.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty Re: [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  JPaulo 8/4/2022, 11:37

    Concordo plenamente que essa tarefa não deve ser feita dentro dos bancos, teria de ter um timer a correr e prejudicar o desempenho.

    O que tenho feito desde à muitos anos é;

    No agendedor de tarefas da máquina, agendar para correr o VBScript.

    Anexo aqui dois exemplos de VBScript a funcionarem, pode editar o vbs com o notepad++ ou simplesmente abrir com o notepad normal.
    Um valida a hora e o outro apenas encerra o banco quando for chamado.
    Anexos
    [Resolvido]Finalizar todos os Front end  aberto em horário programado. AttachmentVBS_Fecha_Banco.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1 Kb) Baixado 13 vez(es)


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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new Instruções SQL como utilizar...
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty Re: [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  Silvio 8/4/2022, 12:12

    Bom dia / Boa tarde / Boa noite.

    JPaulo e Damasceno, grato por opinarem.

    Sim, de fato ter um VBS faz com que fique mais simplificada a tarefa de encerrar o sistema em questão e menos pesado os Front End sem o acréscimo de mais uma rotina.

    Vou testar o VBS do JPaulo aqui no meu computador.

    Apenas uma pergunta JPaulo, o VBS aceita AM-Pm ou formato do mesmo é 24 horas, exempo.....20:00 ?

    Grato.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty Re: [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  JPaulo 8/4/2022, 15:59

    É CurrentTime>=#20:00:01#, não necessita do AM/PM.

    Mas se você usar o agendedor de tarefas da máquina, não necessita de invocar a hora no VBS.


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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new Instruções SQL como utilizar...
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty Re: [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  Silvio 8/4/2022, 21:18

    Bom dia / boa tarde / boa noite.

    Colegas segue o que eu fiz....

    No agendador de tarefas do Windows, nas estações, caso alguém esqueça o micro ligado
    Código:
    Dim CurrentTime
    Dim objShell
    CurrentTime = Time()


    Set objShell = WScript.CreateObject("WScript.Shell")
        objShell.Run "C:\WINDOWS\system32\shutdown.exe -s -t 0 -f"
    End If

    'mensagem de erro   
    If Err.Number <> 0 Then
        'error handling:
        'WScript.Echo Err.Number & " Srce: " & Err.Source & " Desc: " &  Err.Description
        Err.Clear
       WScript.Quit 0
    End If

    WScript.Quit 0

    Os micros serão desligados.

    No servidor, onde está o sistema e o Cobian, colocado no agendador de tarefas

    Código:
    Dim CurrentTime
    Dim accessApp
    'desenvolvido por JPaulo para o maximoaccess
    'obtem a hora atual
     CurrentTime = Time()


    If CurrentTime>=#20:00:01# Then

    'invocar qual o banco a ser encerrado
      set accessApp = GetObject("C:\SisRepre\SisRepre.accdb")
    'fecha o banco
    accessApp.quit
    set accessApp = nothing
    WScript.Quit 0
        Else
          'não faz nada
    End If
       
    If Err.Number <> 0 Then
        'error handling:
        'WScript.Echo Err.Number & " Srce: " & Err.Source & " Desc: " &  Err.Description
        Err.Clear
       WScript.Quit 0
    End If

    WScript.Quit 0

    Fecha o sistema no servidor e o Cobian faz o BKP

    Grato, gratidão a todos que participaram e me direcionaram na melhor pratica.

    Abraços.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty Re: [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  JPaulo 11/4/2022, 13:57

    Obrigado pelo retorno, o fórum agradece.


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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Finalizar todos os Front end  aberto em horário programado. Empty Re: [Resolvido]Finalizar todos os Front end aberto em horário programado.

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 23/11/2024, 00:32