Bonjour, je me suis basé sur le script de Texan en y rectifiant quelques limitations notamment les problèmes de chemin avec ou sans "" et les définissant au début du script pour ne pas en rater ;
et ensuite et surtout en y rajoutant un bout script qui tue le processus sunnyexplorer.exe s'il s'est mal fermé... parce que j'ai essayé avec les 2 versions (1.2.x et 1.1.x) et il plante 3-4 fois par jour avec un script lancé toutes les 10 minutes.
En rouge les petites choses a adapter à votre configuration.
Par contre je considère que le fichier paramètre de Sunny Explorer (.sxp ou .sx2) est dans le même dossier que l'export des csv...
@echo off
rem ######### définir ici vos chemins et noms de fichiers: #########
rem ################################################################
rem ##### Dossier contenant les données d'export de Sunny explorer #
rem ### ne pas mettre l'antislash à la fin #########################
set datafold=C:\Mes documents\SMA\Sunny Explorer
rem ##### Nom de l'installation renseignée dans Sunny Explorer #####
set nominstall=etipv1
rem ##### Mot de passe utilisateur de l'onduleur ###################
set passwd=0000
rem ##### version de Sunny explorer ################################
rem ### si =< 1.1 mettre .sxp ######################################
rem ### si >= 1.2 mettre .sx2 ######################################
set sever=.sxp
rem ##### Dossier contenant l'application Sunny explorer ###########
rem ### Sur un win 32bits enlever _(x86) ###########################
set seexecfold=C:\Program Files (x86)\SMA\Sunny Explorer\
rem ##### Dossier de JSunnyReports #################################
set jsrfold=C:\Mes documents\jSunnyReports\
rem ##### Nom du processus Sunny explorer ##########################
set process=SunnyExplorer.exe
rem ############################ Script ############################
rem ################################################################
if NOT EXIST "%datafold%" echo Dossier data manquant ou errone & pause & goto fin
if NOT EXIST "%datafold%\%nominstall%%sever%" echo Chemin fichier sxp ou sx2 manquant ou errone & pause & goto fin
if NOT EXIST "%jsrfold%jsunnyreports.cmd%" Chemin JSunnyReports.cmd manquant ou errone & pause & goto fin
if NOT EXIST "%seexecfold%%process%" Chemin d'installation Sunny Explorer manquant ou errone & pause & goto fin
for /F "tokens=1-4 delims=/- " %%b in ('date/T') do set DATE=%%d%%c%%b
set fichier="%datafold%\%nominstall%-%DATE%.csv"
setLocal EnableDelayedExpansion
set lignes2=0
set valeur=0,000
set valeur2=0,000
set lignes=0
for /f %%b in ('find /v /c "" ^< %fichier%') do set /a lignes=%%b-1
echo Il y a %lignes% lignes dans le fichier %fichier%.
ping 127.0.0.1 -n 5 > NUL
if "%lignes%" EQU "0" goto sun
for /f "skip=%lignes% tokens=2 delims=/;" %%i in ('type %fichier%') do set valeur=%%i
set puissance=%valeur%
echo le rendement total est de %valeur% kWh
ping 127.0.0.1 -n 5 > NUL
:sun
for /F "tokens=1-4 delims=/- " %%b in ('date/T') do set /a START=%%d%%c%%b-1
for /F "tokens=1-4 delims=/- " %%b in ('date/T') do set /a END=%%d%%c%%b
echo exportation %END% %time%
For /F "tokens=2" %%n in ('tasklist ^| Find "%process%"') Do Set Task=%%n & echo Le process Sunny Explorer va etre tue
if NOT "%Task%" == "" taskKill /F /PID %Task%
"%seexecfold%SunnyExplorer" "%datafold%\%nominstall%%sever%" -userlevel user -password "%passwd%" -exportdir "%datafold%" -exportrange %END%-%END% -export energy5min
if "%lignes%" EQU "0" goto jsr
for /f %%a in ('find /v /c "" ^< %fichier%') do set /a lignes2=%%a-1
echo Il y a %lignes2% lignes dans le fichier %fichier%.
ping 127.0.0.1 -n 2 > NUL
for /f "skip=%lignes2% tokens=2 delims=/;" %%j in ('type %fichier%') do set valeur2=%%j
set puissance2=%valeur2%
echo le rendement totale est de %valeur2% kWh
ping 127.0.0.1 -n 2 > NUL
if "%puissance2%" EQU "%puissance%" (echo il n'y a pas plus de production & goto fin)
echo il y a production
ping 127.0.0.1 -n 5 > NUL
goto jsr
:jsr
cd /D "%jsrfold%"
"jsunnyreports.cmd"
:fin
ping 127.0.0.1 -n 5 > NUL
pause
@echo on
Dites-moi si ça convient et/ou si vous voyez des erreurs !!!
Edit à 17h40 : correction bug sur la ligne de lancement de jsr