HTML

CMD ('HTML CVTER')
             PARM       KWD(FROMFILE) TYPE(QUAL1) MIN(1) +
                          PROMPT('FROM SRC')
             PARM       KWD(FROMMBR) TYPE(*NAME) LEN(10) MIN(1) +
                          PROMPT('FROM MBR')

             PARM       KWD(TOFILE) TYPE(QUAL2) MIN(1) +
                          PROMPT('TO SRC')
             PARM       KWD(TOMBR) TYPE(*NAME) LEN(10) DFT(*FROMMBR) +
                          SPCVAL((*FROMMBR)) PROMPT('FROM MBR')

 QUAL1:      QUAL       TYPE(*NAME) LEN(10)
             QUAL       TYPE(*NAME) LEN(10) DFT(*LIBL) +
                          SPCVAL((*LIBL)) PROMPT('LIBRARY')
 QUAL2:      QUAL       TYPE(*NAME) LEN(10)
             QUAL       TYPE(*NAME) LEN(10) DFT(*LIBL) +
                          SPCVAL((*LIBL)) PROMPT('LIBRARY')

HTML01

     H        1   Y/                                    1
     F******************************************************
     F*     D E F I N E    F I L E S                       *
     F******************************************************
     FINPUT   IF  F     112            DISK
     F                                              KINFDS INFDS
     FOUTPUT  O   F     150            DISK                      A
     E****************************************************
     E*          A R R A Y        T A B L E              *
     E****************************************************
     E                    CK1       100  1               :
     E                    CK2       150  1               :
     I******************************************************
     I*       D E F I N E   I N P U T   F I E L D          *
     I******************************************************
     IINPUT   AA  01
     I                                       13 112 CK1
     I******************************************************
     I*     D E F I N E    D A T A  - S T R U C T U R E    *
     I******************************************************
     IDSCK2       DS
     I                                        1 150 CK2
     IINFDS       DS
     I                                       83  92 SRC
     I                                       93 102 LIB
     I                                      129 138 MBR
     I******************************************************
     I*     D E F I N E    C O N S T A N T                 *
     I******************************************************
     I              '<TR><TD><PRE>'       C         TAG1
     I              '</PRE></TD></TR>'    C         TAG2
     I              '<P><A NAME="'        C         TAG3
     I              '</A></P>'            C         TAG4
     I              '<TABLE BORDER="1">'  C         TAG5
     I              '</TABLE>'            C         TAG6
     I              '&LT;'                C         LT
     I              '&GT;'                C         GT
     I              '&AMP;'               C         AND
     I              '&QUOT;'              C         DBLQ
     C******************************************************
     C*             M A I N -  R O U T I N E
     C******************************************************
     C                     MOVELTAG3      OUTNAM150 P      :
     C                     CAT  MBR:0     OUTNAM           :
     C                     CAT  '">':0    OUTNAM           :
     C                     CAT  MBR:0     OUTNAM           :
     C                     CAT  TAG4:0    OUTNAM           :
     C                     EXCPT#NAME                      :
     C                     MOVELTAG1      OUTDTA150 P      :
     C*                                                    :
B001 C           *IN90     DOUEQ*ON                        :
 001 C                     READ INPUT                    90:
B002 C           *IN90     IFEQ *OFF                       :
 002 C*                                                    :
 002 C                     EXSR @CK1                       :
 002 C*                                                    :
 002 C                     ADD  1         W1LIN   30       :
 002 C                     CAT  DSCK2:0   OUTDTA           :
 002 C*                                                    :
 002 C                     READ INPUT                    90:
 002 C                     READPINPUT                    92:
B003 C           W1LIN     IFEQ 15                         :
*003 C           *IN90     OREQ *ON                        :
 003 C                     CAT  TAG2:0    OUTDTA           :
E003 C                     ENDIF                           :
 002 C*                                                    :
 002 C                     EXCPT#ADD                       :
 002 C*                                                    :
B003 C           W1LIN     IFEQ 15                         :
*003 C           *IN90     ANDEQ*OFF                       :
 003 C                     MOVELTAG1      OUTDTA    P      :
 003 C                     Z-ADD0         W1LIN            :
E003 C                     ENDIF                           :
 002 C*                                                    :
E002 C                     ENDIF                           :
E001 C                     ENDDO                           :
     C*                                                    :
     C                     EXCPT#TBL2                      :
     C                     MOVE *ON       *INLR            :
     C                     RETRN                           :
     C******************************************************
     C*             S U B   -  R O U T I N E
     C******************************************************
     C*----------------------------------------------------*
     C           @CK1      BEGSR                           :
     C*----------------------------------------------------*
     C                     Z-ADD0         KK      30       :
B001 C           1         DO   100       JJ      30       :
 001 C                     ADD  1         KK               :
B002 C                     SELEC                           :
 002 C           CK1,JJ    WHLT *BLANK                     :
*002 C           CK1,JJ    ANDNEX'0E'                      :
*002 C           CK1,JJ    ANDNEX'0F'                      :
 002 C                     MOVE *BLANK    CK2,KK           :
 002 C           CK1,JJ    WHEQ '<'                        :
 002 C                     MOVEALT        CK2,KK           :
 002 C                     ADD  3         KK               :
 002 C           CK1,JJ    WHEQ '>'                        :
 002 C                     MOVEAGT        CK2,KK           :
 002 C                     ADD  3         KK               :
 002 C           CK1,JJ    WHEQ '&'                        :
 002 C                     MOVEAAND       CK2,KK           :
 002 C                     ADD  4         KK               :
 002 C           CK1,JJ    WHEQ '"'                        :
 002 C                     MOVEADBLQ      CK2,KK           :
 002 C                     ADD  5         KK               :
+002 C                     OTHER                           :
 002 C                     MOVE CK1,JJ    CK2,KK           :
E002 C                     ENDSL                           :
E001 C                     ENDDO                           :
     C*                                                    :
     C                     ENDSR                           :
     O******************************************************
     O*             O U T P U T   M O D U L E              *
     O******************************************************
     OOUTPUT  EADD             #NAME
     O                         OUTNAM
     O        EADD             #NAME
     O                         TAG5      18
     O        EADD             #ADD
     O                         OUTDTA B
     O        EADD             #TBL2
     O                         TAG6       8

HTML01C

PGM   (&FROM &FROMMBR &TO &TOMBR)

          DCL &FROM      *CHAR    20
          DCL &TO        *CHAR    20
          DCL &FROMMBR   *CHAR    10
          DCL &TOMBR     *CHAR    10
          DCL &FROMF     *CHAR    10
          DCL &FROML     *CHAR    10
          DCL &TOF       *CHAR    10
          DCL &TOL       *CHAR    10

   MONMSG CPF0000  *N GOTO END

     CHGVAR &FROMF     %SST(&FROM   1  10)
     CHGVAR &FROML     %SST(&FROM   11 10)
     CHGVAR &TOF       %SST(&TO     1  10)
     CHGVAR &TOL       %SST(&TO     11 10)

   CHKOBJ &FROML/&FROMF *FILE MBR(&FROMMBR)

   IF (&TOMBR='*FROMMBR') CHGVAR &TOMBR &FROMMBR

   ADDPFM &TOL/&TOF MBR(&TOMBR)
   MONMSG CPF0000

   OVRDBF  INPUT  &FROML/&FROMF &FROMMBR
   OVRDBF  OUTPUT &TOL/&TOF &TOMBR
   CALL HTML01
   DLTOVR *ALL
END:
RETURN
ENDPGM
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送