Automazione del download dei report attività in un computer locale

Utilizzare lo script descritto in questa sezione per automatizzare lo scaricamento dei report attività da un ambiente in un computer locale.

Utilizzare syncAprReports.bat per scaricare i report attività. È possibile programmare il file batch utilizzando la utility di pianificazione di Windows per automatizzare il download dei report attività. Vedere Utilizzo di report attività e log di accesso per il monitoraggio dell'utilizzo in Guida introduttiva a Oracle Enterprise Performance Management Cloud per gli amministratori per informazioni dettagliate sul report attività.

Creare manualmente syncAprReports.bat copiando lo script fornito nella seguente procedura e quindi aggiornando i parametri di connessione. Questo script controlla l'ambiente ed esegue il download solo dei report più recenti rispetto a quelli disponibili nella directory di download nel computer locale.

Nota:

  • Lo script deve essere eseguito solo in un computer Windows.
  • Questo script non scarica il report attività di feedback, che viene generato quando gli utenti sottomettono il feedback.
  • Se la password contiene caratteri speciali, fare riferimento alla sezione Gestione dei caratteri speciali

  • In caso di utilizzo della versione in formato PDF di questo documento: per evitare le interruzioni di riga e le informazioni dei piè di pagina che renderebbero inutilizzabile questo script, copiare lo script dalla Versione HTML di questo argomento.
  1. Creare un file batch (.BAT) denominato syncAprReports.bat e contenente lo script riportato di seguito, quindi salvarlo in una posizione significativa, ad esempio C:\automate_scripts.
    @echo off
    title APR
    setlocal DisableDelayedExpansion
    
    REM To hardcode the values in the script replace %1, %2, %3, and %4, with the actual values.
    REM Example:
    REM set apr_dir="C:\Oracle\apr"
    REM set username="serviceAdmin"
    REM set password="Ex@mple!"
    REM set url="https://test-example.stg-pbcs.us1.oraclecloud.com"
    set apr_dir=%1
    set username=%2
    set password=%3
    set url=%4
    setlocal EnableDelayedExpansion
    set epmautomate_dir=%cd%
    set lastfile=
    set argC=0
    for %%x in (%*) do Set /A argC+=1
    if %argC% neq 0 (
            if %argC% neq 3 (
                    if %argC% neq 4 (
                            goto :usage
                    )
            )
    )
    goto :login
    :usage
    echo.
    echo Invalid syntax. Please check the parameters. 
    echo Syntax:
    echo 1) syncAprReports.bat APR_FolderPath_on_client username password url
    echo     or 
    echo 2) set the parameters in the file and use below syntax
    echo    syncAprReports.bat
    goto :end
    
    :login
    setlocal DisableDelayedExpansion
    for /f "delims=" %%i in ('epmautomate login %username% %password% %url%') do set result=%%i
    if "Login successful" neq "%result%" (
            echo Login Failed
            goto :end
    ) 
    
    if not exist %apr_dir% (
    echo.
    echo apr folder does not exist 
    GOTO :end
    )
    cd /D %apr_dir%
    for /f "delims=" %%D in ('dir /a:d /b /o:-n') do ( 
    REM AFTER: for /f "delims=" %%D in ('dir /a-d /b /s /o:-n') do (
            set "lastFile=%%~nD"
            goto :next
    )
    
    :next
    setlocal EnableDelayedExpansion
    echo.
    echo Most Recent APR on client is %lastFile%
    
    set "output_cnt=0"
    cd /D %epmautomate_dir%
    for /F "delims=" %%f in ('epmautomate listfiles') do (
    
            cd /D !apr_dir!
            set "line=%%f"
            for /f "tokens=* delims= " %%a in ("!line!") do set line=%%a
            if "!line:~0,3!" equ "apr" (
    
                    if "!line:~4,8!" neq "Feedback" (
    
                            set isValidFile=false
                            if "!line:~-5!" equ ".html" set isValidFile=true
                            if "!line:~-5!" equ ".json" set isValidFile=true
    
                            if "!isValidFile!" equ "true" (
                                    
                                    if "%lastFile%" lss "!line:~4,19!" (
                                            
                                                    if "!line:~4,19!" neq "!dirname!" (
                                                            
                                                            set apr_dir=!apr_dir:"=!
                                                            set /a output_cnt+=1
                                                            set "output[!output_cnt!]=!apr_dir!\!line:~4,19!"
                                                            set "dirname=!line:~4,19!"
                                                            
                                                            REM start downloading
                                                            mkdir "!dirname!"
                                                            cd /D !dirname!
                                                            echo downloading !line!
                                                            set "downloadDir=!apr_dir!\!dirname!"
                                                                                    
                                                            cd /D %epmautomate_dir%
                                                            for /f "delims=" %%i in ('epmautomate downloadfile "!line!"') do set result1=%%i
                                                            move "!line:~24!" "!downloadDir!" > nul
                                                            echo !result1!
                                                            REM end downloading
                                                            
                                                    ) else (
                                                    
                                                            REM start downloading
                                                            cd /D !dirname!
                                                            echo downloading !line!
                                                            set apr_dir=!apr_dir:"=!
                                                            set "downloadDir=!apr_dir!\!dirname!"
                                                            cd /D %epmautomate_dir%
                                                            for /f "delims=" %%i in ('epmautomate downloadfile "!line!"') do set result1=%%i
                                                            move "!line:~24!" "!downloadDir!" > nul
                                                            echo !result1!
                                                            REM end downloading
                                                            
                                                    )
                                    ) else (
                                    
                                            REM TO-DO
                                            
                                    )
                            )
                    )
            )
    )
    
    echo.
    echo %output_cnt% APR's downloaded
    for /L %%n in (1 1 !output_cnt!) DO echo !output[%%n]!
    goto :end
    
    :end
    cd /D %epmautomate_dir%
    endlocal
  2. Modificare syncAprReports.bat per impostare i valori per i parametri nella seguente tabella. Questi valori vengono utilizzati per accedere all'ambiente per eseguire il download dei report attività.

    Tabella 3-2 Valori di parametri da includere in syncAprReports.bat

    Parametro Valore previsto
    set apr_dir=%1 Specificare una directory esistente in cui devono essere scaricati i report attività.

    Esempio: set apr_dir="C:\Oracle\apr"

    set username=%2 Nome utente di Oracle Enterprise Performance Management Cloud da utilizzare per eseguire l'accesso all'ambiente per eseguire il download dei report attività.

    Esempio: set username="ServiceAdmin"

    set password=%3

    Nome e posizione del file in cui è memorizzata la password cifrata dell'utente specificato dalla variabile username. È inoltre possibile specificare la password dell'utente in testo normale (operazione sconsigliata). Fare riferimento al comando encrypt per informazioni sulla creazione di un password file cifrato.

    Esempi:

    set password="C:\mySecuredir\password.epw"

    set password="Ex@mple1"

    set url=%4 URL dell'ambiente.

    Esempio: set url="https://test-example.stg-pbcs.us1.oraclecloud.com"

  3. Utilizzando la utility di pianificazione di Windows programmare syncAprReports.bat. Vedere Automazione dell'esecuzione degli script per informazioni sulla procedura dettagliata.