1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

[RESOLVIDO] getCurrentDir no TOTVS 11.5

Discussão em 'EMS , HCM e Totvs 11' iniciado por savoine, Julho 21, 2014.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. savoine

    savoine Sem Pontuação

    O getCurrentDir no TOTVS11.5 retorna o diretório do navegador.

    Código:
    DEF VAR h-prog AS HANDLE               NO-UNDO.   
    DEF VAR c-arq  AS CHAR FORMAT "x(400)" NO-UNDO.
      
    RUN utp/ut-utils.p PERSISTENT SET h-prog.
    RUN GetCurrentDir IN h-prog(OUTPUT c-arq).
    
    MESSAGE c-arq VIEW-AS ALERT-BOX.
    
    Alguem já passou por isso???
  2. pizzaia

    pizzaia Membro Participativo

    estou na versão 11.5.9 e acontece igual.
    C:\Program Files\Google\Chrome\Application\35.0.1916.153

    se fizer por fora, só pelo Appbuilder:
    C:\Windows

    ...
  3. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Realmente isso vai acontecer, porque quem chama o Progress é o navegador, diferente das versões anteriores que tínhamos o diretório de trabalho no atalho.

    Caso precisa mudar, você pode colocar este comando no seu *alias.p , e adaptar conforme sua necessidade, no meu exemplo pego variáveis do windows para definir o diretório de trabalho e temp-directory diferente para cada usuário.

    PHP:
    RUN SetCurrentDirectoryA (INPUT OS-GETENV("homedrive") + OS-GETENV("homepath") + "\Temp\",
                                                              OUTPUT i-retorno).
                             
    /* LEMBRAR DE COMENTAR O -T DO PF, PARA DEFINIR O TEMP-DIRECTORY IGUAL  */

    PROCEDURE SetCurrentDirectoryA EXTERNAL "
    KERNEL32.DLL":
           DEFINE INPUT  PARAMETER chrCurDir AS CHARACTER.
           DEFINE RETURN PARAMETER intResult AS LONG.
    END PROCEDURE.
    Já fiz isso para resolver problema onde os usuários compartilhavam os acessos através de um servidor TS.

    Espero que ajude.
  4. jaozi_nho

    jaozi_nho Membro Participativo


    Olá, o diretorio corrente deu certo, mais o session:temp-dir não da para setar via codigo, apenas com o -T, como fazer nesse caso ?
  5. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Olá @jaozi_nho ,

    Se você não setar no o parâmetro -T, a sessão atribui o diretório temporário como o diretório corrente, eu coloquei este código na primeira linha do alias.p e em um cliente funcionou, o SESSION:TEMP-DIRECTORY foi atribuído.

    Verifica se o -T não esta setado em algum outro lugar.
  6. jaozi_nho

    jaozi_nho Membro Participativo

    Como primeira linha do alias da 99% certo, alguns arquivos temporarios do progress como o srta, rcda e lbia ficam na pasta antes da mudança (Chrome e etc..) o arquivo temporario DBIXXX ficou no novo diretorio, talvez por ele ser o ultimo a ser criado juntamente com a variavel SESSION:TEMP-DIR ficou setada com o novo diretório .

    Obrigado, isso vai ajudar em alguns casos, mais não recomendaria utilizar para resolver problemas de usuários na mesma maquina TS, a solução melhor ainda é criar uma pasta local separada mapeada com uma letra S: e etc..

    Abraço .
    Última edição: Julho 25, 2014
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página