Utilizzare gli script in questa sezione per archiviare le transazioni con corrispondenza risalenti a un numero di giorni uguale o superiore a un valore specificato, inclusi i relativi dettagli di supporto e adeguamento e poi rimuovere le transazioni archiviate da Account Reconciliation. Le transazioni con corrispondenza archiviate vengono registrate in un file ZIP.
Funzionamento dello script
input.properties
.archiveTmTransactions
per creare un archivio. Per i file ZIP e di log risultanti vengono utilizzati i nomi predefiniti Archive_Transactions_INTERCO_JOB_ID.zip
e Archive_Transactions_INTERCO_JOB_ID.log
epmautomate archiveTmTransactions INTERCO 365 filterOperator=contains filterValue=14001
input.properties
.purgeArchivedTmTransactions
(con l'ID del job archiveTmTransactions) per eliminare le transazioni con corrispondenza archiviate dall'applicazione.Esecuzione dello script
input.properties
e aggiornarlo con le informazioni relative all'ambiente in uso. Salvare il file in una directory locale. Nell'ambito di questa descrizione, la directory viene indicata come parentsnapshotdirectory
. Il contenuto di questo file varia a seconda del sistema operativo.
Assicurarsi di avere i privilegi di scrittura in questa directory. Per Windows, potrebbe essere necessario avviare PowerShell utilizzando l'opzione Esegui come amministratore per poter essere in grado di eseguire gli script.
transaction_match.ps1
(Windows PowerShell) o transaction_match.sh
(Linux/UNIX) e salvarlo nella directory parentsnapshotdirectory
dove si trova il file input.properties
../transaction_match.sh
.transaction_match.ps1
.Creazione dello script input.properties
Creare input.properties
copiando e aggiornando lo script seguente.
javahome=JAVA_HOME epmautomatescript=EPM_AUTOMATE_LOCATION epmusername=exampleAdmin1 epmpassword=examplePassword1.epw epmurl=exampleURL1 objectstorageusername=exampleAdmin2 objectstoragepassword=examplePassword2 objectstorageurl=exampleURL2 matchtype=INTERCO age=365 filteroperator=contains filtervalues=FilterValue=14001 proxyserverusername=myProxyserver proxyserverpassword=myProxyserver_pwd proxyserverdomain=myProxyDomain
Nota:
Solo Windows: rimuovere le proprietà indicate di seguito dal file input.properties
.
javahome=JAVA_HOME
epmautomatescript=EPM_AUTOMATE_LOCATION
Se per l'ambiente di rete Windows non è abilitato authentication at proxy server
, rimuovere dal file input.properties
le proprietà indicate di seguito.
proxyserverusername
proxyserverpassword
proxyserverdomain
Tabella 3-24 Parametri di input.properties
Parametro | Descrizione |
---|---|
javahome |
La directory in cui è installato il JDK usato da EPM Automate. Eliminare questa voce dalla versione Windows di input.properties .
Esempio: |
epmautomatescript |
La directory in cui è installato EPM Automate. Eliminare questa voce dalla versione Windows di input.properties .
Esempio: |
epmusername |
Il nome utente di un amministratore servizi, utente avanzato, utente o visualizzatore autorizzato ad archiviare transazioni con corrispondenza.
Esempio: |
epmuserpassword |
Il file delle password cifrate per l'utente identificato come epmusername .
Esempio: |
epmurl |
L'URL dell'ambiente in cui archiviare le transazioni con corrispondenza.
Esempio: |
objectstorageusername |
L'ID di un utente che dispone dei diritti di accesso in scrittura richiesti per lo strumento di memorizzazione oggetti cloud di Oracle.
Per gli utenti creati in un provider di identità federata, specificare il nome completamento qualificato dell'utente, ad esempio Esempio: |
objectstoragepassword |
La password Swift o il token di autenticazione associato all'utente identificato in objectstorageusername . Questa password non corrisponde a quella utilizzata dall'utente per accedere alla console di memorizzazione degli oggetti. Il token di autenticazione è un token generato da Oracle utilizzato per l'autenticazione con API di terze parti, ad esempio per l'autenticazione con un client Swift. Per istruzioni per la creazione di questo token, fare riferimento alla sezione Come creare un token di autenticazione nella Documentazione dell'infrastruttura Oracle Cloud.
Esempio: |
objectstorageurl |
L'URL del gruppo di memorizzazione oggetti cloud di Oracle con allegato un nome oggetto facoltativo.
Esempio: |
matchtype |
L'identificativo (TextID) del tipo di corrispondenza dal quale archiviare le transazioni con corrispondenza.
Esempio: |
age |
Il numero di giorni trascorsi dalla creazione della corrispondenza della transazione. Una transazione con corrispondenza che risale a un numero di giorni superiore o uguale a questo valore verrà archiviata. Esempio: |
filteroperator |
Le condizioni di filtro per identificare i conti contenenti transazioni con corrispondenza per l'archiviazione. Deve trattarsi di equals , not_equals , starts_with , ends_with , contains o not_contains .
Questo valore viene utilizzato insieme al valore Esempio: |
filtervalues |
Uno o più valori di filtro per identificare le transazioni da archiviare. Se per filterOperator è specificato equals o not_equals , è possibile utilizzare un elenco separato da spazi per specificare più valori. Se vengono specificati più valori, vengono selezionate per l'archiviazione le transazioni contenute in conti che soddisfano la combinazione operatore e valore di filtro.
Esempio: |
proxyserverusername |
Il nome utente per l'autenticazione di una sessione sicura con il server proxy che controlla l'accesso a Internet.
Esempio: |
proxyserverpassword |
La password per autenticare l'utente con il server proxy.
Esempio: |
proxyserverdomain |
Il nome del dominio definito per il server proxy.
Esempio: |
Script per Windows
Creare transaction_match.ps1
copiando lo script seguente. Memorizzarlo nella cartella in cui è inserito input.properties
.
# Archive and Purge Transaction Matching PowerShell script $inputproperties = ConvertFrom-StringData(Get-Content ./input.properties -raw) $epmusername="$($inputproperties.epmusername)" $epmpassword="$($inputproperties.epmpassword)" $epmurl="$($inputproperties.epmurl)" $objectstorageusername="$($inputproperties.objectstorageusername)" $objectstoragepassword="$($inputproperties.objectstoragepassword)" $objectstorageurl="$($inputproperties.objectstorageurl)" $matchtype="$($inputproperties.matchtype)" $age="$($inputproperties.age)" $filteroperator="$($inputproperties.filteroperator)" $filtervalues="$($inputproperties.filtervalues)" $proxyserverusername="$($inputproperties.proxyserverusername)" $proxyserverpassword="$($inputproperties.proxyserverpassword)" $proxyserverdomain="$($inputproperties.proxyserverdomain)" echo "Running processes to archive and purge transaction matching transactions ..." if (${proxyserverusername}) { echo "Running epmautomate login ${epmusername} ${epmpassword} ${epmurl} ${proxyserverusername} ${proxyserverpassword} ${proxyserverdomain}" epmautomate login ${epmusername} ${epmpassword} ${epmurl} ${proxyserverusername} ${proxyserverpassword} ${proxyserverdomain} } else { echo "Running epmautomate login ${epmusername} ${epmpassword} ${epmurl}" epmautomate login ${epmusername} ${epmpassword} ${epmurl} } echo "Running epmautomate archiveTmTransactions \"${matchtype}\" ${age} filterOperator=${filteroperator} ${filtervalues}" epmautomate archiveTmTransactions "${matchtype}" "${age}" "filterOperator=${filteroperator}" "${filtervalues}" > ./outfile.txt.tmp $jobIdLine=Select-String -Path "outfile.txt.tmp" -Pattern "Job ID"; $jobIdLine=($jobIdLine -split ":")[-2]; $jobid=($jobIdLine -split " ")[1]; $logfile="Archive_Transactions_${matchtype}_${jobid}.log" $transactionsfile="Archive_Transactions_${matchtype}_${jobid}.zip" epmautomate listfiles > ./files.txt.tmp $transactionslogfound=Select-String -Path "./files.txt.tmp" -Pattern "${logfile}" $transactionsfilefound=Select-String -Path "./files.txt.tmp" -Pattern "${transactionsfile}" rm ./outfile.txt.tmp rm ./files.txt.tmp if (${transactionslogfound}) { echo "Running epmautomate downloadfile \"${logfile}\"" epmautomate downloadfile "${logfile}" if (${transactionsfilefound}) { echo "Running epmautomate downloadfile ${transactionsfile}" epmautomate downloadfile "${transactionsfile}" if ($?) { echo "Running epmautomate copyToObjectStorage ${transactionsfile} ${objectstorageusername} ${objectstoragepassword} ${objectstorageurl}" epmautomate copyToObjectStorage "${transactionsfile}" "${objectstorageusername}" "${objectstoragepassword}" "${objectstorageurl}" if ($?) { echo "Running epmautomate purgeArchivedTMTransactions JOBID=${jobid}" epmautomate purgeArchivedTMTransactions "JobID=${jobid}" } else { echo "EPMAutomate copyToObjectStorage failed. Purging of archived matched transactions will not be attempted." } } else { echo "Download of transactions file ${transactionsfile} failed. Copy to object storage, and purging of archived matched transactions will not be attempted." } } else { echo "No matched transactions found. Archive file download, copy to object storage, and purging of archived matched transactions will not be attempted." } } else { echo "Matchtype ID \"${matchtype}\" not found. Archive file download, copy to object storage, and purging of archived matched transactions will not be attempted." } echo "Running epmautomate logout" epmautomate logout echo "Script processing completed."
Script Linux/UNIX
Creare transaction_match.sh
copiando lo script seguente. Memorizzarlo nella cartella in cui è inserito input.properties
.
#!/bin/sh . ./input.properties export JAVA_HOME=${javahome} echo "Running processes to archive and purge transaction matching transactions..." if [[ "${proxyserverusername}" != "" ]] then echo "Running epmautomate login ${epmusername} ${epmpassword} ${epmurl} ProxyServerUserName=${proxyserverusername} ProxyServerPassword=${proxyserverpassword} ProxyServerDomain=${proxyserverdomain}" ${epmautomatescript} login "${epmusername}" "${epmpassword}" "${epmurl}" "ProxyServerUserName=${proxyserverusername}" "ProxyServerPassword=${proxyserverpassword}" "ProxyServerDomain=${proxyserverdomain}" else echo "Running epmautomate login ${epmusername} ${epmpassword} ${epmurl}" ${epmautomatescript} login "${epmusername}" "${epmpassword}" "${epmurl}" fi echo "Running epmautomate archiveTmTransactions \"${matchtype}\" ${age} filterOperator=${filteroperator} ${filtervalues}" ${epmautomatescript} archiveTmTransactions "${matchtype}" "${age}" "filterOperator=${filteroperator}" "${filtervalues}" > ./output.txt.tmp jobid=$(grep "Job ID" ./output.txt.tmp | cut -d':' -f3 | cut -d' ' -f2) logfile="Archive_Transactions_${matchtype}_${jobid}.log" transactionsfile="Archive_Transactions_${matchtype}_${jobid}.zip" ${epmautomatescript} listfiles > ./files.txt.tmp transactionslogfound=$(grep "${logfile}" ./files.txt.tmp | wc -l) transactionsfilefound=$(grep "${transactionsfile}" ./files.txt.tmp | wc -l) rm ./files.txt.tmp rm ./output.txt.tmp if [ ${transactionslogfound} -eq 0 ] then echo "Matchtype ID \"${matchtype}\" not found. Archive file download, copy to object storage, and purging of archived matched transactions will not be attempted." else echo "Running epmautomate downloadfile \"${logfile}\"" ${epmautomatescript} downloadfile "${logfile}" if [ ${transactionsfilefound} -eq 0 ] then echo "No matched transactions found. Archive file download, copy to object storage, and purging of archived matched transactions will not be attempted." else echo "Running epmautomate downloadfile ${transactionsfile}" ${epmautomatescript} downloadfile "${transactionsfile}" if [ $? -eq 0 ] then echo "Running epmautomate copyToObjectStorage ${transactionsfile} ${objectstorageusername} ${objectstoragepassword} ${objectstorageurl}" ${epmautomatescript} copyToObjectStorage "${transactionsfile}" "${objectstorageusername}" "${objectstoragepassword}" "${objectstorageurl}" if [ $? -eq 0 ] then echo "Running epmautomate purgeArchivedTMTransactions JOBID=${jobid}" ${epmautomatescript} purgeArchivedTMTransactions "JobID=${jobid}" else echo "EPMAutomate copyToObjectStorage failed. Purging of archived matched transactions will not be attempted." fi else echo "Download of transactions file ${transactionsfile} failed. Copy to object storage, and purging of archived matched transactions will not be attempted." fi fi fi echo "Running epmautomate logout" ${epmautomatescript} logout echo "Script processing completed."