[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
AW: Problems with FTP_Get-API
Sender: "Werner Noll" <werner.noll@xxxxxxxxx>
Scott,
many thanks. After I have read your explanation it's very logical to me.
I'll work arround according your suggestion.
Kind regards,
Werner Noll
Gesellschaft für Individual-Software mbH
Ludwigstrasse 9
D-63739 Aschaffenburg
Phone: +49-6021-299880
Fax: +49-6021-299882
e-mail: Werner.Noll@xxxxxxxxx
-----Ursprüngliche Nachricht-----
Von: owner-ftpapi@xxxxxxxxxxxxx [mailto:owner-ftpapi@xxxxxxxxxxxxx] Im
Auftrag von Scott Klement
Gesendet: Samstag, 22. Oktober 2005 19:37
An: ftpapi@xxxxxxxxxxxxx
Betreff: Re: Problems with FTP_Get-API
The FTP_chdir() command changes the directory. That's what "chdir"
stands for, "change directory".
If you had previously been in the /testin directory, and you run
FTP_chdir('/testin/templates') then you'll be in the /testin/templates
directory,and anything you do from that point on will be in that directory.
If you want to use FTP_chdir() as a test to find out if a name is a
directory or not, you can, but you'll have to change back to the /testin
directory after you're done.
---
Scott Klement http://www.scottklement.com
On Sat, 22 Oct 2005, Werner Noll wrote:
> Hallo All,
>
> I use for a long time (since 2002) Scott Klement's FTP-APIs for file
> transmissions and I'm still enthused with this software.
> Recently I discovered a problem, when I tried to process a directory
> wherein a subdirectory was located.
> Here my example:
>
> 1. The directory "/testin" has 2 entries:
> pampr.tst STMF
> templates DIR
>
> 2. My application program code is (shortened):
>
> rc = FTP_List(fd:' ':99:%addr(incoming):num_files); <--- List the
> directory entries
>
> For fileno = 1 to num_files;
> <--- Loop for processinf the contents
>
> #File256 = %trimr(incoming(fileno));
>
> // Check if file name is a directory
> If FTP_Chdir(fd:%trimr(CJRMTPTH) + '/' + #File256) >= *zeros;
> Iter;
> EndIf;
>
> // Check if file matches generic name
> If CJGENNAM <> *blanks;
> If %scan('*':CJGENNAM) > *zeros;
> If pr$ChkGen(#File256:CJGENNAM) = *off;
> Iter;
> EndIf;
> Else;
> If #File256 <> CJGENNAM;
> Iter;
> EndIf;
> EndIf;
> EndIf;
>
> // Transfer upload file from remote system to iSeries
> If FTP_Get(fd:#File256:%trimr(CJLOCPTH) + '/' + #File256)
> < *zeros;
> r$FTPErrMsg = FTP_Error();
> #FTP0004_01 = r$FTPErrMsg;
>
> 3. The problem:
> In the first cycle of the FOR loop I get the subdirectory "templates".
> The file name in my work field #File256 is "templates/".
> The FTP_Chdir recognizes it as a directory and the ITER is
> processed correctly.
> The second cycle supplies the file name " pampr.tst" in my
> workfield #File256. This file should be processed with
> the FTP_Get API. My debugger realy shows only "pampr.tst" in field
> #File256 straight before the FTP_Get command
> line.
> After the FTP_Get was executed, I receive error:
> R$FTPERRMSG = ' Unable to find file /testin/templates/pampr.tst'.
> Why appears "templates" in the pathname?
>
> If there is no subdirectory in the directory everything works
correctly.
>
> What did I miss? What I'm doing wrong?
>
> Many thanks in advance for any ideas and suggestions.
>
> Kind regards,
> Werner Noll
> Gesellschaft für Individual-Software mbH Ludwigstrasse 9
> D-63739 Aschaffenburg
> Phone: +49-6021-299880
> Fax: +49-6021-299882
> e-mail: Werner.Noll@xxxxxxxxx <outbind://5/Werner.Noll@xxxxxxxxx>
>
>
>
>
>
>
> Werner Noll
> Gesellschaft für Individual-Software mbH
> Ludwigstrasse 9
> D-63739 Aschaffenburg
> Phone: +49-6021-299880
> Fax: +49-6021-299882
> e-mail: Werner.Noll@xxxxxxxxx <outbind://5/Werner.Noll@xxxxxxxxx>
>
>
>
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubsribe from the list send mail
to majordomo@xxxxxxxxxxxxx with the body: unsubscribe ftpapi mymailaddr
-----------------------------------------------------------------------