Ajude o site desativando o bloqueador de anúncio

ASSINE A NEWSLETTER

Cadastrando...
PIX uDesenv pix deposito

CpyF2Web [AS] - A função copia um arquivo entre o Servidor e a Estação de Trabal

Autor: Eurai Criado: 08/06/2025 Atualizado: 11/06/2025

Descrição

CpyF2Web [AS] - A função copia um arquivo entre o Servidor e a Estação de Trabalho e vice-versa.

 

Sintaxe

CpyF2Web( < cOrigem >, [ lIsUserDiskDir ], [ lCompactCopy ], [ lChangeCase ], [ lUnZipFile ] )

 

Parâmetros


Par Nome Tipo Descrição Default
01
cOrigem
Caracter
Indica o arquivo 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",...
 
02 LIsUserDiskDir lógico Se LIsUserDiskDir for definido como .T.
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

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
.T.
03 lCompactCopy lógico Indica se o arquivo deve ser internamente compactado (.T.) antes de fazer a cópia .T.
04 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.
 .T.
05 lUnZipFile lógico Se verdadeiro (.T.), o arquivo será descompactado no diretório de destino. Default =   .F.

 

Retorno

Retorno Tipo Descrição
lRet Boolean
Retorna verdadeiro (.T.), se o arquivo for copiado com sucesso; Retorna falso (.F.), em caso de falha na cópia

 

Exemplo

#INCLUDE "TOTVS.CH"

User Function CpyF2Web()

  Local cRet := CpyF2Web("c:/temp/XXXX.zip", .T., .F., .T., .F.)
    If (cRet != "")
        conout(cRet)
    Else
        conout("Falha na copia")
    EndIf
 
Return( Nil )

Resultado
                                       

 

 

Informações adicionais

Disponível apenas para uso com o WebApp (sem Web-Agent). Caso esteja com o Web-Agent, utilizar as funções de cópia padrão (CpyS2T, CpyT2S).

 

Para identificar se o Web-Agent está em uso ou não, deve-se utilizar a função GetRemoteType

 
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 uma letra de drive, ex c:\, mesmo em Linux/MacOS, para que haja uma diferenciação da origem do arquivo:

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.

 

 

 

 

 

Gostou? Compartilhe com seus amigos e deixe um comentário! 😎  

 

 

 

 

 

 

 

Discussão (0)

Sem comentários ainda

Realize o LOGIN no site para poder comentar