|
Заменить номенклатуру в ресурсной спецификации ERP | ☑ | ||
---|---|---|---|---|
0
gagachoo
16.05.19
✎
15:52
|
Добрый день.
1С:ERP Управление предприятием 2 (2.4.5.143) Помогите пожалуйста заменить гайку 1, на гайку 2 в ресурсной спецификации. Она должна замениться во всех действующих, закрытых спецификациях, но прежняя остаться в других документах для бухгалтерии как я понимаю. В ERP должен быть этот механизм, подскажите как это сделать? |
|||
1
Кодер
16.05.19
✎
16:04
|
Копируем спецификацию. Заменяем в новой спецификации гайку. Выбираем новую спецификацию в новых документах. Старая спецификация остаётся в старых документах, если вы не хотите менять гайки в проданной продукции.
|
|||
2
shuhard
16.05.19
✎
16:09
|
(0)[В ERP должен быть этот механизм]
нет и не должен и за такие замены руки отрывают |
|||
3
kzot
16.05.19
✎
16:17
|
(2) может он про "Разрешение на замену материалов" спрашивает ?
|
|||
4
gagachoo
16.05.19
✎
17:14
|
(1) А если спецификаций 300 шт, где используется этот материал?
|
|||
5
Кодер
16.05.19
✎
17:16
|
(4) Руками/обработкой. Какие вы видите иные варианты?
|
|||
6
gagachoo
16.05.19
✎
17:17
|
(2) Про ERP я так сказал, потому что 1с программист это сделал это за 5 минут, без обработок
А что тут такого страшного? Обычный рабочий момент по сути. Вот я и спрашиваю, как сделать так, что бы руки не оторвали. Проданная продукция осталась при своём |
|||
7
gagachoo
16.05.19
✎
17:17
|
(3) А это что? Можно поподробнее?
|
|||
8
gagachoo
16.05.19
✎
17:22
|
(5) Руками, обработкой, какой то магический способ ))) Просто такая ситуация возникает наверное у многих, можно было это в типовое обслуживание добавить.
|
|||
9
Кодер
16.05.19
✎
17:27
|
Эдак ты и "тестирование и исправление ключей аналитики" захочешь. В УПП была, тут нет - бери флагмана и быстренько дописывай.
|
|||
10
xraf
16.05.19
✎
19:25
|
(6) «без обработок» не могу представить. Ведь любое групповое изменение объектов означает использование обработки (типовой или внешней).
Сейчас в бсп можно легко отбирать и изменять объекты по критериям |
|||
11
gagachoo
30.05.19
✎
12:50
|
&НаКлиенте
Процедура ПодобратьДляЗамены(Команда) // Вставить содержимое обработчика ПодобратьДляЗаменыНаСервере(); КонецПроцедуры &НаСервере Процедура ПодобратьДляЗаменыНаСервере() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | РесурсныеСпецификацииМатериалыИУслуги.Ссылка КАК Ссылка |ИЗ | Справочник.РесурсныеСпецификации.МатериалыИУслуги КАК РесурсныеСпецификацииМатериалыИУслуги |ГДЕ | НЕ РесурсныеСпецификацииМатериалыИУслуги.Ссылка.ПометкаУдаления | И РесурсныеСпецификацииМатериалыИУслуги.Номенклатура = &Номенклатура | И РесурсныеСпецификацииМатериалыИУслуги.Ссылка.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыСпецификаций.Действует)"; Запрос.УстановитьПараметр("Номенклатура", НоменклатураПоиска); РезультатЗапроса = Запрос.Выполнить().Выгрузить(); СформироватьКолонкиТаблицы(РезультатЗапроса, "Группа4"); КонецПроцедуры &НаКлиенте Процедура ЗаменитьНовой(Команда) ЗаменитьНовойНаСервере(); КонецПроцедуры &НаСервере Процедура ЗаменитьНовойНаСервере() // Вставить содержимое обработчика. Для каждого Строка из ДанныеТаблицы Цикл Об_ = Строка.Ссылка.ПолучитьОбъект(); Если Ложь Тогда Об_ = Справочники.РесурсныеСпецификации.СоздатьЭлемент(); КонецЕсли; Материалы = Об_.МатериалыИУслуги.НайтиСтроки(Новый Структура("Номенклатура", НоменклатураПоиска)); Для Каждого СтрокаМатериалы из Материалы Цикл СтрокаМатериалы.Номенклатура = НоваяНоменклатура; КонецЦикла; Об_.ОбменДанными.Загрузка = Истина; Об_.Записать(); КонецЦикла; Сообщить("Замена номенклатуры: " + СокрЛП(НоменклатураПоиска) + " на номенклатуру: " + СокрЛП(НоваяНоменклатура) + " выполнена"); ПодобратьДляЗаменыНаСервере(); КонецПроцедуры &НаСервере Процедура СформироватьКолонкиТаблицы(ТаблицаРезультат, Группа = Неопределено) // Удалим колонки таблицы перед обновление Таблица = РеквизитФормыВЗначение("ДанныеТаблицы"); МассивРеквизитов = Новый Массив; Для Каждого Колонка Из Таблица.Колонки Цикл МассивРеквизитов.Добавить("ДанныеТаблицы." + Колонка.Имя); КонецЦикла; // Вторым параметром передаем то что нужно удалить // Первым параметром то что нужно создать ИзменитьРеквизиты(,МассивРеквизитов); // Теперь удаляем таблицу с формы ЭлементТаблица = Элементы.Найти("ДанныеТаблицы"); Если ЭлементТаблица <> Неопределено Тогда Элементы.Удалить(ЭлементТаблица); КонецЕсли; // И добавляем ее заново ЭлементТаблица=Элементы.Добавить("ДанныеТаблицы", Тип("ТаблицаФормы"),?(Группа = Неопределено, Элементы.Группа4, Элементы[Группа])); ЭлементТаблица.ПутьКДанным = "ДанныеТаблицы"; ЭлементТаблица.Отображение = ОтображениеТаблицы.Список; // Создаем реквизиты таблицы значений МассивРеквизитов.Очистить(); Для Каждого Колонка ИЗ ТаблицаРезультат.Колонки Цикл МассивТипов = Новый Массив; Если Колонка.Имя = "Номенклатура" Тогда МассивТипов.Добавить(Тип("СправочникСсылка.Номенклатура")); //ИначеЕсли Колонка.Имя = "ЭтапПроизводства" Тогда // МассивТипов.Добавить(Тип("ДокументСсылка.ЭтапПроизводства2_2")); //Иначе МассивТипов.Добавить(Колонка.ТипЗначения); КонецЕсли; НоваяКолонка = Новый РеквизитФормы(Колонка.Имя, Новый ОписаниеТипов(МассивТипов), "ДанныеТаблицы"); МассивРеквизитов.Добавить(НоваяКолонка); КонецЦикла; // Первый параметр, это то что нужно создать ИзменитьРеквизиты(МассивРеквизитов); ЗначениеВРеквизитФормы(ТаблицаРезультат, "ДанныеТаблицы"); // Создаем на форме элементы управления // Т.е. выводим таблицу значений и ее колонки ЭлементТЗ = Элементы.ДанныеТаблицы; Для Каждого Колонка ИЗ ТаблицаРезультат.Колонки Цикл НовыйЭлементФормы = Элементы.Добавить("ДанныеТаблицы" + Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ); НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеВвода; НовыйЭлементФормы.ПутьКДанным = "ДанныеТаблицы." + Колонка.Имя; КонецЦикла; КонецПроцедуры |
|||
12
Krendel
30.05.19
✎
12:52
|
(6) Делай новую спеку
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |