Faz o upload de um arquivo via protocolo SFTP para o Totvs Application Server, utilizando uma autenticação por certificado (em formato PEM) podendo ser carregada pelo o AppServer através de uma configuração no INI conforme o exemplo abaixo:
[SFTP] PrivateKey=C:/Keys/MyUser/id_rsa PublicKey=C:/Keys/MyUser/id_rsa.pub
Caso o certificado, tenha sido gerada com uma senha, é necessário configurá-la no INI através da chave certpassword conforme o exemplo:
[SFTP] PrivateKey=C:/Keys/MyUser/id_rsa PublicKey=C:/Keys/MyUser/id_rsa.pub
Certpassword=minhaSenha123
Sintaxe
nStatus := SFTPUpld2( < sFileName >, < sRemotePath >, < sServer >, < sUser > , [ @sError ] )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
sFileName | caractere | Caminho completo do arquivo a ser transferido do seu computador | X | |
sRemotePath | caractere | Caminho completo do arquivo a ser salvo no servidor remoto | X | |
sServer | caractere | Endereço do servidor remoto | X | |
sUser | caractere | Nome do usuário | X | |
sError | caractere | Obtém por referência uma string contendo detalhes em caso de falha na execução da função | X |
Retorno
Nome | Tipo | Descrição |
---|---|---|
aResult | vetor | 0 = Sucesso | Quanquer retorno diferente de zero indica falha na operação |
Exemplos
Exemplo de implementação do upload de arquivo utilizando autenticação por chave PEM existente.
User Function uploadSFTPexemplo2() Local nStatus , cError := '' nStatus := SFTPUpld2("meuarquivo.txt", "/home/user/meufile.txt", "cloud1.dominio.com", "user", @cError) if (nStatus != 0) Conout("Falha ao transferir arquivo : "+cError) endif Return
Abrangência
Função disponível, na linguagem TLPP, para build superior a 19.3.1.7.
IMPORTANTE: Utilizar preferencialmente na linguagem TLPP pois o suporte desta função no AdvPL está sendo descontinuado.