@rem Salvataggio per date
@rem aggiornato al 04/11/2015

@rem salva 
@rem - jobs
@rem - contabilità giovanna
@rem - protocollo

SETLOCAL EnableDelayedExpansion

@rem ----------------------------------------------------------------------
@rem Partendo dalla data di sistema estrae le variabili DAY, MONTH ed YEAR
@rem calcola poi la settimana in cui mi trovo WOM range 1-5
@rem ed infine il giorno della settimana DOW range 1-7
@rem assegna anche EOM e EOW se sono alla fine della settimana e del mese
@rem ----------------------------------------------------------------------

@For /F "tokens=1,2,3 delims=/ " %%A in ('Date /t') do @(
   Set DAY=%%A
   Set MONTH=%%B
   Set YEAR=%%C
)
@Set ANSI=%YEAR%%MONTH%%DAY%
@Set DATA=%DAY%/%MONTH%/%YEAR%
@rem %TM:~0,1% si legge come il primo carattere ovvero da OFFSET 0 per 1 Carattere
@rem è la correzione per eliminare lo 0 in testa alle date
@set TM=%MONTH%
@set TM=%TM:~0,1%
@if %TM% == 0 ( set /a NMONTH=%MONTH:~1,1% ) else ( set NMONTH=%MONTH%)
@set TM=%DAY%
@set TM=%TM:~0,1%
@if %TM% == 0 ( set /a NDAY=%DAY:~1,1% ) else ( set NDAY=%DAY%)

@Set /a  WEEK = ( NDAY - 1 ) / 7
@Set /a  DOW = %NDAY% - ( %WEEK% * 7 )

@rem --- controlla fine mese e fine settimana
@set EOW=0
@set EOM=0
@if %DOW% == 7 ( Set EOW = %WEEK%)
@for %%A in (11 4 6 9)        do @if %NMONTH% == %%A ( if %NDAY% == 31 ( set EOM=%NMONTH%) ) 
@for %%A in (1 3 5 7 8 10 12) do @if %NMONTH% == %%A ( if %NDAY% == 30 ( set EOM=%NMONTH%) ) 
@for %%A in (2)               do @if %NMONTH% == %%A ( if %NDAY% == 28 ( set EOM=%NMONTH%) )

@echo DAY(%DAY%) MONTH(%MONTH%) WEEK(%WEEK%)  DOW(%DOW%)  End Of Month EOM(%EOM%)  End Of Week EOW(%EOW%)
@echo NDAY(%NDAY%) NMONTH(%NMONTH%) ANSI(%ANSI%)  DATA(%DATA%)
@rem ----------------------------------------------------------------------

@set SRC=\\192.168.200.2
@set TRG=\\192.168.200.2\BKUP_Giornalieri
@set PRG=\\192.168.200.2\Manutenzione\AggiornaPL\7z.exe
@set PRGDIR=\\192.168.200.2\Manutenzione\AggiornaPL
@set LOG7Z=%TRG%\log-7z.txt
@set LOGFILE=%TRG%\log.txt
@set LOGMAIL=%TRG%\log-mail.txt
@set TOEML="<andrea.sommaruga@gmail.com>"
@set BODY=Vedi Log allegato:%LOG7Z%
@set SUBJECT=ColGeoMB_Backup_Giornalieri

@echo %DATAI% >%LOG7Z%

@call :JOBS jobs
@call :PROTOCOLLO protocollo
@call :CONTABCOLLEGIO contabcollegio

@if !ERRORE!A == A ( @set MSG=OK: ) else ( @set MSG=%ERRORE% )
gmail.exe %TOEML% "%MSG% %SUBJECT%"  "%BODY%"  "%LOG7Z%" >> %LOGMAIL%

@goto FINE

:JOBS
	set BKUPSRC=%SRC%\DATI\jobs\Collegio\*.*
	set BKUPFILE=%TRG%\jobs\jobs-%ANSI%.7zippato

	@rem -ir@"files_to_include.txt" -xr@"files_to_exclude.txt"
	@rem salvare le liste in utf8
	%PRG% a -t7z "%BKUPFILE%" -r "%BKUPSRC%" -xr@%PRGDIR%\jobs-exclude-UTF8.txt  >>%LOG7Z%
	
	@if %ERRORLEVEL% == 0 ( 
		@set MSG=OK; %DATA%; %1
	) else (
		@set MSG=Errore in: %DATA%; %1 
		@set ERRORE=%ERRORE% %MSG% 
	)						
	@echo %MSG% >>%LOGFILE%	
@EXIT /B !ERRORLEVEL!

:CONTABCOLLEGIO
	rem -----------
	rem provvisorio
	rem -----------
	move %SRC%\DATI\z_backup\CogesWinDB-C*.7zippato %TRG%\CogesWinDB\
	
	rem set BKUPSRC=%SRC%\CogesWinDB\*.* 
	rem set BKUPFILE=%TRG%\BKUP_Giornalieri\CogesWinDB\CogesWinDB-%ANSI%.7zippato
    rem 
	rem %PRG% a -t7z "%BKUPFILE%" -r "%BKUPSRC%" "-x!Backup*.mdb"  >>%LOG7Z%
    rem 
	rem @if %ERRORLEVEL% == 0 ( 
	rem 	@set MSG=OK; %DATA%; %1
	rem ) else (
	rem 	@set MSG=Errore in: %DATA%; %1 
	rem 	@set ERRORE=%ERRORE% %MSG% 
	rem )						
	rem @echo %MSG% >>%LOGFILE%	
@EXIT /B !ERRORLEVEL!

:PROTOCOLLO
	set BKUPSRC=%SRC%\DATI\SEGRETERIA\ISI - Archivio Protocollo\*.*
	set BKUPFILE=%TRG%\Protocollo\Protocollo-%ANSI%.7zippato

	%PRG% a -t7z "%BKUPFILE%" -r "%BKUPSRC%"   >>%LOG7Z%

	@if %ERRORLEVEL% == 0 ( 
		@set MSG=OK; %DATA%; %1
	) else (
		@set MSG=Errore in: %DATA%; %1 
		@set ERRORE=%ERRORE% %MSG% 
	)						
	@echo %MSG% >>%LOGFILE%	
@EXIT /B !ERRORLEVEL!

rem :ZIPPONE
rem 	@set BKUPSRC=%SRC%\%1\*.doc* %SRC%\%1\*.xsl* %SRC%\%1\*.pdf
rem 	@set BKUPFILE=%TRG%\%1\%1-Day-%DOW%.7zippato
rem 	@set BKUPWEEK=%TRG%\%1\%1-Week-%WEEK%.7zippato
rem 	@set BKUPMONTH=%TRG%\%1\%1-Month-%MONTH%.7zippato
rem 
rem 	%PRG% a -t7z "%BKUPFILE%" -r %BKUPSRC%   >>%LOG7Z%
rem 
rem 	@if %ERRORLEVEL% == 0 ( 
rem 		@set MSG=OK; %DATA%; %1
rem 	) else (
rem 		@set MSG=Errore in: %DATA%; %1 
rem 		@set ERRORE=!ERRORE! !MSGZIP! 
rem 	)						
rem 	@echo !MSG! >>%LOGFILE%
rem 	
rem 	@if %EOW% GTR 0 copy %BKUPFILE% %BKUPWEEK%
rem 	@if %EOM% GTR 0 copy %BKUPFILE% %BKUPMONTH%
rem @EXIT /B !ERRORLEVEL!

:FINE
ENDLOCAL DisableDelayedExpansion