 




<?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: OUTQ name from IP address</title>
	<atom:link href="http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/feed/" rel="self" type="application/rss+xml" />
	<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/</link>
	<description></description>
	<lastBuildDate>Fri, 24 May 2013 06:06:29 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>By: tomliotta</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-80131</link>
		<dc:creator>tomliotta</dc:creator>
		<pubDate>Tue, 10 Aug 2010 06:55:26 +0000</pubDate>
		<guid isPermaLink="false">#comment-80131</guid>
		<description><![CDATA[You probably should run RTVCFGSRC for your *DEVDs on a daily or weekly basis. Then, you can simply search the resulting source member for the IP address or host name at any time.

Also note that there quite possibly won&#039;t be any device -- it might simply be a remote *OUTQ.

Tom]]></description>
		<content:encoded><![CDATA[<p>You probably should run RTVCFGSRC for your *DEVDs on a daily or weekly basis. Then, you can simply search the resulting source member for the IP address or host name at any time.</p>
<p>Also note that there quite possibly won&#8217;t be any device &#8212; it might simply be a remote *OUTQ.</p>
<p>Tom</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mcl</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-57156</link>
		<dc:creator>mcl</dc:creator>
		<pubDate>Fri, 17 Oct 2008 19:54:11 +0000</pubDate>
		<guid isPermaLink="false">#comment-57156</guid>
		<description><![CDATA[Well, if you got that then you are on the right track..

LANATTACH(*IP)  tells you the connection uses an internet protocol.

What you are looking for is the remote location name - which could be an IP address or it could be and name which is resolved through a DNS lookup.

For example, one by IP address could be - RMTLOCNAME(&#039;192.168.1.12&#039;)

Regards
Mike]]></description>
		<content:encoded><![CDATA[<p>Well, if you got that then you are on the right track..</p>
<p>LANATTACH(*IP)  tells you the connection uses an internet protocol.</p>
<p>What you are looking for is the remote location name &#8211; which could be an IP address or it could be and name which is resolved through a DNS lookup.</p>
<p>For example, one by IP address could be &#8211; RMTLOCNAME(&#8217;192.168.1.12&#8242;)</p>
<p>Regards<br />
Mike</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rockleadme</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-57136</link>
		<dc:creator>rockleadme</dc:creator>
		<pubDate>Thu, 16 Oct 2008 23:55:47 +0000</pubDate>
		<guid isPermaLink="false">#comment-57136</guid>
		<description><![CDATA[thanks guys!!! appreciate the help!!!

&lt;b&gt;Mcl&lt;/b&gt; i tried what you suggested and i got the device description but i dont see no ip address in there :-( what i see is - LANATTACH(*IP) 

i am trying to find the name of a device by its ip address.]]></description>
		<content:encoded><![CDATA[<p>thanks guys!!! appreciate the help!!!</p>
<p><b>Mcl</b> i tried what you suggested and i got the device description but i dont see no ip address in there <img src='http://itknowledgeexchange.techtarget.com/itanswers/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' />  what i see is &#8211; LANATTACH(*IP) </p>
<p>i am trying to find the name of a device by its ip address.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mcl</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-57133</link>
		<dc:creator>mcl</dc:creator>
		<pubDate>Thu, 16 Oct 2008 19:56:04 +0000</pubDate>
		<guid isPermaLink="false">#comment-57133</guid>
		<description><![CDATA[You can get the information with less code - and if you don&#039;t have a lot of (hundreds) or printers that may be what you want.. And you can refine this however you want.

Do this first on a command line. (Substitute a libraro fo your choice for &quot;yourlib&quot;)
1. CRTSRCPF   FILE(yourlib/PRINTERS)
2. DSPOBJD    OBJ(*ALL) OBJTYPE(*DEVD) OUTPUT(*OUTFILE) +
             OUTFILE(QTEMP/DEVICES)                   

That will give you a file with a list of all the devices on the system.

Then run this CL.

&lt;pre&gt;
             PGM                                                       
                                                                       
             DCLF       FILE(QTEMP/DEVICES) /* list of devices */      
                                                                       
 LOOP:                                                                 
             RCVF                                                      
             MONMSG     MSGID(CPF0864) EXEC(GOTO CMDLBL(DONE))         
                                                                       
             IF         COND(&amp;ODOBAT *EQ &#039;PRTLAN&#039;) THEN(DO)            
             RTVCFGSRC  CFGD(&amp;ODOBNM) CFGTYPE(*DEVD) +                 
                          SRCFILE(yourlib/PRINTERS) RTVOPT(*OBJ) +     
                          MBROPT(*ADD)                                 
             ENDDO                                                     
                                                                       
             GOTO       CMDLBL(LOOP)                                   

 DONE:               
             ENDPGM 
&lt;/pre&gt;

What you wind up with is a source file with all the configuration for each printer in a source member. You can parse the source members as needed to extract whatever you want.

Regards
Mike]]></description>
		<content:encoded><![CDATA[<p>You can get the information with less code &#8211; and if you don&#8217;t have a lot of (hundreds) or printers that may be what you want.. And you can refine this however you want.</p>
<p>Do this first on a command line. (Substitute a libraro fo your choice for &#8220;yourlib&#8221;)<br />
1. CRTSRCPF   FILE(yourlib/PRINTERS)<br />
2. DSPOBJD    OBJ(*ALL) OBJTYPE(*DEVD) OUTPUT(*OUTFILE) +<br />
             OUTFILE(QTEMP/DEVICES)                   </p>
<p>That will give you a file with a list of all the devices on the system.</p>
<p>Then run this CL.</p>
<pre>
             PGM                                                       
                                                                       
             DCLF       FILE(QTEMP/DEVICES) /* list of devices */      
                                                                       
 LOOP:                                                                 
             RCVF                                                      
             MONMSG     MSGID(CPF0864) EXEC(GOTO CMDLBL(DONE))         
                                                                       
             IF         COND(&amp;ODOBAT *EQ 'PRTLAN') THEN(DO)            
             RTVCFGSRC  CFGD(&amp;ODOBNM) CFGTYPE(*DEVD) +                 
                          SRCFILE(yourlib/PRINTERS) RTVOPT(*OBJ) +     
                          MBROPT(*ADD)                                 
             ENDDO                                                     
                                                                       
             GOTO       CMDLBL(LOOP)                                   

 DONE:               
             ENDPGM 
</pre>
<p>What you wind up with is a source file with all the configuration for each printer in a source member. You can parse the source members as needed to extract whatever you want.</p>
<p>Regards<br />
Mike</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mcsick</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-57106</link>
		<dc:creator>mcsick</dc:creator>
		<pubDate>Wed, 15 Oct 2008 18:37:59 +0000</pubDate>
		<guid isPermaLink="false">#comment-57106</guid>
		<description><![CDATA[&lt;pre&gt;
You can obtain the Printer IP Addresses by using the DSPOBJD, DSPDEVD, and CPYSPLF commands.
I wrote a COBOL program to read the spooled file to extract the Printer, Text, and IP Address and write to a physical file.

*****************************
CL Program:
             PGM

             DCL        VAR(&amp;RTNLIB) TYPE(*CHAR) LEN(10)
             DCLF       FILE(TEMPDEVDPF)


             RTVOBJD    OBJ(TEMPPRTIPS) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CLRPFM     FILE(&amp;RTNLIB/TEMPPRTIPS)        

             DLTF       FILE(QTEMP/TEMPDEVDPF)
             MONMSG     MSGID(CPF0000)
             RTVOBJD    OBJ(TEMPDEVDPF) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CRTDUPOBJ  OBJ(TEMPDEVDPF) FROMLIB(&amp;RTNLIB) +
                        OBJTYPE(*FILE) TOLIB(QTEMP)
             MONMSG     MSGID(CPF0000)

             DLTF       FILE(QTEMP/TEMPDEVDSP)
             MONMSG     MSGID(CPF0000)
             RTVOBJD    OBJ(TEMPDEVDSP) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CRTDUPOBJ  OBJ(TEMPDEVDSP) FROMLIB(&amp;RTNLIB) +
                        OBJTYPE(*FILE) TOLIB(QTEMP)
             MONMSG     MSGID(CPF0000)

             DSPOBJD    OBJ(*ALL/*ALL) OBJTYPE(*DEVD) +
                          OUTPUT(*OUTFILE) OUTFILE(QTEMP/TEMPDEVDPF)
 RCVF:
             RCVF
             MONMSG     MSGID(CPF0864) EXEC(DO)
              GOTO       CMDLBL(ENDPGM)
             ENDDO

             IF         COND(&amp;ODOBAT = &#039;PRTLAN&#039;) THEN(DO)
               DSPDEVD    DEVD(&amp;ODOBNM) OUTPUT(*PRINT) OPTION(*BASIC)
               CPYSPLF    FILE(QPDCDEV) TOFILE(QTEMP/TEMPDEVDSP) +
                          SPLNBR(*LAST)
               CALL       PGM(CRTPRTIPCB)
               DLTSPLF    FILE(QPDCDEV) SPLNBR(*LAST)
             ENDDO
             GOTO       CMDLBL(RCVF)

 ENDPGM:
             ENDPGM
***************************************
Cobol CBLLE Program:
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      CRTPRTIPCB.
      *****************************************************************
      * Create Printer IP Address File (TEMPPRTIPS)
      *****************************************************************
       ENVIRONMENT       DIVISION.
       CONFIGURATION     SECTION.
       SOURCE-COMPUTER.  AS-400.
       OBJECT-COMPUTER.  AS-400.
       SPECIAL-NAMES.    DATA-AREA IS DATAAREA.
       INPUT-OUTPUT      SECTION.
       FILE-CONTROL.

           SELECT SPL-MASTER  ASSIGN DATABASE-TEMPDEVDSP
                              ORGANIZATION SEQUENTIAL
                              FILE STATUS SPL-STATUS.

           SELECT IPS-MASTER  ASSIGN DATABASE-TEMPPRTIPS
                              ORGANIZATION INDEXED
                              ACCESS DYNAMIC
                              RECORD KEY EXTERNALLY-DESCRIBED-KEY
                              FILE STATUS IPS-STATUS.

       DATA DIVISION.
       FILE SECTION.
       FD  SPL-MASTER.
       01  SPL-REC.
           COPY DDS-ALL-FORMATS OF TEMPDEVDSP.

       FD  IPS-MASTER.
       01  IPS-REC.
           COPY DDS-ALL-FORMATS OF TEMPPRTIPS.

       WORKING-STORAGE SECTION.
       01  WS-FILE-STATUS.
           05  SPL-STATUS        PIC  X(02).
           05  IPS-STATUS        PIC  X(02).

       01  SPL-EOF-SW PIC X(01).
       01  IPS-INV-SW PIC X(01).

       PROCEDURE DIVISION.
       000-INPUT SECTION.
       000-MAIN-PARA.
           OPEN INPUT SPL-MASTER
                I-O   IPS-MASTER.

           MOVE &#039;0&#039; TO SPL-EOF-SW
           PERFORM 600-READ-SPL-MASTER-NEXT
           PERFORM 100-PROCESS-SPL-MASTER
             UNTIL SPL-EOF-SW = &#039;1&#039;

           CLOSE SPL-MASTER
                 IPS-MASTER.

           GOBACK.

       100-PROCESS-SPL-MASTER.
           IF TDSKEYWD = &#039;DEVD&#039;
             MOVE TDSDATA TO TPIPRTF
             PERFORM 600-READ-IPS-MASTER
           END-IF.
           IF TDSDESC (1:18) = &#039;   Name or address&#039;
             MOVE TDSDATA TO TPIIP
           END-IF.
           IF TDSDESC (1:5) = &#039; Text&#039;
             MOVE TDSDATA TO TPITEXT
             PERFORM 600-WRITE-IPS-MASTER
           END-IF.

           PERFORM 600-READ-SPL-MASTER-NEXT.

       600-READ-SPL-MASTER-NEXT.
           READ SPL-MASTER NEXT
             AT END
               MOVE &#039;1&#039; TO SPL-EOF-SW
           END-READ.

       600-READ-IPS-MASTER.
           MOVE &#039;0&#039; TO IPS-INV-SW
           READ IPS-MASTER
             INVALID KEY
               MOVE &#039;1&#039; TO IPS-INV-SW
           END-READ.

       600-WRITE-IPS-MASTER.
           IF IPS-INV-SW = &#039;1&#039;
             MOVE &#039;0&#039; TO IPS-INV-SW
             WRITE IPS-REC
               INVALID KEY
                 MOVE &#039;1&#039; TO IPS-INV-SW
             END-WRITE
           ELSE
             MOVE &#039;0&#039; TO IPS-INV-SW
             REWRITE IPS-REC
               INVALID KEY
                 MOVE &#039;1&#039; TO IPS-INV-SW
             END-REWRITE
           END-IF.
**************************
DDS Source for TEMPDEVDSP:

     A*****************************************************************
     A* CpySplf QPDCDEV from DspDevD for PrtF IP Address
     A*****************************************************************
     A          R TEMPDEVDSR
     A            TDSDESC       40A         COLHDG(&#039;Description&#039;)
     A            TDSKEYWD      12A         COLHDG(&#039;Keyword&#039;)
     A            TDSDATA       80A         COLHDG(&#039;Data&#039;)
**************************
DDS Source for TEMPPRTIPS (Keyed by Printer)
     A*****************************************************************
     A* Printer IP Addresses
     A*****************************************************************
     A                                      UNIQUE
     A          R TEMPPRTIPR                TEXT(&#039;Printer IP Addresses&#039;
     A            TPIPRTF       10A         COLHDG(&#039;Print File&#039;)
     A            TPITEXT       30A         COLHDG(&#039;Text&#039;)
     A            TPIIP         30A         COLHDG(&#039;IP Address&#039;)
     A          K TPIPRTF

DDS Source for TEMPPRTIP1 (Keyed by IP):
     A*****************************************************************
     A* Printer IP Addresses by IP
     A*****************************************************************
     A          R TEMPPRTIPR                PFILE(TEMPPRTIPS)
     A          K TPIIP
&lt;/pre&gt;]]></description>
		<content:encoded><![CDATA[<pre>
You can obtain the Printer IP Addresses by using the DSPOBJD, DSPDEVD, and CPYSPLF commands.
I wrote a COBOL program to read the spooled file to extract the Printer, Text, and IP Address and write to a physical file.

*****************************
CL Program:
             PGM

             DCL        VAR(&amp;RTNLIB) TYPE(*CHAR) LEN(10)
             DCLF       FILE(TEMPDEVDPF)


             RTVOBJD    OBJ(TEMPPRTIPS) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CLRPFM     FILE(&amp;RTNLIB/TEMPPRTIPS)        

             DLTF       FILE(QTEMP/TEMPDEVDPF)
             MONMSG     MSGID(CPF0000)
             RTVOBJD    OBJ(TEMPDEVDPF) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CRTDUPOBJ  OBJ(TEMPDEVDPF) FROMLIB(&amp;RTNLIB) +
                        OBJTYPE(*FILE) TOLIB(QTEMP)
             MONMSG     MSGID(CPF0000)

             DLTF       FILE(QTEMP/TEMPDEVDSP)
             MONMSG     MSGID(CPF0000)
             RTVOBJD    OBJ(TEMPDEVDSP) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CRTDUPOBJ  OBJ(TEMPDEVDSP) FROMLIB(&amp;RTNLIB) +
                        OBJTYPE(*FILE) TOLIB(QTEMP)
             MONMSG     MSGID(CPF0000)

             DSPOBJD    OBJ(*ALL/*ALL) OBJTYPE(*DEVD) +
                          OUTPUT(*OUTFILE) OUTFILE(QTEMP/TEMPDEVDPF)
 RCVF:
             RCVF
             MONMSG     MSGID(CPF0864) EXEC(DO)
              GOTO       CMDLBL(ENDPGM)
             ENDDO

             IF         COND(&amp;ODOBAT = 'PRTLAN') THEN(DO)
               DSPDEVD    DEVD(&amp;ODOBNM) OUTPUT(*PRINT) OPTION(*BASIC)
               CPYSPLF    FILE(QPDCDEV) TOFILE(QTEMP/TEMPDEVDSP) +
                          SPLNBR(*LAST)
               CALL       PGM(CRTPRTIPCB)
               DLTSPLF    FILE(QPDCDEV) SPLNBR(*LAST)
             ENDDO
             GOTO       CMDLBL(RCVF)

 ENDPGM:
             ENDPGM
***************************************
Cobol CBLLE Program:
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      CRTPRTIPCB.
      *****************************************************************
      * Create Printer IP Address File (TEMPPRTIPS)
      *****************************************************************
       ENVIRONMENT       DIVISION.
       CONFIGURATION     SECTION.
       SOURCE-COMPUTER.  AS-400.
       OBJECT-COMPUTER.  AS-400.
       SPECIAL-NAMES.    DATA-AREA IS DATAAREA.
       INPUT-OUTPUT      SECTION.
       FILE-CONTROL.

           SELECT SPL-MASTER  ASSIGN DATABASE-TEMPDEVDSP
                              ORGANIZATION SEQUENTIAL
                              FILE STATUS SPL-STATUS.

           SELECT IPS-MASTER  ASSIGN DATABASE-TEMPPRTIPS
                              ORGANIZATION INDEXED
                              ACCESS DYNAMIC
                              RECORD KEY EXTERNALLY-DESCRIBED-KEY
                              FILE STATUS IPS-STATUS.

       DATA DIVISION.
       FILE SECTION.
       FD  SPL-MASTER.
       01  SPL-REC.
           COPY DDS-ALL-FORMATS OF TEMPDEVDSP.

       FD  IPS-MASTER.
       01  IPS-REC.
           COPY DDS-ALL-FORMATS OF TEMPPRTIPS.

       WORKING-STORAGE SECTION.
       01  WS-FILE-STATUS.
           05  SPL-STATUS        PIC  X(02).
           05  IPS-STATUS        PIC  X(02).

       01  SPL-EOF-SW PIC X(01).
       01  IPS-INV-SW PIC X(01).

       PROCEDURE DIVISION.
       000-INPUT SECTION.
       000-MAIN-PARA.
           OPEN INPUT SPL-MASTER
                I-O   IPS-MASTER.

           MOVE '0' TO SPL-EOF-SW
           PERFORM 600-READ-SPL-MASTER-NEXT
           PERFORM 100-PROCESS-SPL-MASTER
             UNTIL SPL-EOF-SW = '1'

           CLOSE SPL-MASTER
                 IPS-MASTER.

           GOBACK.

       100-PROCESS-SPL-MASTER.
           IF TDSKEYWD = 'DEVD'
             MOVE TDSDATA TO TPIPRTF
             PERFORM 600-READ-IPS-MASTER
           END-IF.
           IF TDSDESC (1:18) = '   Name or address'
             MOVE TDSDATA TO TPIIP
           END-IF.
           IF TDSDESC (1:5) = ' Text'
             MOVE TDSDATA TO TPITEXT
             PERFORM 600-WRITE-IPS-MASTER
           END-IF.

           PERFORM 600-READ-SPL-MASTER-NEXT.

       600-READ-SPL-MASTER-NEXT.
           READ SPL-MASTER NEXT
             AT END
               MOVE '1' TO SPL-EOF-SW
           END-READ.

       600-READ-IPS-MASTER.
           MOVE '0' TO IPS-INV-SW
           READ IPS-MASTER
             INVALID KEY
               MOVE '1' TO IPS-INV-SW
           END-READ.

       600-WRITE-IPS-MASTER.
           IF IPS-INV-SW = '1'
             MOVE '0' TO IPS-INV-SW
             WRITE IPS-REC
               INVALID KEY
                 MOVE '1' TO IPS-INV-SW
             END-WRITE
           ELSE
             MOVE '0' TO IPS-INV-SW
             REWRITE IPS-REC
               INVALID KEY
                 MOVE '1' TO IPS-INV-SW
             END-REWRITE
           END-IF.
**************************
DDS Source for TEMPDEVDSP:

     A*****************************************************************
     A* CpySplf QPDCDEV from DspDevD for PrtF IP Address
     A*****************************************************************
     A          R TEMPDEVDSR
     A            TDSDESC       40A         COLHDG('Description')
     A            TDSKEYWD      12A         COLHDG('Keyword')
     A            TDSDATA       80A         COLHDG('Data')
**************************
DDS Source for TEMPPRTIPS (Keyed by Printer)
     A*****************************************************************
     A* Printer IP Addresses
     A*****************************************************************
     A                                      UNIQUE
     A          R TEMPPRTIPR                TEXT('Printer IP Addresses'
     A            TPIPRTF       10A         COLHDG('Print File')
     A            TPITEXT       30A         COLHDG('Text')
     A            TPIIP         30A         COLHDG('IP Address')
     A          K TPIPRTF

DDS Source for TEMPPRTIP1 (Keyed by IP):
     A*****************************************************************
     A* Printer IP Addresses by IP
     A*****************************************************************
     A          R TEMPPRTIPR                PFILE(TEMPPRTIPS)
     A          K TPIIP
</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: mcsick</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-57104</link>
		<dc:creator>mcsick</dc:creator>
		<pubDate>Wed, 15 Oct 2008 18:34:53 +0000</pubDate>
		<guid isPermaLink="false">#comment-57104</guid>
		<description><![CDATA[You can obtain the Printer IP Addresses by using the DSPOBJD, DSPDEVD, and CPYSPLF commands.
I wrote a COBOL program to read the spooled file to extract the Printer, Text, and IP Address and write to a physical file.

*****************************
CL Program:
             PGM

             DCL        VAR(&amp;RTNLIB) TYPE(*CHAR) LEN(10)
             DCLF       FILE(TEMPDEVDPF)


             RTVOBJD    OBJ(TEMPPRTIPS) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CLRPFM     FILE(&amp;RTNLIB/TEMPPRTIPS)        

             DLTF       FILE(QTEMP/TEMPDEVDPF)
             MONMSG     MSGID(CPF0000)
             RTVOBJD    OBJ(TEMPDEVDPF) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CRTDUPOBJ  OBJ(TEMPDEVDPF) FROMLIB(&amp;RTNLIB) +
                        OBJTYPE(*FILE) TOLIB(QTEMP)
             MONMSG     MSGID(CPF0000)

             DLTF       FILE(QTEMP/TEMPDEVDSP)
             MONMSG     MSGID(CPF0000)
             RTVOBJD    OBJ(TEMPDEVDSP) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)
             CRTDUPOBJ  OBJ(TEMPDEVDSP) FROMLIB(&amp;RTNLIB) +
                        OBJTYPE(*FILE) TOLIB(QTEMP)
             MONMSG     MSGID(CPF0000)

             DSPOBJD    OBJ(*ALL/*ALL) OBJTYPE(*DEVD) +
                          OUTPUT(*OUTFILE) OUTFILE(QTEMP/TEMPDEVDPF)
 RCVF:
             RCVF
             MONMSG     MSGID(CPF0864) EXEC(DO)
              GOTO       CMDLBL(ENDPGM)
             ENDDO

             IF         COND(&amp;ODOBAT = &#039;PRTLAN&#039;) THEN(DO)
               DSPDEVD    DEVD(&amp;ODOBNM) OUTPUT(*PRINT) OPTION(*BASIC)
               CPYSPLF    FILE(QPDCDEV) TOFILE(QTEMP/TEMPDEVDSP) +
                          SPLNBR(*LAST)
               CALL       PGM(CRTPRTIPCB)
               DLTSPLF    FILE(QPDCDEV) SPLNBR(*LAST)
             ENDDO
             GOTO       CMDLBL(RCVF)

 ENDPGM:
             ENDPGM
***************************************
Cobol CBLLE Program:
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      CRTPRTIPCB.
      *****************************************************************
      * Create Printer IP Address File (TEMPPRTIPS)
      *****************************************************************
       ENVIRONMENT       DIVISION.
       CONFIGURATION     SECTION.
       SOURCE-COMPUTER.  AS-400.
       OBJECT-COMPUTER.  AS-400.
       SPECIAL-NAMES.    DATA-AREA IS DATAAREA.
       INPUT-OUTPUT      SECTION.
       FILE-CONTROL.

           SELECT SPL-MASTER  ASSIGN DATABASE-TEMPDEVDSP
                              ORGANIZATION SEQUENTIAL
                              FILE STATUS SPL-STATUS.

           SELECT IPS-MASTER  ASSIGN DATABASE-TEMPPRTIPS
                              ORGANIZATION INDEXED
                              ACCESS DYNAMIC
                              RECORD KEY EXTERNALLY-DESCRIBED-KEY
                              FILE STATUS IPS-STATUS.

       DATA DIVISION.
       FILE SECTION.
       FD  SPL-MASTER.
       01  SPL-REC.
           COPY DDS-ALL-FORMATS OF TEMPDEVDSP.

       FD  IPS-MASTER.
       01  IPS-REC.
           COPY DDS-ALL-FORMATS OF TEMPPRTIPS.

       WORKING-STORAGE SECTION.
       01  WS-FILE-STATUS.
           05  SPL-STATUS        PIC  X(02).
           05  IPS-STATUS        PIC  X(02).

       01  SPL-EOF-SW PIC X(01).
       01  IPS-INV-SW PIC X(01).

       PROCEDURE DIVISION.
       000-INPUT SECTION.
       000-MAIN-PARA.
           OPEN INPUT SPL-MASTER
                I-O   IPS-MASTER.

           MOVE &#039;0&#039; TO SPL-EOF-SW
           PERFORM 600-READ-SPL-MASTER-NEXT
           PERFORM 100-PROCESS-SPL-MASTER
             UNTIL SPL-EOF-SW = &#039;1&#039;

           CLOSE SPL-MASTER
                 IPS-MASTER.

           GOBACK.

       100-PROCESS-SPL-MASTER.
           IF TDSKEYWD = &#039;DEVD&#039;
             MOVE TDSDATA TO TPIPRTF
             PERFORM 600-READ-IPS-MASTER
           END-IF.
           IF TDSDESC (1:18) = &#039;   Name or address&#039;
             MOVE TDSDATA TO TPIIP
           END-IF.
           IF TDSDESC (1:5) = &#039; Text&#039;
             MOVE TDSDATA TO TPITEXT
             PERFORM 600-WRITE-IPS-MASTER
           END-IF.

           PERFORM 600-READ-SPL-MASTER-NEXT.

       600-READ-SPL-MASTER-NEXT.
           READ SPL-MASTER NEXT
             AT END
               MOVE &#039;1&#039; TO SPL-EOF-SW
           END-READ.

       600-READ-IPS-MASTER.
           MOVE &#039;0&#039; TO IPS-INV-SW
           READ IPS-MASTER
             INVALID KEY
               MOVE &#039;1&#039; TO IPS-INV-SW
           END-READ.

       600-WRITE-IPS-MASTER.
           IF IPS-INV-SW = &#039;1&#039;
             MOVE &#039;0&#039; TO IPS-INV-SW
             WRITE IPS-REC
               INVALID KEY
                 MOVE &#039;1&#039; TO IPS-INV-SW
             END-WRITE
           ELSE
             MOVE &#039;0&#039; TO IPS-INV-SW
             REWRITE IPS-REC
               INVALID KEY
                 MOVE &#039;1&#039; TO IPS-INV-SW
             END-REWRITE
           END-IF.
**************************
DDS Source for TEMPDEVDSP:

     A*****************************************************************
     A* CpySplf QPDCDEV from DspDevD for PrtF IP Address
     A*****************************************************************
     A          R TEMPDEVDSR
     A            TDSDESC       40A         COLHDG(&#039;Description&#039;)
     A            TDSKEYWD      12A         COLHDG(&#039;Keyword&#039;)
     A            TDSDATA       80A         COLHDG(&#039;Data&#039;)
**************************
DDS Source for TEMPPRTIPS (Keyed by Printer)
     A*****************************************************************
     A* Printer IP Addresses
     A*****************************************************************
     A                                      UNIQUE
     A          R TEMPPRTIPR                TEXT(&#039;Printer IP Addresses&#039;
     A            TPIPRTF       10A         COLHDG(&#039;Print File&#039;)
     A            TPITEXT       30A         COLHDG(&#039;Text&#039;)
     A            TPIIP         30A         COLHDG(&#039;IP Address&#039;)
     A          K TPIPRTF

DDS Source for TEMPPRTIP1 (Keyed by IP):
     A*****************************************************************
     A* Printer IP Addresses by IP
     A*****************************************************************
     A          R TEMPPRTIPR                PFILE(TEMPPRTIPS)
     A          K TPIIP&lt;/pre&gt;&lt;/pre&gt;]]></description>
		<content:encoded><![CDATA[<p>You can obtain the Printer IP Addresses by using the DSPOBJD, DSPDEVD, and CPYSPLF commands.<br />
I wrote a COBOL program to read the spooled file to extract the Printer, Text, and IP Address and write to a physical file.</p>
<p>*****************************<br />
CL Program:<br />
             PGM</p>
<p>             DCL        VAR(&amp;RTNLIB) TYPE(*CHAR) LEN(10)<br />
             DCLF       FILE(TEMPDEVDPF)</p>
<p>             RTVOBJD    OBJ(TEMPPRTIPS) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)<br />
             CLRPFM     FILE(&amp;RTNLIB/TEMPPRTIPS)        </p>
<p>             DLTF       FILE(QTEMP/TEMPDEVDPF)<br />
             MONMSG     MSGID(CPF0000)<br />
             RTVOBJD    OBJ(TEMPDEVDPF) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)<br />
             CRTDUPOBJ  OBJ(TEMPDEVDPF) FROMLIB(&amp;RTNLIB) +<br />
                        OBJTYPE(*FILE) TOLIB(QTEMP)<br />
             MONMSG     MSGID(CPF0000)</p>
<p>             DLTF       FILE(QTEMP/TEMPDEVDSP)<br />
             MONMSG     MSGID(CPF0000)<br />
             RTVOBJD    OBJ(TEMPDEVDSP) OBJTYPE(*FILE) RTNLIB(&amp;RTNLIB)<br />
             CRTDUPOBJ  OBJ(TEMPDEVDSP) FROMLIB(&amp;RTNLIB) +<br />
                        OBJTYPE(*FILE) TOLIB(QTEMP)<br />
             MONMSG     MSGID(CPF0000)</p>
<p>             DSPOBJD    OBJ(*ALL/*ALL) OBJTYPE(*DEVD) +<br />
                          OUTPUT(*OUTFILE) OUTFILE(QTEMP/TEMPDEVDPF)<br />
 RCVF:<br />
             RCVF<br />
             MONMSG     MSGID(CPF0864) EXEC(DO)<br />
              GOTO       CMDLBL(ENDPGM)<br />
             ENDDO</p>
<p>             IF         COND(&amp;ODOBAT = &#8216;PRTLAN&#8217;) THEN(DO)<br />
               DSPDEVD    DEVD(&amp;ODOBNM) OUTPUT(*PRINT) OPTION(*BASIC)<br />
               CPYSPLF    FILE(QPDCDEV) TOFILE(QTEMP/TEMPDEVDSP) +<br />
                          SPLNBR(*LAST)<br />
               CALL       PGM(CRTPRTIPCB)<br />
               DLTSPLF    FILE(QPDCDEV) SPLNBR(*LAST)<br />
             ENDDO<br />
             GOTO       CMDLBL(RCVF)</p>
<p> ENDPGM:<br />
             ENDPGM<br />
***************************************<br />
Cobol CBLLE Program:<br />
       IDENTIFICATION   DIVISION.<br />
       PROGRAM-ID.      CRTPRTIPCB.<br />
      *****************************************************************<br />
      * Create Printer IP Address File (TEMPPRTIPS)<br />
      *****************************************************************<br />
       ENVIRONMENT       DIVISION.<br />
       CONFIGURATION     SECTION.<br />
       SOURCE-COMPUTER.  AS-400.<br />
       OBJECT-COMPUTER.  AS-400.<br />
       SPECIAL-NAMES.    DATA-AREA IS DATAAREA.<br />
       INPUT-OUTPUT      SECTION.<br />
       FILE-CONTROL.</p>
<p>           SELECT SPL-MASTER  ASSIGN DATABASE-TEMPDEVDSP<br />
                              ORGANIZATION SEQUENTIAL<br />
                              FILE STATUS SPL-STATUS.</p>
<p>           SELECT IPS-MASTER  ASSIGN DATABASE-TEMPPRTIPS<br />
                              ORGANIZATION INDEXED<br />
                              ACCESS DYNAMIC<br />
                              RECORD KEY EXTERNALLY-DESCRIBED-KEY<br />
                              FILE STATUS IPS-STATUS.</p>
<p>       DATA DIVISION.<br />
       FILE SECTION.<br />
       FD  SPL-MASTER.<br />
       01  SPL-REC.<br />
           COPY DDS-ALL-FORMATS OF TEMPDEVDSP.</p>
<p>       FD  IPS-MASTER.<br />
       01  IPS-REC.<br />
           COPY DDS-ALL-FORMATS OF TEMPPRTIPS.</p>
<p>       WORKING-STORAGE SECTION.<br />
       01  WS-FILE-STATUS.<br />
           05  SPL-STATUS        PIC  X(02).<br />
           05  IPS-STATUS        PIC  X(02).</p>
<p>       01  SPL-EOF-SW PIC X(01).<br />
       01  IPS-INV-SW PIC X(01).</p>
<p>       PROCEDURE DIVISION.<br />
       000-INPUT SECTION.<br />
       000-MAIN-PARA.<br />
           OPEN INPUT SPL-MASTER<br />
                I-O   IPS-MASTER.</p>
<p>           MOVE &#8217;0&#8242; TO SPL-EOF-SW<br />
           PERFORM 600-READ-SPL-MASTER-NEXT<br />
           PERFORM 100-PROCESS-SPL-MASTER<br />
             UNTIL SPL-EOF-SW = &#8217;1&#8242;</p>
<p>           CLOSE SPL-MASTER<br />
                 IPS-MASTER.</p>
<p>           GOBACK.</p>
<p>       100-PROCESS-SPL-MASTER.<br />
           IF TDSKEYWD = &#8216;DEVD&#8217;<br />
             MOVE TDSDATA TO TPIPRTF<br />
             PERFORM 600-READ-IPS-MASTER<br />
           END-IF.<br />
           IF TDSDESC (1:18) = &#8216;   Name or address&#8217;<br />
             MOVE TDSDATA TO TPIIP<br />
           END-IF.<br />
           IF TDSDESC (1:5) = &#8216; Text&#8217;<br />
             MOVE TDSDATA TO TPITEXT<br />
             PERFORM 600-WRITE-IPS-MASTER<br />
           END-IF.</p>
<p>           PERFORM 600-READ-SPL-MASTER-NEXT.</p>
<p>       600-READ-SPL-MASTER-NEXT.<br />
           READ SPL-MASTER NEXT<br />
             AT END<br />
               MOVE &#8217;1&#8242; TO SPL-EOF-SW<br />
           END-READ.</p>
<p>       600-READ-IPS-MASTER.<br />
           MOVE &#8217;0&#8242; TO IPS-INV-SW<br />
           READ IPS-MASTER<br />
             INVALID KEY<br />
               MOVE &#8217;1&#8242; TO IPS-INV-SW<br />
           END-READ.</p>
<p>       600-WRITE-IPS-MASTER.<br />
           IF IPS-INV-SW = &#8217;1&#8242;<br />
             MOVE &#8217;0&#8242; TO IPS-INV-SW<br />
             WRITE IPS-REC<br />
               INVALID KEY<br />
                 MOVE &#8217;1&#8242; TO IPS-INV-SW<br />
             END-WRITE<br />
           ELSE<br />
             MOVE &#8217;0&#8242; TO IPS-INV-SW<br />
             REWRITE IPS-REC<br />
               INVALID KEY<br />
                 MOVE &#8217;1&#8242; TO IPS-INV-SW<br />
             END-REWRITE<br />
           END-IF.<br />
**************************<br />
DDS Source for TEMPDEVDSP:</p>
<p>     A*****************************************************************<br />
     A* CpySplf QPDCDEV from DspDevD for PrtF IP Address<br />
     A*****************************************************************<br />
     A          R TEMPDEVDSR<br />
     A            TDSDESC       40A         COLHDG(&#8216;Description&#8217;)<br />
     A            TDSKEYWD      12A         COLHDG(&#8216;Keyword&#8217;)<br />
     A            TDSDATA       80A         COLHDG(&#8216;Data&#8217;)<br />
**************************<br />
DDS Source for TEMPPRTIPS (Keyed by Printer)<br />
     A*****************************************************************<br />
     A* Printer IP Addresses<br />
     A*****************************************************************<br />
     A                                      UNIQUE<br />
     A          R TEMPPRTIPR                TEXT(&#8216;Printer IP Addresses&#8217;<br />
     A            TPIPRTF       10A         COLHDG(&#8216;Print File&#8217;)<br />
     A            TPITEXT       30A         COLHDG(&#8216;Text&#8217;)<br />
     A            TPIIP         30A         COLHDG(&#8216;IP Address&#8217;)<br />
     A          K TPIPRTF</p>
<p>DDS Source for TEMPPRTIP1 (Keyed by IP):<br />
     A*****************************************************************<br />
     A* Printer IP Addresses by IP<br />
     A*****************************************************************<br />
     A          R TEMPPRTIPR                PFILE(TEMPPRTIPS)<br />
     A          K TPIIP</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rockleadme</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-56926</link>
		<dc:creator>rockleadme</dc:creator>
		<pubDate>Tue, 07 Oct 2008 06:10:26 +0000</pubDate>
		<guid isPermaLink="false">#comment-56926</guid>
		<description><![CDATA[thanks guys!!

Mike,
problem is i am new to this place and i just have the ip address and want  to know the name of the ouq.
any way to reverse engineer to find the name from ip address?

thanks]]></description>
		<content:encoded><![CDATA[<p>thanks guys!!</p>
<p>Mike,<br />
problem is i am new to this place and i just have the ip address and want  to know the name of the ouq.<br />
any way to reverse engineer to find the name from ip address?</p>
<p>thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rcomstock</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-56908</link>
		<dc:creator>rcomstock</dc:creator>
		<pubDate>Sat, 04 Oct 2008 12:45:56 +0000</pubDate>
		<guid isPermaLink="false">#comment-56908</guid>
		<description><![CDATA[Bryan Dietz @ http://home.columbus.rr.com/jbmmdietz/iseries.html
has a WRKRMTWTR tool that is free. It shows the writer and the ip address.]]></description>
		<content:encoded><![CDATA[<p>Bryan Dietz @ <a href="http://home.columbus.rr.com/jbmmdietz/iseries.html" rel="nofollow">http://home.columbus.rr.com/jbmmdietz/iseries.html</a><br />
has a WRKRMTWTR tool that is free. It shows the writer and the ip address.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mcl</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-56888</link>
		<dc:creator>mcl</dc:creator>
		<pubDate>Fri, 03 Oct 2008 14:52:46 +0000</pubDate>
		<guid isPermaLink="false">#comment-56888</guid>
		<description><![CDATA[Don&#039;t have TAATOOLs here.  Have currently about 285 printers around the country. I just set up a table with the required info. It&#039;s not like the IP addresses change often, except for office moves or maybe replaced hardware, so it is minimal maintenance.

Regards
Mike]]></description>
		<content:encoded><![CDATA[<p>Don&#8217;t have TAATOOLs here.  Have currently about 285 printers around the country. I just set up a table with the required info. It&#8217;s not like the IP addresses change often, except for office moves or maybe replaced hardware, so it is minimal maintenance.</p>
<p>Regards<br />
Mike</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rockleadme</title>
		<link>http://itknowledgeexchange.techtarget.com/itanswers/outq-name-from-ip-address/#comment-56875</link>
		<dc:creator>rockleadme</dc:creator>
		<pubDate>Fri, 03 Oct 2008 00:34:48 +0000</pubDate>
		<guid isPermaLink="false">#comment-56875</guid>
		<description><![CDATA[if no TAATOOL?]]></description>
		<content:encoded><![CDATA[<p>if no TAATOOL?</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 6/9 queries in 0.014 seconds using memcached
Object Caching 398/401 objects using memcached

Served from: itknowledgeexchange.techtarget.com @ 2013-05-24 06:38:25 -->