トップ 履歴 一覧 カテゴリ ソース 検索 ヘルプ RSS ログイン

Source/Bat/SrcCompile

INDEX

一括コンパイルバッチ

昔、プロジェクトで支援用として作った、PL/SQLとVB6プロジェクトを一括でコンパイルするバッチファイル。

※プロジェクト名とか接続情報とか適当に変更してます。

PL/SQLバッチコンパイル

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
@ECHO OFF
ECHO  *****************************************************************************
ECHO  *      システム:○○○○○○○○システム                                   *
ECHO  *  サブシステム:PL/SQLバッチコンパイル                                     *
ECHO  *                                  MakeDate:2003/10/06   Creator:T.Imamura  *
ECHO  *****************************************************************************
REM 
REM このバッチファイルは、PL/SQLを一括でコンパイルするものです。
REM 
REM 「コンパイル対象ソースリスト(PLSQL_LIST.TXT)」に
REM 列挙されれいるものを対象としてコンパイルを行います。
REM 実行前に下記の環境設定を確認してから実行してください。
REM 
REM コンパイル対象ソースは以下のようになります。
REM  (環境設定のCOMPILE_SRC)\(コンパイル対象ソースリストの各行)
REM 
REM このバッチプログラムはWindows2000(XP)専用です。(Win9x系では動きません)
REM 確認用の一時停止が不要なら、"PAUSE"行をコメントアウト("REM "を付ける)してください。
REM 

REM ****** 環境設定 ******     ※実行前に確認すること!
REM コンパイル対象ソースディレクトリ
SET COMPILE_SRC=K:\30.製造\20.サーバ
REM コンパイル結果ログファイル
SET SQL_LOG_FILE=compile_sql.log

REM **** 接続設定 ****
REM Oracle 接続サービス名
SET ORACLE_SID=demo
REM Oracle ユーザ名
SET ORACLE_USER=scotto
REM Oracle パスワード
SET ORACLE_PASS=tiger

REM SQL*PLUS コンソール版EXE名(必要時はパスも、通常は変更不用)
SET SQLPLUS_EXEC=SQLPLUS
REM SQLスクリプトファイル名  ※変更不用
SET SQLSCRIPT=ORA_BAT_COMP.SQL
REM ソースリストファイル名
SET MAKELIST=PLSQL_LIST.TXT

REM ***********************************
REM  一括コンパイル
REM ***********************************
REM 設定確認
IF NOT EXIST %COMPILE_SRC%\CON GOTO NotFoundSrc
IF NOT EXIST %MAKELIST% GOTO NotFoundList
IF EXIST %SQLSCRIPT% GOTO FoundWork

REM 開始メッセージ
ECHO.
ECHO コンパイルを開始します。よろしいですか?
PAUSE
ECHO.
ECHO コンパイル中.....

REM 開始時刻の出力
ECHO ○○○○○○○○システム PL/SQLバッチコンパイル>%SQL_LOG_FILE%
ECHO 開始時刻 %DATE% %TIME%>>%SQL_LOG_FILE%

REM リストファイルより展開・スクリプト作成
ECHO.SHOW USER>%SQLSCRIPT%
FOR /F %%f IN (%MAKELIST%) DO ECHO.@@"%COMPILE_SRC%\%%f">>%SQLSCRIPT%
ECHO.EXIT>>%SQLSCRIPT%
REM スクリプトの実行
%SQLPLUS_EXEC% %ORACLE_USER%/%ORACLE_PASS%@%ORACLE_SID% @%SQLSCRIPT%>>%SQL_LOG_FILE%

REM 終了時刻の出力
ECHO.>>%SQL_LOG_FILE%
ECHO 終了時刻 %DATE% %TIME%>>%SQL_LOG_FILE%

REM 使用スクリプトファイルの削除
DEL %SQLSCRIPT%

ECHO コンパイルが終了しました。
ECHO コンパイルログ%SQL_LOG_FILE%を確認してください。
GOTO END
REM ***********************************
REM  エラー処理
REM ***********************************
:NotFoundSrc
ECHO コンパイル対象ソースディレクトリの指定が正しくありません。確認してください。
ECHO   %COMPILE_SRC%
GOTO END
:NotFoundList
ECHO コンパイル対象ソースリスト(%MAKELIST%)が見つかりません。確認してください。
GOTO END
:FoundWork
ECHO 作業用SQLスクリプトファイル(%SQLSCRIPT%)が存在します。確認してください。
GOTO END

REM ***********************************
REM  終了
REM ***********************************
:END
PAUSE

 コンパイル対象ソースリスト

共通\xxx000.sql
共通\xxx010.sql
共通\xxx020.sql
yyy000.sql
yyy010.sql
yyy020.sql

VB6バッチコンパイル

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
@ECHO OFF
ECHO  *****************************************************************************
ECHO  *      システム:○○○○○○○○システム                                   *
ECHO  *  サブシステム:VB6バッチコンパイル                                        *
ECHO  *                                  MakeDate:2003/10/06   Creator:T.Imamura  *
ECHO  *****************************************************************************
REM 
REM このバッチファイルは、VB6のプロジェクトファイルを一括でコンパイルするものです。
REM 
REM 「コンパイル対象ソースリスト(VBP_LIST.TXT)」に
REM 列挙されれいるものを対象としてコンパイルを行います。
REM 実行前に下記の環境設定を確認してから実行してください。
REM 
REM コンパイル対象ソースは以下のようになります。
REM  (環境設定のCOMPILE_SRC)\(コンパイル対象ソースリストの各行)
REM 
REM このバッチプログラムはWindows2000(XP)専用です。(Win9x系では動きません)
REM 確認用の一時停止が不要なら、"PAUSE"行をコメントアウト("REM "を付ける)してください。
REM 

REM ****** 環境設定 ******     ※実行前に確認すること!
REM VB6プログラム
SET VB_EXEC_PATH="C:\Microsoft Visual Studio\VB98\VB6.EXE"
REM コンパイル対象ソースディレクトリ
SET COMPILE_SRC=K:\30.製造\10.クライアント
REM EXE出力ディレクトリ
SET COMPILE_DST=K:\30.製造\10.クライアント\10.EXE_ALL
REM コンパイル結果ログファイル
SET VB_LOG_FILE=compile_vb6.log
REM ソースリストファイル名
SET MAKELIST=VBP_LIST.TXT

REM ***********************************
REM  一括コンパイル
REM ***********************************
REM 設定確認
IF NOT EXIST %VB_EXEC_PATH% GOTO NotFoundExec
IF NOT EXIST %COMPILE_SRC%\CON GOTO NotFoundSrc
IF NOT EXIST %COMPILE_DST%\CON GOTO NotFoundDst
IF NOT EXIST %MAKELIST% GOTO NotFoundList

REM 開始メッセージ
ECHO.
ECHO コンパイルを開始します。よろしいですか?
PAUSE
ECHO.
ECHO コンパイル中.....

REM EXE出力ディレクトリのクリア
DEL %COMPILE_DST%\*.EXE >%VB_LOG_FILE% 2>&1

REM 開始時刻の出力
ECHO ○○○○○○○○システム VBバッチコンパイル>%VB_LOG_FILE%
ECHO 開始時刻 %DATE% %TIME%>>%VB_LOG_FILE%

REM リストファイルより展開・コンパイル
FOR /F %%f IN (%MAKELIST%) DO %VB_EXEC_PATH% /outdir "%COMPILE_DST%" /out "%VB_LOG_FILE%" /make "%COMPILE_SRC%\%%f"

REM 終了時刻の出力
ECHO.>>%VB_LOG_FILE%
ECHO 終了時刻 %DATE% %TIME%>>%VB_LOG_FILE%

ECHO.
ECHO コンパイルが終了しました。
ECHO コンパイルログ%VB_LOG_FILE%を確認してください。
GOTO END
REM ***********************************
REM  エラー処理
REM ***********************************
:NotFoundExec
ECHO Visual Basic 6.0 のコンパイラの指定が正しくありません。確認してください。
ECHO   %VB_EXEC_PATH%
GOTO END
:NotFoundSrc
ECHO コンパイル対象ソースディレクトリの指定が正しくありません。確認してください。
ECHO   %COMPILE_SRC%
GOTO END
:NotFoundDst
ECHO EXE出力ディレクトリの指定が正しくありません。確認してください。
ECHO   %COMPILE_DST%
GOTO END
:NotFoundList
ECHO コンパイル対象ソースリスト(%MAKELIST%)が見つかりません。確認してください。
GOTO END

REM ***********************************
REM  終了
REM ***********************************
:END
PAUSE

 コンパイル対象ソースリスト

zzz000\zzz000.vbp
zzz010\zzz010.vbp
zzz020\zzz020.vbp

最終更新時間:2008年11月17日 23時36分00秒 指摘や意見などあればSandBoxのBBSへ。

PLCOMP.BAT VBCOMP.BAT