Question Script pour ouvrir un fichier Access

Plus d'informations
il y a 12 ans 9 mois #14919 par egphenix
Bonjour,

Je dois exécuter un fichier Access 2010 depuis un serveur SharePoint afin d'exporter les données en PDF, pour ce faire mon fichier Access dispose d'une Macro AutoExec qui ouvre des Etat et les exportes automatiquement et avec la fonction Quitter à la fin.

Maintenant je voudrais l'exécuter à certain moment de mes flux SharePoint, j'ai donc créé un script PowerShell pour ce faire

[code:1]$cred = Get-Credential DOMAINE\AdminName
$Session = New-PSSession -ComputerName Serveur -Credential $Cred
Invoke-Command -Session $Session -ScriptBlock {Start-job {start-process MSACCESS.EXE \"C:\Chemin\path\fichier.accdb\"}}[/code:1]

Pour la partie Invoke-Command {start-process} j'ai essayé plusieurs formule comme Invoke-Item, en fait cela fonctionne toujours si je retire la partie \"-Session $Session\"

J'ai donc voulu tester la création d'un fichier à la place de l'ouverture de mon fichier Access

[code:1]$cred = Get-Credential DOMAINE\AdminName
$Session = New-PSSession -ComputerName Serveur -Credential $Cred
Invoke-Command -Session $Session -ScriptBlock {$file = new-item \"C:\Chemin\path\test.txt\" –type file}[/code:1]

Là aucun problème d'exécution ni en manuel ni depuis SharePoint

Donc pour l'heure j'ai un script qui fonctionne en exécution manuel, mais pas depuis la console SharePoint ou alors un script qui fonctionne avec une autre fonction qu'ouvrir un fichier Access.

Comme je suis à cours d'idée pour résoudre ce problème je viens vers vous, merci d'avance pour votre aide elle sera la bienvenu
Cordialement
egphenix

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 12 ans 9 mois #14931 par Charly
Plutot qu'un Start-Process

Je pense que tu devrais essayer de passer par un objet COM, c'est une piste :cheer:


[code:1]
$wd = new-object -comobject word.application # create a com object interface (word application)

$wd.documents.open(\"C:\word\test.doc\"«») # open doc

$wd.run(\"Macro01\"«») # exec macro named macro01

$wd.quit() # exit application[/code:1]

Bon là ok c'est pour word... mais le principe est sensiblement identique.

Hop ma source : ici

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.044 secondes
Propulsé par Kunena