FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Enviar/Recibir archivos via ftp [ SOLVED ]
Posts: 592
Joined: Tue Mar 14, 2006 11:34 PM

Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Thu Dec 16, 2010 03:02 PM

Antonio,

Llevo varios dias peleando con este tema, me pregunto si hay algun ejemplo en concreto que funcione correctamente.

Ya lei y probe todos los hilos : Los de Enrico, el icopyfil y el de varios compañeros , y en todos me estanco cuando se verifica si se genero el objeto tInternet:new()

Si uso hIntCon := LoadLib32( "WinInet.dll" ) me regresa 0 puesto que estoy incluyendo la lib, pero ya cuando quiero realizar la operacion SIEMPRE me dice que no se puede cargar y nomas no continua.
Ya intente registrarla y nop, igual.

Hay algo que no este haciendo bien o que me falte realizar ?

PD : Conexion a Internet la tengo en todo momento

Saludos

FWH 10.6 + xHarbour + Borland 582
Posts: 610
Joined: Wed Oct 19, 2005 08:20 PM

Re: Enviar/Recibir archivos via ftp

Posted: Thu Dec 16, 2010 06:23 PM

Hola Raimundo:

Has visitado el bolg de BielSys ? Quizá ahí encuentres lo que buscas en la entrada "Actualización automatica de aplicaciones via FTP"

http://bielsys.blogspot.com/

Un saludo,

Manuel



xH 1.2.3, FWH 23.07 32 bits, BC++ 7.4, xVerce CW 1.0, PellesC
Posts: 592
Joined: Tue Mar 14, 2006 11:34 PM

Re: Enviar/Recibir archivos via ftp

Posted: Fri Dec 17, 2010 12:26 AM

Manuel,

Gracias por contestar,

Efectivamente, la opcion que ofrece Biel fue mi primera opcion a probar, ya que estoy es proceso de liberar la nueva version de la app y estoy actualizando a muchas pcs de los clientes. Sin embargo tambien me tope con el bloqueo que genera la wininet.dll

No se que este pasando, recuerdo hace algun tiempo hacer pruebas satisfactorias en mandar emails desde FWH y esto del ftp y ahora nop, no quiere funcar nada.

Voy a desemplovar mi vieja version 8.12 que tengo para probar.

Te agradezco de todos modos tu sugerencia y si alguna tiene la receta de como resolver este detalle con la dll se lo agradeceria enormemente.

Saludos

FWH 10.6 + xHarbour + Borland 582
Posts: 592
Joined: Tue Mar 14, 2006 11:34 PM

Re: Enviar/Recibir archivos via ftp

Posted: Wed Dec 22, 2010 10:34 PM
Ok,

La solucion a esto fue algo que nunca imagine : un archivo .bat

Code (fw): Select all Collapse
@echo off
echo user xxuserxx> ftpcmd.dat
echo xxpasswordxx>> ftpcmd.dat
echo ascii>> ftpcmd.dat
echo put %1>> ftpcmd.dat                       <------ Aqui tambien se puede poner la ruta y nombre remoto del archivo a subir al ftp
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat xxnombre_o_ip_del_ftpxx
del ftpcmd.dat

Cambian los valores reales de su ftp en los datos con xxalgoxx

Y tan simple como : nombredelarchivo.bat xxxxx <---- nombre del archivo a subir, se le puede poner ruta

Y listo !!!

Probado en mi ftp y con el de un proveedor autorizado para fact. electronica

Si bien NO es la solucion a mi problema, al menos puedo continuar en lo que tengo que hacer.

Saludos
FWH 10.6 + xHarbour + Borland 582
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Wed Dec 22, 2010 11:20 PM

Raymundo:

Excelente !, y me acabas de dar una idea para solucionar el post de innosetup.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 411
Joined: Sun Jan 31, 2010 03:30 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Thu Dec 23, 2010 02:31 PM

FUNCTION ConectaServerFTP(cNomSer,cNomUsr,cClaUsr,cDocNit,oFtp)
cServer := cNomSer //change ftpserver to the real name or ip of your ftp server
cUser := cNomUsr // change ftpuser to an valid user on ftpserer
cPassword := cClaUsr // change ftppass to an valid password for ftpuser
cUrl := "ftp://" + cUser + ":" + cPassword + "@" + cServer

 cUser:= strtran(cUser,&quot;@&quot;,&quot;&amp;at;&quot;)

 oUrl              := tUrl():New( cUrl )
 IF At( &quot;@&quot;, cUser ) &gt; 0
    oUrl:cUserID   := strtran(cUser,&quot;&amp;at;&quot;,&quot;@&quot;)
    oUrl:cPassword := cPassword
 ENDIF


 oFTP              := tIPClientFtp():New( oUrl, .T. )
 oFTP:nConnTimeout := 20000
 oFTP:bUsePasv     := .T.


 oFTP:Open( )

 IF oFtp &lt;&gt; NIL
    RETURN .T.
 ENDIF

RETURN .F.


FUNCTION SubeTablasFacturasFtp(cNitEmp,cCiaDes,cCodVen,oFtp)

LOCAL cLocFil := ""
LOCAL cRemFil := ""
LOCAL cUniLoc := "\zerusmovil\"+cCiaDes+"\"+cCodVen+"\temp\"
LOCAL cUniRem := "moviles/"+cNitEmp+"/"+cCiaDes+"/"+cCodVen+"/"

cLocFil := cUniLoc+"FACTURAS.CSV"
cRemFil := cUniRem+"FACTURAS.CSV"

SELECT MOV_FAC
MOV_FAC->( DBGOTOP() )
IF MOV_FAC->( !EOF() )
COPY TO &(cLocFil) DELIMITED WITH ( { [], [,] } )
IF HB_FSize(cLocFil) > 0
oFtp:UpLoadFile( cLocFil, cRemFil )
ENDIF
ENDIF

RETURN .T.


FUNCTION BajaTablasFtp(cNitEmp,cCiaDes,cCodVen)

LOCAL cUniFtp := "moviles/"+cNitEmp+"/"+cCiaDes+"/"+cCodVen+"/"
LOCAL cUniDes := "C:\TEMP"
LOCAL aVecArc := oFtp:listFiles(cUniFtp + "/" + "*.TXT")
LOCAL J := 0, cNomArc := ""
LOCAL nLonArc := 27 // TAMA¥O DEL NOMBRE DE ARCHIVOS.TXT

FOR J := 1 TO LEN(aVecArc)

cArcOri := aVecArc[J,1]
cNomArc := SUBS(aVecArc[J,1],LEN(aVecArc[J,1]) - nLonArc )
cArcDes := cUniDes+&quot;\&quot;+cNomArc

IF ( oFtp:fileSize(cArcOri) &gt; 0 )
     oFtp:DownLoadFile( cArcDes, cArcOri )
     AnexarTxtTem(cUniDes,cArcDes,cNomArc,&quot;PEDIDOS&quot;,oFtp,cArcOri)  // FUNCTION PROPIA
ENDIF

NEXT J

RETURN


Johnson Russi

Posts: 592
Joined: Tue Mar 14, 2006 11:34 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Thu Dec 23, 2010 04:41 PM

Jhonson,

Muchas gracias por la aportacion, hare pruebas con tu codigo, pero te tengo una pequeña pregunta :

Funciona directa/indirectamente con la WinInet.Dll ??

Ya que ese ha sido mi gran problema, he visto/leido que varios colegas la usan sin problemas. En mi caso, simple y sencillamente me bloquea.

Y hasta la fecha no he encontrado algun post que indique que tratamiento ( si es que lo requiera ) aplicarle para que pueda funcionar.
Ya que como comente previamente, hice algunos copy/paste de otras opciones y en todas, al momento de crear el objeto de conexion, siempre de devuelve que no hay, cuando claramente la tengo.

Te agradezco mucho, ojala y se pueda realizar el envio/recepcion que necesito.

Saludos

FWH 10.6 + xHarbour + Borland 582
Posts: 592
Joined: Tue Mar 14, 2006 11:34 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Sun Dec 26, 2010 01:17 AM

Jhonson,

Excelente !!!

Funciona Perfecto.

Muchas Gracias y Saludos

FWH 10.6 + xHarbour + Borland 582
Posts: 364
Joined: Tue Oct 25, 2005 07:06 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Fri Mar 04, 2011 01:44 AM

AMIGO Jhonson, ando probando tu rutina y me da error en estas funciones

tIPClientFtp()
turl()

esas son propias tuyas o de que serian, gracias

Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
Posts: 592
Joined: Tue Mar 14, 2006 11:34 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Fri Mar 04, 2011 04:12 PM

Alex,

Son propias de XHarbour, solo te falta agregar una lib a tu proyecto : tip.lib

Saludos

FWH 10.6 + xHarbour + Borland 582
Posts: 364
Joined: Tue Oct 25, 2005 07:06 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Fri Mar 18, 2011 06:50 PM

gracias a todos, ya esta funcionando 100% ok

Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
Posts: 364
Joined: Tue Oct 25, 2005 07:06 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Sun Apr 10, 2011 01:38 PM

amigos

sobre la rutina he encontrado un detalle que me parece peligroso y es que generan un archivo log llamado ftp1, ftp2, y asi sucesivamente cada vez que se ejecuta y en este archivito log pone hasta la clave, etc, parece que fuera de la propia libreria de harbour, habra algun paramentro no documentado que haga que no lo genere?

gracias

Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
Posts: 257
Joined: Tue May 16, 2006 04:46 PM

Re: Enviar/Recibir archivos via ftp

Posted: Wed Aug 31, 2011 06:07 AM

Hola mis cuates,

Tomando el ejemplo de Johnson Russi, a mi se me congela el sistema en la instruccion:

oUrl := tUrl():New( cUrl )

Alguna idea del porque?

Salu2

RodolfoRBG
FWH 1307, xHarbour123 BCC582
rodolfoerbg@gmail.com
Posts: 592
Joined: Tue Mar 14, 2006 11:34 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Thu Sep 01, 2011 01:08 AM

Rodolfo,

si agregaste las libs requeridas ?

Con las funciones de Russi todo estuvo ok desde la primera !!

Saludos

FWH 10.6 + xHarbour + Borland 582
Posts: 257
Joined: Tue May 16, 2006 04:46 PM

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Posted: Thu Sep 01, 2011 02:42 AM

Compadre, gracias por responder.

Si tengo la libreria Tip.LIB incluida pero se trato de un problema con la forma en que tenia los archivos en el servidor.

Ya puedo bajar archivos, lo unico que no me funciona es que al dar la instruccion:

xbrowse(oFtp:DIRECTORY('.'))

me da un solo elemento por cada archivo con el nombre de "Binary"

RodolfoRBG
FWH 1307, xHarbour123 BCC582
rodolfoerbg@gmail.com