Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Nota
titleInformações importantes

🚨 Função disponível disponível somente para o WebApp, a partir da versão 9.1.x do WebApp.

A função copia um arquivo do ambiente do Servidor (a partir do rootpath) ou do cliente (WebAgent), para a estação de trabalho onde o WebApp esta sendo executado.
Se o arquivo for copiado para a pasta temporária (User) no Servidor, esta pasta é deletada automaticamente quando a sessão é finalizada.
Se o arquivo for copiado para a pasta persistente (Cache) no Servidor, a pasta será mantida até que seja excluída manualmente pelo administrador do ambienteentre o Servidor e a Estação de Trabalho e vice-versa.

Sintaxe

Bloco de código
collapsefalse
CpyF2Web( < cOrigem >, [ lIsUserDiskDir ], [ lCompactCopy ], [ lChangeCase ], [ lUnZipFile ] )

...

Nome

Tipo

Descrição

Obrigatório

Referência

cOrigem

caractere

Indica o arquivo a ser usado como origem da cópia:de origem para a cópia.

Para cópia de um arquivo do Servidor para a Estação de Trabalho utilize:

CpyF2Web("/images/imagem.png", ...

Para cópia de um arquivo da Estação de Trabalho para o Servidor utilize:

Para Windows:

CpyF2Web("c:/images/imagem.png",...

Para Linux/MacOS:

CpyF2Web("l:/images/imagem.png",...

X


lIsUserDiskDirLIsUserDiskDir

lógicoIndica se o arquivo vai ser salvo na pasta temporária (.T.) ou na pasta do Environment (.F.) onde está o Servidor. Default = .T. (verdadeiro).

Se LIsUserDiskDir for definido como .T. (Default)

O arquivo será copiado para a pasta .../appserver/webapp/user/<ID do usuário>/.

Essa pasta é temporária, permitindo o uso do arquivo durante a sessão deste usuário, sendo excluída na sequência.

Exemplo de retorno copiando o arquivo para a pasta USER:

cf899c9b-7ab5-4d60-a2b6-a35651a9d18f/user/4255d3238e2e4c00921b449a59111f95/file.txt

Se LIsUserDiskDir for definido como .F.

O arquivo será copiado para a pasta .../appserver/webapp/cache/<environment>/.

Essa pasta é excluida caso:
-O Servidor de Aplicação (AppServer) seja reiniciado;
-O Administrador do ERP a exclua manualmente.

Exemplo de retorno copiando o arquivo para a pasta CACHE:

cf899c9b-7ab5-4d60-a2b6-a35651a9d18f/cache/sqlite/file.txt



lCompactCopy

lógico

Indica se o arquivo deve ser internamente compactado (.T.) antes de fazer a cópia. Default = .T. (verdadeiro).



lChangeCase

lógico

Se verdadeiro (.T.), nomes de arquivos e pastas serão convertidos para letras minúsculas;
caso contrário, falso (.F.), não será feito nenhum ajuste no nome do arquivo informado. Default = .T. (verdadeiro).

Veja maiores informações em Observações.



lUnZipFile

lógico

Se verdadeiro (.T.), o arquivo será descompactado no diretório de destino. Default = .F. (falso).



...

Esta função está disponível somente para o WebApp.
Informações
icontrue
titleObservações
  • A função CpyF2Web não permite execução via Job, sendo finalizada com a mensagem de erro: "Function CpyF2Web() doesn't available in JOB.".

  • É importante evitar o uso do parâmetro <lCompactCopy> caso esteja copiando um arquivo já compactado (ex: ZIP, TAR, etc), evitando um processo desnecessário.

  • Para Linux, o parâmetro <lChangeCase> definido como (.T.) tem prioridade em relação às chaves CASESENSITIVE ou SERVERTYPE definidas no appserver.ini.
  • Para Windows, o parâmetro <lChangeCase> não influência na utilização, pois este sistema operacional é case insensitive.

  • Quando referenciar arquivos na estação de trabalho é importante utilizar um uma letra de drive, ex c:\, mesmo em Linux/MacOS, para que haja uma diferenciação da origem do arquivo, utilze:
    Para Windows: 
    "c:\diretorio\arquivo"
    Para Linux/MacOS:
    "l:/diretorio/arquivo"

  • Quando a origem estiver na estação de trabalho é obrigatório a utilização do WebAgent para a cópia.

...