<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: CL/400 program for copying files</title>
	<atom:link href="http://itknowledgeexchange.techtarget.com/itanswers/cl400-5/feed/" rel="self" type="application/rss+xml" />
	<link>http://itknowledgeexchange.techtarget.com/itanswers/cl400-5/</link>
	<description></description>
	<lastBuildDate>Wed, 19 Jun 2013 01:14:38 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>By: gilly400</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/cl400-5/#comment-60935</link>
		<dc:creator>gilly400</dc:creator>
		<pubDate>Tue, 17 Mar 2009 16:13:09 +0000</pubDate>
		<guid isPermaLink="false">#comment-60935</guid>
		<description><![CDATA[Hi,

That&#039;s a good tip!  I always forget about the cross ref files - probably comes from using the S/36 environment for so long (the S/36 environment files don&#039;t show up in the cross ref files).

I always find using DSPOBJD and DSPFD so slow...Will try and remember to use the cross reference files in future.

Regards,

Martin Gilbert.]]></description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>That&#8217;s a good tip!  I always forget about the cross ref files &#8211; probably comes from using the S/36 environment for so long (the S/36 environment files don&#8217;t show up in the cross ref files).</p>
<p>I always find using DSPOBJD and DSPFD so slow&#8230;Will try and remember to use the cross reference files in future.</p>
<p>Regards,</p>
<p>Martin Gilbert.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ronkoontz</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/cl400-5/#comment-60931</link>
		<dc:creator>ronkoontz</dc:creator>
		<pubDate>Tue, 17 Mar 2009 15:48:12 +0000</pubDate>
		<guid isPermaLink="false">#comment-60931</guid>
		<description><![CDATA[Just copy the file QSYS/QADBXREF!!!  use CPYF to copy this file to a new file and put the library you want. This file is a list of everything in the file already. Then read the file in the CL program and copy. I do this every Sunday night to update our test environment.  You cold also go one step further. I put code to check the objects change date and time and only copy the file if its been change in the last 7 days.
This codes works for us but you will have to modify it for your won needs.

Code:
 DCL        VAR(&amp;USEDATE) TYPE(*CHAR) LEN(8)               
 DCL        VAR(&amp;USEDATEC) TYPE(*CHAR) LEN(8)              
 DCL        VAR(&amp;JUL) TYPE(*CHAR) LEN(7)                   
 DCL        VAR(&amp;MDAY) TYPE(*DEC) LEN(3 0)                 
 DCL        VAR(&amp;MDAY1) TYPE(*CHAR) LEN(3)                 
 DCL        VAR(&amp;JULADD) TYPE(*DEC) LEN(6 0)               
 DCL        VAR(&amp;DBXLIBTST) TYPE(*CHAR) LEN(10)            
                                                           
 DCLF       FILE(RSTFILE) OPNID(RSTLIST)                   
 DCL        VAR(&amp;EOF) TYPE(*LGL)                     
RTVJOBA    DATE(&amp;USEDATEC)                                   
CVTDAT     DATE(&amp;USEDATEC) TOVAR(&amp;JUL) FROMFMT(*MDY) +       
             TOFMT(*JUL)                                     
                                                             
CHGVAR     VAR(&amp;MDAY) VALUE(%SST(&amp;JUL 4 3))                  
CHGVAR     VAR(&amp;JULADD) VALUE(&amp;MDAY - 7)                     
CHGVAR     VAR(&amp;MDAY1) VALUE(&amp;JULADD)                        
CHGVAR     VAR(&amp;JUL) VALUE(%SST(&amp;JUL 1 3) *TCAT &amp;MDAY1)      
CVTDAT     DATE(&amp;JUL) TOVAR(&amp;USEDATEC) FROMFMT(*JUL) +       
             TOFMT(*CYMD) TOSEP(*NONE)                       
                                                             
CPYF       FROMFILE(QSYS/QADBXREF) TOFILE(NEW/RSTFILE) +     
             MBROPT(*REPLACE) CRTFILE(*YES) +                
             TORCD(*END) INCREL((*IF DBXLIB *EQ +            
             &#039;TLDB70&#039;) (*AND DBXATR *EQ &#039;PF&#039;) (*OR +         
             DBXLIB *EQ &#039;&lt;b&gt;YOURLIBRARY&lt;/b&gt;&#039;) (*AND DBXATR *EQ &#039;PF&#039;)) +     
             FMTOPT(*NOCHK)                                        
          
CHGVAR &amp;EOF &#039;0&#039;                                             
    DOUNTIL    COND(&amp;EOF)                                   
    RCVF       OPNID(RSTLIST)                               
    MONMSG     MSGID(CPF0864) EXEC(DO)                      
    CHGVAR     VAR(&amp;EOF) VALUE(&#039;1&#039;)                         
    ITERATE                                                 
    ENDDO                                                   
    RTVMBRD    FILE(&amp;RSTLIST_DBXLIB/&amp;RSTLIST_DBXFIL) +      
                 USEDATE(&amp;USEDATE)                          
    IF         COND(&amp;USEDATE *GE &amp;USEDATEC) THEN(DO)        
                                                            
    CPYF       FROMFILE(&amp;RSTLIST_DBXLIB/&amp;RSTLIST_DBXFIL) +  
                 TOFILE(&amp;DBXLIBTST/&amp;RSTLIST_DBXFIL) +              
              MBROPT(*REPLACE) CRTFILE(*YES) FMTOPT(*NOCHK) 
 MONMSG     MSGID(CPF0000)                                  
                                                            
 ENDDO                                                      
 ENDDO                                                      
ENDPGM]]></description>
		<content:encoded><![CDATA[<p>Just copy the file QSYS/QADBXREF!!!  use CPYF to copy this file to a new file and put the library you want. This file is a list of everything in the file already. Then read the file in the CL program and copy. I do this every Sunday night to update our test environment.  You cold also go one step further. I put code to check the objects change date and time and only copy the file if its been change in the last 7 days.<br />
This codes works for us but you will have to modify it for your won needs.</p>
<p>Code:<br />
 DCL        VAR(&amp;USEDATE) TYPE(*CHAR) LEN(8)<br />
 DCL        VAR(&amp;USEDATEC) TYPE(*CHAR) LEN(8)<br />
 DCL        VAR(&amp;JUL) TYPE(*CHAR) LEN(7)<br />
 DCL        VAR(&amp;MDAY) TYPE(*DEC) LEN(3 0)<br />
 DCL        VAR(&amp;MDAY1) TYPE(*CHAR) LEN(3)<br />
 DCL        VAR(&amp;JULADD) TYPE(*DEC) LEN(6 0)<br />
 DCL        VAR(&amp;DBXLIBTST) TYPE(*CHAR) LEN(10)            </p>
<p> DCLF       FILE(RSTFILE) OPNID(RSTLIST)<br />
 DCL        VAR(&amp;EOF) TYPE(*LGL)<br />
RTVJOBA    DATE(&amp;USEDATEC)<br />
CVTDAT     DATE(&amp;USEDATEC) TOVAR(&amp;JUL) FROMFMT(*MDY) +<br />
             TOFMT(*JUL)                                     </p>
<p>CHGVAR     VAR(&amp;MDAY) VALUE(%SST(&amp;JUL 4 3))<br />
CHGVAR     VAR(&amp;JULADD) VALUE(&amp;MDAY &#8211; 7)<br />
CHGVAR     VAR(&amp;MDAY1) VALUE(&amp;JULADD)<br />
CHGVAR     VAR(&amp;JUL) VALUE(%SST(&amp;JUL 1 3) *TCAT &amp;MDAY1)<br />
CVTDAT     DATE(&amp;JUL) TOVAR(&amp;USEDATEC) FROMFMT(*JUL) +<br />
             TOFMT(*CYMD) TOSEP(*NONE)                       </p>
<p>CPYF       FROMFILE(QSYS/QADBXREF) TOFILE(NEW/RSTFILE) +<br />
             MBROPT(*REPLACE) CRTFILE(*YES) +<br />
             TORCD(*END) INCREL((*IF DBXLIB *EQ +<br />
             &#8216;TLDB70&#8242;) (*AND DBXATR *EQ &#8216;PF&#8217;) (*OR +<br />
             DBXLIB *EQ &#8216;<b>YOURLIBRARY</b>&#8216;) (*AND DBXATR *EQ &#8216;PF&#8217;)) +<br />
             FMTOPT(*NOCHK)                                        </p>
<p>CHGVAR &amp;EOF &#8217;0&#8242;<br />
    DOUNTIL    COND(&amp;EOF)<br />
    RCVF       OPNID(RSTLIST)<br />
    MONMSG     MSGID(CPF0864) EXEC(DO)<br />
    CHGVAR     VAR(&amp;EOF) VALUE(&#8217;1&#8242;)<br />
    ITERATE<br />
    ENDDO<br />
    RTVMBRD    FILE(&amp;RSTLIST_DBXLIB/&amp;RSTLIST_DBXFIL) +<br />
                 USEDATE(&amp;USEDATE)<br />
    IF         COND(&amp;USEDATE *GE &amp;USEDATEC) THEN(DO)        </p>
<p>    CPYF       FROMFILE(&amp;RSTLIST_DBXLIB/&amp;RSTLIST_DBXFIL) +<br />
                 TOFILE(&amp;DBXLIBTST/&amp;RSTLIST_DBXFIL) +<br />
              MBROPT(*REPLACE) CRTFILE(*YES) FMTOPT(*NOCHK)<br />
 MONMSG     MSGID(CPF0000)                                  </p>
<p> ENDDO<br />
 ENDDO<br />
ENDPGM</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gilly400</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/cl400-5/#comment-60556</link>
		<dc:creator>gilly400</dc:creator>
		<pubDate>Thu, 05 Mar 2009 17:04:05 +0000</pubDate>
		<guid isPermaLink="false">#comment-60556</guid>
		<description><![CDATA[Hi,

Here&#039;s a program which should do this for you - &lt;b&gt;(I haven&#039;t tested this)&lt;/b&gt;:-

PGM

DCL VAR(&amp;FROMLIB) TYPE(*CHAR) LEN(10) VALUE(HWMSFMODS)
DCL VAR(&amp;TOLIB)       TYPE(*CHAR) LEN(10) VALUE(HEXPFMODS)

DCLF  QADSPOBJ

DSPOBJD OBJ(&amp;FROMLIB/*ALL) OBJTYPE(*FILE) OUTPUT(*OUTFILE) OUTFILE(QTEMP/DSPOBJD)

OVRDBF QADSPOBJ  QTEMP/DSPOBJD

READ:   RCVF
                MONMSG CPF0864  EXEC(GOTO ENDPGM)

/* Copy File */
CPYF  FROMFILE(&amp;ODLBNM/&amp;ODOBNM)  TOFILE(&amp;TOLIB/&amp;ODOBNM) FROMMBR(*ALL) TOMBR(*FROMMBR) MBROPT(*REPLACE) CRTFILE(*YES)
/* Clear from file */
CLRPFM  &amp;ODLBNM/&amp;ODOBNM   *ALL

GOTO READ

ENDPGM:    ENDPGM

Make sure you have a backup before you start, of course...

Regards,

Martin Gilbert.]]></description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Here&#8217;s a program which should do this for you &#8211; <b>(I haven&#8217;t tested this)</b>:-</p>
<p>PGM</p>
<p>DCL VAR(&amp;FROMLIB) TYPE(*CHAR) LEN(10) VALUE(HWMSFMODS)<br />
DCL VAR(&amp;TOLIB)       TYPE(*CHAR) LEN(10) VALUE(HEXPFMODS)</p>
<p>DCLF  QADSPOBJ</p>
<p>DSPOBJD OBJ(&amp;FROMLIB/*ALL) OBJTYPE(*FILE) OUTPUT(*OUTFILE) OUTFILE(QTEMP/DSPOBJD)</p>
<p>OVRDBF QADSPOBJ  QTEMP/DSPOBJD</p>
<p>READ:   RCVF<br />
                MONMSG CPF0864  EXEC(GOTO ENDPGM)</p>
<p>/* Copy File */<br />
CPYF  FROMFILE(&amp;ODLBNM/&amp;ODOBNM)  TOFILE(&amp;TOLIB/&amp;ODOBNM) FROMMBR(*ALL) TOMBR(*FROMMBR) MBROPT(*REPLACE) CRTFILE(*YES)<br />
/* Clear from file */<br />
CLRPFM  &amp;ODLBNM/&amp;ODOBNM   *ALL</p>
<p>GOTO READ</p>
<p>ENDPGM:    ENDPGM</p>
<p>Make sure you have a backup before you start, of course&#8230;</p>
<p>Regards,</p>
<p>Martin Gilbert.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: woodengineer</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/cl400-5/#comment-60555</link>
		<dc:creator>woodengineer</dc:creator>
		<pubDate>Thu, 05 Mar 2009 16:41:20 +0000</pubDate>
		<guid isPermaLink="false">#comment-60555</guid>
		<description><![CDATA[If your destination library is empty . . . might want to try CRTDUPOBJ  OBJ(*ALL)  OBJTYPE(*ALL).

One thing to check after the copy  - be sure the logicals in the destination library point to physicals also in the destination library.]]></description>
		<content:encoded><![CDATA[<p>If your destination library is empty . . . might want to try CRTDUPOBJ  OBJ(*ALL)  OBJTYPE(*ALL).</p>
<p>One thing to check after the copy  &#8211; be sure the logicals in the destination library point to physicals also in the destination library.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: askt</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/cl400-5/#comment-60545</link>
		<dc:creator>askt</dc:creator>
		<pubDate>Thu, 05 Mar 2009 14:56:14 +0000</pubDate>
		<guid isPermaLink="false">#comment-60545</guid>
		<description><![CDATA[I hope above one is used for single file transfer. actually i need to copy all files in library at the time.]]></description>
		<content:encoded><![CDATA[<p>I hope above one is used for single file transfer. actually i need to copy all files in library at the time.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using memcached
Database Caching 3/8 queries in 0.039 seconds using memcached
Object Caching 325/326 objects using memcached

Served from: itknowledgeexchange.techtarget.com @ 2013-06-19 01:52:34 -->