You are on page 1of 3

::---------------------------------------------------------------------------------

---------------------

::---------------------------------------------------------------------------------
---------------------

:: AUTOMATED SOURCE FILE CHECK USING A BATCH FILE

::

::---------------------------------------------------------------------------------
---------------------

::---------------------------------------------------------------------------------
---------------------

@ECHO off

:RECURSE

::---------------------------------------------------------------------------------
---------------------

:: ROUTINE TO COUNT THE NUMBER OF FILES IN THE SPECIFIED DIRECTORY

::---------------------------------------------------------------------------------
---------------------

FOR /F "tokens=1-4 delims=/" %%i in ('date/t') DO SET date=%%i%%j%%k

SET mm=%date:~4,2%

SET dd=%date:~6,2%

SET yyyy=%date:~8,4%

::---------------------------------------------------------------------------------
---------------------

:: Informatica Server Location, SOurce File Directory and Target File Directory

::---------------------------------------------------------------------------------
---------------------

SET INF_SERVER_DIR=D:\Informatica PowerCenter 7.1.4\Server


SET INF_SRC_FILE_DIR=%INF_SERVER_DIR%\SrcFiles

SET INF_TGT_FILE_DIR=%INF_SERVER_DIR%\TgtFiles

SET SRC_FILE_EXTRACT_DIR=%INF_SRC_FILE_DIR%\ESSA

SET /a NO_OF_FILE_TO_VALIDATE=16

SET /a NO_OF_FILE_VALIDATED_SUCCESSFULLY=0

SET /a VALID_FILE=0

SET /a BATCH_FILE_VALIDATION=S

COPY nul "%INF_TGT_FILE_DIR%"\SRC_FILE_CHK_LOG_%yyyy%%mm%%dd%.txt

COPY nul "%INF_TGT_FILE_DIR%"\SRC_FILE_CHK_LOG_STATUS.txt

SET /a I=0

SET /a FILECOUNT=16

SET LOG="%INF_TGT_FILE_DIR%"\SRC_FILE_CHK_LOG_%yyyy%%mm%%dd%.txt

SET LOG_STATUS="%INF_TGT_FILE_DIR%"\SRC_FILE_CHK_LOG_STATUS.txt

ECHO "File counting Routine Started"

ECHO "File counting Routine Started">> %LOG%

ECHO "Process Started" >> %LOG%

::---------------------------------------------------------------------------------
---------------

:: Count all the files in a folder

::---------------------------------------------------------------------------------
---------------

FOR /f "tokens=*" %%P IN ('dir /A-d /b "%SRC_FILE_EXTRACT_DIR%"') do (call


:SHOWFILES "%%P")

ECHO Filecount: %I% >> %LOG_STATUS%

IF %I% == %FILECOUNT% (COPY nul "%SRC_FILE_EXTRACT_DIR%"\SRC_FILE_STATUS_%yyyy%%mm%


%dd%.txt)

IF %I% == %FILECOUNT% (ECHO "All Files Received - File counting Routine


Completed"~"%BATCH_FILE_VALIDATION%">> %LOG_STATUS%) ELSE (GOTO :RECURSE)

::IF %I% == %FILECOUNT% (EXIT)

::ECHO "File counting Routine End"

ECHO "File counting Routine Ended">> %LOG%

ECHO "Process Ended" >> %LOG%

:SHOWFILES

SET /a I+=1

GOTO :eof

You might also like