&ANALYZE-SUSPEND _VERSION-NUMBER UIB_v8r12
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS Procedure
/*--------------------------------------------------------------------------
File :
Purpose :
Syntax :
Description :
Author(s) :
Created :
Notes :
------------------------------------------------------------------------*/
/* This .W file was created with the Progress UIB. */
/*----------------------------------------------------------------------*/
/* *************************** Definitions ************************** */
DEFINE INPUT PARAMETER ipDirectory AS CHARACTER NO-UNDO.
DEFINE INPUT PARAMETER ipTitle AS CHARACTER NO-UNDO.
DEF VAR vStatus AS CHAR FORMAT "x(30)" NO-UNDO.
DEFINE FRAME frmStatus
SKIP(1) SPACE(2) vStatus LABEL "Creating Page" SPACE(2) SKIP(1)
WITH SIDE-LABELS THREE-D CENTERED VIEW-AS DIALOG-BOX TITLE "Please wait...".
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
/* ******************** Preprocessor Definitions ******************** */
&Scoped-define PROCEDURE-TYPE Procedure
/* _UIB-PREPROCESSOR-BLOCK-END */
&ANALYZE-RESUME
/* *********************** Procedure Settings ************************ */
&ANALYZE-SUSPEND _PROCEDURE-SETTINGS
/* Settings for THIS-PROCEDURE
Type: Procedure
Allow:
Frames: 0
Add Fields to: Neither
Other Settings: CODE-ONLY COMPILE
*/
&ANALYZE-RESUME _END-PROCEDURE-SETTINGS
/* ************************* Create Window ************************** */
&ANALYZE-SUSPEND _CREATE-WINDOW
/* DESIGN Window definition (used by the UIB)
CREATE WINDOW Procedure ASSIGN
HEIGHT = 2
WIDTH = 40.
/* END WINDOW DEFINITION */
*/
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK Procedure
/* *************************** Main Block *************************** */
DISPLAY "index" @ vStatus
WITH FRAME frmStatus.
OUTPUT TO VALUE( ipDirectory + "/index.htm" ).
RUN Header (ipTitle).
RUN TableList.
RUN Footer.
OUTPUT CLOSE.
FOR EACH DICTDB._File NO-LOCK
WHERE DICTDB._File._File-name < "_":
ASSIGN vStatus = ipDirectory + "/" + DICTDB._File._Dump-name + ".htm".
DISPLAY vStatus WITH FRAME frmStatus.
PROCESS EVENTS.
OUTPUT TO VALUE(vStatus).
RUN TableHeader (ipTitle, DICTDB._File._File-name).
RUN FieldList (RECID(_File)).
PUT UNFORMATTED "" SKIP.
PUT UNFORMATTED "
" SKIP.
PUT UNFORMATTED "
" SKIP.
PUT UNFORMATTED "" SKIP.
PUT UNFORMATTED "Indexing
" SKIP.
RUN IndexList (RECID(DICTDB._File)).
RUN TableFooter (DICTDB._File._File-name).
OUTPUT CLOSE.
END.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
/* ********************** Internal Procedures *********************** */
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE CrossReference Procedure
PROCEDURE CrossReference :
/*------------------------------------------------------------------------------
Purpose:
Parameters:
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER ipTableRecid AS RECID NO-UNDO.
DEFINE INPUT PARAMETER ipFieldName AS CHARACTER NO-UNDO.
DEFINE VARIABLE lvFirst AS LOGICAL INITIAL TRUE NO-UNDO.
DEFINE VARIABLE lvRefFile AS CHARACTER NO-UNDO.
DEFINE BUFFER bField FOR DICTDB._Field.
DEFINE BUFFER bFile FOR DICTDB._File.
PUT UNFORMATTED "".
FOR EACH bField NO-LOCK
WHERE bField._Field-name = ipFieldName
AND bField._File-Recid <> ipTableRecid,
FIRST bFile OF bField NO-LOCK
BY bFile._File-name:
IF lvFirst THEN ASSIGN lvFirst = FALSE.
RUN HTMLFile (bFile._Dump-name, OUTPUT lvRefFile).
PUT UNFORMATTED "" +
bFile._File-name + "." + bField._Field-name +
" ".
END.
IF lvFirst THEN PUT UNFORMATTED " ".
PUT UNFORMATTED " | " SKIP.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FieldList Procedure
PROCEDURE FieldList :
/*------------------------------------------------------------------------------
Purpose:
Parameters:
Notes:
------------------------------------------------------------------------------*/
DEFINE INPUT PARAMETER ipTableRecid AS RECID NO-UNDO.
FOR EACH DICTDB._Field NO-LOCK
WHERE DICTDB._Field._File-Recid = ipTableRecid
BY _Order:
PUT UNFORMATTED "" SKIP.
PUT UNFORMATTED "| " + _field._field-name.
PUT UNFORMATTED " | " SKIP.
PUT UNFORMATTED "" + _field._data-type.
PUT UNFORMATTED " | " SKIP.
PUT UNFORMATTED "".
PUT UNFORMATTED _field._format + " | " SKIP.
IF _field._extent > 0
THEN PUT UNFORMATTED "" _field._extent " | " SKIP.
ELSE PUT UNFORMATTED "1 | " SKIP.
IF TRIM(_field._initial) = "" OR _field._initial = ?
THEN PUT UNFORMATTED "  | " SKIP.
ELSE PUT UNFORMATTED "" + _field._initial + " | " SKIP.
IF TRIM(_field._desc) = ""
THEN PUT UNFORMATTED "  | " SKIP.
ELSE PUT UNFORMATTED "" + _field._desc + " | " SKIP.
RUN CrossReference (ipTableRecid, _Field._Field-name).
PUT UNFORMATTED "
" SKIP.
END.
END PROCEDURE.
/* _UIB-CODE-BLOCK-END */
&ANALYZE-RESUME
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE Footer Procedure
PROCEDURE Footer :
/*------------------------------------------------------------------------------
Purpose:
Parameters:
Notes:
------------------------------------------------------------------------------*/
PUT UNFORMATTED "" SKIP.
PUT UNFORMATTED "" SKIP.
PUT UNFORMATTED "
" SKIP.
PUT UNFORMATTED "
" SKIP.
PUT UNFORMATTED "" SKIP.
PUT UNFORMATTED "Last updated " + string( today, "99/99/9999" ) + " ".
PUT UNFORMATTED string( time, "hh:mm:ss am" ) + "
" SKIP.
PUT UNFORMATTED "
" SKIP.
PUT UNFORMATTED "
" SKIP.
PUT UNFORMATTED "