"Прелести" БСП. Часть 1 - Дополнительные реквизиты / сведения

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

Разработка - Адаптация типовых решений

БСП Дополнительные реквизиты

31
История небольшого расследования - сломались дополнительные реквизиты, или как НЕ НАДО использовать УИД в программном коде.

TLDR: Нашел в типовой интересный код. По-моему это грубая ошибка и нарушение стандартов. Подробности ниже.

Процедура ПриПолученииПредопределенныхНаборовСвойств(Наборы) Экспорт
	Набор = Наборы.Строки.Добавить();
	Набор.Имя = "Справочник_ВнешниеПользователи";
	Набор.Идентификатор = Новый УникальныйИдентификатор("d9c30d48-a72a-498a-9faa-c078bf652776");
	Набор.Используется  = ПолучитьФункциональнуюОпцию("ИспользоватьВнешнихПользователей");
	
	Набор = Наборы.Строки.Добавить();
	Набор.Имя = "Справочник_Пользователи";
	Набор.Идентификатор = Новый УникальныйИдентификатор("2bf06771-775a-406a-a5dc-45a10e98914f");
КонецПроцедуры

 

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

 

Но недавно, создавая клиенту (УТ 11.4.8.73) нового пользователя, я заметил, что вкладка "Дополнительные реквизиты" даже не появляется, хотя у списка пользователей их должно быть 5. Зайдя в существующих пользователей, я обнаружил, что у них вкладка присутствует, но там находятся только уже заполненные допреквизиты, причем они зачеркнуты и в режиме "Только чтение". Обычно подобные эффекты возникают, если дополнительный реквизит помечен на удаление, но в данном случае все было на месте.

 

Поскольку "пользовательский" анализ не помогал, пришло время открывать Конфигуратор. Достаточно общеизвестно, что дополнительные реквизиты инициализируются в процедуре "ПриСозданииНаСервере" модулей форм соответствующих объектов метаданных. В данной версии за это отвечает следующий код:

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

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

МодульУправлениеСвойствами = ОбщегоНазначения.ОбщийМодуль("УправлениеСвойствами");
МодульУправлениеСвойствами.ПриСозданииНаСервере(ЭтотОбъект, ДополнительныеПараметры);

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

УправлениеСвойствами.ПриСозданииНаСервере(ЭтотОбъект, ДополнительныеПараметры);

Но на самом деле у более сложной записи есть преимущество - она будет компилироваться даже если в системе не будет общего модуля "УправлениеСвойствами". Поскольку БСП позиционируется как модульная система, подобный трюк там стандартен и часто используется.

 

В самой процедуре меня поджидал сюрприз:

Если Контекст.ОтложеннаяИнициализация Тогда

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

 

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

ВЫБРАТЬ
	НаборыСвойств.Набор КАК Набор,
	НаборыСвойств.ПорядокНабора КАК ПорядокНабора
ПОМЕСТИТЬ НаборыСвойств
ИЗ
	&НаборыСвойств КАК НаборыСвойств
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
	НаборыСвойств.Набор КАК Набор,
	НаборыСвойств.ПорядокНабора КАК ПорядокНабора,
	СвойстваНаборов.Свойство КАК Свойство,
	СвойстваНаборов.ПометкаУдаления КАК ПометкаУдаления,
	СвойстваНаборов.НомерСтроки КАК ПорядокСвойства
ПОМЕСТИТЬ СвойстваНаборов
ИЗ
	НаборыСвойств КАК НаборыСвойств
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.НаборыДополнительныхРеквизитовИСведений.ДополнительныеРеквизиты КАК СвойстваНаборов
		ПО (СвойстваНаборов.Ссылка = НаборыСвойств.Набор)
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК Свойства
		ПО (СвойстваНаборов.Свойство = Свойства.Ссылка)
ГДЕ
	НЕ СвойстваНаборов.ПометкаУдаления
	И НЕ Свойства.ПометкаУдаления
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
	Свойства.Ссылка КАК Свойство
ПОМЕСТИТЬ ЗаполненныеСвойства
ИЗ
	ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК Свойства
ГДЕ
	Свойства.Ссылка В(&Свойства)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
	СвойстваНаборов.Набор КАК Набор,
	СвойстваНаборов.ПорядокНабора КАК ПорядокНабора,
	СвойстваНаборов.Свойство КАК Свойство,
	СвойстваНаборов.ПорядокСвойства КАК ПорядокСвойства,
	СвойстваНаборов.ПометкаУдаления КАК Удалено
ПОМЕСТИТЬ ВсеСвойства
ИЗ
	СвойстваНаборов КАК СвойстваНаборов

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ЗНАЧЕНИЕ(Справочник.НаборыДополнительныхРеквизитовИСведений.ПустаяСсылка),
	0,
	ЗаполненныеСвойства.Свойство,
	0,
	ИСТИНА
ИЗ
	ЗаполненныеСвойства КАК ЗаполненныеСвойства
		ЛЕВОЕ СОЕДИНЕНИЕ СвойстваНаборов КАК СвойстваНаборов
		ПО ЗаполненныеСвойства.Свойство = СвойстваНаборов.Свойство
ГДЕ
	СвойстваНаборов.Свойство ЕСТЬ NULL
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
	ВсеСвойства.Набор КАК Набор,
	ВсеСвойства.Свойство КАК Свойство,
	ДополнительныеРеквизитыИСведения.ВладелецДополнительныхЗначений КАК ВладелецДополнительныхЗначений,
	ДополнительныеРеквизитыИСведения.ЗаполнятьОбязательно КАК ЗаполнятьОбязательно,
	ВЫБОР
		КОГДА &ЭтоОсновнойЯзык
			ТОГДА ДополнительныеРеквизитыИСведения.Заголовок
		ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(СвойстваПредставления.Заголовок, ДополнительныеРеквизитыИСведения.Заголовок) КАК СТРОКА(150))
	КОНЕЦ КАК Наименование,
	ДополнительныеРеквизитыИСведения.ТипЗначения КАК ТипЗначения,
	ДополнительныеРеквизитыИСведения.ФорматСвойства КАК ФорматСвойства,
	ДополнительныеРеквизитыИСведения.МногострочноеПолеВвода КАК МногострочноеПолеВвода,
	ВсеСвойства.Удалено КАК Удалено,
	ДополнительныеРеквизитыИСведения.Доступен КАК Доступен,
	ДополнительныеРеквизитыИСведения.Виден КАК Виден,
	ВЫБОР
		КОГДА &ЭтоОсновнойЯзык
			ТОГДА ДополнительныеРеквизитыИСведения.Подсказка
		ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(СвойстваПредставления.Подсказка, ДополнительныеРеквизитыИСведения.Подсказка) КАК СТРОКА(150))
	КОНЕЦ КАК Подсказка,
	ДополнительныеРеквизитыИСведения.ВыводитьВВидеГиперссылки КАК ВыводитьВВидеГиперссылки,
	ДополнительныеРеквизитыИСведения.ЗависимостиДополнительныхРеквизитов.(
		ЗависимоеСвойство КАК ЗависимоеСвойство,
		Реквизит КАК Реквизит,
		Условие КАК Условие,
		Значение КАК Значение
	) КАК ЗависимостиДополнительныхРеквизитов
ИЗ
	ВсеСвойства КАК ВсеСвойства
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения
		ПО ВсеСвойства.Свойство = ДополнительныеРеквизитыИСведения.Ссылка
		ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.Представления КАК СвойстваПредставления
		ПО (СвойстваПредставления.Ссылка = ДополнительныеРеквизитыИСведения.Ссылка)
			И (СвойстваПредставления.КодЯзыка = &КодЯзыка)

УПОРЯДОЧИТЬ ПО
	Удалено,
	ВсеСвойства.ПорядокНабора,
	ВсеСвойства.ПорядокСвойства

Этот запрос делает две вещи - получает актуальные дополнительные реквизиты согласно данным в наборах и объединяет их с дополнительными реквизитами, заполненными в текущем объекте. Но у меня временная таблица "СвойстваНаборов" оказалась пустой. Запрос был перенесен в консоль, и на этапе настройки параметров выяснилось интересное - в справочнике "Наборы свойств дополнительных реквизитов и сведений" было два элемента с именем "Пользователи" - один предопределенный, а другой обычный. Причем в консоли предопределенный элемент давал нужные результаты, а обычный - пустую таблицу.

 

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

Попытка удаления 

Я склонен воспринимать это сообщение как баг системы. Я четко вижу, что удаляю НЕ ПРЕДОПРЕДЕЛЕННЫЙ элемент, но система пытается убедить меня в обратном. У неё не получилось - я отловил место, в котором возникает это сообщение, и переопределил его в расширении на что-то пустое. После этого "предопределенный элемент" удалился.

 

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

Процедура ПриПолученииПредопределенныхНаборовСвойств(Наборы) Экспорт
	Набор = Наборы.Строки.Добавить();
	Набор.Имя = "Справочник_ВнешниеПользователи";
	Набор.Идентификатор = Новый УникальныйИдентификатор("d9c30d48-a72a-498a-9faa-c078bf652776");
	Набор.Используется  = ПолучитьФункциональнуюОпцию("ИспользоватьВнешнихПользователей");
	
	Набор = Наборы.Строки.Добавить();
	Набор.Имя = "Справочник_Пользователи";
	Набор.Идентификатор = Новый УникальныйИдентификатор("2bf06771-775a-406a-a5dc-45a10e98914f");
КонецПроцедуры

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

1. Есть механизм предопределенных элементов, который, казалось бы, ПРЕДНАЗНАЧЕН для того чтобы не делать таких вещей.

2. Ломается обработка удаления - она не видит этой "неявной ссылки" на объект.

3. Ломается визуальный интерфейс предопределенных элементов.

Так или иначе, процедура была отрефакторена к чему-то, больше похожему на разумный программный код:

&Вместо("ПриПолученииПредопределенныхНаборовСвойств")
Процедура А1_ПриПолученииПредопределенныхНаборовСвойств(Наборы)
	Набор = Наборы.Строки.Добавить();
	Набор.Имя = "Справочник_ВнешниеПользователи";
	//Набор.Идентификатор = Новый УникальныйИдентификатор("d9c30d48-a72a-498a-9faa-c078bf652776");
	Набор.Идентификатор = Справочники.НаборыДополнительныхРеквизитовИСведений.Справочник_ВнешниеПользователи.УникальныйИдентификатор();
	Набор.Используется  = ПолучитьФункциональнуюОпцию("ИспользоватьВнешнихПользователей");
	
	Набор = Наборы.Строки.Добавить();
	Набор.Имя = "Справочник_Пользователи";
	//Набор.Идентификатор = Новый УникальныйИдентификатор("2bf06771-775a-406a-a5dc-45a10e98914f");
	Набор.Идентификатор = Справочники.НаборыДополнительныхРеквизитовИСведений.Справочник_Пользователи.УникальныйИдентификатор();
КонецПроцедуры

На этом история заканчивается - после исправления формы открываются и дополнительные реквизиты показываются. Ждем следующих интересных решений от фирмы "1С".

31

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

Комментарии
Избранное Подписка Сортировка: Древо
1. riposte 259 04.07.19 15:44 Сейчас в теме
Может ТиУ исправило бы ситуацию? Пробовали?
Просмотрел сейчас две конфигурации на наличие функции ПриПолученииПредопределенныхНаборовСвойств - ничего нет. Обе используют БСП разной степени свежести. Скорее всего это является следствием или чей-то доработки, или спецификой конкретно этой конфигурации.
3. Enigma 35 04.07.19 16:31 Сейчас в теме
(1) , (2) - БСП 3.0.2.300. Конфигурация практически типовая (УТ), БСП определенно никто не трогал. По поводу сломается - благодарю за информацию, надо будет аккуратно проверить все при обновлении. В любом случае, предопределенные элементы добавлены в расширение, обновить "забыв" про них не получится.

Но вообще - кто-нибудь может объяснить, зачем 1С-ники пихают УИДы в код конфигурации?
4. riposte 259 04.07.19 16:42 Сейчас в теме
(3)
Сложно сказать. Скорее всего, попало в обновление по запарке.
Тут как бы никто не спорит, что это чьи-то левые гуиды прилетели и таких объектов в базе не будет.
В чем был сакральный смысл добавлять их так, учитывая, что это все предопределенные элементы - останется тайной.
Иногда тоже уже на износе пишешь какой-то код и откровенно засыпаешь. Потом просыпаешься, читаешь что написал и волосы дыбом встают.
2. SlavaKron 04.07.19 16:23 Сейчас в теме
Проверил в БСП 3.0.3.17.
Процедура ПриПолученииПредопределенныхНаборовСвойств есть в том виде, как у автора.
А вот предопределенные элементы:
Справочники.НаборыДополнительныхРеквизитовИСведений.Справочник_ВнешниеПользователи
Справочники.НаборыДополнительныхРеквизитовИСведений.Справочник_Пользователи.УникальныйИдентификатор
отсутствуют. Есть УдалитьСправочник_ВнешниеПользователи и УдалитьСправочник_Пользователи.
Автор, уточните какая версия БСП у вас, потому что ваше исправление поломается на версии 3.0.3.
5. Erne100 248 05.07.19 07:56 Сейчас в теме
Но недавно, создавая клиенту (УТ 11.4.9.73) нового пользователя
Опечатка с не вышедшим релизом отвлекала меня от смысла статьи... Может Вы имели в виду релиз 11.4.8.73? ...содержание +
7. Enigma 35 05.07.19 09:46 Сейчас в теме
(5) Действительно опечатка. Поправлю.
6. dhurricane 05.07.19 08:45 Сейчас в теме
Есть подозрение, что некорректно была обновлена конфигурация УТ. Да, действительно в свежих версиях БСП разраотчики перешли от "предопределенных в объекте" к "предопределенным в коде". Чтобы этот переход был корректным и не задублировал уже существующие элементы справочников, был реализован механизм подмены старых предопределенных на новые во время выполнения обработчиков обновления. Сопоставляются они по имени предопределенного. При этом очень важно, чтобы имена предопределенных в конфигурации получили префикс "Удалить". Судя по приведенному Вами коду, этого не случилось, у Вас имена предопределенных старые: "Справочник_ВнешниеПользователи" и "Справочник_Пользователи".

Это к вопросу, как могло все поломаться.

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

Но все это мои догадки, к сожалению ничем не подкрепленные.
serg_gres; CSiER; A_Max; acanta; +4 Ответить
12. qwinter 610 05.07.19 18:17 Сейчас в теме
(6)
Что касается вопроса, зачем разработчики БСП все это затеяли, то к моему сожалению, никакой информацией я не располагаю.
Это уже не секрет. 1С своим разработчикам платит за количество кода, вот некоторые редиски и плодят такой код ради кода. Меня на днях вывело из себя появление в ЗУПе в регистре "Данные для подбора сотрудников" второго измерения "Наименование" (ранее было одно "Сотрудник") которое используется в одном единственном месте, в списке сотрудников где по нему идет соединение с наименованием сотрудника. В итоге пользователи получили тормоза и исчезнувших из списка сотрудников, а программисты лишний геморрой.
8. Dmitryiv 122 05.07.19 10:17 Сейчас в теме
О сколько нам открытий чудных
Готовят просвещенья дух
И Опыт, сын ошибок трудных,
И Гений, парадоксов друг,
И Случай, бог изобретатель...

Пушкин А.С., 1829
9. SlavaKron 05.07.19 11:41 Сейчас в теме
Покопался я в демо УТ 11.4.8.73. В общем зря вы удалили этот элемент. Он нужен был разработчикам и поэтому они поставили заглушку на его удаление. Да, в типовой должно быть 2 элемента справочника НаборыДополнительныхРеквизитовИСведений "Пользователи": один предопределённый, другой – нет. У непредопределённого УИД – "2bf06771-775a-406a-a5dc-45a10e98914f". И все доп. реквизиты работают именно с непредопределённым. Добавление доп. реквизитов в предопределенный набор "Пользователи" не имеет результата. Стало быть, у разработчиков на него были планы. Скорее всего, предопределенные будут удалены в следующих релизах.
Прикрепленные файлы:
IntellXeon; user774630; +2 Ответить
10. Enigma 35 05.07.19 11:50 Сейчас в теме
(9) Я потом понял, что возможно у меня были неправильно назначены наборы реквизитов (как это получилось - другой вопрос, обновление было штатным). Правда, я припоминаю, что вроде как я пытался это исправить, но это не дало результатов.

В любом случае, "предопределять" объект в коде и потом смущать администраторов считаю дурным тоном. Пока что у меня все работает, причем ИМО более правильно. Эту УТ обновляем не очень часто, поэтому вопрос откладывается.
11. jONES1979 05.07.19 16:42 Сейчас в теме
Cпасибо за пост!
Расследования - это самые интересные темы!
13. ellavs 633 14.07.19 21:48 Сейчас в теме
Как раз прикручиваю в конфигурации механизм допреквизитов.
В ИТС по БСП (использую версию 3.0.3) так и написано:
7. В процедуре ПриПолученииПредопределенныхНаборовСвойств общего модуля УправлениеСвойствамиПереопределяемый описать предопределенную группу с именем Справочник_<ИмяОбъекта>, если объект – справочник; Документ_<ИмяОбъекта>, если объект – документ, и т. д. Например, для справочника Номенклатура создана предопределенная группа Справочник_Номенклатура:

Набор = Наборы.Строки.Добавить();
Набор.Имя = "Справочник_Номенклатура";
Набор.ЭтоГруппа = Истина;
Набор.Идентификатор = Новый УникальныйИдентификатор("c7cd91d8-6f8a-4d10-82bf-c6fba8475a98");


В демо базе БСП они используют этот же код.

В поисках того, какой же идентификатор мне нужно написать для своего документа, попалась эта публикация.
Решение, к сожалению, не подошло.
Так и не понятно, какой всё-таки идентификатор нужно использовать? Любой (т.е. придумать GUID самому) или какой-то конкретный?
Прикрепленные файлы:
14. ellavs 633 15.07.19 13:27 Сейчас в теме
(13) упс, не тот скрин приложила (в этом ошибка, которую я потом исправила, но всё равно не работало).
В итоге еще и баг БСП нашла, который некорректно обрабатывал добавляемый предопределенный элемент в справочник Наборов, если это группа (т.е. задано Набор.ЭтоГруппа = Истина;), которая используется для случая, описанного в ИТС как "Особые случаи настройки наборов свойств. Настройка объектов с разными наборами свойств у разных групп объектов". Настроила всё в точности по инструкции, но элемент записывался в справочник наборов упорно не как группа, в итоге при попытке добавить дочерний элемент (из спец.справочника на базе которого формировались наборы реквизитов) выходила ошибка на строке в модуле БСП "УправлениеСвойствами" "НаборСвойствОбъект.Записать(); по причине: Значение поля "Входит в группу" должно быть группой".

Для исправления ищем Общий модуль БСП УправлениеСвойствамиСлужебный, процедура СоздатьНаборСвойств:
Заменяем строку:
Если СвойстваНабора.ДочерниеНаборы = Неопределено Или СвойстваНабора.ДочерниеНаборы.Количество() = 0 Тогда
НА
Если (СвойстваНабора.ДочерниеНаборы = Неопределено Или СвойстваНабора.ДочерниеНаборы.Количество() = 0) И Не СвойстваНабора.ЭтоГруппа Тогда

День убила на поиск этой ошибки.
15. dhurricane 15.07.19 13:43 Сейчас в теме
(13)
придумать GUID самому
Да, самому. Я обычно пользуюсь для этих целей различными онлайн-генераторами.
Оставьте свое сообщение

См. также

Локализация интерфейсов конфигураций. Практика и инструментарий 1Ci 10

Статья Программист Нет файла v8 Бесплатно (free) Работа с интерфейсом Локализация решений

В последнее время компания 1С International все увереннее заявляет о себе на международном рынке. Но для успешного продвижения в этом направлении необходима локализация интерфейсов конфигураций 1С. О том, как выглядит процесс перевода, какие инструменты для этого есть, где брать переводчиков и как проверять их работу, на конференции Infostart Event 2018 Education рассказал руководитель группы локализации компании 1Ci Сергей Поликарпов.

05.11.2019    1787    user1069006    0       

Перенос документов, остатков и справочников КА 1.1 => КА 2 / УТ 11. Обновлено до КА 2.4.10.х и УТ 11.4.10.х! Промо

Более 130 компаний выполнили переход на КА 2 или УТ 11 с помощью нашей разработки! Позволяет перенести не только остатки и справочники (как типовая обработка), но и документы за нужный период времени. Предоставляем техподдержку, оперативно исправляем замечания, выпускаем обновления при выходе новых релизов программ 1С. Вы можете проверить разработку до покупки: сделаем бесплатный тестовый перенос из вашей базы КА 1.1 и предоставим доступ к базе-результату через веб-клиент!

29700 руб.

Итеративная ошибка почтового сервиса в 1С "Комплексная автоматизация" 2.4.8 0

Статья Системный администратор Программист Пользователь Нет файла v8 КА2 Россия Бесплатно (free) Адаптация типовых решений

После обновления на релиз 2.4.8.79 возникла конфликтная ситуация на уровне генерального директора, а именно: клиенты, которым отправлялись письма из 1С, начали регулярно получать одни и те же письма, то есть что-то вроде вирусной атаки (многократная отправка одного и того же письма).

02.07.2019    1894    pas    4       

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

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

Не открывается оборотно-сальдовая ведомость или "variable not found in subplan target lists" 0

Статья Программист Нет файла v8 v8::БУ УПП1 БУ Оборотно-сальдовая ведомость, Анализ счета Бесплатно (free) Адаптация типовых решений

При попытке открыть Оборотно-сальдовую ведомость программа выдает ошибку "Ошибка СУБД: ERROR: variable not found in subplan target lists" и либо закрывается, либо ее нужно перезапускать. Описан частный случай решения проблемы.

02.04.2019    3048    Max777    4       

Подключение дополнительных обработок - Розница для Украины 1

Статья Программист Нет файла v8 1cv8.cf Украина Бесплатно (free) Адаптация типовых решений

Внешние подключаемые обработки - замечательный механизм! Но почему же он не работает для простых пользователей?

22.03.2019    2391    kalyuzhny    9       

Перенос данных БП 3.0 => УТ 11 / КА 2 / ERP 2 (ЕРП) (перенос остатков, документов и справочной информации из "1С:Бухгалтерия предприятия 8", ред.3.0). Обновлено до БП 3.0.73.х, УТ 11.4.10.х, КА 2.4.10.х., ERP 2.4.10.х! Промо

Переносятся документы за выбранный период, справочная информация и остатки по счетам бух. учета в программу УТ 11 / КА 2 / ЕРП 2 (ERP). Переносятся все возможные виды операций ввода остатков на нужную дату. Есть отбор по периоду переноса документов и фильтр по организации, доступен выбор даты ввода остатков. Если нужно переносить что-то дополнительно, то обычно бесплатно добавляем это в перенос . Смотрите видеодемонстрацию со звуком - советами по переносу и рекомендациями настройки программ.

29700 руб.

Неверный расчет СЗВ-СТАЖ. ЗУП 3.1 8

Статья Программист Нет файла v8 v8::СПР ЗУП3.x БУ Зарплата Управление персоналом (HRM) ФОМС, ПФ, ФСС Бесплатно (free) Адаптация типовых решений

При заполнении отчета СЗВ-СТАЖ на последних релизах ЗУП (ошибка не исправлена и в релизе 3.1.9.107) выявлены ошибки при расчете периодов, а также неверное выделение стажа ДЛОТПУСК.

01.03.2019    3865    dbachinsky    2       

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

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

Исправление отрицательных остатков по организациям в УТ 11.4, КА 2.4, ЕРП 2.4. Интеркампани, механизм формирования резервов 65

Статья Программист Нет файла v8 v8::УФ ERP2 УТ11 КА2 УУ Учет ТМЦ Бесплатно (free) Практика программирования Адаптация типовых решений

Подробно рассмотрены два способа исправления отрицательных остатков по организациям без использования подсистемы Интеркампани и с использованием. Описан механизм формирования резервов на уровне процедур общего модуля. Доработки механизма и исправление ошибок.

29.01.2019    15914    ids79    25       

Пропал фокус (активность) элемента формы, ошибка при переходе на платформу 1С:Предприятие 8.3 (8.3.12.1790) 3

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Адаптация типовых решений

После перехода на платформу 8.3.12.1790 обнаружилась проблема. При подборе товара в форме подбора номенклатуры на поле ввода количество пропал фокус (активность).

09.01.2019    5049    rhtr    20       

Перенос данных БП 2.0 => УТ 11 / КА 2 / ERP 2 (перенос остатков, документов и справочников из "1С:Бухгалтерия предприятия 8", ред. 2.0 в "1С:Управление торговлей 8", ред.11 / КА 2 / ERP 2). Обновлено до УТ 11.4.10.х, КА 2.4.10.х, ERP 2.4.10.х! Промо

Перенос позволяет загрузить в УТ 11 / КА 2 / ERP 2 документы за выбранный период, справочную информацию и остатки по счетам бух. учета. Переносятся остатки денежных средств, взаиморасчетов, остатки товаров и материалов на складах. Переносятся девятнадцать основных видов документов за выбранный период и вся нормативно-справочная информация. Есть фильтр по организации. Если нужно переносить что-то дополнительно, то обычно бесплатно дорабатываю правила (перед покупкой согласуйте необходимые доработки).

29700 руб.

Некорректно заполняются значения по умолчанию при создании документа. 1С: УТ 9

Статья Программист Нет файла v8 v8::ОУ УТ11 Россия Бесплатно (free) Адаптация типовых решений

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

21.11.2018    4286    yupi71    11       

Перенос данных КА 1.1 => ERP 2 (ЕРП) (обработка переноса документов, остатков и справочной информации из "1С:Комплексная автоматизация, ред. 1.1" в "1С:ERP Управление предприятием, ред 2"). Обновлен до КА 1.1.115.х и ERP 2.4.10.х Промо

Обработка позволяет переносить из КА 1.1 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления в случае выхода новых релизов конфигураций 1С.

29700 руб.

ЗУП 3.1: долгое открытие ряда документов (больничный, отпуск, командировка), начиная с релиза 3.1.6.6 - исправление ошибки с кодом 30161250 7

Статья Программист Нет файла v8 v8::СПР ЗУП3.x Россия БУ УУ Зарплата Бесплатно (free) Адаптация типовых решений

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

21.06.2018    6582    Bene_Valete    12       

Ошибка печати чека на ККМ Атол FPrint22. ПоследующаяОплата (Кредит) вместо Электронными. Розница 2 7

Статья Системный администратор Программист Нет файла v8 Розница Россия Кассовые операции Розничная торговля Бесплатно (free) Адаптация типовых решений ККМ

При печати чека на FPrint22 неожиданно выяснилось, что вместо Электронными (пробивали по платежной карте) в чеке вставало на вид оплат ПоследущаяОплата (Кредит).

22.01.2018    24134    ah7777777    15       

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

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

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

Ошибка "Запись не верна! Набор записей, принадлежащий менеджеру, должен содержать ровно 1 запись" в Альфа-Авто 5 и методы ее устранения 3

Статья Системный администратор Программист Нет файла v8 1cv8.cf Автомобили, автосервисы Россия PostgreSQL Бесплатно (free) Адаптация типовых решений

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

28.12.2017    10252    MrsMastersan    6       

Онлайн-курс "Технология выполнения проектов ERP-класса – процессный подход". Третий поток. Курс проходит с 21 января по 18 марта 2020 года. Промо

Курс разработан Внедренческим центром «Раздолье». Курс предназначен для подготовки аналитиков, архитекторов и руководителей проектов автоматизации процессов управления с использованием комплексных ИТ-систем (1С:ERP, 1С:УХ, 1С:КА, 1С:УТ). В основе курса лежит методика применения процессного подхода.

9000 рублей

Исправление ошибки типового релиза ЗУП 2.5.118.1 в регламентированном отчёте "Расчет по страховым взносам" 22

Статья Программист Нет файла v8::СПР ЗУП2.5 Россия БУ Зарплата ФОМС, ПФ, ФСС Бесплатно (free) Практика программирования Адаптация типовых решений

В ЗУП 2.5.118.1 ошибка в регламентированном отчёте "Расчет по страховым взносам" за 1 квартал 2017. Коротко об ошибке: В отчёт не попадают сотрудники, уволенные до 2017 года, а попадать они обязаны,т.к. начисления по ним очень часто встречаются, например "Сохраняемый заработок на время трудоустройства" - это как раз выплата уже после увольнения сотрудника.

21.04.2017    16761    human_new    12       

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

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

Ошибка при заполнении строки 070 раздела 1 формы 6-НДФЛ 4

Статья Программист Нет файла v8::БУ КА1 Россия НУ Зарплата НДФЛ Бесплатно (free) Практика программирования Адаптация типовых решений

Комплексная автоматизация, редакция 1.1 (1.1.82.1). Возможно, в ЗУП 2.5.114.1 присутствует также. После очередного обновления КА, бухгалтер по заработной плате пожаловался на неправильное заполнение 070 строки раздела 1 отчета 6-НДФЛ.

08.02.2017    13374    dima_home    3       

Ошибка 2-НДФЛ ЗУП (3.0.25.150) {ОбщийМодуль.ЗарплатаКадры.Модуль(5279)}: Индекс находится за границами массива 6

Статья Программист Нет файла v8 ЗУП3.x Россия БУ Зарплата НДФЛ Бесплатно (free) Практика программирования Адаптация типовых решений

Ошибка при выполнении обработчика - 'ПриЗаписи' по причине: {ОбщийМодуль.ЗарплатаКадры.Модуль(5279)}: Индекс находится за границами массива ИмяПоля = УзелФормата.ДочерниеУзлы[3].ТекстовоеСодержимое;

01.02.2017    17197    sergey512    3       

С 2020 года сервис «Продление поддержки конфигурации 1С:УПП» подорожает вдвое Промо

Успейте продлить поддержку УПП до повышения цен! Фирма «1С» предупредила об изменении цен на сервис «Продление поддержки конфигурации "1С:Управление производственным предприятием"». С 1 января 2020 года сервис подорожает в два раза.

Ошибка при загрузке курсов валют. Комплексная автоматизация 2.2 (ошибка в типовой) 2

Статья Программист Нет файла v8::ОУ КА2 Россия Бесплатно (free) Практика программирования Адаптация типовых решений

При вызове обработки "Загрузить курсы валют" в конфигурации "Комплексная автоматизация 2.2" рел. 2.2.2.157 программа выдавала ошибку

17.01.2017    14510    serg1c    7       

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

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

4500/9500 рублей

Проблемы web-клиента 1С: Предприятие. Исправляем ошибку в 1С: Договорчики 8 6

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Практика программирования Адаптация типовых решений

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

06.07.2016    15655    Sergey1CSpb    3       

Розница 8. Аптека, поиск номенклатуры по штрихкоду 0

Статья Программист Нет файла v8 Розница Фармацевтика, аптеки Windows Бесплатно (free) Практика программирования Адаптация типовых решений

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

30.06.2016    12668    its_33    3       

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

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

Исправление ошибок в типовых релизах 1С: УТ 10.3 и Розница 1.0 при отражении продаж в ЕГАИС 7

Статья Программист Нет файла v8 УТ10 Windows Бесплатно (free) Адаптация типовых решений

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

05.06.2016    35001    @lexandr    20       

Ошибка в выгрузке из УТ 11 в БП 3.0, правила УТ-БП (11.1.10.131, 3.0.42.1, v.1-4) 1

Статья Системный администратор Программист Нет файла v8 КД БП3.0 УТ11 Бесплатно (free) Перенос данных из 1C8 в 1C8 Адаптация типовых решений

Переливка Заказа клиента из УТ (правила УТ-БП (11.1.10.131, 3.0.42.1, v.1-4)) происходит вместе со свойствами ГлавныйБухгалтер, Руководитель.

05.11.2015    23144    oleg21592    6