Consultor Eletrônico



Kbase 16652: A 4GL program to generate an idxbuild DOS batch by index
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/05/1998
A 4GL program to generate an idxbuild DOS batch by index

/* --- IDXB3.P --------------------------------------------------*/
/* */
/* - Generates batch idxbuild.bat for index rebuild per index. */
/* */
/* */
/* */
/* - Created by: Peter C. de Jong (UNIX Version) */
/* */
/* - Jan 24, 1995 */
/* */
/* - Modified by: Frank C.G. Beusenberg (DOS Version) */
/* */
/* - Jul 12, 1995 */
/* */
/* - Modified by: Reinhard Weiss (DOS for every index separately) */
/* */
/* - Jan 07, 1997 */
/* */
/* */
/* */
/* ----------------------------------------------------------------*/


DEFINE STREAM BatchFile.
DEFINE STREAM IndexFile.

DEFINE VARIABLE Loop AS INTEGER INITIAL 0.
DEFINE VARIABLE FileName AS CHAR FORMAT "X(8)".

PAUSE 0 BEFORE-HIDE.

OUTPUT STREAM BatchFile TO idxbuild.bat.

CLEAR ALL.
DISPLAY "Working..." WITH NO-BOX CENTERED.
PUT STREAM BatchFile UNFORMATTED
"@ECHO OFF" SKIP
"CLS" SKIP.

PUT STREAM BatchFile UNFORMATTED
"ECHO This batchfile will rebuild all indices.." SKIP
"ECHO." SKIP.

FOR EACH _file WHERE NOT _file._file-name BEGINS "_":
For EACH _index OF _file :
PUT STREAM BatchFile UNFORMATTED
"ECHO Processing index " _index " for table: " _file._file-name
".." SKIP.
Loop = Loop + 1.
FileName = "idx" + STRING(Loop).
PUT STREAM BatchFile UNFORMATTED
"_PROUTIL.EXE "
dbname
" -C idxbuild -TM 10 -TB 10 -ovl 32 < "
FileName
" >> idxbuild.log" SKIP.

OUTPUT STREAM IndexFile TO VALUE(FileName).
PUT STREAM IndexFile UNFORMATTED "some" SKIP.

PUT STREAM IndexFile UNFORMATTED _file._file-name SKIP.
PUT STREAM IndexFile UNFORMATTED _index._index-name SKIP.


PUT STREAM IndexFile UNFORMATTED "!" SKIP.
PUT STREAM IndexFile UNFORMATTED "y" SKIP.
PUT STREAM IndexFile UNFORMATTED "y" SKIP.

OUTPUT STREAM IndexFile CLOSE.

END.
END.

PUT STREAM BatchFile UNFORMATTED
"ECHO." SKIP
"ECHO All Done..." SKIP
"ECHO." SKIP.

OUTPUT STREAM BatchFile CLOSE.

CLEAR ALL.

/* End of program */

Progress Software Technical Support Note # 16652