<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Filename FTP to Mainframe in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493288#M129753</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/42172"&gt;@ssbbmm&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I was assuming the file created was ASCII.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;And you are absolutely right. That is why I suggested to convert it to the mainframe EBCDIC encoding during the FTP.&lt;/P&gt;
&lt;P&gt;When we did FTP's with the mainframe, we mostly had fixed (FB) format files, and used recfm=f on the SAS side in the filename statements.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;After further thinking about it, I propose two different methods:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;a fully text-based method, where you use recfm=v on the SAS side and similar on the MF side, so that all conversions are done in the FTP transport layer&lt;/LI&gt;
&lt;LI&gt;a binary method, where FTP is prevented from converting (use recfm=f or s on the SAS side), and explicitly using EBCDIC and other MF formats.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;We used the latter method, because we have packed decimals in the data files, which must be transferred in binary mode.&lt;/P&gt;</description>
    <pubDate>Fri, 07 Sep 2018 06:32:39 GMT</pubDate>
    <dc:creator>Kurt_Bremser</dc:creator>
    <dc:date>2018-09-07T06:32:39Z</dc:date>
    <item>
      <title>Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493265#M129740</link>
      <description>&lt;P&gt;I need to FTP a Pipeline delimited Text file from SAS server to our Mainframe Server then to outside vendor. Since on the mainframe it got set up to receive Binary file so I have the following program:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;filename Mov "/apps/sas/datasets/data142/Reports/MOVEMENT_3M_&amp;amp;FiscaL_Period._&amp;amp;Rundate..txt";&lt;BR /&gt;&lt;BR /&gt;filename pmggdg ftp&amp;nbsp; "'PBCSECDI.EDIPH925.HOLD(+1)'" debug binary&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;user="KS*****" host="********" pass="*******"&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;lrecl=62&amp;nbsp; RCMD='SITE lrecl=62 recfm=s';&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;data _null_;&lt;BR /&gt;&amp;nbsp; infile Mov lrecl=62;&lt;BR /&gt;&amp;nbsp; file pmggdg&amp;nbsp; lrecl=62 ;&lt;BR /&gt;&amp;nbsp; input; put _infile_ ;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;filename Mov clear;&lt;BR /&gt;filename pmggdg clear;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The file was successfully sent to the vendor but it lost the original format which is pipe delimited and was changed to Tab delimited.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What should I do when I FTP in Binary and not losing the original format?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks so much,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SSBBmm&lt;/P&gt;</description>
      <pubDate>Fri, 07 Sep 2018 03:49:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493265#M129740</guid>
      <dc:creator>ssbbmm</dc:creator>
      <dc:date>2018-09-07T03:49:35Z</dc:date>
    </item>
    <item>
      <title>Re: Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493273#M129744</link>
      <description>&lt;P&gt;Is the source server a mainframe?&lt;/P&gt;
&lt;P&gt;If not, a binary transfer will send ASCII characters to a EBCDIC host, where they will be unintelligible.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Or maybe the FTP server performs a translation? In that case, its translation table&amp;nbsp;may be the culprit.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Sep 2018 05:16:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493273#M129744</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2018-09-07T05:16:09Z</dc:date>
    </item>
    <item>
      <title>Re: Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493274#M129745</link>
      <description>&lt;P&gt;Thanks ChrisNZ for your response. My SAS server (Source) is Unix Server. Unfortunately I don't have a lot know knowledge on Mainframe. Can Mainframe accept the file in ASCII?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks again!&lt;/P&gt;</description>
      <pubDate>Fri, 07 Sep 2018 05:25:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493274#M129745</guid>
      <dc:creator>ssbbmm</dc:creator>
      <dc:date>2018-09-07T05:25:09Z</dc:date>
    </item>
    <item>
      <title>Re: Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493279#M129748</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/42172"&gt;@ssbbmm&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Thanks ChrisNZ for your response. My SAS server (Source) is Unix Server. Unfortunately I don't have a lot know knowledge on Mainframe. Can Mainframe accept the file in ASCII?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks again!&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;ASCII files are illegible binary blobs on the mainframe. The need to be treated as such in further actions.&lt;/P&gt;
&lt;P&gt;Try this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data _null_;
  infile Mov lrecl=62;
  file pmggdg  lrecl=62 ;
  input; put _infile_ $ebcdic62.;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;and then have the file inspected on the mainframe with the developer (PDF) tools. In further transport, text mode should be used.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Sep 2018 06:06:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493279#M129748</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2018-09-07T06:06:29Z</dc:date>
    </item>
    <item>
      <title>Re: Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493281#M129750</link>
      <description>If the program that will use the file is told that this is n ASCII file then you can do it this way. Is it going to be used by SAS?&lt;BR /&gt;</description>
      <pubDate>Fri, 07 Sep 2018 06:08:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493281#M129750</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2018-09-07T06:08:31Z</dc:date>
    </item>
    <item>
      <title>Re: Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493285#M129752</link>
      <description>&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;One clarification I wanted to make is that - the text file was created in SAS EG on Unix SAS with following code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;DATA _null_;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;SET movement;&lt;BR /&gt;FORMAT EVENT_DT&amp;nbsp;&amp;nbsp; &amp;nbsp;YYMMDD10.;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;File "&amp;amp;OUT/MOVEMENT_3M_&amp;amp;FiscaL_Period._&amp;amp;Rundate..txt" lrecl=150;&lt;BR /&gt;&lt;BR /&gt;If _N_=1&amp;nbsp; then Do;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;H1&amp;nbsp;&amp;nbsp; &amp;nbsp;=&amp;nbsp;&amp;nbsp; &amp;nbsp;'Fiscal Period';&lt;BR /&gt;H2&amp;nbsp;&amp;nbsp; &amp;nbsp;=&amp;nbsp;&amp;nbsp; &amp;nbsp;'Employee ID';&lt;BR /&gt;h3&amp;nbsp;&amp;nbsp; &amp;nbsp;=&amp;nbsp;&amp;nbsp; &amp;nbsp;'Date';&lt;BR /&gt;h4&amp;nbsp;&amp;nbsp; &amp;nbsp;=&amp;nbsp;&amp;nbsp; &amp;nbsp;'Type';&lt;BR /&gt;h5&amp;nbsp;&amp;nbsp; &amp;nbsp;=&amp;nbsp;&amp;nbsp; &amp;nbsp;'Action';&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;Put &amp;nbsp;&amp;nbsp; &amp;nbsp;%OUTPUT_HEADER(COUNT=4) H5;&lt;BR /&gt;End;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Put &amp;nbsp;&amp;nbsp; &amp;nbsp;FiscaL_Period&amp;nbsp;&amp;nbsp; &amp;nbsp;+(-1) '|'&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;EMPLID&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;+(-1) '|'&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;EVENT_DT &amp;nbsp;&amp;nbsp; &amp;nbsp;+(-1) '|'&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;EVENT_TYPE&amp;nbsp;&amp;nbsp; &amp;nbsp;+(-1) '|'&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACTION&lt;BR /&gt;; &amp;nbsp;&lt;BR /&gt;Run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I was assuming the file created was ASCII.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Sep 2018 06:21:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493285#M129752</guid>
      <dc:creator>ssbbmm</dc:creator>
      <dc:date>2018-09-07T06:21:31Z</dc:date>
    </item>
    <item>
      <title>Re: Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493288#M129753</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/42172"&gt;@ssbbmm&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I was assuming the file created was ASCII.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;And you are absolutely right. That is why I suggested to convert it to the mainframe EBCDIC encoding during the FTP.&lt;/P&gt;
&lt;P&gt;When we did FTP's with the mainframe, we mostly had fixed (FB) format files, and used recfm=f on the SAS side in the filename statements.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;After further thinking about it, I propose two different methods:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;a fully text-based method, where you use recfm=v on the SAS side and similar on the MF side, so that all conversions are done in the FTP transport layer&lt;/LI&gt;
&lt;LI&gt;a binary method, where FTP is prevented from converting (use recfm=f or s on the SAS side), and explicitly using EBCDIC and other MF formats.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;We used the latter method, because we have packed decimals in the data files, which must be transferred in binary mode.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Sep 2018 06:32:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493288#M129753</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2018-09-07T06:32:39Z</dc:date>
    </item>
    <item>
      <title>Re: Filename FTP to Mainframe</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493292#M129755</link>
      <description>&lt;P&gt;Much appreciate&amp;nbsp;&lt;SPAN class="login-bold"&gt;&lt;A href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562" target="_self"&gt;KurtBremser&lt;/A&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="login-bold"&gt;I just sent another version with your suggested method by adding &lt;SPAN&gt;EBCDIC&amp;nbsp;and kept&amp;nbsp;&amp;nbsp;recfm=s.. It seems a success from my end but have to wait our vendor to check tomorrow morning.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="login-bold"&gt;&lt;SPAN&gt;Thanks again! I will keep you posted.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 07 Sep 2018 06:41:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-FTP-to-Mainframe/m-p/493292#M129755</guid>
      <dc:creator>ssbbmm</dc:creator>
      <dc:date>2018-09-07T06:41:03Z</dc:date>
    </item>
  </channel>
</rss>

