13.02.2017 Альберт Хайров 9460
Веб-сервисы и 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С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в п...

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

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

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

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

ООО «ПраксисКом»
ООО «ПраксисКом»

Отрасль:
Аутсорсинг бухгалтерских услуг

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

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

- Совместная работа по внедрению разных решений, в том числе «1С:ERP Управление...

Автоматизация системы учета продаж газа на базе «1С:ERP Управление предприятием 2.0»
ООО «Эйр Продактс Газ»

Отрасль:
Производство промышленных газов

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

- Расчеты с контрагентами;
- Производственные операции;
- Управление скла...

СТС-Медиа
СТС-Медиа

Отрасль:
Медиаиндустрия

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

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- ...

Автоматизация подсистемы учета взаиморасчетов с агентами и интернет-магазинами на базе «1С:Управление холдингом 8»
ОАО «Фрейт Линк»

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

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

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

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

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

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

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

Госкорпорация «Ростех»
Госкорпорация «Ростех»

Отрасль:
Производство, ТЭК >> Машиностроение, приборостроение

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

Специалисты «Кодерлайн» помогли разработать и внедрить автоматизированную...

Автоматизация производственного планирования нефтесервисной компании на базе 1С:ЕРП 2.0
ЗАО «Инвестгеосервис»

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

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

- Блок планирования проектов (процессы объемно-календарного планирования пр...

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

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

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

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

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

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

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

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