© serviceprofessionalgmbh

Runs a macro for all members of a data set (except the active one).

/* REXX * EDIT MACRO *************************************************/
/*                                                                   */
/* Macroname.: $ALLMEM                                               */
/* Zweck.....: Ermittelt alle Mitglieder der aktiven PO-Datei und    */
/*             ruft fuer jedes Mitglied ein Macro auf. Der Name des  */
/*             Macros wird als Parameter uebergeben.                 */
/*                                                                   */
address isredit
"macro (umacro)"
if length(umacro) = 0 then do
   zedsmsg="Macro fehlt"
   zedlmsg="Name des Macros, das fuer alle Member laufen soll, fehlt"
   address ispexec "setmsg msg(isrz000)"
   return
end
"(datid) = dataid"
"(mbr) = member"
upper umacro
address ispexec "lmopen dataid("datid") option(input)"
if rc = 0 then do forever
   address ispexec ,
   "lmmlist dataid("datid") option(list) member(member) stats(no)"
   if rc > 0 then leave
   if mbr = member then iterate
   member=strip(member)
   interpret '"'umacro member'"'
end
address ispexec
"lmmlist dataid("datid") option(free)"
"lmclose dataid("datid")"
exit
back to Edit Macros