image_pdfimage_print

О сколько нам ошибок чудных готовят…

«Никому про наш секрет не говори,
А стекляшек разноцветных набери.
Ты зажмурься и три раза повернись,
А теперь глаза открой и удивись!»
— из детской песни.

Доброго времени суток!

 

1. Осторожно переход на 8.3.7. Конфигурация на 8.3.7 в режиме совместимости 8.2 никогда не вернется на старые версии!

ВыгрузкаЗагрузка1С

 

2. Опять мне пришлось столкнуться с проблемами идентицикации сервисов 1С. Благодаря 1С 8.3 у нас появились http сервисы, а методы работы для них остались такие же как для web-сервисов.

Также было замечано, что http сервисы возращают ошибку 403, а web-сервис ошибку 500. Ошибка исправлется переустановкой всех прав для пользователя 1С под которым они должны работать. И дальнейшем убирание ненужных, типа

Права1С-Сервисы“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — 
Сама 1С рекомендовала замену версии 8.3.6 (8.3.6.2237 и ниже) на версию 8.3.6.2299 платформы «1С:Предприятие 8» http://www.1c.ru/news/info.jsp?id=20420

Хорошая статья по авторизации http://www.bizkit.ru/2013/05/24/1722/

И пример на инфостарте http://infostart.ru/public/302876/

И моя старая статья http://sikuda.ru/archives/376

 

3. И немного позитива для 8.3.6 (при запуске программы из директории common)

1С не обнаружена
Это для тех кто забыл подправить ярлыки 1С.

 

4. Немного тестирования на 8.3.7

Вход в 1С
Это вообще одиночный фантом.

 

5. Медитации тестовых новых версий….

1c84down

1c84fulldown

Идентификация Web сервисов 1С

Доброго времени суток!

1. Если на web сервере стоит Anonymous access

1.1 В базе нет пользователей — идеальный вариант для тестирования web-сервиса,  чтобы не заморачиваться…

 

1.2 Если хочется, чтобы вэб сервис работал под определенным пользователем 1С. Добавляем в файл default.vrd строку идентификации типа:

1.3  HTTP Basic идентификация: (http://en.wikipedia.org/wiki/Basic_access_authentication)

Если на превый запрос вы получаете окно идентификации, можете туда забить логин и пароль. У меня на Firefox c русскими пользователями это не работает. Делаем английского пользователя и все нормально коннектиться. Но все-таки интересно как это происходит — смотрим в Firefox Web-console:

Хорошо.что это стандартная идентификация. значит мы ее может использовать программно:

И добавляем в ajax запрос параметр Authorization. Преобразуем строку «sikudaws:123456» при помощи Base64:

Преобразовывать строки в Base64 b и назад можно здесь:

http://rumkin.com/tools/compression/base64.php

И получаем идентификацию сразу. УРА.

 

Это даже легче PОST идентификация тонкого клиента:
http://its.1c.ru/db/v83doc#content:16:1(Требуется доступ по ITS)

2. Идентификация средствами операционной системы в 1С к сожалению решается предыдущим способом. Требует введения имени и пароля пользователя Windows и не дает какого либо преимущества. Ее рассматривать не будем.

Настройка веб-клиента 1С:Предприятие 8.2(8.3) под Windows 7 x64 и IIS 7.5 и IIS8.

Новая общая статья: http://infostart.ru/public/275820/

Первоначальная статья http://infostart.ru/public/71480/. Слишком стара.

И поновее http://infostart.ru/public/185742/.

И из найденного http://www.kumena.ru/blog/ustanovka-iis-dlya-1s-predpriyatiya-83-v-kartinkah-na-platforme-windows-81

Так полно и подробно я не смогу повторить и расписать, поэтому добавляю мои комментарии для последней инструкции:

  1. Для 1С нужен единственный обработчик событийНастройкиIIS_1C_2
  2. все остальные обработчики опционально…НастройкиIIS_1C_3
  3. Для этого обработчика нужно только компонента Расширения ISAPI (Включение компонентов программы). НастройкиIIS_1C_1
  4. Пул приложений может быть .NET и любой режим конвейра  (насчет производительности вопрос открытый Классический или Встроенный).НастройкиIIS_1C_4
  5. 1С поддерживает только анонимную идентификацию(может потребовать пароля от 1С) и SSL(это отдельная тема).
  6. И напоследок шаблон АдресВэбСервиса=»http://ИмяСервера/ИмяБазы/ws/»+ИмяВэбСервиса; А многие пропуcкают имябазы http://www.forum.mista.ru/topic.php?id=665708
  7. Если у Вас система х64, незабудьте поставть флаг «Enable 32-bit» — True — Application pool  — Advanced Settings.

Удачи настройки 1С и IIS.

Если у Вас клиенский ключ на другой машине то файл настройки nethasp.ini размещаем в

  • C:\Program Files\1cv8\conf — для вэб доступа
  • C:\Program Files (x86)\1cv8\conf — для конфигуратора и клиента на сервере

И если Вы хотите использовать вместо порта 80 другой порт, то в Привязках к сайту переделываем 80 на наш порт.

И напоследок серия статей о внутренней архитектуре IIS:

http://habrahabr.ru/post/189086/

Отладка web-сервисов 1С.

Да в 1С8 есть отладка web-сервисов и web-клиента, и она работает для внешних не 1с систем. Это очень здорово.

Для локального web-сервиса необходимо:

1. Положить на клиент файлик webservicecfg.xml в подкаталоге CONF каталога исполняемого файла 1С:Предприятия 8 (BIN)

2. В файл default.vrd добавить строку

Пример файла:

3. Выбрать в конфигураторе 1С подключать Web-сервисы автоматически(Меню-Отладка-Подключение, кнопка Автоматическое подключение-Web сервисы)

 

Для серверного варианта надо еще сервер 1с запускать в режим отладки с ключом /debug

Оригинал статьи http://www.sql.ru/forum/actualthread.aspx?tid=839056

Пример с картинками для 1С 8.1 http://infostart.ru/public/86791/

 

Р.S.

Для внешней отладки web-сервисов  пользуюсь хорошим дополнением для Firefox:
https://addons.mozilla.org/en-US/firefox/addon/soa-client/?src=api