13.02.2017 Альберт Хайров 8838
Веб-сервисы и 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С:ERP 2.4

Внедренное типовое решение:

Специалисты «Кодерлайн» помогли перенести базу из текущей системы «1С:ERP 2.2» в новую систему «1С:ERP 2.4». ...

Фармацевтическое предприятие «Оболенское»
АО «Фармацевтическое предприятие «Оболенское»

Отрасль:
Фармацевтическая промышленность

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

- Адаптации блоков/подсистем планирования продаж, закупок и казначейства. ...

Внедрение «1С:Зарплата и управление персоналом 8 КОРП» в компании «ПБК»
ООО «Партнер Бухгалтер Консультант»

Отрасль:
Бухгалтерские услуги

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Интеграция продукта с базой данных оперативного учета Axapta;
- Доработка функционала подсистемы...

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Создание полноценной управленческой системы взамен существующих
- Внедрением подсистем «Нормативное планирования», «Мобильное АРМ», «Ре...

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

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

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

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в данные международного учета (ГААП) на платформе «1С:Предприятие 8»:...

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Бухгалтерский учет
- Расчет зарплаты и кадровый учет
- Налоговый учет ...

Установка программного продукта БИТ.Финанс для 1С:Бухгалтерия 8
ООО «Джи Эй Си Шиппинг энд Лоджистикс»

Отрасль:
Транспорт

Внедренное типовое решение:
БИТ.Финанс

Построение единого информационного пространства финансовой службы;
Учет бухгалтерский, налоговый, бюджетный, включая регламентированную ...

ООО "ОМЗ"
ООО "ОМЗ"

Отрасль:
Металлургическая промышленность, металлообработка

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

Автоматизация бизнес-процессов...

Внедрение системы финансового учета БИТ:Финанс
ООО «Алькор и Ко» (Л’Этуаль)

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

Внедренное типовое решение:
БИТ.Финанс

- Финансовый учет;
- Поддержка проекта внедрения МСФО;
- Регламентные работы по обслуживанию сервера MS SQL;
- Оптимизация производ...

ООО «ПКП КАБЭЛЕКТРОСНАБ»
ООО «ПКП КАБЭЛЕКТРОСНАБ»

Отрасль:
Производство кабельной продукции

Внедренное типовое решение:
1С:Управление небольшой фирмой 1.6

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

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

Отрасль:
Нефтесервис

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

- Отказ от бумажного документооборота, от громоздких систем на базе офисного пакета;
- Создан единообразный интерфейс как в офисе, так и...

Внедрение блока расчета себестоимости РАУЗ в 1С:УПП 8
ООО «Пелигрин Матен»

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

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

– Оформление заказов покупателей;
– Взаиморасчеты с покупателями;
– Оформление заказов поставщикам;
– Управление отношениями с ...

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

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

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

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