2009-05-21 4 views
2

У меня есть электронная таблица в Excel, которая подключается к внутренней БД, используя драйвер odbc для программного обеспечения (Action Request System). Это прекрасно работает. Теперь я пытаюсь переместить файл Excel на сайт SharePoint, чтобы наша команда могла просматривать данные и делать заметки в одной и той же электронной таблице.ODBC подключиться к опциональному драйверу/настройкам Excel Excel

Итак, сначала я попытался просто перенести файл Excel на сервер, но понял, что соединение, сохраненное в файле, указывает на файл подключения на моем компьютере. Поэтому я переместил это на сайт SharePoint, и это, похоже, работает ... За исключением:

1) На некоторых компьютерах он открывается просто отлично. Но я бы предпочел, если бы был настроен диалог, запрашивающий логин и pw для БД.

2) На других компьютерах программное обеспечение и драйверы установлены, но не отображаются в списке источников пользователей, поэтому он выдает сообщение об ошибке. Когда пользователь переходит к созданию нового соединения, драйвер находится там (поэтому его нет в первом списке, но он находится в большем списке).

3) Маки могут открывать файл, но Excel 2008 не может выполнять макросы и соединения.

4) Открытие одного и того же файла с одного и того же сайта каждый раз вызывает предупреждение Центра доверия даже на том же компьютере/том же пользователе.

Есть ли способ сделать одно из следующего?

  • иметь не макрос, который держит пользователь от сохранения (и, таким образом, перезаписи) листа до тех пор, пока не будет подтверждено, что пользователь не будет вносить изменения в соединениях/макросы?

  • Позволяет пользователю подключаться из локальной конфигурации (в случае, если они могут установить один из них, который работает, когда основной из них не работает), чтобы они могли подключаться к нему, но не прикручивать его для всех остальных.

  • Установите параметры доверия (локальные или на сервере, я полагаю), чтобы всегда хранить файлы из определенного SharePoint?

Наконец, и это большой один ...

Вы можете создать соединение, используя драйвер не на локальной машине? Если драйвер установлен на удаленном сервере, может ли Excel использовать его? Если бы это было так, это разрешило бы почти все другие проблемы (если вы не на Mac).

Я чувствую, что я немного ошибаюсь, но поскольку команде все нужно видеть заметки друг друга, наше единственное другое решение - загрузить данные (из БД) в базу данных MySQL, чтобы они могли делать заметки из своего браузера. Это делает его более универсальным, но заставляет нас записывать множество функций, которые являются стандартными в Excel и создают избыточные базы данных.

ответ

0

Во-первых, спасибо пользователям, которые предоставили ответы. Вы оба очень помогли мне разобраться в проблеме.

Итак, оказывается, что, хотя вы не можете легко подключиться непосредственно к базе данных запроса действий, AR поддерживает веб-службы.

Вместо того чтобы пытаться заставить Excel, Access, PHP или любую другую систему работать с созданием Soap-клиента и обрабатывать работу самостоятельно, я придумал альтернативу, которая, по моему мнению, довольно умна, если я так говорю :

1) Создан скрипт PHP, который вызывает веб-службы с требуемыми данными,

2) скрипт анализирует ответ в более общей форме XML,

3) сценарий перекликается из XML-

4) N AME скрипт «AR_Data_Request.xml»

5) Настройка каталога, с помощью файла .htaccess, чтобы обработать XML-файлы, такие как PHP

Теперь у меня есть статический файл XML, который всегда содержит наиболее актуальный -данные из запроса на действие. Я могу указать любые другие приложения (в частности, Excel) на этот xml-файл вместо того, чтобы писать код VBA для прямого запроса к веб-сервису (и все еще нужно сделать это снова для php).

Проблема только в том, что я не могу заставить php подключиться к веб-службе (doh!), Но это будет моим самым следующим вопросом.

Еще раз спасибо!

0

Ничего себе! Доступ к ARS через ODBC! Я предложил эту функцию архитектору, когда я работал в Remedy HQ еще в девяностые годы. Великолепные времена.

Во всяком случае, я думаю, что ваш подход к использованию листа Excel, который подключается к источнику ODBC, не самый простой путь. (Как вы уже открыли.)

ODBC всегда является местным водителем, афайком. Клиент локально подключается к ODBC. ODBC затем может использовать сеть для подключения к БД.

Вместо этого я предлагаю вам изучить настройку Access с помощью таблицы, которая удаленно подключена к системе ARS. Затем вы можете удаленно открыть таблицу Access через общий доступ к файлам, а не dbms-connection. Я считаю, что это будет легче начать, чем ваш текущий путь.

НТН,

Ларри

+0

Где будет работать Access DB? Имейте в виду, что в какой-то момент это должно быть нелокальным. Если я настрою это на сервере Windows, нужно ли иметь драйвер, если ARS DB находится на одном сервере? – Anthony

+0

Да, вам нужен драйвер ODBC для Excel или Access для доступа к базе данных ARS. БД ARS может быть локальным или удаленным. –

0

Это звучит, как вы используете User DSN, чтобы сделать соединение. Вы можете переключиться на подключение DSN меньше, используя строку подключения. Если вам нужна помощь, можете ли вы опубликовать код, который необходимо изменить?