Взаимодействие Powershell с Access 2007, как сохранить отчет в формате PDF? - PullRequest
0 голосов
/ 30 августа 2010

У меня есть база данных доступа и отчет в этой базе данных. Я использую comobject access.application для получения доступа к доступу, т.е.

$db = New-Object -ComObject Access.Application
$db.OpenCurrentDatabase("foo.accdb")

Это отлично работает. Однако, как предложено в другом похожем вопросе, я не могу получить отчет из БД с помощью метода DoCmd.OutputTo.

$db.DoCmd.OutputTo(3,"The_Report","acFormatPDF","C:\The_Report.PDF")

Когда я выполняю приведенную выше команду, возвращается сообщение об ошибке, в котором говорится:

Исключение вызывает "OutputTo" с аргументом (ами) "4": «Формат, в котором вы пытаетесь вывести текущий объект, недоступен."

Я убедился, что надстройка "сохранить в pdf" установлена. Кроме того, я не могу понять, что мешает выводу этого объекта в запрошенном формате. Я что-то пропустил?

1 Ответ

2 голосов
/ 31 августа 2010

acFormatPDF является константой, поэтому указание имени константы в кавычках кажется неправильным.Я пытался без кавычек, но Powershell, похоже, не распознает константу.Поэтому я попробовал строковое значение для этой константы в кавычках, и это сработало.

Я в основном потерян с этой вещью Powershell, но предлагаю вам попробовать:

$db.DoCmd.OutputTo(3,"The_Report","PDF Format (*.pdf)","C:\The_Report.PDF")
...