Я хотел бы сообщить вам, что когда вы импортируете данные QuickBooks в запрос Access & run, то, очевидно, он будет выполняться быстрее, потому что все данные доступны в локальной таблице MS Access (в автономном режиме). Но когда вы выполняете запрос из связанной таблицы, QODBC извлекает данные из QuickBooks. QODBC — это драйвер ODBC, использующий QuickBooks SDK.
QODBC работает, принимая SQL-команды от приложений через интерфейс ODBC, затем преобразовывая эти вызовы в навигационные XML-команды для СУБД QuickBooks Accounting и возвращая наборы записей, соответствующие результатам запроса. Этот драйвер не является клиент-серверным продуктом, а взаимодействует напрямую с приложением QuickBooks во время его работы. QuickBooks — это база данных с плоскими файлами, и этот драйвер не превратит ее в реляционную базу данных, так что имейте это в виду при разработке с этим драйвером.
QODBC действует как «оболочка» для Intuit SDK, поэтому клиенты могут, наконец, получить свои данные QuickBooks, используя стандартные инструменты базы данных; ускорение времени разработки.
Пожалуйста, имейте в виду, что QODBC — это не инструмент базы данных, а скорее инструмент перевода. Каждая запрошенная вами транзакция должна быть переведена и передана в QuickBooks посредством больших сложных XML-транзакций.
Прикладной уровень QuickBooks должен обрабатывать эти XML-запросы. Чем больше количество записей, тем длиннее XML-запрос, поэтому QuickBooks может потребоваться больше времени и памяти для обработки более длинных запросов.
Я бы посоветовал вам включить панель состояния QODBC через Экран настройки QODBC-> Окно сообщений-> Выберите параметры «Показать состояние драйвера» и «Показать состояние оптимизатора».
Затем в следующий раз, когда вы запустите запрос, если вы увидите «Ожидание QuickBooks», это означает, что QuickBooks требуется время для обработки запроса. В правом нижнем углу вашего экрана появится панель состояния, будет показано окно с информацией о том, над чем работает QODBC. Обратите внимание на шаг, на котором QODBC тратит больше всего времени или застревает, и поделитесь им с нами.
Я также предлагаю вам попробовать выполнить приведенную ниже команду в демо-версии VB и посмотреть, как она может решить проблему:
SP_OPTIMIZEFULLSYNC ВСЕ
Эта команда перенесет некоторые данные в локальный кеш, чтобы повысить производительность поиска для запросов. Я хотел бы предложить вам полностью выполнить приведенную выше команду. Приведенная выше команда может занять некоторое время, в зависимости от ваших записей в QuickBooks. Это может занять от 2 до 5 часов и более в зависимости от количества записей в файле компании QuickBooks. Пожалуйста, дайте этой команде выполниться полностью, не убивайте эту команду. Не рекомендуется убивать/закрывать приложение во время создания файла оптимизатора.
См.: Как выполнить SP_OPTIMIZEUPDATESYNC или SP_OPTIMIZEFULLSYNC для выбранных таблиц
Если вы по-прежнему сталкиваетесь с проблемами, я прошу вас отправить заявку в отдел технической поддержки QODBC по указанной ниже ссылке и предоставить запрошенную информацию:
http://support.qodbc.com
Также поделитесь дополнительной информацией о проблеме, с которой вы столкнулись, чтобы мы могли быстро найти проблему.
Нам может понадобиться следующая информация. При ответе на заявку прикрепите файлы, указанные ниже.
1) Скриншот экрана настройки QODBC --> О программе (Пуск>>Все программы>> Драйвер QODBC для использования с QuickBooks>> Экран настройки QODBC >> Вкладка "О программе") 2) Снимок экрана с проблемой, с которой вы столкнулись. 3) Поделитесь информацией о версии QuickBooks: нажмите f2 в пользовательском интерфейсе QuickBooks и поделитесь снимком экрана. 4) Поделитесь оператором SQL, который вы используете. Поделиться всеми файлами журнала в виде вложения в текстовом формате из 5) Экран настройки QODBC -- > Сообщения -- > Просмотр сообщений QODBC 6) Экран настройки QODBC -- > Сообщения -- > Просмотр сообщений SDK
22.12.2014