Выполнение PHP-скрипта на основе правила Outlook - PullRequest
1 голос
/ 12 января 2010

Я получаю ежедневный дамп данных по электронной почте, который обрабатывается Access (на основе правила Outlook VBA извлекает вложение и выполняет процедуры Access, поэтому я получаю отчет).

Поскольку дамп данных становится все больше и больше, и учитывая, что Access запускается локально и потребляет мои ресурсы, я хочу настроить сервер PHP / MySQL, чтобы сделать его более эффективным.

Первая проблема, с которой я сталкиваюсь, это как связать правило Outlook с выполнением PHP? (так как Outlook будет настроен на компьютере под управлением Windows, с настройкой apache / mysql (WAMP))

Кто-нибудь может поделиться некоторыми соображениями о том, как запустить выполнение PHP из Outlook?

Спасибо за помощь!

Срджан

1 Ответ

1 голос
/ 12 января 2010

Если у вас есть существующая установка с использованием Access и VBA, и вам просто нужна лучшая база данных, не могли бы вы просто использовать MySQL без PHP и использовать драйвер MySQL ODBC вместо соединения Access, которое вы используете в данный момент ( при условии, что вы в настоящее время используете ODBC для подключения к базе данных доступа)

Таким образом, вам даже не понадобится запускать mysql локально, если попадание на ваш локальный компьютер слишком велико, и это должно быть довольно просто, так как вам не нужно вносить много изменений в код vba.

Конечно, будет ли это зависеть от того, что еще происходит в вашем доступе db

Если нет, вы можете попробовать использовать php и использовать интерфейс командной строки PHP (CLI), который вы должны вызывать как внешний исполняемый файл из Outlook. Просто передайте php.exe имя php-скрипта, который вы хотите запустить

UPDATE:

Я ни в коем случае не эксперт по VBA, но похоже, что функция оболочки позволит вам запускать PHP CLI из VBA

Shell("path/to/php.exe phpscript.php")

http://msdn.microsoft.com/en-us/library/xe736fyk(VS.71).aspx

Конечно, это будет работать только в том случае, если вы можете получить доступ к php.exe на wamp-машине (т.е. это локальный компьютер или у вас есть сетевой доступ к соответствующей папке)

В качестве альтернативы, если сервер Wamp должен быть отдельным компьютером, вы можете запустить скрипт php, вызвав URL. Я думаю, что объект XMLHTTP сделает это за вас

Dim xmh As Object

Set xmh = CreateObject("MSXML2.XMLHTTP") 
xmh.Open "GET", "http://urlofphpserver/script.php", False
xmh.Send 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...