Ajude o site desativando o bloqueador de anúncio

ASSINE A NEWSLETTER

Cadastrando...
PIX uDesenv pix deposito

CpyT2S [AS]

Autor: Eurai Criado: 01/01/2016 Atualizado: 25/04/2025

Descrição

CpyT2S [AS] - Copia um arquivo (compactado ou não) do client (Remote) para o servidor.

 

Sintaxe

CpyT2S( <cOrigem>, <cDestino>, <lCompress> )

 

Parâmetros


Par Nome Tipo Descrição Default Obg Ref
01
cOrigem
Caracter
Indica o nome do arquivo será copiado, além de aceitar caracteres curingas (* e ?).
  X  
02 cDestino
Caracter
Indica o diretório de destino dos arquivos no servidor
  X  
03 lCompress
Boolean Indica se o arquivo deve ser internamente compactado antes de fazer a cópia. Default = .T. ( verdadeiro )
.T.    

 

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 CpyT2S()

If CpyT2S( "C:\TEMP\SX3010.DTC", "\APPEND" )
 Conout( 'Copiado com Sucesso' )
Endif
 
Return( Nil )

Resultado
cpyt2s_-_resultado_01                                       

 

 

Informações adicionais

A função CpyT2S exige que o programa AdvPL que a execute seja um SmartClient, não permitindo, portanto, que seja chamada em JOB. A partir da build 7.00.120420A, caso a função seja chamada em JOB, o programa será finalizado com ocorrência de erro fatal (Function CpyT2S doesn't available in JOB.). Nas builds anteriores, se CpyT2S fosse chamada em JOB, ela não era executada e não gerava mensagem de advertência ou ocorrência de erro

Caso a compactação esteja habilitada ( Default = .T. ) , no parâmetro <lCompacta>, o arquivo será compactado automaticamente no client antes do envio, e descompactado automaticamente no servidor. Para a grande parte dos tipos de arquivo, utilizar a compactação reduz o tempo de cópia, pois o conteúdo trafegado pela rede é menor. Para tráfego de arquivos que já possuem algum tipo de compressão de dados ( ZIP, TAR, RAR, JPG, MPG ), é mais eficiente especificar este parâmetro com .F., para que a compactação automática não seja utilizada, pois nestes casos a mesma não agregará nenhum ganho neste processo

O diretório no destino (servidor) deve existir para que a cópia seja realizada com sucesso. Caso a cópia falhe, para identificação do motivo do erro, a função FError deve ser chamada

Quando o SmartClient utilizado for uma build nativa Linux ou Mac, sabe-se que sistema de arquivos destas plataformas não têm unidade de disco, a nomenclatura dos arquivos é case sensitive ( letras minúsculas diferente de maiúsculas ), e as barras separadoras de diretório / pasta são barras normais "/" ao invés de barras inversas "\". Mesmo nestes casos, deve-se especificar uma letra de unidade de disco no diretório de destino; pois quando o SmartClient em Linux e/ou Mac receber o diretório de destino, com a unidade de disco especificada, a unidade de disco será ignorada e as barras serão internamente invertidas.

Por exemplo, a cópia especificando o path de destino "C:\USER\LOCAL\TEMP\" será interpretado pelo smartclient Linux e/ou Max como "/user/local/temp/"

 

 

 

 

 

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