سؤال

هل يمكننا نقل الحجج إلى برنامج REXX من JCL؟

أفترض ، يمكن استخدام JCL Parm أثناء استخدامنا لتمرير الحجج إلى برامج COBOL .. ضع أفكارك هنا ...

هل كانت مفيدة؟

المحلول

انت تريد EXEC PGM=IRXJCL,PARM='member_name exec_args'. SYSEXEC يجب أن تشير إلى PDS المحتوية member name. SYSTSIN هو المدخلات ل PULL, SYSTSPRT هو الإخراج DD ل SAY

تفحص ال "باستخدام REXX في TSO/E وغيرها من مساحات عناوين MVS"الفصل في "دليل مستخدم TSO/E Rexx"كتاب (SA22-7791) للحصول على مثال كامل.

نصائح أخرى

ملاحظة إضافية: إذا كان REXX EXEC يستخدم خدمات ISPF ، فيمكنك تشغيله في دفعة مع PGM = IKJEFTXX (XX كونه لاحقة متغيرة) وتخصيص ISPXLIB في خطوة الوظيفة.

إذا تجاوزت المعلمات مع اسم عضو REXX 100 بايت ، فلن تعمل الطريقة التي ذكرها Ron Patterson لأن بناء جملة JCL يسمح فقط بحد أقصى بطول 100 بايت. في هذه الحالة ، أوصي باستخدام IKJEFTXX (تم نشره بالفعل بواسطة Tony). عليك بعد ذلك تمرير اسم برنامج REXX كبيانات instream إلى Systsin. يمكن للمعلمات لهذا البرنامج ببساطة كتابة خلف اسم البرنامج. عندما تحتاج إلى أكثر من سطر واحد ، استخدم الواصلة كحرف آخر لخط للإشارة إلى التسلسل مع السطر التالي. مثال:

//EXAMPLE  EXEC PGM=IKJEFT01,REGION=4096K,DYNAMNBR=30
//SYSPRINT DD  SYSOUT=*                              
//SYSEXEC  DD  DISP=SHR,DSN=YOUR.REXX.LIBRARY    
//SYSTSPRT DD  SYSOUT=*                              
//SYSTSIN  DD  *                                     
  SCHLABB PARAMETER1 PARAMETER2 PARAMETER3 -
          VERY_LONG_PARAMETER4             -
          LAST_PARAMETER5                                
/*                                                   
//                                                   

كنت أحصل على RC (-3) من أجل execio الأساسي ، libdef ، أوامر عندما حاولت تشغيل IRXJCL. أتمنى لو كان هناك وثائق أفضل حول ما يمكن أن يفعله IRXJCL ولا يمكنه فعله.

أخيرًا ، اتبعت النهج من الرابط أدناه ، لتمرير القيم ديناميكيًا إلى REXX عن طريق كتابتها إلى ملف وقراءة من الملف. كيفية تشغيل Dymanic SQL من خلال الأداة المساعدة IKJEFT01؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top