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

Публикация № 1112877

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

Как запустить фоновое задание из модуля внешней обработки используя БСП. Как отключить безопасный режим и сообщения защиты от опасных действий независимо от профиля безопасности пользователя в фоновом задании во внешней обработке.

1. Как запустить фоновое задание из модуля внешней обработки используя БСП

 

После тщетных попыток запустить в фоне процедуру модуля объекта внешней обработки, я все-таки решил глубже копнуть все механизмы длительных операций БСП. Все процедуры выполнения кода в фоне из подсистемы "Длительные операции" работают на сервере. То есть все происходит так: берется внешняя обработка, хранящаяся в справочнике "ДополнительныеОтчетыИОбработки", разворачивается на сервере (вот тут ключевой момент) и из этого экземпляра обработки выполняются указанные процедуры / функции модуля объекта (см. процедуру "ЗапуститьФоновоеЗаданиеСКонтекстомКлиента" модуля "ДлительныеОперации" БСП 3.х). Если вы вызываете ту же самую обработку из "файл-открыть", то БСП тупо пытается запустить указанные методы из обработки на сервере, в то время как обработка находится на клиенте.

 

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

&НаКлиенте
Процедура ПриОткрытии(Отказ)

    Если ЭтоВнешняяОбработка() Тогда
        ОписаниеОповещения = Новый ОписаниеОповещения("ОбработатьРезультатПомещенияФайлаОбработки", ЭтотОбъект);
        НачатьПомещениеФайлов(ОписаниеОповещения, ИмяФайлаОбработки(), Ложь, УникальныйИдентификатор);
    КонецЕсли;

КонецПроцедуры

&НаКлиенте
Процедура ОбработатьРезультатПомещенияФайлаОбработки(ПомещенныеФайлы, ОбработчикЗавершения) Экспорт

	Если ПомещенныеФайлы <> Неопределено Тогда
		// Создаем копию текущией обработки на сервере
		ХранениеФайлаОбработки = КопияОбработкиНаСервере(ПомещенныеФайлы[0].Хранение);
	КонецЕсли;

КонецПроцедуры

&НаСервере
Функция КопияОбработкиНаСервере(Хранение)

	Результат = ПолучитьИмяВременногоФайла();
	ДвоичныеДанные = ПолучитьИзВременногоХранилища(Хранение);
	ДвоичныеДанные.Записать(Результат);
	
	Возврат Результат;

КонецФункции
	
&НаСервере
Функция ИмяФайлаОбработки()

	Возврат РеквизитФормыВЗначение("Объект").ИспользуемоеИмяФайла;
	
КонецФункции

&НаСервере
Функция ЭтоВнешняяОбработка()
	
	ЧастиИмени = СтрРазделить(РеквизитФормыВЗначение("Объект").Метаданные().ПолноеИмя(), ".");
	Возврат (ВРег(ЧастиИмени[0]) = "ВНЕШНЯЯОБРАБОТКА")
	
КонецФункции

Ну вот, собственно и все. Осталось только правильно вызвать процедуру из модуля объекта копии обработки на сервере.

&НаКлиенте
Процедура НачатьВыполнениеФоновогоЗадания()
	
	// Указываете свои параметры выполнения фонового задания....
	
	ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("<ОповещениеОПрогрессеВыполнения>", ЭтотОбъект);
	
	ДлительнаяОперация = НачатьВыполнениеФоновогоЗаданияНаСервере();
	
	ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект);
	ПараметрыОжидания.ТекстСообщения = <...>;
	ПараметрыОжидания.ВыводитьПрогрессВыполнения = <...>;
	ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения; 
	ПараметрыОжидания.ОповещениеПользователя.Показать = <...>;
	ПараметрыОжидания.ВыводитьОкноОжидания = <...>;
	ПараметрыОжидания.ВыводитьСообщения = <...>;
	
	ОповещениеОЗавершении = Новый ОписаниеОповещения("<ОповещениеОЗавершении>", ЭтотОбъект);
	ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, ПараметрыОжидания);
	
КонецПроцедуры


&НаСервере
Функция НачатьВыполнениеФоновогоЗаданияНаСервере()
	
	ПараметрыВыполненияОбработки = Новый Структура;
	// Здесь указываете параметры, передаваемые в процедуру, выполняемую в фоне
	// ....
	// ...

	// Остальной код можно оставлять, как есть, не забыв указать имя фоновой процедуры и ее описание
	
	ЭтоВнешняяОбработка = ЭтоВнешняяОбработка();
	ИмяОбработки = ?(ЭтоВнешняяОбработка, ХранениеФайлаОбработки, РеквизитФормыВЗначение("Объект").Метаданные().ПолноеИмя());
	
	ПараметрыЗадания = Новый Структура;
	ПараметрыЗадания.Вставить("ИмяОбработки",		ИмяОбработки);
	ПараметрыЗадания.Вставить("ИмяМетода",			"<Имя процедуры в модуле объекта>");
	ПараметрыЗадания.Вставить("ПараметрыВыполнения",	ПараметрыВыполненияОбработки);
	ПараметрыЗадания.Вставить("ЭтоВнешняяОбработка",	ЭтоВнешняяОбработка);
	
	ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
	ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = '<Описание вашего фонового задания>'");
	ПараметрыВыполнения.ЗапуститьВФоне = Истина;
	ПараметрыВыполнения.Вставить("ИдентификаторФормы", УникальныйИдентификатор); 
	
	ВыполняемыйМетод = "ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки"; // Выполняем процедуру из модуля объекта
	Возврат ДлительныеОперации.ВыполнитьВФоне(ВыполняемыйМетод, ПараметрыЗадания, ПараметрыВыполнения);
	
КонецФункции

 

2. Как отключить безопасный режим и сообщения защиты от опасных действий независимо от профиля безопасности пользователя в фоновом задании во внешней обработке

 

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

Я думаю, что многим приходилось сталкиваться с тем, что на сервере надо было подтвердить разрешение на запуск com-соединения. И все выключали защиту от опасных действий в профиле пользователя, чего делать не рекомендуется. Я пошел другим путем. Создаю две экспортные процедуры в модуле объекта внешней обработки: одна - непосредственно функция, которая будет выполнять необходимые действия и другая, которая вызовет первую с отключенным контролем прав доступа профиля.

Выглядит это так:

Функция ОбработкаДанных(...) Экспорт

	...	

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

Процедура ОбработкаДанныхВФоне(Параметры, АдресРезультата) Экспорт

	ЧастиИмени = СтрРазделить(ЭтотОбъект.Метаданные().ПолноеИмя(), ".");
	ЭтоВнешняяОбработка = (ВРег(ЧастиИмени[0]) = "ВНЕШНЯЯОБРАБОТКА");
	Если ЭтоВнешняяОбработка Тогда 
		ОбработкаОбъект = ВнешниеОбработки.Создать(ЭтотОбъект.ИспользуемоеИмяФайла, Ложь, ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений());
		Результат = ОбработкаОбъект.ОбработкаДанных(...);
	Иначе
		Результат = ОбработкаДанных(...);
	КонецЕсли;

	ПоместитьВоВременноеХранилище(Результат, АдресРезультата);
	
КонецПроцедуры

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

Пример использования, созданный из обработки демонстрационной конфигурации БСП прилагается (создавалась на платформе 8.3.13.1513, совместима с любой платформой 8.3, которая поддерживает БСП 3.0 и старше)

 

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

 

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

Наименование Файл Версия Размер
ДемоДлительнаяОперация
.epf 10,96Kb
23.08.19
15
.epf 10,96Kb 15 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. jONES1979 26.08.19 09:17 Сейчас в теме
"капнуть" -> "копнуть"
Dmitri93; +1 Ответить
2. BenGunn 203 26.08.19 11:53 Сейчас в теме
(1) Это так важно? Ну не грамотный!
jONES1979; +1 4 Ответить
3. jONES1979 26.08.19 15:21 Сейчас в теме
(2) "не грамотный" -> "неграмотный"
Но теперь-то грамотный! А грамотность - это первое впечатление! И отсутствие подсознательного раздражения от читаемого текста.
...
Я забыл что оказывается здесь нельзя почистить комменты. Ну тогда сорри, в другой раз в личку напишу)
Dmitri93; HEKPOH; kuzyara; +3 Ответить
4. BenGunn 203 26.08.19 16:04 Сейчас в теме
(3) Мне гораздо больше нравится мысль, что подобное еще никто не делал (если даже и сделал, то не говорит об этом).
jONES1979; +1 Ответить
5. BenGunn 203 26.08.19 16:10 Сейчас в теме
(3)
«Неграмотный» или «не грамотный»: слитно или раздельно?
Если коротко, то пишется слитно, когда утверждается безграмотность, и пишется раздельно, когда отрицается грамотность.

Он неграмотный. (Утверждается безграмотность).

Он не грамотный. (Отрицается грамотность).

(Этот принцип действует и для наречия «неграмотно»).
7. BenGunn 203 27.08.19 00:39 Сейчас в теме
(3) Да ну, нафиг! Посмотрел твой профиль... Да ты, оказывается, флудер! Сказать только ради того, чтобы сказать?! Отличная позиция! А не хочешь сделать что-нибудь полезное? Ну, кроме того, что раздувать щеки с умным видом?!
Summer_13; mai_k; jONES1979; +3 Ответить
9. jONES1979 27.08.19 06:23 Сейчас в теме
(7) Зачем переходить на личности, вам скучно? За полезное на работе деньги платят, а не звёздочки в интернете. Форум - это по определению место для общения, что позволяет отвлечься. Кого первого-то на флудеразм пробило? Поправили бы свою опечатку и копали дальше,.. а не капали.

За статью спасибо, кстати. С моей помощью теперь она чуть ли не идеальна))
Dmitri93; +1 Ответить
10. BenGunn 203 27.08.19 08:25 Сейчас в теме
(9)

Ну я говорю, флудер!

Кстати, где ты здесь видишь форум? Здесь специалисты делятся знаниями, а не ищут орфографические ошибки. Теми самыми знаниями, кстати, которые кто-нибудь использует в той самой работе, за которую деньги платят. А судя по тому, что пишешь в коментах, тебе еще очень далеко до такого уровня... Поищи развлекуху где-нибудь на Фейсбуке, там таких как ты любят
jONES1979; +1 Ответить
11. jONES1979 27.08.19 08:55 Сейчас в теме
(10)
- К чему эти ярлыки? Не опускайтесь до моего уровня!
- Форум написано вверху.
- Я не искал ошибок, они сами бросаются в глаза и сбивают восприятие.
- За знания я никогда не устану говорить спасибо! Спасибо!
Прикрепленные файлы:
6. PerlAmutor 56 26.08.19 21:23 Сейчас в теме
Спасибо. Довольно интересные трюки.
8. BenGunn 203 27.08.19 00:49 Сейчас в теме
12. Oldsad 27.08.19 10:41 Сейчас в теме
13. fomix 26 15.11.19 11:08 Сейчас в теме
1. Изменились параметры процедуры "НачатьПомещениеФайлов", поэтому код процедуры "ПриОткрытии" будет таким (по крайней мере для 1С:Предприятие 8.3 (8.3.12.1685), БП 3.0):

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	
	ОписаниеФайлаВО = Новый ОписаниеПередаваемогоФайла(ИмяФайлаОбработки());
	
	ПомещаемыеФайлы = Новый Массив;
	ПомещаемыеФайлы.Добавить(ОписаниеФайлаВО);
	
	Если ЭтоВнешняяОбработка() Тогда
		ОписаниеОповещения = Новый ОписаниеОповещения("ОбработатьРезультатПомещенияФайлаОбработки", ЭтотОбъект);
		НачатьПомещениеФайлов(ОписаниеОповещения, ПомещаемыеФайлы,, Ложь, УникальныйИдентификатор);
	КонецЕсли;

КонецПроцедуры
Показать


2. Выполнения скрипта из COMОбъект("WScript.Shell") требует особых прав и без подтверждения такого действия на сервере не работает! Соответственно, ваша обработка не отрабатывает и каждый раз вываливается запрос на подтверждение((( Можно просто поставить вместо этого цикл.
14. BenGunn 203 16.11.19 17:12 Сейчас в теме
(13) Уточни, пожалуйста, что имелось в виду по п.2
17. fomix 26 18.11.19 19:06 Сейчас в теме
(14) При попытке выполнить скрипт, 1с-ка стандартно спрашивает "...пытается выполнить вызов команды WScript.Shell. Подтверждаете? Да/Нет". Отвечаешь Да и по-новой вываливается этот диалог и так до посинения. Ну тебе это нужно было для "тормоза", поэтому в реальной жизни вряд ли кому-то пригодится. Так что, не заморачивайся!
18. BenGunn 203 19.11.19 09:18 Сейчас в теме
(17) Точно! Фоновое задание при таком подходе запускается от имени DefUser, соответственно, COM объекты создаются только в безопасном профиле.... Ёкрныйбабай! Сам на этом споткнулся! Есть предложения по решению вопроса? (Ну, кроме того, что включать процедуру фонового задания в конфу)?
15. BenGunn 203 16.11.19 17:14 Сейчас в теме
(13) По п.1, тестировалось на 8.3.13.1513. Что на более ранних релизах, сказать не могу. На поздних работает
16. fomix 26 18.11.19 19:02 Сейчас в теме
(15) Платформа тут не при чем! В последнем релизе БП 3.0 (и скорее всего и в других конфигурациях тоже!) изменился вызов команды "НачатьПомещениеФайлов"
19. BenGunn 203 19.11.19 09:21 Сейчас в теме
(16) Ничё не понял... При чем тут вообще БП?

Глобальный контекст (Global context)
НачатьПомещениеФайлов (BeginPuttingFiles)
Синтаксис:
НачатьПомещениеФайлов(<ОписаниеОповещенияОЗавершении>, <ПомещаемыеФайлы>, <Интерактивно>, <УникальныйИдентификаторФормы>, <ОписаниеОповещенияПередНачаломПомещенияФайлов>)
20. fomix 26 21.11.19 14:47 Сейчас в теме
(19) Насчет БП точно - я не прав! Платформа 8.3.15.1700:
Все верно про синтаксис:
НачатьПомещениеФайлов(<ОписаниеОповещенияОЗавершении>, <ПомещаемыеФайлы>, <Интерактивно>, <УникальныйИдентификаторФормы>, <ОписаниеОповещенияПередНачаломПомещенияФайлов>)

Но у вас параметр: <ПомещаемыеФайлы> = РеквизитФормыВЗначение("Объект").ИспользуемоеИмяФайла (тип строка). Так не работает!
А вот как я написал:
ОписаниеФайлаВО = Новый ОписаниеПередаваемогоФайла(ИмяФайлаОбработки());
ПомещаемыеФайлы = Новый Массив;
ПомещаемыеФайлы.Добавить(ОписаниеФайлаВО)

работает..
Оставьте свое сообщение

См. также

Краткое руководство по внесению изменений в конфигурацию

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

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

1 стартмани

13.01.2020    10200    18    sapervodichka    41       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Полезные процедуры и функции для программиста

Статья Программист Нет файла v8 1cv8.cf Россия Абонемент ($m) Практика программирования Универсальные функции

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

1 стартмани

07.10.2019    19238    9    HostHost    27       

Описание формата внутреннего представления данных 1С в контексте обмена данными

Статья Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных

Фирма 1С не рекомендует использовать внутреннее представление данных для любых целей, которые отличны от обмена с 1С:Предприятием 7.7. Но сама возможность заглянуть на "внутреннюю кухню" платформы с помощью функций ЗначениеВСтрокуВнутр(), ЗначениеВФайл(), ЗначениеИзСтрокиВнутр() и ЗначениеИзФайла(), дала возможность сообществу программистов 1С разработать новые приемы разработки и анализа. Так, именно на использовании внутреннего представления был построен алгоритм "быстрого массива", который позволяет практически мгновенно создать массив в памяти на основании строки с разделителями. С помощью разбора внутреннего представления можно "на лету" программным кодом выполнить анализ обычной формы и даже сделать редактор графической схемы. Во внутреннем формате сохраняют свои данные между сеансами различные популярные внешние обработки. А еще это возможность сделать быстрый обмен с внешними системами.

1 стартмани

06.09.2019    12597    10    Dementor    29       

Базовый курс по обмену данными в системе 1С:Предприятие. Онлайн-интенсив с 12 по 28 мая 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, обеспечивающих обмен данными между различными прикладными 1С-решениями и взаимодействие с другими информационными системами. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”.

5500 рублей

Конвейер проверки качества кода

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

Jenkinsfile для выполнения проверки качества кода. Собирает информацию с АПК, EDT и BSL-LS. Сопоставляет ошибки с гит-репозиторием, выгруженным ГитКонвертором. Отправляет в Сонар.

3 стартмани

04.09.2019    14638    19    Stepa86    44       

Онлайн-курс «Практические аспекты внедрения регламентированного учета и расчета себестоимости в 1С:ERP на крупных промышленных предприятиях» с 20 апреля по 15 мая 2020 года. Промо

Курс рассчитан для подготовки экспертов по регламентированному учету и учету затрат для внедрения на крупных промышленных предприятиях с «исторически сложившимся» учетом

9000 рублей

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

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

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

1 стартмани

03.07.2019    14826    4    m-rv    86       

1С:Ассемблер. Немного летнего веселья!

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Разработка

Все вы, наверное, слышали, что 1С-ники жалуются на свою систему, считая язык 1С недостаточно низкоуровневым, скучным и т.п. Все они с тоской поглядывают в сторону "настоящих" языков программирования. Так вот, господа, они неправы. В системе 1С есть места, где можно размять программерский мозг и получить удовольствие от низкоуровневой техники. Предлагаю вам погрузиться в недра виртуальной машины 1С и понять, как она работает. Там есть свой "ассемблер" и мы попробуем его в действии!

1 стартмани

21.06.2019    21146    67    Evil Beaver    117       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Простые примеры сложных отчетов на СКД

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

Подписи в отчете. Особенности соединения наборов: как соединить несоединяемое. Остатки на дату и обороты по месяцам в одном отчете. Курс валюты на каждую дату без группировок и соединений в запросе. Отчет с произвольными колонками и с произвольной последовательностью. "Неадекватный отчет".

1 стартмани

12.06.2019    21671    19    Hatson    22       

Безопасная работа с транзакциями во встроенном языке

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования

Разбираемся с опасностями использования транзакций во встроенном языке 1С. Познаем ошибку "В данной транзакции уже происходили ошибки". Учимся защищаться от них.

1 стартмани

25.03.2019    24422    9    tormozit    44       

Онлайн-курс «Автоматизация процессов управления МТО: методика сбора и формализации требований» с 1 апреля по 13 мая 2020 года. Промо

Цель курса - повысить полноту и качество сбора и формализации требований к автоматизации процессов управления материально-техническим обеспечением. Курс основан на процессном подходе, позволяет в полном объеме выявить и учесть все факторы, влияющие на специфику процессов управления МТО. Участники курса получают теоретические знания в области организации процессов управления МТО и готовый инструментарий для сбора и формализации требований по автоматизации этих процессов (шаблоны, опросники, модели).

40000 рублей

HTML в новой версии 8.3.14 на примере 3-х JavaScript библиотек: AmCharts, HighCharts, DHTMLX

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Универсальные обработки Практика программирования Разработка

Тестируем возможности HTML в новой версии 8.3.14 платформы на примере 3-х JavaScript библиотек: AmCharts, HighCharts, DHTMLX.

1 стартмани

29.01.2019    21468    77    Synoecium    40       

Базовый курс для начинающих 1С-программистов. Онлайн-интенсив со 2 июня по 2 июля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500-9500 рублей

Отладка сложных отчетов на СКД

Отчеты и формы Программист Расширение (cfe) v8 v8::СКД 1cv8.cf Россия Абонемент ($m) Практика программирования

Расширение для отладки сложных отчетов на СКД (в т.ч. для собираемых программно "на лету") и быстрого перехода к отладке таких отчетов в консоли запросов и отчетов на СКД.

1 стартмани

28.12.2018    20330    74    maxx    58       

Реализация простого http-сервиса "Просмотр карточки номенклатуры(товара) в браузере"

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования

Практический пример реализации простого http-сервиса средствами 1С Предприятие 8.3. Обеспечивает просмотр списка товаров и просмотр данных товара в браузере.

1 стартмани

07.12.2018    18009    13    dmitry1975    31       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Использование подсистемы БСП "Заполнение объектов"

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

Применение механизмов БСП для добавления новых команд заполнения к формам различных объектов. Использование расширений конфигурации для доработки. Шаблоны для реализации собственных команд заполнения.

1 стартмани

23.11.2018    19691    10    ids79    23       

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

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

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

1 стартмани

13.09.2018    14207    12    RocKeR_13    16       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

HTTP Сервисы: Путь к своему сервису. Часть 3

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

Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 2». В предыдущих частях мы использовали только Get, в этой части поговорим о других методах и длительных операциях.

1 стартмани

27.08.2018    24823    44    dsdred    13       

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

Инструменты и обработки Программист Бизнес-аналитик Приложение (apk) v8 Windows Абонемент ($m) Инструментарий разработчика Практика программирования

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

5 стартмани

09.08.2018    21582    25    informa1555    26       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

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

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

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

1 стартмани

17.07.2018    32630    17    kalyaka    16       

HTTP Сервисы: Путь к своему сервису. Часть 1

Статья Системный администратор Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Практика программирования WEB

Уже много было написано про http-сервисы, но то и дело всплывают «Новые» статьи по обмену между базами V8 по COM, что «Немножко» удивляет. Решил внести свои 5 копеек, поработаем с http-сервисом.

1 стартмани

15.07.2018    59013    24    dsdred    24       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

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

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

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

1 стартмани

01.06.2018    24056    86    m-rv    57       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

БСП: Дополнительная обработка (Регламенты), примеры от простого к сложному

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования БСП (Библиотека стандартных подсистем)

Очень много попадается странных решений, которые можно решить через БСП:Дополнительные отчеты и обработки. Я бы вообще БСП из-за этой подсистемы переименовал в «Большое Спасибо Программистам». Поработаем с подсистемой в части написания регламентных заданий.

1 стартмани

10.05.2018    36317    31    dsdred    36       

Как выполнить отчет на СКД через COM и получить данные отчета?

Статья Программист Архив с данными v8 УПП1 Россия Windows Абонемент ($m) Практика программирования

Для чего это нужно. Например, нужно в одной базе получить какой-либо показатель из другой базы. Этот показатель вычисляется в каком-либо сложном отчете, который написан на СКД. Можно, конечно, "скопипастить" текст запроса из другой базы, немного подправить его и выполнять в том же COM подключении. Но с этим теряется гибкость: если отчет изменился, то нужно помнить о том, что где-то есть его "немного модифицированная" копия. В статье будет рассмотрен пример получения данных из базы ЗУП.

2 стартмани

08.05.2018    22037    11    wowik    3       

DevOps для 1С. Онлайн-курс проходит с 16 апреля по 11 июня 2020 года. Промо

Данный онлайн-курс предусматривает изучение процессов DevOps, их применение при разработке на платформе 1С. В результате прохождения онлайн-курса вы сможете: настроить ПО необходимое для проведения проверок и тестирования, создавать сценарии тестирования и объединять их в комплексные процессы, создавать скрипты для автоматизации процессов DevOps.

12000 рублей

Работа со схемой запроса

Статья Программист Конфигурация (md, cf) v8 v8::Запросы Абонемент ($m) Инструментарий разработчика Практика программирования

Стандартом взаимодействия с реляционной базой данных стал язык SQL. Приемником SQL в 1С является язык запросов. Язык запросов, также как и SQL, является структурированным. Составляющие структуры запроса отвечают на разные вопросы о том, какие данные требуется получить и какие манипуляции с множествами данных необходимо произвести при получении. В простых случаях текст запроса можно написать вручную, однако в сложных случаях, а также при программном формировании, - лучше воспользоваться объектной моделью запроса и использовать объект "Схема запроса". В статье дается описание объектной модели и особенностей работы с ней, а также приводится решение, упрощающее взаимодействие с объектом "Схема запроса".

1 стартмани

24.04.2018    36447    81    kalyaka    34       

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

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

10.04.2018    23507    19    Alxby    23