Work area not in use on MSCOPYFILE(APLIB070.PRW)

Estou escrevendo um fonte para copiar algumas tabelas, porém está dando este erro do título. Alguém sabe o que pode ser o erro? Segue trecho do fonte:


#include "protheus.ch"

User Function TestCopy()

DBUSEAREA(.T.,"CTREECDX",'SED0101', "SED", .F., .T.)

cFileIni := 'system\sed0101.dtc'
cFileFim := 'BACKUP\sed0101_bkp.dtc'

 If ! MsCopyFile(cFileIni, cFileFim)
     MsgAlert("O arquivo não pôde ser copiado.")

    Else    
    MsgAlert("O arquivo foi copiado com sucesso.")

    EndIf

    Return

ERRO: Capturar.PNG

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

Sua tabela SED010 original está em CTREE ou TOPCONN, sua origem digamos assim.

A tabela está em Ctree

Anne, Para corrigir seu fonte basta deixá-lo desta forma, era apenas um erro de sintaxe no uso da função MsCopy:


#include "protheus.ch"

User Function TestCopy()

cFileIni := '\system\sed0101.dtc'
cFileFim := '\BACKUP\sed0101_bkp.dtc'

 If ! MsCopyFile(cFileIni, cFileFim,'CTREECDX')
     MsgAlert("O arquivo não pôde ser copiado.")
Else    
    MsgAlert("O arquivo foi copiado com sucesso.")
EndIf

Return

Se for apenas uma operação de cópia simples de uma pasta para outra no próprio servidor pode usar a função __CopyFile(cFileOrig,cFileDest), esta função faz apenas uma cópia simples e direta (a MsCopyFile é para arquivos de banco de dados). Esta função inclusive permite mais flexibilidade, você pode copiar servidor-servidor, servidor-cliente, cliente-cliente, cliente-servidor, e até com nomes de arquivo diferentes.

Também existe as funções CpyT2S(https://tdn.totvs.com/display/tec/CpyT2S) que faz a cópia de um arquivo do servidor->cliente mantendo o mesmo nome original do arquivo, e a função CpyS2T(https://tdn.totvs.com/display/tec/CpyS2T) que faz o caminho reverso. ATENTE que estas funções mantém o mesmo nome de arquivo original.

Olá Cirilo! Muito obrigada pela ajuda, fiz aqui os ajustes de acordo com o que você repassou e deu certo! A cópia da tabela foi feita. Obrigada!