Погода, курсы валют, RSS 8.3 (Получение информации из интернета для чайников)

Публикация № 340672 02.04.15

Разработка - Практика программирования

HTTPСоединение HTTPЗапрос Msxml2.XMLHTTP Msxml2.DOMDocument

Простенькая RSS читалка + прогноз погоды + курсы валют.
Пример использования HTTPСоединение, HTTPЗапрос, Msxml2.XMLHTTP, Msxml2.DOMDocument

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

"В принципе ничего сложного" - скажете вы, но пришлось повозиться.

Проще всего было с курсами валют и погодой: примеры в интернете + различные сервисы, предоставляющие эту информацию в том или ином виде.

ПОГОДА

Погоду я взял с отечественного Яndex.

Для того, чтобы получить погоду в нужном городе, сначала нужно узнать его ID. Для этого заходим на страницу https://pogoda.yandex.ru/static/cities.xml и ищем город по наименованию. ID Москвы 27612

Я экспериментировал с другими сервисами, везде схожая технология. Где-то сначала нужно получить ID страны, а потом уже ID города, где-то сразу ищем город.

По сути Яндекс хранит прогноз погоды в XML файлах с именем файла равным ID города, поэтому забираем его через обычное HTTPСоединение.

Соединение = Новый HTTPСоединение("export.yandex.ru");
HTTPЗапрос = Новый HTTPЗапрос("weather-ng/forecasts/27612.xml");
HTTPЗапрос.Заголовки.Вставить("Accept-Charset", "utf-8");
ПутьДляСохранения = ПолучитьИмяВременногоФайла();
Результат  = Соединение.Получить(HTTPЗапрос, ПутьДляСохранения);

Далее вскрываем файл:

ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ПутьДляСохранения);
ОбъектXDTO_Погода=ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);

Далее кому что нужно. Можно взять текущие данные, например:

Актуальность  = ОбъектXDTO_Погода.fact.uptime;
Влажность     = ОбъектXDTO_Погода.fact.humidity;
СкоростьВетра = ОбъектXDTO_Погода.fact.wind_speed;
ТипПогоды     = ОбъектXDTO_Погода.fact.weather_type;

А можно вывести прогноз на несколько дней вперед. Я вывожу в таблицу прогноз на 5 дней, поэтому вывод выглядит немного некрасиво + заменяю заголовки колонок:

Ном = 0;
Для Каждого День ИЗ ОбъектXDTO_Погода.day Цикл 
	Если Ном < 5 Тогда
		Ном = Ном + 1;
		СтрДень["Д"+Ном] = День.day_part[4].temperature;
		СтрНочь["Д"+Ном] = День.day_part[5].temperature;
		СтрТип["Д"+Ном] = День.day_part[5].weather_type;

		Элементы["ПрогнозПогодыД"+Ном].Заголовок = Формат(Дата(СтрЗаменить(День.date, "-", "")), "ДФ=dd/MM");
	Иначе
		Прервать;
	КонецЕсли;
КонецЦикла;

в итоге получаем:

Курсы валют

Тут всё почти один-в-один с погодой. Сервис я выбрал rbc.ru. Хранятся курсы в файлах *.tsv, в подпапках с иерархией: tsv/код валюты/год/месяц/день.tsv 

Код доллара: 840

Код евро: 978

Соединение = Новый HTTPСоединение("cbrates.rbc.ru");
HTTPЗапрос = Новый HTTPЗапрос("tsv/"+КодВалюты+"/"+Формат(ТекущаяДата(), "ДФ=/yyyy/MM/dd")+".tsv");

Сохраненный файл, в отличии от погоды, читаем как текстовый документ:

Текст = Новый ТекстовыйДокумент(); 
Текст.Прочитать(ПутьДляСохранения, КодировкаТекста.ANSI);
Стр = Текст.ПолучитьСтроку(1);

Результат:

P.S.: Лично для меня укрпление иностранной валюты это негативная информация, поэтому, в отличие от сайтов: стрелочка вверх - красная, а вниз - зеленая.

RSS

У RSS есть один большущий плюс: Это стандарт, а следовательно, можно взять RSS с любого сайта и не допиливать код.

Но нюансы все же есть. Например, сайт Lenta.ru разбивает новости на категории внутри возвращаемого RSS, а 3Dnews на каждую категорию сделал отдельный RSS адрес, 1c.ru не возвращает текст новости, а только заголовки (т.е. текст пустой). Пришлось добавить немного условий при обработке RSS.

Получение RSS с сайтов немного не тривиально, поскольку путь обычно выглядит так: http://lenta.ru/rss/ или http://www.3dnews.ru/news/rss/ у 1С например http://www.1c.ru/news/rss-2.0.jsp

Получение реализовано через COMОбъект("Msxml2.XMLHTTP"). Код привожу без разнообразных проверок, чтобы не перегружать:

RSS_ComОбъект = Новый COMОбъект("Msxml2.XMLHTTP");
RSS_ComОбъект.open("GET", "http://lenta.ru/rss", false);
RSS_ComОбъект.send();
XMLDocument_RSS = DOM_НовыйXMLДокумент(); //см. ниже
XMLDocument_RSS.LoadXml(RSS_ComОбъект.responseText); 
XMLDocument_RSS.SetProperty("SelectionLanguage","XPath");
XMLDocument_RSS.setProperty("SelectionNamespaces", 
"xmlns:d='http://schemas.microsoft.com/ado/2007/08/dataservices' xmlns:m='http://schemas.microsoft.com/ado/2007/08/dataservices/metadata' xmlns:a='http://www.w3.org/2005/Atom'"
);

Поскольку можно не угадать с версией при формировании Msxml2.DOMDocument.4.0, то вынесено в отдельную функцию:

&НаКлиенте
Функция DOM_НовыйXMLДокумент()
	Попытка
		XML = Новый COMОбъект("Msxml2.DOMDocument.4.0");
	Исключение
		ош = ОписаниеОшибки();
		Попытка
			XML = Новый COMОбъект("Msxml2.DOMDocument.3.0");
		Исключение
			ош2 = ОписаниеОшибки();
			Возврат Неопределено;
		КонецПопытки;
	КонецПопытки;

	Возврат XML;
КонецФункции

Таким образом, на выходе у нас в переменной XMLDocument_RSS содержится XML самого RSS канала. Далее обегаем item-ы:

СписокЭлементов = XMLDocument_RSS.XMLDocument.selectNodes("rss/channel/item");
Для Каждого Элемент ИЗ СписокЭлементов Цикл
	Описание  = Элемент.selectSingleNode("description").text;
	Ссылка    = Элемент.selectSingleNode("link").text;
	Заголовок = Элемент.selectSingleNode("title").text;
	Категория = Элемент.selectSingleNode("category").text;
	Дата      = Элемент.selectSingleNode("pubDate").text;
КонецЦикла;

В обработке на самом деле есть проверки, преобразование формата даты и обработка текста новости. У 3Dnews, например, там много мусора: тэги, коды символов, ссылки на картинки т.д.

Отдельно по поводу картинок - их я не загружаю специально. Причины 2:

1. Вывод новостей идёт в таблицу. Вставка картинок большого размера в ячейку отрабатывает некорректно. Либо картинка маленькая, либо залезает на соседние ячейки. Надеюсь, это глюк платформы и в будущем всё будет нормально.

2. Трафик

Никаких уникальных технологий не применялось, всё сделано именно на уровне "для чайников", из-за этого кому-то код может показаться "не на уровне". Так что пожелания и конструктивная критика - приветствуются. 

Если где-то описал сумбурно и требуется больше пояснений или кода - готов откорректировать.

Скачать файлы

Наименование Файл Версия Размер
info.epf

.epf 15,02Kb
49
.epf 1.0 15,02Kb 49 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Aleksey.Bochkov 3488 03.04.15 05:53 Сейчас в теме
1С не возвращает текст новости, а только заголовки (т.е. текст пустой)

У меня все нормально загрузилось через HTTPСоединение.
http://i.imgur.com/nqwp7eG.png
2. Silmariil 151 03.04.15 07:05 Сейчас в теме
(1) Aleksey.Bochkov, имелось ввиду что конкретно сайт 1c.ru не использует текст новости в RSS, а только заголовки. Скорректировал в статье.
3. AganinEvgeniy 2 08.04.15 11:46 Сейчас в теме
У меня немного иначе реализован алгоритм получения курсов валют, так как столкнулся с проблемой безопасности. В смысле настроен иса сервер, который обычные запросы в интернет блокирует, пришлось воспользоваться найденной в своё время процедурой XML запроса (к сожалению за давностью лет уже и не упомню откуда она бралась), немного подкорректированной под свои нужды. Может кому-нибудь и пригодится:
Функция ЗапроситьФайлыССервера(СерверИсточникПараметр, СтрокаПараметраПолученияПараметр, ИмяВходящегоФайлаПараметр, HTTP = Неопределено) Экспорт

СерверИсточник = СерверИсточникПараметр;
СтрокаПараметраПолучения = СтрокаПараметраПолученияПараметр;
ИмяВходящегоФайла = ИмяВходящегоФайлаПараметр;
Попытка
aUrlRequest = "http://" + СерверИсточникПараметр + "/" + СтрокаПараметраПолучения;

oXMLHTTP = Новый COMОбъект("MSXML2.XMLHTTP");
oXMLHTTP.open("GET",aUrlRequest, False );
oXMLHTTP.Send();
FSO = Новый COMОбъект("Scripting.FileSystemObject");
Fso.CreateTextFile(ИмяВходящегоФайла,True);
FileFso =Fso.OpenTextFile(ИмяВходящегоФайла,2,True);
FileFso.writeline(oXMLHTTP.responseText);

Возврат Истина;
Исключение
Возврат Ложь;
КонецПопытки;


КонецФункции

Процедура ПриОткрытии()
СерверИсточник = "cbrates.rbc.ru";
HTTP = Новый HTTPСоединение(СерверИсточник);
Адрес = "tsv/";
ТМП = Строка(Формат(ТекущаяДата(), "ДФ=/yyyy/MM/dd"));
ВремКаталог = "C:\\Kurses\download\";//Указываем любой каталог, в который будем записывать данные
СоздатьКаталог(ВремКаталог);
УдалитьФайлы(ВремКаталог,"*.*");
СпрВал = Справочники.Валюты.Выбрать();
Пока СпрВал.Следующий() Цикл
Если СпрВал.ПометкаУдаления Тогда
Продолжить;
КонецЕсли;
ИмяВходящегоФайла = ВремКаталог + Прав(СпрВал.Код,3) + ".txt";
СтрокаПараметраПолучения = Адрес + Прав(СпрВал.Код,3) + ТМП + ".tsv";
Если ЗапроситьФайлыССервера(СерверИсточник, СтрокаПараметраПолучения, ИмяВходящегоФайла, HTTP) <> Истина Тогда
Сообщить("Не удалось получить ресурс для валюты " + СокрЛП(СпрВал.Наименование) + " (код " + СпрВал.Код + "). Курс для валюты не загружен.");
Продолжить;
КонецЕсли;
// Далее блок чтения и записи курсов
КонецЦикла;
КонецПроцедуры
4. Yashazz 4070 08.04.15 19:04 Сейчас в теме
Забавно. Такие баянчики до сих пор популярны, хотя это всё считалось давно открытой америкой ещё в 2008-09 гг. Автор, а зачем нужно было юзать Msxml2.DOMDocument?
5. Silmariil 151 08.04.15 19:21 Сейчас в теме
(4) Yashazz, затем что другого способа не нашел. Поделитесь опытом, с радостью перейму опыт.
6. grum01 213 09.04.15 05:13 Сейчас в теме
А я вот так и не смог забрать погоду с gismeteo.
У кого-нибудь получалось? Даже гугля по этому поводу молчит...
7. ZIGRAS 18.01.16 21:20 Сейчас в теме
А дает ли яндекс картинки к погоде?
8. пользователь 12.01.20 16:39
Сообщение было скрыто модератором.
...
Оставьте свое сообщение

См. также

Удаление и/или копирование сохраненных в 1С настроек (например настроек печати табличных форм) Промо

Универсальные обработки Сервисные утилиты v8 Абонемент ($m)

Иногда нужно удалить сохраненную в 1С "покореженную" настройку или скопировать "удачную" другому пользователю...

1 стартмани

01.09.2012    65504    1375    AnryMc    46    

FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы "Режим сравнения форм") на примере ERP 2.5

Практика программирования Адаптация типовых решений Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Данная публикация является продолжением описания функционирования обработки "FormCodeGenerator " в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.

5 стартмани

21.12.2020    9059    26    huxuxuya    11    

Альтернативный способ добавления элементов и реквизитов на формы

Работа с интерфейсом v8 ERP2 УТ11 Россия Абонемент ($m)

Предлагаю альтернативный вариант добавления динамически создаваемых элементов и реквизитов на форму.

1 стартмани

09.09.2019    17010    33    bmk74    6    

Вам нравятся запросы в 1С?

Практика программирования Разработка v8 v8::Запросы 1cv8.cf Абонемент ($m)

Речь не только о том, что простейший запрос с "легальным" оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать "в нагрузку" к тексту запроса. Все эти "Новый Запрос", "УстановитьПараметр" и последующие пляски с обработкой результата... Пора с этим заканчивать!

1 стартмани

03.07.2019    27637    7    m-rv    91    

Групповая корректировка записей регистров (Управляемое приложение) v 2.1 Промо

Универсальные обработки v8 v8::УФ v8::СКД 1cv8.cf Абонемент ($m)

Обработка предназначена для групповой корректировки записей регистров Накопления, Сведений и Бухгалтерии. Разработана специально для Управляемого приложения.

3 стартмани

06.09.2013    67556    305    kser87    56    

Редактор объектов информационной базы 8.3

Универсальные обработки Обмен через XML v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Универсальная внешняя обработка для редактирования реквизитов и табличных частей объектов информационной базы, редактирование движений документов. Доступ ко всем реквизитам объектов, есть возможность выгрузки и загрузки данных (объекты и движения документов) через XML. Платформа 8.3, управляемые формы. Версия 1.1.0.55 от 24.06.2021

2 стартмани

23.01.2019    41427    453    ROL32    50    

Сравнение pdf-файлов актов сверки

Универсальные обработки Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 v8::БУ БП2.0 Россия БУ Абонемент ($m)

Обработка сравнивает два pdf-файла, в которых находятся стандартные печатные формы актов сверки, и показывает на экране совпадающие и/или отличающиеся по суммам документы взаиморасчетов.

1 стартмани

19.12.2018    22637    18    Torin99    2    

Выгрузка изображений из справочника на диск

Учет ТМЦ Универсальные обработки Учет ТМЦ v8 УТ11 Оптовая торговля, дистрибуция, логистика Россия Абонемент ($m)

Обработка позволяет записать изображения из справочка Номенклатура на диск в указанное место.

1 стартмани

30.11.2018    24531    9    wrooom    8    

Установка предопределенных элементов: просмотр, исправление и поиск ошибок (задвоенных и отсутствующих) Промо

Инструментарий разработчика Универсальные обработки v8 1cv8.cf Абонемент ($m)

Простая обработка для просмотра и установки значений предопределенных элементов. Позволяет заменить значение предопределенного элемента с одного элемента справочника на другой, удалить предопределенный элемент (снять пометку предопределенности), установить пометку переопределенного элемента. Проверяет предопределенные данные на наличие задвоений и отсутствующих. Работает со справочниками, планами счетов, планами видов характеристик, планами видов расчетов.

2 стартмани

06.10.2014    167787    2741    ekaruk    169    

Обнуление остатков регистров бухгалтерии и накопления

Универсальные обработки Чистка базы v8 v8::БУ v8::ОУ v8::УФ КА1 БП2.0 ЗУП2.5 УТ10 УПП1 УНФ БГУ ERP2 БП3.0 УТ11 УХ КА2 ЗУП3.x Россия Абонемент ($m)

Обработка позволяет обнулить остатки по регистру накопления или бухгалтерии на определенную дату. Поддерживается большинство типовых конфигураций (БП 3, БП 2, УТ 11, УТ 10, ЗУП 3, ЗУП 2, БГУ 2, БГУ 1, ERP, УПП, КА 2, КА 1, УХ 3, УХ 1, УНФ). Гибкая настройка (отборы, заполнение реквизитов и любых полей корр. счета, возможность обнулять ресурсы выборочно). Несколько режимов работы. Два интерфейса: простой и с расширенным набором настроек.

2 стартмани

19.11.2018    34324    412    morozov.sv    55    

Навигатор по конфигурации базы 1С 8.3

Структура метаданных Универсальные обработки v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Универсальная внешняя обработка для просмотра метаданных конфигураций баз 1С 8.3. Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д. Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы. Отображает структуру хранения объектов базы данных, для регистров доступен сервис "Управление итогами". Платформа 8.3, управляемые формы. Версия 1.1.0.83 от 24.06.2021

3 стартмани

28.10.2018    43968    387    ROL32    72    

Открывашка ячеек таблиц

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Глобальное сочетание клавиш для открытия объекта по ссылке из текущей ячейки любой таблицы в большинстве управляемых форм

1 стартмани

27.10.2018    21851    12    tormozit    31    

Универсальная выгрузка/загрузка данных для отличающихся конфигураций (JSON, Такси+ОФ) Промо

Перенос данных из 1C8 в 1C8 Универсальные обработки Распределенная БД (УРИБ, УРБД) v8 1cv8.cf Абонемент ($m)

Простой перенос через JSON данных между двумя базами 1С (документов, справочников, ПВХ, ПВР, счетов). Аналогична произвольной выгрузке в типовой "Выгрузка/загрузка XML", но может использоваться для отличающихся конфигураций. Подходит для любых пар баз с любым интерфейсом (управляемый + обычный). Без настроек. Не требует идентичности конфигураций и платформ. При переносе типы данных сопоставляются по наименованиям метаданных, объекты и ссылки по UID.

1 стартмани

22.10.2014    223032    4362    ekaruk    184    

Универсальный инструмент для переноса данных через табличный документ (УФ)

Обработка документов Универсальные обработки Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Для опытных пользователей, разработчиков, администраторов, консультантов

5 стартмани

15.10.2018    46244    151    json    44    

Работа с публикациями "Инфостарт"

Практика программирования О сообществе WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    28314    14    RocKeR_13    16    

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции

Инструментарий разработчика Практика программирования v8 Абонемент ($m)

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    36092    31    informa1555    30    

Обработка "Распознавание штрихкода с помощью утилиты Zbar" для Документооборот ред. 2 Промо

Универсальные обработки Документооборот и делопроизводство Документооборот и делопроизводство v8 ДО Абонемент ($m)

В связи с тем, что стандартный функционал программы «Документооборот» ред. 2.1 дает возможность распознавания штрихкодов только форма EAN-13, данная обработка - альтернативный способ для распознавания штрихкода в программе 1С: Документооборот ред. 2 с помощью утилиты Zbar, которая распознает в том числе и в формате Code 128 (один из стандартных штрихкодов кодирования документов, например, «Управление торговлей» ред. 11), а также с возможностью поэтапно проследить все действия от распознавания до прикрепления к документу или простой загрузки в каталоги файлов в базе 1С.

5 стартмани

05.09.2016    26851    171    SEOAngels    11    

Визуализация событий на временной шкале средствами "Поле HTML документа"

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Интересный способ наглядно отобразить события на временной шкале. Например, может быть применен для красивого вывода документов по клиенту. Тестировалось на платформе 8.3.12.1469

1 стартмани

31.07.2018    28540    145    Plotks2017    27    

Работа с данными выбора

Практика программирования Работа с интерфейсом v8 Россия Абонемент ($m)

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

1 стартмани

17.07.2018    66178    25    kalyaka    17    

ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ ("001", "Новый товар")

Практика программирования v8 v8::Запросы 1cv8.cf Абонемент ($m)

Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.

1 стартмани

01.06.2018    36567    94    m-rv    58    

Перемещение остатков по счету МЦ04 между материально ответственными лицами для конфигураций (8.2). Промо

Обработка документов Универсальные обработки Учет ТМЦ Учет ТМЦ v8 БП2.0 Россия БУ Абонемент ($m)

Небольшая обработка, которая позволяет перекидывать остатки по счету МЦ04 с одного материально ответственного лица на другое

1 стартмани

22.11.2012    22276    102    niksaf    4    

Просмотр, изменение реквизитов объекта. Сравнение двух одинаковых объектов метаданных ИБ

Универсальные обработки v8 1cv8.cf Россия Абонемент ($m)

Показывает реквизиты объекта (ов) или сравнивает два одинаковых объекта конфигурации справочники, документы.

1 стартмани

26.04.2018    22241    28    Vin_Tik    0    

Построение маршрута доставки с расчётом расстояния для любой базы УФ

Универсальные обработки WEB Оптовая торговля Оптовая торговля v8 v8::УФ 1cv8.cf Абонемент ($m)

Графическое изображение маршрутного листа по картам гугл. Работает на любой конфигурации с управляемыми формами. Использует новую версию api google-карт от 13.02.2018 года под IE11.

10 стартмани

24.02.2018    43263    46    KorotkovRV    17    

Заполняем по шаблону (по умолчанию)

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

Простой в подключении, универсальный и достаточно удобный механизм заполнения реквизитов произвольных документов/справочников значениями по умолчанию. Реализован в расширении, но может быть и непосредственно включен практически в любую конфигурацию на управляемых формах простым копированием одной формы и двух команд. Весь код в статье.

1 стартмани

08.02.2018    34528    20    mvxyz    17    

Печатная форма, сделанная как расширение конфигурации для БП 3.0. Новые возможности БСП

Практика программирования Универсальные печатные формы v8 БП3.0 Абонемент ($m)

Печатные формы на внешних обработках скоро канут в лету. На смену им приходят ПФ, реализованные в виде расширений конфигурации. Не нашел на сайте примеров таких расширений. Привожу пример подобного расширения для БП 3.0.

1 стартмани

06.12.2017    32911    58    kwazi    6    

Программное формирование форматированной строки в стиле html+inline CSS

Работа с интерфейсом Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Если вам приходилось работать с форматированными строками программно, то вы знаете, какая это боль. Данное решение облегчает программное формирование таких строк.

1 стартмани

18.11.2017    41950    45    bonv    13    

Инструменты бухгалтера: Виджеты рабочего стола

Универсальные обработки Рабочее место v8 v8::БУ БП3.0 Абонемент ($m)

Настраиваемые виджеты на начальной странице, своеобразная панель для быстрого доступа к объектам. Виджеты это элементы интерфейса в виде цветных прямоугольников со ссылками на объекты конфигурации. Использование виджетов позволяет сконцентрировать на начальной странице часто используемые функции, например, варианты отчетов, списки документов, или используя виджет вводить новый документ прямо из начальной страницы.

2 стартмани

28.08.2017    44044    182    Bazil    30    

Расширенная настройка динамического списка УФ

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

31.05.2017    38342    161    tormozit    25    

Расширения конфигураций 1С: учимся перехватывать методы

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

В этой статье я на примерах разберу некоторые механизмы расширений конфигураций 1С. А именно «перехваты» методов модуля объекта и «перехваты» событий формы и элементов формы. Данная статья написана с учебными целями, чтобы показать, как при помощи расширений конфигурации можно делать такие доработки, ради которых раньше приходилось снимать конфигурацию с поддержки.

1 стартмани

30.05.2017    164625    13    signum2009    48    

Поиск и отключение зависших сеансов на сервере 1С: Предприятия

Универсальные обработки v8 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для мониторинга и отключения спящих (зависших) сеансов на сервере 1С: Предприятия.

1 стартмани

14.09.2016    38744    64    wowchik_85    12    

Редактор движений документа. Сохранение в XML, обмен между базами, замена регистратора.

Обработка документов Универсальные обработки Обмен через XML v8 Абонемент ($m)

Редактор набора записей движений документа. Позволяет сохранить набор записей в XML, в настройки пользователя, прочитать сохраненный XML в другой идентичной базе, заменить регистратор. Можно изменять порядок записей, менять активность, как массово, так и по одной и др. Тонкий клиент, управляемые формы.

1 стартмани

07.09.2016    51129    168    Aphanas    4    

Универсальный поиск объектов по глобальному уникальному идентификатору (ГУИД, GUID)

Универсальные обработки Поиск данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Универсальная обработка поиска объектов информационной базы по глобальному уникальному идентификатору (ГУИД, GUID) или по его части.

1 стартмани

06.09.2016    39431    112    Dzenn    9    

1С: Предприятие + корпоративный чат, как наладить оперативные уведомления за 10 минут

Практика программирования v8 Абонемент ($m)

Как сделать автоматические уведомления о разных событиях из 1С в корпоративный чат MyChat для сотрудников компании

1 стартмани

14.08.2016    54703    36    Demanoidos    60    

Оптимальный способ расчета контрольной суммы объекта/записи регистра (CRC32, MD5, SHA1, SHA256)

Универсальные обработки v8 1cv8.cf Абонемент ($m)

(©Топчий Д.Ю.) Была задача сравнить документы в распределенных базах и пометить на выгрузку измененные. Но сравнение изменений документов методом перебора реквизитов - долгоиграющий процесс, особенно если общее количество сравниваемых данных переваливает за миллион. Был найден выход, который ускоряет процесс сравнения - расчет контрольной суммы объекта и сравнение ее с другой контрольной суммой. Скорость сравнения увеличивается во много раз.

1 стартмани

01.08.2016    38115    7    hakerxp    9    

Хранение файлов в томах на диске (для УПП 1.3)

Практика программирования v8 УПП1 Абонемент ($m)

Доработка типовой УПП 1.3 в плане хранения присоединенных файлов вне базы данных

2 стартмани

05.06.2016    67427    12    wowik    32    

Остатки на каждый день в запросе

Практика программирования Учет ТМЦ Учет ТМЦ v8 1cv8.cf УУ Абонемент ($m)

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

1 стартмани

26.04.2016    76449    21    arakelyan    25    

Просмотр данных системы Платон на картах Google

Универсальные обработки WEB v8 1cv8.cf Автомобили, автосервисы Транспорт, автопарки, такси Абонемент ($m)

Обработка для просмотра предполагаемых треков движения транспортного средства на карте Google согласно данным, предоставляемым системой Платон в формате CSV. Работает под 8.2 и 8.3, обычное и управляемое приложение, может подключаться к типовым конфигурациям в качестве внешней обработки.

1 стартмани

15.04.2016    39130    21    anig99    11    

Выполнение JavaScript кода из 1С в объекте Поле HTML Документа (HTML 5) и вызов события в 1С ПриНажатии

Практика программирования v8 1cv8.cf Россия Абонемент ($m)

Пример выполнения JS кода из 1С в Поле HTML Документа под управляемыми формами, с удобным получением результата в 1С(С помощью вызова привязанного события ПриНажатии к элементу ПолеHTMLДокумента)

1 стартмани

22.03.2016    94983    172    igo1    59    

Количество дней недели (понедельников/вторников/...) в заданном диапазоне одним запросом

Практика программирования v8 Абонемент ($m)

При реализации периодического авто-заполнения маршрутных листов по графику (недельному) необходимо было просчитать стоимость всего периода, с условием выездов только по определенным дням. Заморачиваться с обходом результата не хотелось. Пришлось написать "Небольшой" запрос.

1 стартмани

03.03.2016    22790    1    Alexander.Shvets    5    

Простые радости жизни программиста 1С: выбор типа значения

Работа с интерфейсом Практика программирования v8 1cv8.cf Абонемент ($m)

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

1 стартмани

17.02.2016    58885    56    yuraos    18    

Яндекс.Деньги "Благотворительность"

Инструментарий разработчика Практика программирования v8 1cv8.cf Абонемент ($m)

Яндекс.Деньги теперь в 1С. Форма для приема благотворительных взносов. Форму легко сделать и вставить на любую страницу сайта или блога. Платежи будут приходить на ваш кошелек. На форме есть три способа платежа: из кошелька, с банковской карты, с баланса мобильного.

1 стартмани

16.02.2016    28163    8    Tatitutu    5    

ЕГАИС: код алкогольной продукции из штрихкода акцизной марки

Универсальные обработки Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8 1cv8.cf Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Акцизы Абонемент ($m)

В последнее время мне пришлось потратить очень много времени на внедрение и реализацию функционала ЕГАИС. Очень часто, на форумах, я встречал вопрос: "Как из штрих-кода акцизной марки получить код алкогольной продукции ЕГАИС?". Несколько раз видел неверную реализацию этой задачи. Глядя на это, я набросал простую обработку пересчета кода акцизной марки (base36) в понятный нам уникальный ФСРАР ID алкогольной продукции (Base10).

1 стартмани

11.02.2016    62443    161    OrcaMax    29    

Снимок экрана для 1С

Универсальные обработки Разработка внешних компонент v8 1cv8.cf Россия Абонемент ($m)

Довольно часто люди сталкиваются с необходимостью сделать снимок экрана. Если вы или ваши сотрудники основную часть времени проводят в 1С и у вас есть необходимость прикреплять графические файлы, то эта компонента для вас.

1 стартмани

08.02.2016    31667    34    linkforget    11    

Генерация QR-кода программная и интерактивная (код открыт, управляемая форма, обычное и управляемое приложение, API)

Универсальные функции Универсальные обработки v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработку можно быстро и легко интегрировать в любую конфигурацию с и без БСП (Библиотека Стандартных Подсистем).

3 стартмани

04.02.2016    55297    185    TuneSoft    30    

Мастер рассылки e-mail 2.2 для управляемых форм

Практика программирования Email v8 v8::УФ ERP2 БП3.0 УТ11 Абонемент ($m)

Для пользователей: переделанный из старый разработки под 8.2 с использованием библиотеки Мастер рассылки e-mail 2.2 (ERP, УТ, БП) (Только управляемые формы), который теперь может запускаться под любой версией платформы с разрешенными или запрещенными модальными/синхронными вызовами в конфигурации. Также удобный выбор e-mail и их владельцев с помощью отбора динамического списка по любым критериям и галочки исключения.

1 стартмани

29.12.2015    46382    21    milkers    4