Translate to your Language

Wednesday, September 22, 2010

DataStage Server JobCompile Script

by Unknown  |  in DI at  9:18 AM

DOS Batch Script do to a mass DataStageJobCompile

@echo off
:: -----------------------------------------------------------------
:: DataStageJobCompile.bat
:: -----------------------------------------------------------------
:: This batch script is used to Compile all jobs in each project for a given server
:: This script must be run from a DataStage client machine and the parameters below should be given
:: -----------------------------------------------------------------
:: Host is server name
:: User is DataStage username
:: Password   is DataStage password
SET Host=%1
SET User=%2
SET Password=%3
SET Location=%4
::-------------------------------------------------------------------
::List out all projects from the given server
::------------------------------------------------------------------
cd C:\Program Files\Ascential\DataStage7.5.2\
dsjob.exe -server %Host% -user %User% -password %Password% -lprojects > %Location%\ProjectsList.txt
cd %Location%
SET ProjectsList.txt=%Location%\ProjectsList.txt
::pause
:: -----------------------------------------------------------------
:: Get the current Date
:: -----------------------------------------------------------------
    FOR /f "tokens=2-4 delims=/ " %%a in ('DATE/T') do SET DsxDate=%%c%%a%%b
:: -----------------------------------------------------------------
:: Get the current Time
:: -----------------------------------------------------------------
    FOR /f "tokens=1* delims=:" %%a in ('ECHO.^|TIME^|FINDSTR "[0-9]"') do (SET DsxTime=%%b)
:: -----------------------------------------------------------------
    SET delim1=%DsxTime:~3,1%
    SET delim2=%DsxTime:~9,1%
    FOR /f "tokens=1-4 delims=%delim1%%delim2% " %%a in ('echo %DsxTime%') do (
        set DsxHr=%%a
        set DsxMin=%%b
        set DsxSec=%%c
        set DsxHun=%%d
    )
:: -----------------------------------------------------------------
:: Set the log file name
:: -----------------------------------------------------------------
    SET LogFileName=%ProjectDir%\DataStageExport_bat_%DsxDate%_%DsxHr%_%DsxMin%_%DsxSec%.log
:: -----------------------------------------------------------------
:: Create a log file name to output
:: -----------------------------------------------------------------
    cd %Location%
    ECHO. > %LogFileName%
    ECHO DataStage Export ran on %DsxDate% %DsxHr%:%DsxMin%:%DsxSec% with the following parameters >> %LogFileName%
    ECHO Host=%Host% >> %LogFileName%
    ECHO User=%user% >> %LogFileName%
    ECHO Project=%Project% >> %LogFileName%
    ECHO LogDir=%Location% >> %LogFileName%
::ECHO JobsList=%JobsList% >> %LogFileName%
    ECHO. >> %LogFileName%
:: -----------------------------------------------------------------
:: Change the local directory to DataStage instalation Directory
:: This must be modified based on the DataStage Instalation Drive
:: -----------------------------------------------------------------
for /F "tokens=1" %%i in (%ProjectsList.txt%) do (
::SET Project=%%i
::-------------------------------------------------------------------
::List out all jobs from the given project
::------------------------------------------------------------------
cd C:\Program Files\Ascential\DataStage7.5.2\
dsjob.exe -server %Host% -user %User% -password %Password% -ljobs %%i > %Location%\JobsList.txt
cd %Location%
SET JobsList=%Location%\JobsList.txt
:: -----------------------------------------------------------------
cd C:\Program Files\Ascential\DataStage7.5.2\
::    for /F "tokens=1" %%j in (%JobsList%) do dscc /h %Host% /u %User% /p %Password% %Project% /j %%j
        ::ECHO Compileing %%j job in %Project% on Host: %Host% >> %Location%\%LogFileName%
::        ECHO. >> %LogFileName%
::        ECHO *** Completed Compile of Job: %%j on Host: %Host% >> %LogFileName%
::        ECHO. >> %LogFileName%

)
::   ECHO. >> %LogFileName%
::   ECHO successfully Exported

0 comments:

© Copyright © 2015Big Data - DW & BI. by