Получение данных из 1С в PHP используя WEB сервисы 1С

По мотивам статьи «Прямой доступ к базе 1С через MSSQL«. Как уже писал ранее — не понравилось. Жутко трудозатрадно рисовать запросы «руками», сопоставляя структуру из конфигуратора структуре в MS SQL.

Однако есть способ проще. Не использовал его сразу, т.к. у меня были проблемы с настройкой сервиса на стороне 1С. Итак, для примера сделаем классический HelloWorld веб сервис, от которого лишь требуется ответить что-то на какой-то запрос. А заодно напишем клиентскую часть на PHP, которая собственно этот запрос пошлет и обработает ответ. Ниже далее подразумевается что IIS или Apache у вас на сервере где стоит 1С установлен и настроен. Как? Спросите у гугла, это не сложное действо, потому и не буду описывать.
» Читать далее

Прямые MS SQL запросы к базе 1С

Возникла нужда строить отчеты на основании данных из 1С на WEB страницу строящуюся на PHP. Первой проблемой, после удачного коннекта к MSSQL, стало сопоставить структуру данных из конфигуратора с реальными таблицам в MSSQL. Для сопоставления существует много разработок, например http://infostart.ru/public/147147/

Работоспособных адекватных конверторов запросов 1С в текст SQL я так и не нашел. А «ручками» запрос лепить, оказалось весьма время затратно.

Вот пример получившегося запроса по остаткам продукции, из регистра накоплений на текущий момент:

Ну что я могу сказать? Мне не понравилось.. Буду искать какой-то метод по проще..

Нарушена целостность структуры конфигурации 1С

Сегодня при попытке обновить 1С появилась эта ошибка. Сначала чуть было не испугался, подумал что и в самом деле что-то порушилось. Однако все оказалось попроще, база не разрушилась, просто что-то сломалось в одном из файлов 1С локального пользователя. Гугл помог найти несколько способов лечения.

  1. Возможно поможет удаление проблемной базы из списка баз, и добавление вновь
  2. Некоторым помогала простая перезагрузка
  3. Мне помогло полностью удаление папки 1С из users/пользователь/AppData/Roaming/1C

Переполнение длинны строки в запросе 1С

В одном из запросов участвовала строка вида КонтактнаяИнформация.Поле1 + «,» + КонтактнаяИнформация.Поле2 + » » + КонтактнаяИнформация.Поле3 + …….

Долго ломал голову, почему же результат запроса не выводится на экран, в табличном поле. Оказывается все просто — переполняется допустимая длинна текстового поля результата запроса. Достаточно было выражение обернуть в:

и все чудесным образом заработало.

Перестали выполнятся фоновые задания в 1С

Сегодня заметил, что все выходные не выполнялись фоновые регламентные задания у 1С. Гугл ответил, что такое происходит, если агент сервера MSSQL запускается раньше службы  1С предприятия. Помог перезапуск службы 1с.

1 24 25 26 27 28 40