13.02.2017 Альберт Хайров 9462
Веб-сервисы и 1С: “Время, деньги и бумаги”. Э...
 

Содержание:

  1. Эмулятор сервиса курса акций
  2. Как создать web-сервис. Создаем web-сервис
  3. Клиентская часть   
  4. Пару слов о WEB-сервисе на примере игры “Жизнь”
 
     
   На днях мне позвонил незнакомый человек и представившись Игорем, спросил, знаю ли я что-нибудь о биржевой торговле. Я ответил, что не знаю о биржах вообще ничего.  Игорь внезапно чему-то огорчился и повесил трубку. Я и, правда, мало знаю об этом, но мне вдруг показалась неплохой идеей в контексте истории с веб-сервисами сделать  эмулятор сервиса курса акций, который позволит из клиентской части получить курс акций, вычисляемый на сервере. Таким образом, это будет очередной пример создания веб-сервиса 1С, с отработкой отправки и получения xml-сообщений при обмене с веб-сервисом в режиме реального времени.    
     
                                       Как создать web-сервис. Создаем web-сервис  
     

Для начала создадим новый web-сервис с именем MarketRates (Рис. 1)  

Он будет выполнять три операции.  GetRate  с одним параметром CompanyCode, GetSharesTypesList -  без параметра и GetSharesList с  параметром SharesTypes.  Все параметры будут иметь тип string  пространства имен http://www.w3.org/2001/XMLSchema.  Операции GetSharesList и GetSharesTypesList  также будут возвращать значения типа string,  а GetRate будет возвращать  значение типа long.  На самом деле, конечно же, операции GetSharesList и GetSharesTypesList  будут возвращать, а GetSharesList  и получать  таблицы  или списки значений, сериализованные в   XML-текст.

 
                                                                                                          1.png  
   Рис 1.  
     
           Понадобится ещё пара справочников.  Назовем их "Виды акций" и "Компании".Справочнику компаний   добавим три реквизита:
 -  РейтингВерхняяГраница (тип число)
 -  РейтингНижняяГраница (тип число)
 -  ВидКомпании (тип -  справочник "Виды акций")
 
     
           Значение свойства «Имя файла публикации» будет wsGetRate.1cws

Создадим пустые пока модули-обработчики операций и сохраним сделанные изменения.

Если у вас файловый вариант базы, то перед сохранением не забудьте остановить веб-сервер, если он был запущен и база уже опубликована, и затем запустить его заново.

Еще одним недостатком файлового варианта базы является то что в таком режиме недоступны для отладки процедуры модуля web-сервисов.

  Теперь, если перейти по адресу https://localhost/WebServices/ws/wsGetRate.1cws?wsdl — то можно увидеть, что сервис отзывается.  

 
 

                                                               Клиентская часть

 
     

Теперь кратко о клиентской части. Форма обработки будет иметь две страницы. На первой мы разместим список видов акций, который можно будет получать с сервера, выделить нужные виды и заполнить вторую таблицу или список компаниями, отцы которых относятся к выделенным в верхнем списке.  На второй странице мы разместим диаграмму, которая будет отображать в виде графика изменяющиеся курсы.  

Запрашивать курсы будет обработчик ожидания, который мы назовем ВывестиКурсы().   Он будет подключаться по кнопке «Старт», а отключаться по кнопке «Стоп». Обработчик в свою очередь будет вызывать функцию в цикле запроса курса для конкретной компании, если она отмечена в списке.  Лучше было бы, конечно, передавать и получать таблицу значений, но решил упростить алгоритм – это ведь промежуточный пример.

Конечно же, курсы будет генерироваться на стороне web-сервиса генератором случайных чисел.  Со стороны клиента же для нас нет разницы, потому что реальный курс обработка будет получать при помощи той же самой технологии. Интерфейс обработки — рисунки 2 и 3, код — рисунок 4.

 
                                                                      2.png  
 

      Рис. 2

 
     
   3.png  
     
   Рис. 3  
     
   4.png  
     
   Рис. 4  
     
   На рисунке 5 листинг модуля «серверной» операции GetSharesTypesLis(). Остальные процедуры устроены также.  
     
   5.png  
     
 

 Рис. 5

 
     
 

Пару слов о WEB-сервисе на примере игры “Жизнь”

 
     
       В общем-то, для понимания работы веб-сервиса этих двух примеров вполне достаточно (первую часть статьи о web-сервисах “ Веб-сервисы и 1С: «Здравствуй, Name», время – деньги и «Жизнь»” можно прочитать ЗДЕСЬ, но сначала планировался пример создания web-сервиса 1с на примере игры «Жизнь». Почему это стоит сделать? Потому что, во-первых, мы сможем смоделировать не только получение, но и отправку параметров в XML-строках, во-вторых это просто интересный пример.

     Просто несколько фактов:

-        её правила очень просты, и при этом она более сорока лет привлекает внимание учёных. Игра «Жизнь» и её модификации повлияли на разделы таких наук, как математика, информатика, физика, например, теорию автоматов, теорию алгоритмов, математическое программирование, математическое моделирование, теорию графов, фрактальную геометрию и теорию принятия решений;

-         закономерности, обнаруженные при исследовании комбинаций, возникающих в ходе игры повлияли на исследования в области бактериологии, кристаллографии, электротехники, социологии, наномеханики и других фундаментальных областях научного знания

-        Фигура «glider» в 2003 году была предложена в качестве эмблемы хакеров

 
     
 

 Альберт Хайров,

разработчик компании ООО «Кодерлайн»

 
     
   Реализация - в третьей части.

 

Наши проекты

Разработка функциональных требований к информсистеме на базе «1С:Управление холдингом 8»
ФГУП «СВЯЗЬ-безопасность»

Отрасль:
Охранные услуги

Внедренное типовое решение:
1С:Управление холдингом

- Зафиксировали процессы по блокам бухгалтерского, налогового учета, казнач...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Управление цепочками поставок Оптовая торговля ...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

Внедренное типовое решение:
Платформа 1С:Предприятие 8

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в дан...

ООО «Солви Пак»
ООО «Солви Пак»

Отрасль:
Торговля. Производство печати на рулонных материалах

Внедренное типовое решение:
1С:CRM+1С:Комплексная автоматизация

Управление отношениями с клиентами (CRM) ...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

Автоматизация учета на базе ПП "1С:Комплексная автоматизация 8" в ЗАО "Крюгер-Гранд"
ЗАО «Крюгер-Гранд»

Отрасль:
Производство

Внедренное типовое решение:
1С:Комплексная автоматизация

- Создание интерфейсов и наборов прав пользователей;
- Отражению временных ...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Много Плитки»
ООО «Много Плитки»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Закупки (снабжение) и управление отношениями с поставщиками:
- Оформление ...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в
ИП Любо Виктория Александровна (ООО «Рекреация»)

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Осуществлены разработки:
– отчета по спецификации Заказа;
– загрузки сп...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

Внедренное типовое решение:
1С:Управление производственным предприятием

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

Автоматизация интеграции с информсистемами клиентов на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
«1С:Предприятие 8. WMS Логистика. Управление складом»

– Управление складскими запасами;
– Оформление заказов покупателей;
– ...

Фирма 1С
Фирма 1С

Отрасль:

Внедренное типовое решение:
1С:Документооборот

- Подготовка функциональной модели прикладного решения «1С:Документооборот...

ООО «Экслтрейд»
ООО «Экслтрейд»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Оформление заказов поставщикам Оптовая торговля Торговые операции ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение