SELTA/Testing
Как тестировать
В первую очередь необходимо проверять, прогружаются (сохраняются) ли MD файлы конфигурации:
при этом в базе данных создаются все таблицы, индексы и хранимые процедуры, в некоторые таблицы заносятся первые данные, т.е. создаётся структура базы данных.
Если MD файл не прогружается (1С вылетает с ошибкой), то вы можете переслать файл конфигурации нам, с указанием названия конфигурации, и наши программисты добавят в Транслятор необходимую новую функциональность. Этот процесс обычно занимает не более одного дня. Внесённые исправления повлияют и на работоспособность других конфигураций, т.к. они добавляют транслятору универсальность, а не решают некоторые частности.
Далее следует проверить, загружается ли 1С с только что созданной конфигурацией в монопольном и обычном режимах: при этом идет проверка целостности базы, на некоторых конфигурациях инициализируются константы и прочие данные.
Третий этап - проверка работы различных элементов системы: формирование отчётов, проведение документов и т.д. Эти операции следует делать на заполненной данными базе. О том, как перенести данные из MS SQL Server в PostgreSQL смотрите ниже в разделе *установка*
Варианты ошибок
При работе 1С через транслятор SELTA@Etersoft может возникнуть несколько типов ошибок:
- Самые простые ошибки - это когда транслятор встречает новую конструкцию, которую не способен распознать. При этом выполнение SQL запроса не производится, ODBC драйвер возвращает ошибку, которая появляется в 1С во всплывающем меню, и после этого 1С, как правило, аварийно завершает свою работу. Такие ошибки решаются быстрее всего методом добавления новых правил в транслятор.
- В этом случае необходимо выявить, какой запрос не поддерживается, сделать это проще всего при помощи логов SELTA.
- Более сложные ошибки, возникают обычно при вызове хранимых процедур: некоторые запросы содержат в себе ошибки, которые не выявляются базой данных на этапе создания хранимых процедур, но всплывают при определённых входных параметрах при вызове этих процедур. В этом случае ODBC драйвер отправляет запрос на выполнение, PostgreSQL возвращает ошибку, которая так же отображается в 1С во всплывающем окне. После исправления таких ошибок в трансляторе, приходится пересоздавать базу данных, т.к. необходимо заменить все Хранимые процедуры, которые создаются только при загрузке MD файла конфигурации.
- В этом случае нужно выявить, какая ХП выполнялась, с какими параметрами, сделать это проще всего при помощи логов СУБД PostgreSQL)
- Наиболее сложные ошибки - когда ни ODBC драйвер, ни база данных ошибок не возвращают, но при этом запросы или хранимые процедуры содержат логические ошибки, и работа элементов 1С происходит не правильно (например формируются пустые отчёты, когда на самом доле они должны быть заполнены данными). Такие ошибки можно обнаружить только выполняя одни и те же операции подключившись к MS SQL Server и PostgreSQL (на разных машинах, или по очереди) и сравнивая результаты действий. Такие ошибки обычно возникают вследствие различных тонкостей работы MS SQL Server и PostgreSQL.
- Лучше всего для начала включить Трассировку ODBC. Она должна полностью совпадать для обеих баз. Если есть различия в цепочке выполнения ODBC-команд – это может указывать на ошибку, и с этого места можно включать все дополнительные логи, чтобы ответить на вопрос Почему так происходит.
Требования к бета-версии завязываем на багу 800.