Программное создание реквизита управляемой формы с помощью механизма расширений

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

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

В ЗУП 3 возникла задача добавить реквизит в справочник не внося изменений в конфигурацию. БСП с механизмом дополнительных реквизитов использовать было нежелательно, поэтому был использован механизм расширений. Для вывода данного реквизита на форму добавлять саму форму в расширение не хотелось по ряду причин, описанных ниже. Создание реквизита и элемента формы, соответствующего данному реквизиту было решено сделать программно в самом расширении, следуя принципу минимального воздействия на конфигурацию.

Начиная с платформы 1С версии 8.3.12 и выше появилась возможность добавлять реквизиты объектов в расширениях, чем я и воспользовался:

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

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

Платформа использует сразу три формы:

  • Форму из основной конфигурации
  • Сохраненную форму
  • Форму из расширения

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

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

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

В конфигурациях ERP 2 и УТ 11 для целей программного создания реквизитов и элементов формы можно использовать типовой механизм упрощенного изменения, который хорошо описан в статье: //infostart.ru/public/303645/. Но у меня конфигурация ЗУП 3 и данного механизма там нет. 

Посмотрев начало процедуры ПриСозданииНаСервере() модуля формы объекта, видим что вызываются экспортные методы ПриСозданииНаСервере() общих модулей подсистем БСП:

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

Было принято решение код для программного добавления реквизита формы объекта добавить в метод ПриСозданииНаСервере() общего модуля УправлениеСвойствами. Данный модуль предназначен для работы с дополнительными реквизитами и сведениями, но переопределив его в расширении он вполне сгодится и для наших целей.

Добавляем общий модуль УправлениеСвойствами в наше расширение:

и создаем обработчик события НП_ПриСозданииНаСервере(), вызываемый после типовой процедуры УправлениеСвойствами.ПриСозданииНаСервере().

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

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

Запускаем конфигурацию и убеждаемся, что все работает:

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

Наименование Файл Версия Размер
Расширение конфигурации для приведенного примера

.cfe 7,00Kb
13.03.19
9
.cfe 7,00Kb 9 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. alexpvs 54 12.03.19 11:20 Сейчас в теме
(4) "Во-первых добавление формы в расширение привело бы к её "заморозке", то есть если форма будет меняться разработчиками в последующих релизах, то эти изменения не будут больше отображаться, пользователи будут видеть как бы "снимок" формы, который был при её добавлении в расширение" - это не так.
2. ni_cola 203 12.03.19 12:33 Сейчас в теме
(1) При заимствовании формы в расширение платформа использует сразу 3 формы: Форму из основной конфигурации, Сохраненную форму (я назвал её "замороженной") и Форму из расширения. Они взаимодействуют между собой и в результате мы получаем Результирующую форму. В результате такого взаимодействия может быть, например, такая ситуация: мы доработали форму в расширении, потом в новом релизе добавили реквизиты, но они на форме не отображаются.
Более подробно тут: https://xn----1-bedvffifm4g.xn--p1ai/news/2017-11-24-forms-customization-by-using-extensions/
7. alexpvs 54 13.03.19 07:45 Сейчас в теме
(2) Смотря как поменяли форму в расширении.
Вот простейший пример: у поставщика документ с 2 реквизитами, в первом релизе выглядит так (см шаг1).
Заимствуем эту форму в расширение, добавляем свой реквизит на форму, выводим в конец формы его. (см. шаг2).
После этого поставщик делает 2 релиз, в котором у одного реквизита меняет синоним, у второго реквизита меняет имя и синоним. И на форме свои два реквизита помещает в горизонтальную группу. После этих изменений, расширение продолжает работать, и изменения поставщика присутствуют в результирующей форме (см. шаг3)
Прикрепленные файлы:
11. ids79 5495 13.03.19 09:37 Сейчас в теме
(2)По приведенной Вами ссылке совсем другая ситуация описана.
Если перенести доработанную форму в расширение, а потом удалить доработки в основной,
эти доработки не будут на результирующей форме.
Там объясняется почему так происходит.
Но в описанной Вами ситуации, новые реквизиты будут отображыены, если конечно их наименования не совпадут с наименованиям новых реквизитов в расширенной форме.
А лишние метаданные, добавленные в расширение вместе с формой можно без проблем удалить.
3. DoctorRoza 12.03.19 13:18 Сейчас в теме
(1) тут изначальный посыл смущает. Добавление каких - либо реквизитов потребует доработку, например, отчетов. печатныйх форм. Значит, придется дописывать алгоритм. В свою очередь, появятся еще внешние и т.п. подключамые объекты. Что выливается еще в лишнюю 100-ню строк кода! А сделать через доп. реквизит, чтобы вообще кода не было - отказались, по своим причинам.
4. Ioryk30 12.03.19 16:37 Сейчас в теме
(1) А как ? Пока вижу на практике именно " заморозку". Имена объектов (Документов и справочников) при обновлении в расширение не попадают.
5. unichkin 1259 12.03.19 18:47 Сейчас в теме
Я стараюсь не использовать изменение метаданных в расширении. Был прецедент когда клиент удалил расширение, и у него исчезли добавленные во время работы с ним договоры (в договоры был добавлен реквизит, расширением). После включения договоры восстановились - повезло, что не было реструктуризации.
Можно добавить свойство, и вывести его поле на форму, программно. В запросах не так удобно им пользоваться, но все же риска меньше.
rpgshnik; fxmike; Irwin; EVKash; shtinalex; +5 1 Ответить
6. insurgut 189 13.03.19 06:31 Сейчас в теме
Разница данного метода от дополнительных реквизитов по сути в том, что мы нужный реквизит поместим куда захотим? Но в дальнейшем разработчикам типовой конфигурации ничего не мешает изменить/переименовать групп реквизитов и решение станет не рабочим, в отличие от дополнительных реквизитов.
rpgshnik; +1 Ответить
8. papami 30 13.03.19 08:47 Сейчас в теме
Вот так программно из разных мест надобавляют реквизитов разработчики и, когда приспичит, сидишь и ищешь код по всей конфе, вспоминая разработчиков добрым словом. В Медицину кто заглядывал?
jONES1979; leaguener; rpgshnik; +3 Ответить
9. mpeg1989 13.03.19 09:08 Сейчас в теме
(8) А вы попробуйте обновить формы, когда на них через конструктор добавляют элементы. И попробуйте ничего не пропустить, а не как обычно - "ой, не работает, сейчас подключимся и посмотрим" - и так в течение недели после обновления.
buzzzard; rpgshnik; +2 Ответить
10. user633533_encantado 7 13.03.19 09:31 Сейчас в теме
Не понимаю, почему разработчики ЗУП не хотят добавить модули модификации конфигурации и их вызовы во все формы, как это сделано в УТ и прочих.
buzzzard; mark_oilbass; romankoav; +3 Ответить
12. koln 13.03.19 11:38 Сейчас в теме
Попробовал, но получил ошибку в месте
Форма.НаименованиеДляПечати = Форма.Объект.НаименованиеДляПечати;
Ругается на то, что не найден реквизит. На мой взгляд, это и логично, ведь добавляется реквизит формы, а не Объекта.
При чем пробовал даже не через расширение, а в модуле формы, в обработчике "ПриСозданииНаСервере". Может я что-то не так понял, но даже в отладчике, после добавления реквизита, он не появляется.
13. ni_cola 203 13.03.19 12:21 Сейчас в теме
(12) Проверьте порядок действий:
1. Заимствовать объект в расширение, например Справочник.ПодразделенияОрганизаций.
2. Добавить реквизит НаименованиеДляПечати в заимствованный объект в расширении.
3. Заимствовать в расширение общий модуль УправлениеСвойствами.
4. Добавить в него метод, выполняющийся после УправлениеСвойствами.ПриСозданииНаСервере() для программного создания реквизита.
14. koln 13.03.19 14:06 Сейчас в теме
(13) 1. У меня даже в модуле самой формы в основной конфигурации такую ошибку выдает, не то, что через расширение;
2. Откуда у Вас берутся данные для заполнения вновь созданного программного реквизита, которые выводятся на форму?
15. ni_cola 203 13.03.19 15:05 Сейчас в теме
(14) Приложил к статье расширение с рассматриваемым примером для скачивания
16. Eremkin 14.03.19 09:21 Сейчас в теме
В Бухгалтерии немного дорабатывал форму Инвентаризация товаров на складе. Добавил команду на форму + дополнительная форма выбора счета. Выполнил заимствование формы документа. При этом автоматически подтянулись реквизиты объекта, табличная часть. Поместил свою команду в нужное подменю на форме и удалил реквизиты с табличной частью. И все отлично отлично работает. Ранее еще добавлял новый реквизит на форму (позже удалил с формы за ненадобностью, т.к. реализовал отдельную форму выбора счета с отборами). На то и оно и расширение, чтобы не городить писанину с программным созданием различных элементов формы.
Прикрепленные файлы:
17. Terve!R 18.03.19 08:01 Сейчас в теме
Мотивация автора изобретать велосипед вызывает недоумение.
Да, в расширении что-то добавлять чуть сложнее, чем просто в конфигурации править, но удобства перекрывают некоторые минусы. А автор из-за нюансов работы с расширениями вовсе отказывается от расширений, еще и других такому учит.

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

Если уж ссылаетесь на теорию, то следите за изменениями механизма. Разработчики понимают о некоторых неудобствах, и стараются упростить жизнь с расширениями, но кто-то уже обозвал расширения злом и избегает их, это же глупо.
19. ni_cola 203 18.03.19 10:01 Сейчас в теме
(17)
А в последних версиях платформы появился инструмент обновления заимствованной формы из формы поставщика.


Не знал об этом, можно поподробнее? Даже если это уже реализовано, то мне не нравится, что при заимствовании формы в расширение автоматически заимствуются объекты метаданных всех ссылочных типов, выводящихся на форму, что загромождает расширение "не нужными" объектами и в свою очередь усложняет сопровождение данного расширения.
18. Andrefan 18.03.19 09:38 Сейчас в теме
Не знал что за такую очевидность можно столько плюсов собрать)
20. kembrik 3 21.06.19 12:38 Сейчас в теме
Отбояриваемся пока от создания реквизитов в расширении как можем (пока получается). Не нравится вам как реализованы дополнительные реквизиты (автоматический вывод в закладке дополнительно, хранение в табличной части) - используйте Дополнительные сведения. - Удобное хранение в единственном регистре сведений, неявное для пользователей (про мааааленький гамбургер "дополнительные сведения" многие не в курсе), возможность программного вывода на форму в любое место. Да, теряем немного в быстродействии, но по своей сути в случае с реквизитами справочника это будет не сильно отличаться от того, как хранятся дополнительные реквизиты расширений, зато "случайное" отключение расширения или проблемы со сменой режима совместимости не вызовет полную потерю введенных данных
21. Yashazz 3250 23.06.19 18:40 Сейчас в теме
Вот же охота людям извращаться...

Не говоря уж о том, что с выходом каждого нового релиза ситуация по расширениям меняется. Не меняется только одно - степень их кривизны. У меня давеча вот 8.3.13.1690 стабильно ронял конфигуратор при попытке в расширенной форме удалить команду. Так что, имхо, проще грамотно курочить конфу, чем мучиться с хренью вроде "расширений". Так оно хоть стабильно.
22. Denic_01 29 23.07.19 09:53 Сейчас в теме
строка ЭлементФормы.ПутьКДанным = "НаименованиеДляПечати";

должно быть ЭлементФормы.ПутьКДанным = "Обьект.НаименованиеДляПечати";

а то не записывается в базу
23. ni_cola 203 23.07.19 13:38 Сейчас в теме
26. newtraveller 22 27.02.20 11:26 Сейчас в теме
(23) Поправьте, если я не прав. Пример публикации содержал именно программное создание реквизита формы, которое и выводилось на форму.
ЭлементФормы.ПутьКДанным = "НаименованиеДляПечати"

После данного исправления на форму выводится реквизит расширения (что логично и соответствует поставленной задаче):
ЭлементФормы.ПутьКДанным = "Объект.НаименованиеДляПечати"


Но в этом случае кусок кода оказывается лишним:
		#Область ДобавлениеРеквизитовФормы
		// Массив для новых реквизитов
		ДобавляемыеРеквизиты	= Новый Массив;
		
		// Опишем ревизиты формы
		Реквизит_НаименованиеДляПечати = Новый РеквизитФормы("НаименованиеДляПечати",	Новый ОписаниеТипов("Строка", , , Новый КвалификаторыСтроки(300)),	, "Наименование для печати");
		
		// Заполним массив после описания реквизитов формы
		ДобавляемыеРеквизиты.Добавить(Реквизит_НаименованиеДляПечати);
		
		// Добавим новые реквизиты в форму
		Форма.ИзменитьРеквизиты(ДобавляемыеРеквизиты);
		#КонецОбласти
Показать
24. ba2000 13 30.07.19 11:28 Сейчас в теме
Подскажите, добавил через расширение в общий модуль реквизиты на форму.
А как создать обработчик при изменении?
Форму в расширение копировать не хочется, а процедура обработчика должна быть в форме.
Можно ли как то процедуру программно добавить?
27. newtraveller 22 27.02.20 11:33 Сейчас в теме
(24)
ЭлементФормы.УстановитьДействие("ПриИзменении", "ПроцедураОбработкиДействияВМодулеФормы");
25. Barok 12.01.20 14:09 Сейчас в теме
У меня почему то не видит реквизит, созданный в расширении, вываливается ошибка
Ошибка при установке значения атрибута контекста (ПутьКДанным)
				ЭлементФормы.ПутьКДанным = "Обьект.ЗаявкаВРозницу";
по причине:
Недопустимое значение

Реквизит ЗаявкаВрозницу создан в расширении.
В чем может быть причина?

UPD. Причина в мягком знаке :D
28. Stivens 11 23.05.20 22:17 Сейчас в теме
У управляемой формы нет "самого первого события". И это, мягко говоря, неудобно.
Пишешь умные вещи в "при создании на сервере", а 1С-ники обработку реквизитов начинают в "При чтении", Пишешь в "При чтении", а оно не всегда есть... Да еще и при "Перечитать" пытается создать дубль и вылетает с ошибкой.
В итоге пишем и туда и туда, но проверяем наличие перед добавлением.
Неудобно.
Оставьте свое сообщение

См. также

Рабочий стол зарплатчика Промо

Зарплата Рабочее место v8 v8::СПР v8::УФ ЗУП3.x Россия БУ Абонемент ($m)

Назначение обработки: - Консолидация основных операций работника кадровой службы, расчетчика заработной платы в одном окне; - Весь цикл кадровых операций: от создания сотрудника, до ввода любого необходимого кадрового документа; - Ввод зарплатных документов: плановых начислений, удержаний; ввода документов расчета, перерасчета, выплаты зарплаты; ввода налоговых документов.

15.01.2020    4714    4    HostHost    0    

Загрузка табелей рабочего времени из файлов Excel

Зарплата Обработка документов Учет рабочего времени Загрузка и выгрузка в Excel v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Обработка по загрузке в типовой документ «Табель» конфигурации ЗУП 3.1 данных из файлов MS Excel, согласно шаблону.

18.10.2019    7328    5    HostHost    0    

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

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

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

1 стартмани

09.09.2019    8765    10    bmk74    1    

Аналоги номенклатуры для УТ 11.4, КА 2.4, ERP 2.4, Розница 2.2, Розница 8. Магазин автозапчастей. Расширение

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

Расширение для работы с аналогами номенклатуры. Отлично подходит для работы с кроссами запчастей и товаров с аналогичными свойствами. Поддерживаемые конфигурации: УТ 11.4, КА 2.4, ERP 2.4, Розница 2.2, Розница 8. Магазин автозапчастей. Лёгкое подключение, без изменения конфигурации.

10 стартмани

30.08.2019    15294    13    AleSSandre    25    

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

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

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

2 стартмани

06.10.2014    145017    1949    ekaruk    164    

Работа с релизами 1С и договорами ИТС

WEB БСП (Библиотека стандартных подсистем) v8 1cv8.cf Абонемент ($m)

Работа с релизами 1С и партнерским кабинетом.

2 стартмани

15.08.2019    12004    34    RocKeR_13    10    

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

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

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

1 стартмани

03.07.2019    17167    4    m-rv    86    

Консоль запросов с графом (Анализатор сложных запросов) Промо

Консоль запросов v8::УФ v8::Запросы 1cv8.cf Абонемент ($m)

Консоль запросов для анализа запросов с большим количеством временных таблиц и вложенных запросов. Отображает структуру взаимосвязей временных таблиц в виде графа. Позволяет быстро передвигаться по тексту запроса и получать результат выполнения подзапросов. Единственная консоль запросов, которая позволяет выводить результат выполнения вложенных запросов и любой части объединения запроса. Удобное получение данных запроса из отладчика включая временные таблицы. Текст запроса в структурированном виде (можно свернуть, развернуть текст подзапроса). И еще много другого, чего вы не найдете в других консолях запросов. Поддержка УФ и ОФ. Версия 0.9.1 от 18.10.2019 (поддержка WebKit).

10 стартмани

03.05.2017    93568    405    manuel    248    

Модель объекта

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

Подсистема позволяет описать модель данных объекта, где описана зависимость между реквизитами, и затем использовать эту модель в разных сценариях работы с объектом. Версия платформы: 8.3.6 и выше. С небольшими доработками будет работать на 8.2.

1 стартмани

30.06.2019    10767    0    vadim1980    5    

Цифровая подпись Cades-BES для XML средствами 1С с помощью КриптоПро

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Обработка иллюстрирует возможность подписания XML SOAP-конверта по стандарту Cades-BES средствами 1С с помощью внешней компоненты КриптоПРО "CAdESCOM" с учетом ГОСТ 2001 и ГОСТ 2012. Стандарт используется в различных механизмах государственных сайтов России, в том числе в СМЭВ и ГИС ЖКХ. Код не привязан к прикладному решению может быть встроен куда угодно, но только на платформе Windows.

1 стартмани

13.05.2019    9251    38    PythonJ    41    

Быстрый запрос

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

Можно ли дать пользователю "удочку", а не "рыбу"? До сих пор ответ на этот вопрос был отрицательным. Всякий инструмент, который мог бы делать с базой данных все или почти все (или хотя бы многое), отвергался пользователями, как слишком сложный. Вспомните тот же SQL, который изначально разрабатывался именно как пользовательский инструмент. "Быстрый запрос" - это попытка устранить сложность, но сохранить при этом универсальность.

1 стартмани

29.04.2019    13670    25    mkalimulin    28    

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

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

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

3 стартмани

28.10.2018    29170    274    ROL32    67    

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

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

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

1 стартмани

25.03.2019    29997    10    tormozit    44    

Трудовой договор, Дополнительное соглашение к трудовому договору, Лист ознакомления, Договор о материальной ответственности, Договор о коммерческой тайне, Согласие на обработку персональных данных для ЗУП 3.1

Печатные формы документов Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Комплект печатных форм для отдела кадров для документов Прием на работу и Кадровый перевод: Трудовой договор, Доп. соглашение к трудовому договору, Лист ознакомления с локальными нормативными актами, Договор о полной материальной ответственности, Договор о неразглашении коммерческой тайны, Согласие на обработку персональных данных.

2 стартмани

12.03.2019    27547    144    Asenka    34    

Расширение: Темы для 1С: Предприятия

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

Расширение позволяет сменить цвет оформления для интерфейса Такси.

1 стартмани

10.02.2019    12377    54    spec8s    10    

Печатные формы для БП 3.0: УПД, ТОРГ-12, Акт, Счет-фактура, Доверенность, Счет Промо

Печатные формы документов Оптовая торговля Производство готовой продукции (работ, услуг) Оптовая торговля Производство готовой продукции (работ, услуг) v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Внешние печатные формы УПД, ТОРГ-12, Акта об оказании услуг, Счет-фактуры, Доверенности и Счета на оплату покупателю, актуализированы на последний релиз 3.0.71, поддерживают типовые факсимиле (новую галочку "Подпись и печать"), не содержат ошибок с новой ставкой НДС. В публикации также представлены печатные формы для устаревших релизов.

1 стартмани

28.01.2016    71278    843    config    47    

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

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

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

2 стартмани

23.01.2019    24259    255    ROL32    33    

Расширение "Курсы валют в формулах расчета динамических цен" для УНФ 1.6

Ценообразование, прайсы Ценообразование, анализ цен Ценообразование, анализ цен v8 УНФ УУ Абонемент ($m)

Расширение "Курсы валют в формулах расчета динамических цен" с автоматическим пересчетом цен при изменении курсов валют для конфигурации "Управление нашей фирмой, редакция 1.6"

5 стартмани

17.01.2019    13399    20    Palmer1976    6    

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019)

Инструментарий разработчика Сканер штрих-кода Терминал сбора данных Мобильная разработка Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ v8 v8::Mobile БУ УУ Абонемент ($m)

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    39057    245    informa1555    200    

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

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

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

1 стартмани

22.10.2014    202098    3077    ekaruk    178    

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

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

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

1 стартмани

19.12.2018    15406    6    Torin99    2    

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

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

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

1 стартмани

30.11.2018    15103    5    wrooom    8    

Загрузка данных из М-Аптеки+ в 1С:Бухгалтерия 8 (ред. 3.0) Промо

Внешние источники данных Файловые протоколы обмена, FTP v8 v8::БУ БП3.0 Фармацевтика, аптеки БУ Абонемент ($m)

Обработка для загрузки файлов выгрузки из программы для автоматизации аптек и аптечных сетей М-Аптека+ в 1С:Бухгалтерия 8, редакция 3.0.

11.07.2014    32388    28    1C_MApteka    37    

Проверка VAT номеров

WEB v8 1cv8.cf Абонемент ($m)

Обработка для вызова сервиса проверка VAT номера.

1 стартмани

26.11.2018    10540    0    wtlz    1    

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

Универсальные обработки Чистка базы 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    19667    257    morozov.sv    34    

Внешняя компонента для работы по Web-socket протоколу Промо

Разработка внешних компонент WEB v8 Абонемент ($m)

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

5 стартмани

30.03.2018    22850    32    Ditron    68    

Шпаргалка разработчика для работы с формами

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

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

3 стартмани

31.10.2018    14454    77    ELAM    3    

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

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

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

1 стартмани

27.10.2018    14933    12    tormozit    31    

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

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

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

5 стартмани

15.10.2018    29620    113    json    35    

[Расширение] Контроль отрицательных остатков по регистру бухгалтерии при проведении Промо

Универсальные функции Инструментарий разработчика Учет ТМЦ Учет ТМЦ v8 1cv8.cf Россия БУ Абонемент ($m)

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

1 стартмани

17.08.2015    44763    155    ekaruk    31    

Расширение "Интерфейс Плюс"

Розничная торговля Рабочее место Розничная торговля v8 v8::ОУ Розница УТ11 Россия УУ Абонемент ($m)

Расширение для 1С:Розница 2.2 и 1С:Управление Торговлей 11, которое позволит повысить удобство работы!

3 стартмани

22.09.2018    22516    116    RocKeR_13    105    

Отправка электронной почты с помощью локального почтового клиента из 1С, развернутой под удаленным рабочим столом

Печатные формы документов Универсальные функции Email v8 КА1 БП2.0 УТ10 УПП1 Абонемент ($m)

Решение для интерактивной (нажал-отредактировал) отправки электронных писем и печатных форм через почтовый клиент (Thunderbird, Outlook) находящийся на локальном компьютере, из конфигурации 1С, развернутой под удаленным рабочим столом (RDP, remote-app). Подходит также для локального развертывания 1С. Представлен пример быстрой интеграции с конфигурациями "Управление торговлей 10.3", "Управление производственным предприятием 1.3", "Комплексная автоматизация 1.1", "Бухгалтерия предприятия 2.0".

1 стартмани

21.09.2018    21163    13    stvorl    0    

TextRadar - нечеткий поиск в тексте

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

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

1 стартмани

19.09.2018    15067    17    TSSV    14    

Менеджер загрузки данных из весов с печатью этикеток Промо

Внешние источники данных Весы Учет ТМЦ Учет ТМЦ v8 УТ10 УПП1 Абонемент ($m)

Программное обеспечение "Менеджер загрузки данных из весов с печатью этикеток" предназначено для автоматического получения данных по сети Ethernet из весов МАССА-К моделей ВПМ и ТВ_Р3 (модификация MF) в режиме On-Line.

1 стартмани

20.12.2011    19932    3    hrip    10    

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

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

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

1 стартмани

13.09.2018    18724    12    RocKeR_13    16    

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

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

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

5 стартмани

09.08.2018    25292    25    informa1555    26    

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

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

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

1 стартмани

31.07.2018    21398    135    Plotks2017    27    

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

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

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

1 стартмани

17.07.2018    39023    17    kalyaka    16    

Пример использования REST API Яндекс Диска

WEB v8 1cv8.cf Абонемент ($m)

Пример использования REST API Яндекс Диска: чтение диска, добавление каталога, загрузка файла, скачивание файлов или каталогов, удаление файлов или каталогов.

1 стартмани

26.06.2018    21421    33    MKFreeUser    14    

Приложение Android для идентификации/распознавания образов (с обучением с одного раза, One-Shot Learning) с возможностью работы с 1С через веб-сервис

Мобильная разработка v8 Абонемент ($m)

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

1 стартмани

19.06.2018    13551    4    informa1555    15    

Обмен файловыми базами данных через Yandex диск

WEB v8 Россия Абонемент ($m)

Выполнение операций обмена с Yandex диском для файловых БД, по протоколу WebDav, в автоматическом или ручном режимах.

1 стартмани

11.06.2018    15371    5    slimper    1    

Конфигурация для просмотра публичных телеграм каналов

WEB v8 Абонемент ($m)

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

1 стартмани

02.06.2018    16012    10    DO_WHILE_LOOP    7    

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

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

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

1 стартмани

01.06.2018    27491    86    m-rv    57    

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

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

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

1 стартмани

10.05.2018    40875    33    dsdred    36    

Tool1CD Beta в деле

Разработка внешних компонент v8 Абонемент ($m)

Пс, парень! Не хочешь немного сырых байтов?

1 стартмани

09.05.2018    23355    28    baton_pk    26