Запись в базу данных sql в accpac

У меня есть скрипт VB, который запускает AccPac. Я хочу добавить регистрацию ошибок в скрипт. Я бы хотел, чтобы этот журнал попал в базу данных. Я слышал, что невозможно подключиться к базе данных SQL из сценария VB. Я хотел бы доказать эту невозможность неправильно.

Итак, мой вопрос заключается в следующем.
Кто-нибудь запускал sql к базе данных sqlserver через accpac vbscript? Если так, могут ли они дать мне подсказку о том, как они выполнили такую ​​"невозможную" задачу?

2 ответа

Accpac фактически использует VBA, а не VBScript (хотя синтаксис практически идентичен). Я сделал много макросов VBA в Accpac, которые используют базы данных SQL для гораздо более сложных задач, чем просто логирование. Процесс такой же, как с файлами MS Office, в которых есть макросы VBA. Вы должны добавить "Библиотеку объектов Microsoft ActiveX 2.8" или аналогичную в качестве ссылки через "Инструменты> Ссылки". Затем у вас есть ADODB объект, который вы можете использовать для подключения через ODBC.

Проверьте этот вопрос, относящийся к тому же, с Excel Доступ к базе данных SQL в Excel-VBA

Обратите внимание, что начиная с Accpac 6, Sage удаляется от клиента рабочего стола, и ваши макросы VBA не будут работать с порталом.

В более новых версиях Sage 300 (Accpac) есть вид с Roto "CS0120". Это может помочь вам запускать запросы SQL непосредственно к базе данных (вставить / выбрать / обновить). Просто откройте его как обычный вид в вашем VB-коде, установите строку запроса в качестве фильтра просмотра и вызовите Fetch.

Другие вопросы по тегам