× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I did some tests to use QDMROUTE to add a PF member and here is a sample source.
There some differences on the parameters I explained previously. It seemes that 
the parameters list is very function dependent (first param)

For a member addition the parameters list is

        Parm1 - Function (or Option as IBM calls it) is X'0102' (Why not 0002 ? 
I don't know)
        Parm2 - SPP to CHAR(30) containing : File, Library and Member to add
        Parm3 - SPP to CHAR(256 ?) or a space called DBRDEF in internal OS calls
        Parm4 - SYP to the newly add mbr returned by QDMROUTE
        Parm5 - SPP to CHAR(21) requested commitment info for the new member

PARM1 and PARM2 are the same as explained into my previous message.

PARM3 is defined as follows :
-----
 Bytes pos      !       usage
----------------------------------------------------
        1       !       X'80' default SHARE(*NO), X'88'=SHARE(*YES)
        2       !       X'00' default no EXPDATE, X'08'=EXPDATE specified later
    5 to 6  !   Bin(2) (or Bin(4) starting at pos 3?) = TEXT length
    7 to 56 !   TEXT description for the new member
   70 to 76     !       EXPDATE format is CYYMMDD  (Byte 2, bit 4 must be '1') 
or X'00'
   81 to 90 !   SRCTYPE or X'40'

PARM5
------
        Byte 1 = 'N' no commitment definition ID specified ? 'Y' otherwise (I 
didn't test Y)
        Bytes 2 to 21 = '*CURRENT  *CURRENT  ' (or what ? )

Here is a sample program to test :


____________________________________________________________
  ENTRY * EXT;
/*                                                                  */
/* Process communication object                                     */
/*                                                                  */
  DCL PTR P_PCO(96) BASPCO;
   DCL SPCPTR  P_SEPT    DEF(P_PCO) POS(1);
  DCL PTR SEPT(8000) BAS(P_SEPT);

/*-----------------------------------------------------------------*/
/*                      QDMROUTE Parms                             */
/*-----------------------------------------------------------------*/
DCL DD FILELIBMBR CHAR(30);
DCL DD DBRDEF CHAR(256) BDRY(16);
  DCL DD TEXTLEN   BIN(2)    DEF(DBRDEF) POS( 5);
  DCL DD TEXT      CHAR(50)  DEF(DBRDEF) POS( 7);
  DCL DD EXPDATE   CHAR(7 )  DEF(DBRDEF) POS(70);
  DCL DD SRCTYPE   CHAR(10)  DEF(DBRDEF) POS(81);
DCL DD COMIT  CHAR(21 );

DCL DD FUNC CHAR(2);
DCL SPCPTR P_2 INIT(FILELIBMBR);
DCL SPCPTR P_3 INIT(DBRDEF);
DCL SYSPTR P_4;
DCL SPCPTR P_5 INIT(COMIT);
DCL OL DMROUTELIST(FUNC,P_2,P_3,P_4,P_5) ARG;      /*  QDMROUTE  OL */;

/*-----------------------------------------------------------------*/
/*     ADDPFM using QDMROUTE                                       */
/*-----------------------------------------------------------------*/

  CPYBLA  FUNC,         X'0102' ;

  CPYBLA   FILELIBMBR,  'DUMMYFILE QTEMP     MBR01     ' ;
  CPYBLAP  DBRDEF,      X'8000',X'00' ;
  CPYNV    TEXTLEN,     29;
  CPYBLAP  TEXT,        'Member added by QDMROUTE call',' ' ;
  CPYBREP  EXPDATE,     X'00' ;
  CPYBREP  SRCTYPE,     ' ' ;

  CPYBWP   P_4,         * ;
  CPYBLA   COMIT,       'N*CURRENT  *CURRENT  ';
;
  CALLX SEPT(110),DMROUTELIST,*              /* Call to QDMROUTE */;
;
DEACTPG *;
RTX *;
PEND;

____________________________________________________


to use this sample, compile it, create a PF :
 CRTPF FILE(QTEMP/DUMMYFILE) RCDLEN(10) MBR(*NONE)
and call the sample
a dspfd should show you that a member called MBR01 has been added


Thanks to those which have courageously read me until now, I hope my 
explanation are quite understandable, my english is so poor ...


Jean-Michel Penasse
EXPERIA Europe
jmpenasse@experia.com
+33(0)4.76.67.07.70
www.experia.com



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.