#1 Tue 09 August 2022 12:20
- LABASTIE Marie-Amélie
- Juste Inscrit !
- Date d'inscription: 14 Mar 2019
- Messages: 3
Powershell et FME
Bonjour,
Je poste car je ne trouve pas de solution. Je vous explique, j'ai réalisé un code PowerShell me permettant de ne garder que les fichiers .dae ajoutés il y a moins d'un jour et d'afficher leur nom dans la console. Ensuite, j'y ai ajouté du code permettant d'ouvrir directement le script FME concerné qui par la suite traitera la donnée ajoutée récemment. MAIS j'aimerai ajouter directement dans le code : le fichier d'entrée (qui est un json), le nouveau fichier à traiter (les .dae trouvés) et le fichier de sortie (une base de données). J'ai possiblement trouvé comment le faire en batch mais pas en PowerShell (voir dernière ligne de code), d'autant plus que je ne sais pas comment accéder via du code aux paramètres présents dans le script FME (pour remplir les readers et writer)
Je vous remercie pour votre lecture !
Code:
$toFolder = "D:Donnees_FMEOutput_BDPreProdSGP_PProdSGP_PProd.sde" $dossier_masque = "D:Donnees_FMESources*.dae" $jour = 1 $current_date = Get-Date $nouvelleDonnee = Get-ChildItem -Path $dossier_masque -Recurse | Where-Object {$_.CreationTime.AddDays($jour) -ge $current_date} | Select-Object -ExpandProperty FullName Write-Host Voici les nouvelles donnees à integrer : $nouvelleDonnee #test pour voir si c'est le bon fichier #Copy-Item $nouvelleDonnee -Destination "C:UsersAdministratorDesktoptest_batch" #ouverture du workbench FME $fmeExe = "C:Program FilesFMEfmeworkbench.exe" $cheminScript = "D:Donnees_FMETraitementsProcessFMEdae2sde_preprod_final.fmw" start-process -FilePath $fmeExe -ArgumentList $cheminScript #-SourceDataset_TEXTLINE "D:Donnees_FMESources***.json" -SourceDataset_COLLADA $nouvelleDonnee -destSDE $toFolder
Hors ligne
#2 Wed 10 August 2022 13:28
- Hydrolithe
- Participant assidu
- Lieu: Lyon
- Date d'inscription: 21 Apr 2010
- Messages: 223
Re: Powershell et FME
Bonjour,
Le plus simple pour accéder à certains paramètres du script FME en ligne de commande est de les paramétrer en paramètres publiés ce qui permet de les passer dans la ligne de commande qui lance le script :
Code:
fme <workspacename>.fmw --<myparametername> <parametervalue>
Code:
fme project1.fmw --SourceDataset_IGDS_1 myfile.dgn
Aide: https://community.safe.com/s/article/ba … r-batch-fi
On peut ainsi paramétrer un paramètre publié pour le reader et un pour le writer en fonction des besoins.
Pierre
Hors ligne