Инструменты пользователя

Инструменты сайта


1c:algoritmy_dlja_gruppovoj_obrabotki

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
1c:algoritmy_dlja_gruppovoj_obrabotki [31.08.2023 09:28] Павел Зайцев1c:algoritmy_dlja_gruppovoj_obrabotki [07.11.2025 07:10] (текущий) Павел Зайцев
Строка 3: Строка 3:
 =====  Удалить дополнительный реквизит у элемента справочника  ===== =====  Удалить дополнительный реквизит у элемента справочника  =====
  
-Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", "СюдаНаписатьИмяРеквизита_49f1b95c86784e28a2d5eb0f32ede243");+<code> 
 +// нужно заполнить наименования свойств отсюда: Наборы дополнительных реквизитов и сведений: e1cib/list/Справочник.НаборыДополнительныхРеквизитовИСведений 
 +// имя для заполнения взять из раздела "для разработчиков" 
 +/////////////////////////////////////////////////////////////////////////////////////// 
 +ИмяСвойства = "СюдаНаписатьИмяСвойстваКотороеБудемОчищать";   // ПРИМЕР  "ПрименемостьДетали_c99f7bab121c4a299319920bbd76cb88" 
 +/////////////////////////////////////////////////////////////////////////////////////// 
 + 
 +Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", ИмяСвойства );
 Для Каждого Строка Из Объект.ДополнительныеРеквизиты Цикл Для Каждого Строка Из Объект.ДополнительныеРеквизиты Цикл
     Если Строка.Свойство = Свойство Тогда     Если Строка.Свойство = Свойство Тогда
Строка 11: Строка 18:
     КонецЕсли;     КонецЕсли;
 КонецЦикла; КонецЦикла;
 +</code>
  
  
 ===== Скопировать значение одного доп реквизита в другой ===== ===== Скопировать значение одного доп реквизита в другой =====
  
-СвойствоИсточник = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", "ПрименяемостьСвечи_49f1b95c86784e28a2d5eb0f32ede243"); +<code> 
-СвойствоПриемник = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", "ПрименемостьДетали_c99f7bab121c4a299319920bbd76cb88");+// нужно заполнить наименования свойств отсюда: Наборы дополнительных реквизитов и сведений: e1cib/list/Справочник.НаборыДополнительныхРеквизитовИСведений 
 +// имя для заполнения взять из раздела "для разработчиков" 
 +/////////////////////////////////////////////////////////////////////////////////////// 
 +ИмяСвойстваИсточник = "СюдаНаписатьИмяСвойстваИзкоторогоБудемКопировать";   // ПРИМЕР  "ПрименемостьДетали_c99f7bab121c4a299319920bbd76cb88" 
 +ИмяСвойстваПриемник = "СюдаНаписатьИмяСвойстваВкотороеБудемКопировать"; 
 +/////////////////////////////////////////////////////////////////////////////////////// 
 +СвойствоИсточник = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", ИмяСвойстваИсточник); 
 +СвойствоПриемник = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", ИмяСвойстваПриемник);
 Ссылка = Объект.Ссылка; Ссылка = Объект.Ссылка;
  
Строка 29: Строка 44:
     УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(Ссылка, Свойства);     УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(Ссылка, Свойства);
 КонецЕсли; КонецЕсли;
 +</code>
 +
 +===== Скопировать значение дополнительного реквизита в обычный =====
 +
 +<code>
 +СвойствоИсточник = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", "ПрименяемостьСвечи_49f1b95c86784e28a2d5eb0f32ede243");
 +СвойствоПриемник = "Применяемость";
 +Ссылка = Объект.Ссылка;
 +
 +ЗначениеИсточник = УправлениеСвойствами.ЗначениеСвойства(Ссылка, СвойствоИсточник);
 +ЗначениеПриемник = Объект[СвойствоПриемник];
 +
 +Если ЗначениеЗаполнено(ЗначениеИсточник) И Не ЗначениеЗаполнено(ЗначениеПриемник) Тогда
 +    Объект[СвойствоПриемник] = ЗначениеИсточник;
 +КонецЕсли;
 +</code>
 +
 +===== Пометка на удаление дублей номенклатуры поставщиков =====
 +
 +Дубли опеределяются по паре "артикул-брэнд". Помечаются те, что не имеют привязки.
 +
 +<code>
 +ВЫБРАТЬ
 + ФПБС_НоменклатураПоставщиков.Ссылка КАК Ссылка
 +ИЗ
 + Справочник.ФПБС_НоменклатураПоставщиков КАК ФПБС_НоменклатураПоставщиков
 + ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФПБС_ЦеныИОстаткиНоменклатурыПоставщиков КАК ФПБС_ЦеныИОстаткиНоменклатурыПоставщиковСрезПоследних
 + ПО (ФПБС_НоменклатураПоставщиков.Ссылка = ФПБС_ЦеныИОстаткиНоменклатурыПоставщиковСрезПоследних.НоменклатураПоставщика
 + И ФПБС_ЦеныИОстаткиНоменклатурыПоставщиковСрезПоследних.ПрофильПартнера = &ПрофильПартнера)
 +ГДЕ
 + ФПБС_НоменклатураПоставщиков.Владелец = &Владелец
 + И ФПБС_НоменклатураПоставщиков.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
 + И (ФПБС_НоменклатураПоставщиков.Артикул, ФПБС_НоменклатураПоставщиков.Производитель) В
 + (ВЫБРАТЬ
 + ФПБС_НоменклатураПоставщиков.Артикул КАК Артикул,
 + ФПБС_НоменклатураПоставщиков.Производитель КАК Производитель
 + ИЗ
 + Справочник.ФПБС_НоменклатураПоставщиков КАК ФПБС_НоменклатураПоставщиков
 + ГДЕ
 + НЕ ФПБС_НоменклатураПоставщиков.ПометкаУдаления
 + И НЕ ФПБС_НоменклатураПоставщиков.Недействителен
 + И ФПБС_НоменклатураПоставщиков.Владелец = &Владелец
 + СГРУППИРОВАТЬ ПО
 + ФПБС_НоменклатураПоставщиков.Артикул,
 + ФПБС_НоменклатураПоставщиков.Производитель
 + ИМЕЮЩИЕ
 + СУММА(1) > 1)
 + И ФПБС_ЦеныИОстаткиНоменклатурыПоставщиковСрезПоследних.Регистратор ЕСТЬ NULL
 +</code>
  
  
/var/www/html/data/attic/1c/algoritmy_dlja_gruppovoj_obrabotki.1693474101.txt.gz · Последнее изменение: Павел Зайцев

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki