Jump to content
Fivewin Brasil

FTP trasnferencia alterando a data


MAMP2

Recommended Posts

Bom dia a todos, estou usando a trasnferencia via FTP e a data/hora do arquivo que estou trasnferindo

nao esta sendo levado para o local onde a copia esta sendo feita ele colocar a data e hora

da trasnfenrencia, como tenho 10 usuarios e ele faz copia uma a um o arquivo fica com a data X no meu

computador e nos outros 10 com datas e horas diferentes, alguem sabe como contornar este problema?

 

Link to comment
Share on other sites

   Se a conexão for rápida você pode transferir a data e hora internamente em um arquivo, mesmo que não seja o que está atualmente usando e sempre utilizar esses dados internos nos demais computadores. Acredito que usa esses dados para atualizar informações ou versões, então basta guardar o data/hora nos computadores antes de compará-la para fazer atualizações.

   Caso tenha uma rotina bem simples de FTP eu gostaria de vê-la.

Link to comment
Share on other sites

bom dia infomax, segue a rotina.

********************
Function ZIPA_DBF2()
********************

 LOCAL cArq
 LOCAL lRet   := .F.
 LOCAL aFiles := {}

 if file("c:\mot\motvai1.zip")
   delete file c:\mot\motvai1.zip
 endif

 aFiles := { "C:\MOT\QU_01.DBF","C:\MOT\CO_99.DBF","C:\MOT\CX_99.DBF","C:\MOT\MD_99.DBF" }

 msgwait(OemToAnsi("Iniciando Compactacao de Arquivos ","",2))

 cArq = "C:\MOT\MOTVAI1.ZIP"

 lRet := hb_ZipFile( cArq, aFiles )

 if .not. lRet
   msgwait(OemToAnsi("Compactacao de Arquivos nao executada","",2))
 else
   msgwait(OemToAnsi("Compactacao de Arquivos Terminada","",2))
 endif

Return(Nil)

Link to comment
Share on other sites

desculpa infomax errei na hora de copiar e colar, segue a certa

********************************
FUNCTION DownloadFTP( cArquivo )
********************************

   **\ LOCAL cINIFILE := GetWinDir() + "\FTP.INI"
   LOCAL aFiles
   LOCAL n
   LOCAL cUrl
   LOCAL cStr
   LOCAL lRetorno  := .T.
   LOCAL oUrl
   LOCAL oFTP
   LOCAL cFile     := ""
   LOCAL lElim
   *
   memvar->te_ftp_loc  := memvar->te_end_ftp
   memvar->te_ftp_log  := memvar->te_log_ftp
   memvar->te_ftp_sen  := memvar->te_sen_ftp

   cSERVER   := alltrim(memvar->te_ftp_loc) // nome do endereco FTP
   cUSER     := alltrim(memvar->te_ftp_log) // usuario FTP
   cPASSWORD := alltrim(memvar->te_ftp_sen) // senha FTP

   memvar->te_certo = "N"
   *
   *
   DEFAULT lElim TO .F.
   *
   cUrl      := "ftp://" + cUser + ":" + cPassword + "@" + cServer
   *
   oUrl              := tUrl():New( cUrl )
   oFTP              := tIPClientFtp():New( oUrl, .F. )
   oFTP:nConnTimeout := 20000
   oFTP:bUsePasv     := .T.
   cCaminhoFTP := "/"
   *
   // Comprobamos si el usuario contiene una @ para forzar el userid
   msg_sen = "Senha nao Validada"
   IF At( "@", cUser ) > 0
      oFTP:oUrl:cServer   := cServer
      oFTP:oUrl:cUserID   := cUser
      oFTP:oUrl:cPassword := cPassword
      msg_sen = "Senha Validada"
   ENDIF
   *

   memvar->te_conta = 0

   do while .t.

     memvar->te_conta += 1

     IF oFTP:Open( cUrl )
        oFtp:cwd( cCaminho )
        IF !oFtp:DownloadFile( cArquivo , cArquivo )
           lRetorno := .F.
           return lRetorno := .f.
          oFTP:Close()
        ELSE
           memvar->te_certo = "S"
           Return lRetorno := .t.
          oFTP:Close()
          exit
        ENDIF
     ELSE
        if memvar->programa = "MOT_ENVIA"
          ** ignore
        else
          if memvar->val_mat = 98
            cStr := msg_sen+" "+cUser+" - "+cPassword+" Nao foi possivel se conectar ao servidor de FTP" + " " + oURL:cServer
            IF oFTP:SocketCon == NIL
               cStr += Chr( 13 ) + Chr( 10 ) + " Conexao nao inicializada-1"
            ELSEIF InetErrorCode( oFTP:SocketCon ) == 0
               cStr += Chr( 13 ) + Chr( 10 ) + " Resposta do servidor:" + " " + oFTP:cReply
            ELSE
               cStr += Chr( 13 ) + Chr( 10 ) + " Erro na conexao-1:" + " " + InetErrorDesc( oFTP:SocketCon )
            ENDIF
            msgwait(cStr,"Tela de Informacao",2.00)
            lRetorno := .F.
          else
            cStr := msg_sen+" Nao foi possivel se conectar ao servidor de FTP" + " " + oURL:cServer
            IF oFTP:SocketCon == NIL
               cStr += Chr( 13 ) + Chr( 10 ) + " Conexao nao inicializada"
            ELSEIF InetErrorCode( oFTP:SocketCon ) == 0
               cStr += Chr( 13 ) + Chr( 10 ) + " Resposta do servidor:" + " " + oFTP:cReply
            ELSE
               cStr += Chr( 13 ) + Chr( 10 ) + " Erro na conexao-2:" + " " + InetErrorDesc( oFTP:SocketCon )
            ENDIF
            msgwait(cStr,"Problema encontrado")
            lRetorno := .F.
          endif
        endif
     ENDIF

     if memvar->te_conta >= 50
       exit
     endif

   enddo
*  xRun('delete *.log')
RETURN lRetorno

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...