Разные хм... неожиданности при работе с УТ 11 и платформой

Публикация № 838087 09.08.18

Приемы и методы разработки - Механизмы платформы 1С

глюки Управление Торговлей 11 ошибки платформы

По мере обнаружения буду писать сюда тонкости работы с УТ 11 и платформой, больше для себя, но, может, кому-то еще пригодится... Для нескольких вопросов предложены варианты обхода.

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

Краткое содержание

Предварительно необходимо рассчитать скидки (РМК УТ11)

Проверить копия это базы или нет

Редактирование динамического списка в расширении

Получить данные динамического списка программно

Отображение на форме дополнительных реквизитов

Вид цен с использованием СКД для расчета цен

Чтение произвольного XML средствами XDTO

Создание "пустых" партнеров в чеках ККМ

Столкнулись с той же проблемой, что и коллеги в https://forum.infostart.ru/forum81/topic175604/

В общем, не стоит ставить эту галочку, от нее один вред

Для исправления данных пришлось написать мини-обработку:

 
 Процедура УбратьПустыхКлиентовИзЧековНаСервере()

Обработка дополнительно приложена к публикации.

Печать отложенных чеков

С появлением онлайн-ККТ эта проблема уже не так актуальна, но все же может возникнуть. Суть в том, что в РМК УТ 11 есть возможность откладывать Чек ККМ, открыть отложенный Чек ККМ, распечатывать товарный чек, а потом удалять отложенный чек. Кассиры могут случайно или умышленно воспользоваться этой возможностью.

Превышение суммы оплаты картой над суммой чека ККМ

При внесении оплаты по безналу по чеку ККМ можно несколько раз ввести эту оплату на сумму большую, чем сумма чека. Воспроизвести можно например так:

Эта ошибка вызовет проблему в том случае, если при пробитии чека ККМ возникнет отказ или ошибка - чек будет в состоянии "отложен". Если его повторно открыть, то система без проблем даст внести еще раз оплату картой (что обычно и проделывают кассиры), и добавит эту оплату к уже проведенной.

Там есть операция отмены оплаты платежной картой, но чек спокойно проводится при превышении суммы оплаты над суммой чека.

Исправляется довольно просто. В справочнике "ПодключаемоеОборудование" в форме "ФормаАвторизацииЭТ" в процедуре "ПриСозданииНаСервере"

 
 ПриСозданииНаСервере

Ошибка в указании вида оплаты при проведении возврата

Бывает ситуация, когда ЧекККМ был пробит с видом оплаты по карте, а при оформлении возврата в ту же смену документом ЧекККМНаВозврат кассир ошибочно проводит возврат оплаты наличными. Конфигурация УТ11 этому никак не препятствует. Но бухгалтеры требуют, чтобы возврат пробивался с тем же видом оплаты, что и покупка - таковы правила использования ККТ.

Та же самая ситуация при оформлении возврата в другую смену. Конфигурация не мешает провести Расходный кассовый ордер и Операцию по платежной карте на "неправильные" суммы. Можно поставить такой запрет с помощью вот этого кода:

 
 Модуль формы "ФормаДокументаРМК" документа "ЧекККМНаВозврат"
 
 Модуль документа "РасходныйКассовыйОрдер"
 
 Модуль документа "ОперацияПоПлатежнойКарте"

Пробитие чека ККМ через РМК при открытой форме списка чеков

Если будет открыта форма списка чеков ККМ и одновременно РМК, то при пробитии чека программа будет надолго задумываться (если чеков много). Особенно весело, что она это делает два раза - перед вводом оплаты и непосредственно при пробитии. Проблемная строка вот эта, в форме списка чеков ККМ:

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

Видимо, при записи чека вызывается оповещение, которое вызывает и эту процедуру. Но почему такая простая конструкция вызывает тормоза именно при записи чека, а при простом открытии формы списка чеков не вызывает - мне сходу не понятно.

Еще через журнал чеков ККМ можно создать чек по "чужой" ККМ, которая не относится к текущему рабочему месту, что тоже может добавить веселья для сети магазинов.

Повторное пробитие чеков ККМ

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

Периодическое "слетание" текущего рабочего места кассира

Этот вопрос пока подробно не исследовал, но было замечено, что иногда в 1С слетает привязка элемента справочника "Рабочее место" к текущему компьютеру. Наблюдается в тонком клиенте. Как следствие, слетает все торговое оборудование, надо прописывать заново. Особенно весело, если это происходит посреди смены. УТ11 при смене фискального устройства требует заново открыть смену. А предыдущие пробитые чеки остаются в "старой" смене, и приходится потом их перетаскивать.

Реализация в пути

Невозможно в списке реализаций установить отбор по реализациям "в пути" - это значение статуса не выбирается в отборе, доступно только значение "Реализовано"

Приходится для отбора использовать признак сравнения "не равно".

Кроме этого обнаружился косяк - при обмене с Бухгалтерией 3.0 реализации "в пути" выгружаются, но не загружаются в Бухгалтерию, вызывая ошибку. Мы отключили реализации "в пути" в правилах регистрации, хотя в общем случае это не подходит, конечно.

Перепроведение по видам запасов

Для повторного заполнения ТЧ "Виды запасов" у проведенного документа необходимо в доп. свойства объекта при проведении добавлять

Объект.ДополнительныеСвойства.Вставить("ПерезаполнитьВидыЗапасов", Истина);

Для этого можно воспользоваться обработкой "Групповое изменение реквизитов", закладка "Выполнить произвольный алгоритм"

Внешний модуль менеджера обмена

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

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

Выгрузка безналичных розничных оплат в Бухгалтерию

При обмене не совсем корректно происходит обработка возвратов безналичных оплат в ту же смену. В УТ11 в ТЧ "Товары" информация о покупке не попадает, а вот в ТЧ "Оплата картами" есть и приход, и расход. При попадании в Бухгалтерию отчет о розничных продажах не проводится из-за того, что возврат оплаты по безналу требует строки в возврате покупки, а ее нет.

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

Для "лечения" этой особенности решили сворачивать оплаты по безналу при выгрузке из УТ11, для этого отредактировали обработчик Документ_ОтчетОРозничныхПродажах_Отправка в модуле менеджера обмена:

 
 Обработчик "При отправке"

Удаление дублей партнеров и контрагентов

Есть такой интересный регистр сведений "Аналитика учета по партнерам", который хранит в себе записи, связывающие партнеров и ключи аналитики по партнерам (видимо, для ускорения). Если у нас продажи по одному из дублей идут по фирме "Ромашка", а по другому дублю по фирме "Иванов и Ко", то при выполнении типовой операции "замена дублей" замена будет произведена в документах, а в этом регистре сведений - нет. Найденные дубли будут отмечены на удаление. После удаления часть записей в этом регистре тоже удалится. А многие механизмы, например "Отчет по валовой" прибыли работают именно с этим регистром, в результате отчет по валовой прибыли будет сформирован не корректно. Выход - повторное проведение документов по этому контрагенту.

Предварительно необходимо рассчитать скидки

Чтобы убрать этот абсолютно лишний в РМК вопрос, можно использовать вот это расширение

Вид цен с использованием СКД для расчета цен

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

Проверить копия это базы или нет

ПараметрыБлокировки = БлокировкаРаботыСВнешнимиРесурсами.СохраненныеПараметрыБлокировки();
ЭтоКопия = ПараметрыБлокировки.РаботаСВнешнимиРесурсамиЗаблокирована;

Редактирование динамического списка в расширении

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

Источник.ДанныеСтроки(ВыделеннаяСтрока);

в данные попадают не все поля. У меня в динамическом списке чеков ККМ не попало поле Ссылка, и соответственно конфигурация начинает "глючить". А вот если не пользоваться конструктором запроса, а редактировать запрос чисто вручную - отрабатывает нормально, и ничего не слетает.

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

&НаСервере
Процедура СохранитьКолонки(СтруктураКолонки, ЭлементРодитель)

	Для каждого Колонка Из ЭлементРодитель.ПодчиненныеЭлементы Цикл
		
		Если ТипЗнч(Колонка) = Тип("ГруппаФормы") Тогда
		
			СохранитьКолонки(СтруктураКолонки, Колонка);
			
		Иначе
			
			СтруктураКолонки.Вставить(Колонка.Имя, Новый Структура("РодительскийЭлемент,ПутьКДанным",
				ЭлементРодитель, Колонка.ПутьКДанным));
		
		КонецЕсли;
	
	КонецЦикла;

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

&НаСервере
Процедура ВосстановитьКолонки(СтруктКолонкиСохр, Элементы, ЭлементРодитель)

	Для каждого Колонка Из ЭлементРодитель.ПодчиненныеЭлементы Цикл
		
		Если ТипЗнч(Колонка) = Тип("ГруппаФормы") Тогда
		
			ВосстановитьКолонки(СтруктКолонкиСохр, Элементы, Колонка);
			
		Иначе
			
			Если Не ЗначениеЗаполнено(Колонка.ПутьКДанным) Тогда
		
				КопияКолонки = Элементы.Вставить(Колонка.Имя + "_", Тип("ПолеФормы"),
СтруктКолонкиСохр[Колонка.Имя].РодительскийЭлемент, Колонка);
				КопияКолонки.Ширина = Колонка.Ширина;
				КопияКолонки.ПутьКДанным = СтруктКолонкиСохр[Колонка.Имя];
		
			КонецЕсли;
	
		КонецЕсли;
	
	КонецЦикла;

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

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

СтруктКолонкиСохр = Новый Структура;
СохранитьКолонки(СтруктКолонкиСохр, Элементы.НашСписок);
НашСписок.ТекстЗапроса = "Новый текст запроса";//в этот момент мистическим образом слетают
//некоторые значения "путькданным" в колонках - некоторые, но не все.
//Что при этом происходит с динамическим списком, я так и не понял.
//Компоновщик настроек, доступные поля и т.д. не меняются

ВосстановитьКолонки(СтруктКолонкиСохр, Элементы, Элементы.НашСписок);

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

Видимость общих модулей в расширении

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

 
 ТекстЗапросаПодарочныеСертификаты

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

Эту особенность удалось обойти с помощью конструкции "Выполнить", если "проблемный" участок кода поместить в "Выполнить".

Правильный способ решения вопроса подсказал eden: необходимо весь модуль менеджера и объекта в расширении заключать в конструкцию

#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

#КонецЕсли

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

Изменение состава плана обмена в расширении

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

Добавление новых объектов в расширение

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

Просмотр временных таблиц в отладчике

Блин, а что - так можно было?..

Запрос.МенеджерВременныхТаблиц.Таблицы[Индекс].ПолучитьДанные().Выгрузить() 

Команды в интерфейсе - как это найти в конфигураторе для отладки

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

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

Отображение на форме взаимозависимых таблиц

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

Для этого используется событие "При активизации строки" таблицы. Если внутри обработчика этого события мы будем как-то изменять элементы формы (например, менять видимость/доступность), то будет вызвана перерисовка формы, и как следствие - повторный вызов обработчика "При активизации строки". Таким образом, обработчик может уйти в "бесконечный цикл".

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

Подставить в запрос кусок текста

Оказывается, в запрос вместо параметра &Параметр можно подставлять произвольный кусок текста, не обязательно значение. Иногда требуется заложить некоторую универсальность в текст запроса, но при этом не хочется уходить от конструктора. Думаю, этот способ может пригодиться.

Обход строк динамического списка (например, с отборами)

Уличная магия от 1С

&НаСервере
Процедура СписокВТЗнаСервере()

    Схема = Элементы.ТаблицаНаФорме.ПолучитьИсполняемуюСхемуКомпоновкиДанных();
    Настройки = Элементы.ТаблицаНаФорме.ПолучитьИсполняемыеНастройкиКомпоновкиДанных();
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных();
    МакетКомпоновки = КомпоновщикМакета.Выполнить(Схема, Настройки, , ,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
    
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(МакетКомпоновки);
    
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
    ТаблицаРезультат = ПроцессорВывода.Вывести(ПроцессорКомпоновки);

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

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

Проверить права доступа к реквизитам объекта этого динамического списка.

Сортировка в динамическом списке не работает

Если динамический список сделан на основе произвольного запроса, из финального запроса следует убрать конструкции "СГРУППИРОВАТЬ ПО". Например, обернуть финальный запрос во вложенный запрос.

Добавить быстрые отборы (установленные пользователем) динамического списка на форму

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

Условное оформление динамического списка - отбор по дополнительному реквизиту/сведению

ЭлементОформления = Список.УсловноеОформление.Элементы.Добавить();
		
ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка.[Ошибка интеграции (Список заказов клиентов)]");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Истина;
ЭлементОтбора.Использование = Истина;
	
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Оранжевый);

Отображение на форме дополнительных реквизитов

 
 ПолучитьПолеДополнительногоРеквизитаНаФорме

НачатьПолучениеФайлов

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

Адресация задач

В УТ11 (и в других конфигурациях) есть хороший механизм задач. Есть возможность адресовать задачи не конкретному исполнителю, а нескольким исполнителям сразу, относящимся к определенной роли. И можно указывать уточнение, кому именно должна упасть задача, например, только сотрудникам из определенного подразделения.

Интуитивно создается впечатление, что данная задача упадет пользователям, указанным в данной роли, и у которых проставлено искомое подразделение. Как бы не так, таблица Задача.ЗадачаИсполнителя.ЗадачиПоИсполнителю остается пустой, на форме "Мои задачи" ничего не выводится. Оказывается, есть еще такой регистр "Исполнители задач", в котором нужно вручную корректно указать в измерениях конкретный объект адресации

Изменение закэшированных данных в модулях с повторным использованием

КэшОповещений = НапоминанияПользователяКлиентПовтИсп.ПолучитьНапоминанияТекущегоПользователя();
	Запись = НайтиЗаписьВКэшеОповещений(КэшОповещений, ПараметрыОповещения);
	Если Запись <> Неопределено Тогда
		ЗаполнитьЗначенияСвойств(Запись, ПараметрыОповещения);
	Иначе
		КэшОповещений.Добавить(ПараметрыОповещения);
	КонецЕсли;

Изменение макета СКД отчета в конфигураторе

Иногда при изменении макета СКД отчета эти изменения почему-то не отображаются в пользовательской версии отчета. Иногда даже после нажатия кнопки "Стандартные настройки". В этом случае помогает переименовать отчет в конфигураторе (название отчета), например, добавить цифру.

Условия в виртуальной таблице в запросе

Иногда нельзя накладывать в виртуальной таблице условия на поля, которые не входят в итоговую выборку полей, т.е. нельзя вот так написать:

ВЫБРАТЬ
	ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
	СУММА(ТоварыНаСкладахОстатки.КоличествоОстаток) КАК Количество
ИЗ
	РегистрНакопления.ТоварыНаСкладах.Остатки(
			&Период,
			Склад = &Склад
				И Номенклатура В (&МассивНоменклатуры)
				И ИСТИНА) КАК ТоварыНаСкладахОстатки
ГДЕ
	ТоварыНаСкладахОстатки.КоличествоОстаток > 0

СГРУППИРОВАТЬ ПО
	ТоварыНаСкладахОстатки.Номенклатура

Этот запрос будет ругаться на поле "Склад". Точное объяснение я не знаю, если убрать условие "и истина" - тогда почему-то работает. Также, если добавить поле склад в выборку - тоже работает.

Остатки на дату в запросе

Конструкции вида

РегистрНакопления.ТоварыВЯчейках.Остатки(КОНЕЦПЕРИОДА(&Период, ДЕНЬ)
			{(КОНЕЦПЕРИОДА(&Период, ДЕНЬ))},

Вызывают ошибки в СКД. Надо убрать параметры у виртуальной таблицы, оставить только на закладке "Компоновка".

Чтение произвольного XML средствами XDTO

Берем XML-файл, который хотим прочитать. С помощью онлайн-сервиса, к примеру

www.freeformatter.com/xsd-generator.html

Создаем из XML-файла XSD-схему. Далее помещаем эту схему макет с типом "Двоичные данные". Далее можно пользоваться этой схемой для создания фабрики XDTO и считывания данных из XML-файла.

ДвоичныеДанныеСхемы = ПолучитьМакет("СхемаXSDЗаказы");
ИмяВременногоФайла = ПолучитьИмяВременногоФайла("xsd");
ДвоичныеДанныеСхемы.Записать(ИмяВременногоФайла);
Пути = Новый Массив();
Пути.Добавить(ИмяВременногоФайла);

ЧтениеТекста = Новый ЧтениеТекста(ИмяФайлаXML, КодировкаТекста.UTF8);
СтрокаXML = ЧтениеТекста.Прочитать();
	
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(СтрокаXML);

Попытка

	Фабрика = СоздатьФабрикуXDTO(Пути);
ДанныеXDTO = Фабрика.ПрочитатьXML(ЧтениеXML);

Исключение

	Сообщить(ОписаниеОшибки());
		
КонецПопытки;
	

SourceTree + KDiff3 + Git

Исследование проблем производительности

https://its.1c.ru/db/metod8dev/content/5983/hdoc

Работа с хранилищем статья

Буду рад вашим дополнениям в комментариях о новых неожиданностях и путях обхода.

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. kondratevsergey1985 09.08.18 14:12 Сейчас в теме
Добрый день, вот ещё в копилку.

Уже несколько раз натыкался. Например, при первоначальной настройке базы неопытный пользователь делает такое:
- в "НСИ и администрирование / Склад и доставка" ставим флажок "Ордерные склады"
- открываем склад, на его форме появляется вкладка "Ордерная схема и структура"
- ставим на этой вкладке, например, флажок "Использовать ордерную схему... при отражении излишков, недостач..."

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

Столкнулся с этим, когда разбирался, почему документ "Пересортица" не делает движений по регистру "Товары на складах" (для склада скрытым способом использовалась ордерная схема).
l4h; Michael0507; alex-l19041; adhocprog; RustIG; Sergafan10; Kutuzov; +7 Ответить
27. Dragonim 131 28.08.18 14:39 Сейчас в теме
(1)
Это верно практически для всего функционала который можно включить и отключить, и связано это с тем, что проверка идёт самих элементов, а не функциональных опций. Если функциональная опция была отключена, то всё установлено по умолчанию, если её потом кто-то включил, что-то поменял по умолчанию, а потом снова выключил, то данные изменения в базе остались и никуда не делись.

Для самых не понимающих выводиться сообщения типа "Не стоит отключать эту опцию после включения".
2. katenok86 246 09.08.18 14:35 Сейчас в теме
Можно добавить план обмена в расширение. Можно нажать "Состав" и натыкать галочек на тех объектах, которые хочется добавить в состав плана обмена. Но толку от этого не будет, регистрацию изменений этих объектов в плане обмена провести не удастся.

Указанные ситуации воспроизведены на УТ 11.4.3.144, платформа 8.3.11.3034

Буду рад вашим дополнениям в комментариях о новых неожиданностях и путях обхода.

По тому что регистрируются к обмену объекты подписками на событие, их тип нужно тоже расширять. И редактировать правила регистрации.
3. Kutuzov 708 09.08.18 14:46 Сейчас в теме
(2) вроде как нельзя менять состав объектов для подписки


Если вам как-то удалось поменять состав плана обмена через расширение, напишите, плиз, буду благодарен)
Прикрепленные файлы:
4. katenok86 246 09.08.18 14:55 Сейчас в теме
(3)Я просто объяснила причину. Не помню если честно можно ли с учетом последних возможностей создать в расширении новую подписку?
5. katenok86 246 09.08.18 14:58 Сейчас в теме
Посмотрела действительно нельзя ни расширить состав объектов подписки ни добавить новую подписку через расширение.
6. RustIG 09.08.18 19:04 Сейчас в теме
(0) да, интересно, не очевидных механизмов много.
а что в целом скажете: можно уже переходить на ут11, или нормально еще будет продолжать ставить и внедрять ут 10.3?
7. Kutuzov 708 09.08.18 21:12 Сейчас в теме
(6) УТ 11 хорошая, мне нравится с ней работать. После появления механизма расширений - ввобще красота. Если смотреть со стороны программиста, то я в последнее время только с 11-й работаю, с 10-кой не связываюсь, и даже плохо помню, как там и что.
Если смотреть со стороны клиента, у которого уже стоит 10.3, то переход на УТ 11 целесообразен, если:
1) Это нужно бизнесу. Прям вот нужно, от этого планируется рост прибыли на 50%, и понятно, откуда он возьмется после перехода.
2) Нет рядом адекватных программистов/компаний, обслуживающих 10.3

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

С нуля новым клиентам 10.3 я бы не ставил, УТ 11 по-приятнее в работе, и для нее больше разработок и интеграций.
Mahon83; RustIG; +2 Ответить
8. RustIG 10.08.18 08:08 Сейчас в теме
(7) приходилось ли выбирать для клиента между УТ 11, УНФ или Розницей ? функционал пересекается, а реализация и набор ошибок - отличаются... что лучше - ут или унф - к примеру для оптово-розничной фирмы?
9. genayo 10.08.18 08:19 Сейчас в теме
(8) В УТ11 хорошие механизмы ценообразования и скидок, и есть блок адресного хранения, который неплохо подойдет для небольших складов.
10. RustIG 10.08.18 08:23 Сейчас в теме
11. genayo 10.08.18 08:26 Сейчас в теме
(10) Такого точно нет :) УНФ всё-же не совсем под оптово-розничную торговлю заточена, больше под фирмы типа изготовления пластиковых окон, дверей и т.п.
12. Kutuzov 708 10.08.18 10:06 Сейчас в теме
(8) Это вопрос на целую статью) У меня не хватит компетенции такую статью написать, т.к. в основном с УТ 11 работаем. Наверное, лучше для себя выбрать, какое решение больше нравится, его и предлагать. В вашем случае надо посмотреть все три конфигурации. Потом выбрать, какая конфигурация больше подойдет вашим существующим клиентам, и уже ее внедрять и плотно изучать.
18. NataLisa 14.08.18 15:43 Сейчас в теме
(8) Позвольте выскажусь вместо автора статьи.
Розница хороша для розницы, где если и есть опт, то минимальный. Главное чего нет в Рознице - это нормальные взаиморасчеты. Например, есть магазин, который торгует стройматериалами. Вроде Розница здесь оптимальна - не сложно, не громоздко. Но потом владелец задает вопрос - а я отпускаю строительным бригадам. Нужно выписать на ИП. Не вопрос - документ реализация есть - выпишем. А я им в долг даю, в рассрочку.... А вот это мы уже не учтем, никак. Нет такого функционала в рознице. Опять придется писать в тетрадочку. (Хотя есть такие кого тетрадочка очень устроит). Но если только выписать документы ТОРГ-12 и даже С/ф, то вполне подойдет. Ибо УТ все же на порядок сложнее в освоении для мелкого бизнеса.
УНФ попроще в терминологии, и подойдет если есть небольшое производство. Или оказание услуг. Для торговли мне лично не очень... но, возможно, это мое субьективное мнение, т.к. больше знаю УТ и Розницу.
Ну а в остальных случаях УТ. Она конечно не проста в освоении... и были некоторые клиенты которым ставили УТ10, потому что после пары встреч с руководством или владельцем бизнеса понятно - не потянут. Такой у нас в провинции бизнес...

А за статью спасибо. Правда стоит собрать свою базу знаний, ибо от 1С не всегда дождешься...А такое описание багов очень всем пригодится.
22. Ali1976 13 15.08.18 09:49 Сейчас в теме
(8) Унф для торговли отмели из-за плохой системы резервов. Нельзя в одном заказе поставщику резервировать под несколько Заказов клиентов. Про "особенный" контроль остатков и расчет себестоимости в унф вообще лучше промолчу это боль. Выбирайте между Ут11 и Розницей исходя из ваших потребностей.
13. wazup666 23 10.08.18 10:33 Сейчас в теме
По поводу синхронизации данных. Возможно, путь к внешнему модулю сохраняется в стандартном хранилище настроек т. к. у реквизита формы стоит галочка "Сохраняемые данные". Можно попробовать удалить эту настройку программно.
14. wazup666 23 10.08.18 11:59 Сейчас в теме
(13) Хотя не так. Перепутал с обработкой ВыгрузкаЗагрузкаEnterpriseData. В вашем случае надо очистить реквизит ПутьКМенеджеруОбмена у плана обмена по Enterprise Data. Но это не точно.
15. Yashazz 4308 12.08.18 13:50 Сейчас в теме
Это что. вместо багтрекера 1С пополам с личным дневничком? Да если я сяду описывать хотя бы прелести УНФ в, допустим, ценообразовании или интеграции с сайтом, это уже статьи на три будет)
Aleskey_K; Terve!R; maXon777; +3 Ответить
16. Kutuzov 708 12.08.18 14:00 Сейчас в теме
(15)Пишите, чем больше информации в сети в открытом доступе, тем лучше :). А то иногда столкнешься с какой-то нелепостью, а ничего не гуглится по проблеме. Приходится копаться по полдня в ерунде, чувствуя себя изобретателем велосипеда.
Aleskey_K; EVKash; Мах; Capitullo; maXon777; +5 Ответить
17. necropunk 9 13.08.18 10:15 Сейчас в теме
(15) Ну, кстати, поддерживаю. В 1С писать такие репорты - как свистеть известно куда, а так хоть поиском иногда натыкаешься, да и вообще - предупрежден значит вооружен.
19. ildary 19 14.08.18 15:54 Сейчас в теме
(17) в целом конечно правильно, но было бы прекрасно, если бы такие наборы ошибок велись не в стиле "статья на инфостарте", а какой-нибудь удобный набор табличек с фильтрацией, с колонками:

"Конфигурация" "Подсистема" "Описание"
maXon777; +1 Ответить
21. maXon777 117 15.08.18 08:05 Сейчас в теме
(17) в 1с можно и нужно писать. Сейчас они хорошо реагируют на баги и корректируют их - даже благодарность шлют).
20. maXon777 117 15.08.18 08:04 Сейчас в теме
при сохранении запроса сбиваются привязки полей формы к данным динамического списка.

Это потому что они разыменовались - в списки автоматически добавляется Документ.Ссылка как ДокументСсылка и тд. и это приводит к ошибке (не только в УТ). Когда правишь в ручную этого не происходит. Глюк расширений. За тему отдельное спасибо!
23. eden 15.08.18 11:01 Сейчас в теме
Добрый день.
ПО поводу пункта "Видимость общих модулей в расширении".
Дело в том, что модули менеджера и объекта могут выполняться в контексте толстого клиента (Режим запуска клиент-сервер, управляемое приложение). В таком случае синтаксический контроль выдаст ошибку по всем модулям, которые имеют флаг "Сервер" и не имеет флаг "Вызов сервера". В стандартах разработки и во всех типовых конфигурациях все процедуры и функции модулей (менеджера и объекта) обернуты конструкцией
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

#КонецЕсли

Для решения проблемы возможно в модуле расширения нужно добавить такую же конструкцию. Сам не тестировал.
lenokv_07; Kutuzov; +2 Ответить
24. Kutuzov 708 15.08.18 11:33 Сейчас в теме
(23) Протестировал - так и нужно делать. Спасибо!
25. mike002 15.08.18 11:55 Сейчас в теме
УТ 11.4.5.32 Платформа 8.3.10.2699
Если обновить Расширение когда в базе есть пользователи , перестает работать сравнение с ПредопределенымЗначением Перечисления в основной конфигурации. Например : в документе ВозвратТоваровОтКлиента неотображается себестоимость строкой -
СпособОпределенияСебестоимости = ПредопределенноеЗначение("Перечисление.СпособыОпределенияСебестоимости.ИзТекущегоДокумента")

Помогает перезапуск сервера.
26. ildary 19 15.08.18 13:14 Сейчас в теме
(25) Я слышал, что обновление расширения при невышедших пользователях вызывает неявное динамическое обновление. Которое в 8.3.10 любит делать неожиданности.
28. lenokv_07 09.06.20 11:13 Сейчас в теме
Управление торговлей, редакция 11 (11.4.9.91) не печатаются УПД некоторых контрагентов, (пишет печатная форма недоступна) пока в реализации не перейдешь к отчету по версиям объекта и не выберешь какую нибудь? Может кто решал как исправить?
29. lenokv_07 09.06.20 14:12 Сейчас в теме
Управление торговлей, редакция 11 (11.4.9.91) поняла , что проблема в том что в истории версия есть, а если ее выбираешь пишет "Выбранная версия отсутствует в программе", Помогите, кто знает как решить?
30. Xershi 957 30.06.20 19:41 Сейчас в теме
Многое что описано это по неопытности...
И даже не расписано в чем был подвох.
Оставьте свое сообщение

См. также

Использование классов .Net в 1С для новичков Промо

Механизмы платформы 1С v7.7 v8 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    89246    Serginio    116    

Шпаргалка по функциям АСИНХ

Механизмы платформы 1С v8 Россия Бесплатно (free)

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

29.07.2022    3438    zeltyr    15    

Добавление собственного виджета в 1С:Документооборот версии 3.0

Документооборот и делопроизводство Адаптация типовых решений Механизмы типовых конфигураций v8 ДО Россия Бесплатно (free)

В данной публикации я хочу описать процесс добавления собственного виджета для отслеживания задач по видам документов в 1С документооборот версии 3.0.

18.07.2022    1094    ArseniyFenix    2    

Система контроля ведения учета [БСП]

Универсальные функции Механизмы типовых конфигураций v8 1cv8.cf Бесплатно (free)

В данном материале рассмотрим типовой алгоритм подсистемы контроля учета БСП в конфигурациях на примерах.

18.07.2022    2547    quazare    8    

Использование программных перечислений, ч.1: строковые константы Промо

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

Часто ли у вас возникает необходимость в коде выполнять сравнение на строку?

10.12.2016    42089    unichkin    74    

Экспертный кейс. История расследования одного небыстрого закрытия месяца в 1C:ERP. Пример неочевидных путей расследования в виде детективной истории

HighLoad оптимизация Механизмы платформы 1С Запросы v8 ERP2 Бесплатно (free)

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

11.07.2022    3936    it-expertise    27    

Состав индексов с дополнительным упорядочиванием на уровне СУБД (MS SQL) при индексации реквизитов

Механизмы платформы 1С v8 Бесплатно (free)

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

15.06.2022    1367    sinichenko_alex    5    

Еще раз о дополнительных реквизитах и дополнительных сведениях

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

Дополнительные реквизиты и сведения существуют давно. Задумка очень хорошая. Суть этих механизмов понятна всем. По этому поводу написано много. Что тут можно сказать нового? Однако бес, как всегда, в деталях. Как создавали реквизиты в объектах типовых конфигураций, так и продолжаем это делать. Почему это происходит? За всех сказать не могу. Могу рассуждать только на своем примере. Являясь убежденным практиком, одно могу сказать вполне определенно. Если что-то на практике недостаточно удобно, то останется оно главным образом в теории... Если не приложить немного усилий.

11.05.2022    3611    user1374747    7    

Вспомогательные инструкции в коде 1С Промо

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

Помогаем редактору кода 1С помогать нам писать и анализировать код.

15.10.2018    38525    tormozit    107    

Динамическое обновление - это зло?

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

Копнем глубже в тему "Что же такое динамическое обновление" и почему оно может привести к проблемам. И может ли?

09.05.2022    10904    YPermitin    75    

Об одной неочевидной проблеме перехода на версию платформы 8.3.20

Механизмы платформы 1С v8 Бесплатно (free)

При переходе на платформу 8.3.20 мы столкнулись с ошибкой "Повторяющийся псевдоним "Ссылка" Ссылка AS Ссылка,Presentation AS Presentation,Ссылка AS Ссылка" в ряде типовых конфигураций. Причём, эта проблема оказались неизвестна ни Яндексу, ни Гуглу. Путём мучительных экспериментов нам удалось найти решение. Пока я ещё не уверен, действительно это решение или обходной костыль, а настоящая проблема -- в чём-то другом, но это решение работает в ситуации, когда всё сломалось, а проблему надо решать срочно. Предположительная причина: платформа 8.3.20 более строго относится к типизации данных в запросах, чем предыдущие версии, вываливая в случае несоблюдения новшеств малопонятные ошибки.

08.04.2022    4448    Kernelbug    24    

Отборы динамического списка

Механизмы платформы 1С v8 Бесплатно (free)

Динамический список предоставляет несколько объектов "Отбор". В статье разбирается, какой для чего нужен и как их использовать на форме. Рассматриваются только возможности платформы (без БСП).

28.03.2022    7115    Gladkov_Anton    4    

Как прикрутить ГУИД к регистру сведений Промо

Механизмы платформы 1С v8 Бесплатно (free)

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

16.04.2019    24238    m-rv    18    

Экспертный кейс. Расследование фатального замедления времени расчета себестоимости в 1С:ERP 2

HighLoad оптимизация Механизмы типовых конфигураций Запросы v8 ERP2 Бесплатно (free)

При выполнении нагрузочного тестирования информационной системы на базе 1С:ERP для одного из клиентов с целью оценки возможности миграции системы на PostgreSQL и Astra Linux мы столкнулись с неприемлемым увеличением времени выполнения расчета себестоимости. Строго говоря, сценарий тестирования закрытия месяца не был выполнен вообще – он не укладывался в таймаут выполнения теста, 24 часа. По прошествии 18 часов всё ещё шло выполнение операции «Распределение затрат и расчет себестоимости». Более 16 часов выполнялся подэтап “Расчет партий и себестоимости. Этап. Расчет себестоимости: РассчитатьСтоимость”. Всё это время выполнялся запрос, который в текущей инфраструктуре клиента (СУБД MS SQL Server) выполняется чуть более 3 минут на аналогичных данных.

25.03.2022    3892    it-expertise    92    

Фишки платформы 1С 8.3 для начинающего разработчика

Механизмы платформы 1С v8 1cv8.cf Россия Бесплатно (free)

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

11.03.2022    8382    Dimbayyyy    96    

Ни в ЗУП ногой!? А мне нравится! Часть 1. Главные сложности решения, что отталкивает

Зарплата Кадровый учет Механизмы типовых конфигураций Внедрение ИТ-системы v8 v8::СПР ЗУП2.5 ЗКБУ 1С7:ЗиК ЗКГУ3.0 ЗУП3.x БУ Бесплатно (free)

Ни для кого не секрет, что ЗУП - одно из сложнейших решений в линейке 1С. Многие разработчики и аналитики не любят им заниматься. Тяжело представить, чтоб начинающий разработчик/аналитик стал по доброй воле работать в сфере управления персоналом и расчета заработной платы. В данной серии статей будет рассказано, какие видятся плюсы в этом решении и как справляться с его минусами. Кратко расскажу, как встать на этот путь, приведу примеры выполненных задач.

03.03.2022    6358    biimmap    57    

Метод формирования движений в типовых регистрах нетиповыми регистраторами Промо

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

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

05.12.2017    31522    itriot11    34    

Действия при добавлении своего документа в конфигурацию ERP\КА

Механизмы типовых конфигураций v8 1cv8.cf Бесплатно (free)

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

02.02.2022    2966    Shining_ninja    15    

Синхронный и асинхронный вызов в новых версиях платформы

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

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

31.01.2022    4252    Shining_ninja    15    

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

Универсальные функции Механизмы платформы 1С v8 Бесплатно (free)

Простая и удобная среда разработки 1С:Предприятия позволяет практически любому человеку начать работать под капотом 1С - в конфигураторе. Время идет, новички становятся программистами, специалистами, а об удобных приемах работы узнают годами, по ходу своего карьерного пути. А здорово было бы, если бы все знали удобные приемы в начале своего пути? Эти несколько приемов будут полезны новичкам, так как они затрагивают ту область работы, с которой приходится сталкиваться в начале карьеры.

12.11.2021    9314    acces969    95    

Автоматические и управляемые блокировки применительно к типовым конфигурациям 1С Промо

Механизмы типовых конфигураций v8 v8::blocking 1cv8.cf Бесплатно (free)

Основные принципы работы с режимами автоматических и управляемых блокировок в 1С Предприятие 8. Теория и применение в типовых конфигурациях: БП, УТ, ЕРП

10.11.2018    49867    ids79    46    

Как спроектировать структуру регистра сведений

Механизмы платформы 1С v8 v8::Запросы Бесплатно (free)

«Что может быть проще?» — это первое, что приходит в голову. Но что, если это не так? В этой статье мы попробуем затронуть некоторые вопросы, которые могут возникнуть при проектировании больших регистров.

08.11.2021    7114    Neti    60    

О вложенных попытках, исключениях и о представлении ошибок

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

В данной статье, на небольшом примере, мне бы хотелось показать, как себя ведут вложенные "Попытка-Исключение". А также о том, чем отличаются методы ОписаниеОшибки() и ИнформацияОбОшибке().

07.11.2021    5658    Nicholas    17    

Готовые механизмы 1С: ЗУП, представления

Механизмы типовых конфигураций Запросы v8 v8::СПР ЗУП3.x БУ Бесплатно (free)

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

03.11.2021    4193    Margo462    19    

Ускоряем 1С: модули с повторным использованием возвращаемых значений Промо

Механизмы платформы 1С v8 Бесплатно (free)

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

04.09.2017    61641    m-rv    63    

Обработчик ожидания. Нюансы

Механизмы платформы 1С v8 Бесплатно (free)

ПодключитьОбработчикОжидания: некоторые подробности и особенности работы

24.08.2021    15098    Yashazz    25    

Прогресс-бар в поле динамического списка

Механизмы платформы 1С v8 Бесплатно (free)

Изображаем прогресс-бары в колонке динамического списка

23.08.2021    3689    Yashazz    13    

ПриПолученииДанныхНаСервере + Контекст формы. Лайфхак

Механизмы платформы 1С v8 Бесплатно (free)

Передать свои произвольные данные в событие, которое "без контекста"? Легко!

13.08.2021    5194    Yashazz    16    

Регулярные выражения без внешних компонент? Легко! Промо

Механизмы платформы 1С v8 Бесплатно (free)

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

04.03.2016    76167    starik-2005    111    

Доработка проведения в ERP 2.5 (регистр бухгалтерии Хозрасчетный)

Механизмы типовых конфигураций v8 ERP2 Россия БУ Бесплатно (free)

Покажу точки входа для доработки "типового" проведения документов в ERP для регистра бухгалтерии Хозрасчетный. Расскажу про "неочевидное" поведение системы. Пример реализован на 1С:ERP Управление предприятием 2 (2.5.5.117).

20.05.2021    5813    BuriyLesha    39    

Новичок новичку: как добавить программно кнопку на форму путем расширения

Механизмы платформы 1С v8 Россия Бесплатно (free)

Рассказываю очень простым языком, как добавить программно кнопку в типовую конфигурацию. Сам новичок в этом деле и рассказываю на "новичковом" языке.

13.05.2021    23341    user1312100    24    

Методика переопределения и вызова обработчиков событий обычной формы Промо

Механизмы платформы 1С v8 1cv8.cf Россия Бесплатно (free)

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

24.06.2007    90776    tormozit    31    

Программное создание расширения

Механизмы платформы 1С v8 Бесплатно (free)

Создание нового расширения "на лету", только штатными средствами 1С.

06.04.2021    5561    Yashazz    14    

Неочевидные нюансы записи управляемой формы

Механизмы платформы 1С v8 v8::УФ Платформа 1C v8.2 1cv8.cf Бесплатно (free)

Разберем несколько нюансов записи управляемой формы.

02.04.2021    20958    SeiOkami    56    

Советы из Желтой тетради 📒 #1

Механизмы платформы 1С v8 Бесплатно (free)

В этой публикации я собрал в одном месте часть советов и лайфхаков, которые открыл для себя в последнее время. Регулярно я публикую их в своём телеграм-блоге "Жёлтая тетрадь 📒 Блог программиста 1С", здесь же - дайджест этих публикаций.

15.03.2021    5652    builin    120    

Отладка подключаемых обработок Промо

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

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

04.01.2017    83492    unichkin    118    

Флаг "Использовать ПОЧТИ всегда", или Нюанс динамических списков

Механизмы платформы 1С v8 Платформа 1C v8.2 1cv8.cf Бесплатно (free)

Небольшая пятничная история по программной работе со строкой динамического списка.

11.02.2021    7605    SeiOkami    36    

Расширенный автоподбор при вводе по строке в поле ввода в управляемых формах

Механизмы платформы 1С v8 v8::УФ 1cv8.cf Бесплатно (free)

Началось все с того, что штатный автоподбор при вводе по строке в поле ввода для некоторых больших справочников устраивать перестал. Вообще, для способа поиска строки "Любая часть" он работает на первый взгляд очень хорошо: работает как полнотекстовый (т.е. по нескольким словам) даже без активации полнотекстового поиска, красиво подсвечивает слова поиска в результатах. Казалось бы, все отлично. Но есть неприятное ограничение - всего лишь 10 значений в результирующем списке (у вас может быть несколько больше, так как платформа неявно добавляет результаты поиска по истории ввода). Для небольших справочников или справочников с разнородным ассортиментом все хорошо. Но не в моей ситуации. А простых путей увеличить количество выдаваемых строк на момент написания статьи мне обнаружить не удалось. Пришлось полностью переопределять автоподбор. Ниже речь пойдет именно об этом. И, к слову, в типовых конфигурациях для некоторых справочников используются похожие приемы для увеличения количества строк результата автоподбора.

21.01.2021    6511    herfis    7    

О формах 1С замолвите слово... Необычное использование знакомого всем объекта

Механизмы платформы 1С v8 Бесплатно (free)

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

13.01.2021    9226    CyberCerber    46    

Программные перечисления, ч.2: приемы кэширования при разработке Промо

Универсальные функции Механизмы платформы 1С Запросы v8 Бесплатно (free)

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

30.10.2017    28868    unichkin    18    

Наследование свойств элементов, или Как пользователь может сломать вашу форму

Механизмы платформы 1С v8 Платформа 1C v8.2 1cv8.cf Бесплатно (free)

В 1С можно установить свойства ТолькоПросмотр, Доступность и Видимость не только на элементы формы, но и на группы элементов. Но стоит ли так делать? Оказывается, пользователь может обойти запреты, которые установлены на папку. Об этом подробнее в видео.

12.01.2021    5222    SeiOkami    27    

Доработка проведения в ERP 2.5. (Регистры накопления, Регистры сведений)

Механизмы типовых конфигураций v8 ERP2 БУ Бесплатно (free)

Покажу точки входа для доработки "типового" проведения документов в ERP для регистров оперативного учета. Рассмотрим три основные ситуации: нужно изменить имеющееся проведение документа; нужно сделать записи в существующие регистры; нужно с нуля описать алгоритм проведения в добавленный регистр. Пример реализован на 1С:ERP Управление предприятием 2 (2.5.4.120)

10.01.2021    15460    BuriyLesha    18    

Способы получения данных из ЗУП

Механизмы типовых конфигураций v8 v8::СПР ЗУП3.x Россия БУ Бесплатно (free)

Рассмотрены варианты получения данных в конфигурации Зарплата и управление персоналом 3.1.

31.12.2020    5035    vazelin    3    

Недокументированное использование стандартных обработок из меню "Все функции". Промо

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

Рассмотрены возможности произвольного использования стандартных функций, вызываемых из меню платформы "Все функции" - "Стандартные" (Активные пользователи, Журнал регистрации, Поиск ссылок на объект, Проведение документов ...).

19.06.2015    125434    ekaruk    141    

Ускоряем медленный/долгий и тормозной стандартный поиск по динамическому списку, настраиваем его под себя

Механизмы платформы 1С v8 v8::УФ 1cv8.cf Бесплатно (free)

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

14.12.2020    32462    SizovE    2    

Установка отбора для поля ввода управляемой формы через ПараметрыВыбора (без переопределения событий "НачалоВыбора", "Автоподбор")

Механизмы платформы 1С v8 v8::УФ Бесплатно (free)

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

15.11.2020    11133    Eugen-S    11    

Лайфхаки для разработчиков 1С. Часть 1

Универсальные функции Механизмы платформы 1С v8 Россия Бесплатно (free)

Собрали 20 лайфхаков, которые используют наши программисты при работе с 1С. Формы, контрагенты, СКД, процедуры, глюки платформы и многое другое. В этой статье публикуем первую часть.

30.09.2020    8199    Neti    47    

Простая и быстрая эмуляция операций с битовыми строками Промо

Механизмы платформы 1С v8 Бесплатно (free)

Битовые строки могли бы упростить реализацию некоторых алгоритмов на языке платформы «1С: Предприятие 8». Но пока в платформе операций с битовыми строками нет. В то же время уже сделанные попытки смоделировать эти операции преобразованиями над числами опираются на циклы обработки отдельных битов, что плохо сказывается на скорости их работы. Предлагается новое простое решение, основанное на представлении битовых строк строками символов «0» и «1». Приводится примеры кода выполнения основных логических операций AND, OR, XOR, NO без использования циклов. В качестве прикладной задачи рассмотрено получение последовательных значений кода Грэя, который можно использовать для ускорения перебора вариантов.

22.06.2016    30827    ildarovich    14    

Правила жёлтого напильника. Часть 2

Механизмы типовых конфигураций Анализ и проектирование ИТ-систем v8 1cv8.cf Бесплатно (free)

Вторая часть правил внесения изменений в типовые конфигурации 1С

11.08.2020    5475    1c-intelligence    13    

Новое отображение ошибок в 1С

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

Рассмотрим развитие механизма отображения ошибок в 1С (начиная с 8.3.17)

10.08.2020    28942    SeiOkami    44    

Вы запускаете приложения, но делаете это без уважения

Механизмы платформы 1С v8 1cv8.cf Бесплатно (free)

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

21.07.2020    12553    YPermitin    32    

Типовые методы конфигурации "Зарплата и управление персоналом", которые пригодятся каждому ЗУП программисту и не только

Механизмы типовых конфигураций v8 ЗУП3.x Россия Бесплатно (free)

В данном обзоре дам описание полезных встроенных функций и процедур в конфигурации "Зарплата и управление персоналом 3.1".

19.07.2020    7483    quazare    8