□ Tips : 如何利用Subfile message 顯示訊息?
---------------------------------------
QDDSSRC SFLMSGD
A CA03
A*-------------------------------------*
A R HED01
A*-------------------------------------*
A 80 ALARM
A KEEP
A BLINK
A OVERLAY
A PUTOVR
A 1 2'SFLMSGD'
A 1 30'Subfile Message Test'
A 1 72DATE
A EDTCDE(Y)
A USER 10A O 2 2
A 2 72TIME
A EDTWRD(' : : ')
A 8 18'This is a test of subfile message -
A function '
A 21 67'Vengoal Chang'
A DSPATR(HI)
A*-------------------------------------*
A R SFLMSG SFL
A*-------------------------------------*
A* SFLMSGRCD specify message show from line XX
A SFLMSGRCD(23)
A KEYVAR SFLMSGKEY
A SFPGMQ SFLPGMQ(10)
A*-------------------------------------*
A R CTLMSG SFLCTL(SFLMSG)
A*-------------------------------------*
A OVERLAY
A SFLDSP
A SFLDSPCTL
A 65 SFLEND
A SFLINZ
A SFLSIZ(0011)
A SFLPAG(0002)
A SFPGMQ SFLPGMQ
QRPGLESRC SFLMSGR
H DEBUG OPTION(*SRCSTMT:*NODEBUGIO)
H DATEDIT(*YMD/)
FSFLMSGD CF E WORKSTN
F INFDS(INFDSP)
D******************************************************
D* D E F I N E D A T A - S T R U C T U R E *
D******************************************************
D INFDSP DS
D PUSHED 369 369
D* 指定 MESSAGE FILE
D* MESSAGE FILE 可以 CRTMSGF 自行建立
D* 以 WRKMSGF 按 F6 加入訊息
D MSGF DS
D MSGFIL 1 10 INZ('QCPFMSG')
D MSGFLB 11 20 INZ('*LIBL')
D*
D DS INZ
D MSGLEN 1 4B 0
D TOPGCT 5 8B 0
D*
D PBERR DS
D BYTPRV 1 4B 0 INZ(116)
D BYTAVA 5 8B 0 INZ(0)
D ERRID 9 15
D ERR### 16 16
D ERRDTA 17 116
D******************************************************
D* D E F I N E PROGRAM STATUS PARM *
D******************************************************
D SDS
D PGMID 1 10
D WRSTN 244 253
D USER 254 263
D******************************************************
D* D E F I N E C O N S T A N T *
D******************************************************
D F3 C CONST(X'33')
C******************************************************
C* M A I N - R O U T I N E :
C******************************************************
* 將 MSGID 改為自行加入的 MSGID
C MOVE 'CPF0001' MSGID :
C MOVEL(P) 'TEST' MSG :
C EXSR @SNDPM :
C*
C MOVE 'CPF0002' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0003' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0005' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0006' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0007' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0008' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0010' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0011' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0190' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0191' MSGID :
C EXSR @SNDPM :
C*
C MOVE 'CPF0192' MSGID :
C EXSR @SNDPM :
C*
C F3 DOUEQ PUSHED :
C*
C WRITE CTLMSG :MSG SFL
C EXFMT HED01 :OPTION ENTRY
C EXSR @RMVPM :
C*
C END :
C*
C MOVE *ON *INLR :
C RETURN :
C******************************************************
C* S U B - R O U T I N E :
C******************************************************
C*----------------------------------------------------*
C *INZSR BEGSR :
C*----------------------------------------------------*
C MOVE *ON *IN65 :
C MOVEL PGMID SFPGMQ :FOR MSG SFL
C*
C ENDSR :
C*----------------------------------------------------*
C @SNDPM BEGSR :
C*----------------------------------------------------*
C CALL 'QMHSNDPM' :
C PARM MSGID 7 :
C PARM MSGF :
C PARM MSG 78 :
C PARM 78 MSGLEN :
C PARM '*INFO' MSGTYP 10 :
C PARM '*' TOPGMQ 10 :
C PARM 0 TOPGCT :
C PARM KEYVAR 4 :
C PARM PBERR :
C*
C MOVE *BLANK MSG :
C*
C ENDSR :
C*----------------------------------------------------*
C @RMVPM BEGSR :
C*----------------------------------------------------*
C CALL 'QMHRMVPM' :
C PARM '*' TOPGMQ :
C PARM 0 TOPGCT :
C PARM *BLANK KEYVAR :
C PARM '*OLD ' CLEAR 10 :
C PARM PBERR :
C*
C ENDSR
A blog about IBM i (AS/400), MQ and other things developers or Admins need to know.
星期二, 10月 31, 2023
2000-10-04 如何利用Subfile message 顯示訊息?
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言