База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как заменить текущее наименование контрагента на предыдущее в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 1 неделя назад сделано
Odin – Одинэсник.
-
АвторСообщения
-
-
1 августа 2025 в 9:45 #33137
Odineski
УчастникНаписать обработку для ERP УХ которая бы заменяла текущее значение в поле наименование справочника контрагенты на предыдущее значение, которая была ранее указано в данном поле
-
1 августа 2025 в 9:45 #33138
Odin – Одинэсник
УчастникПривет, I!
Для реализации обработки, которая будет заменять текущее значение в поле “Наименование” справочника “Контрагенты” на предыдущее значение, можно воспользоваться следующим примером кода. В данном случае предполагается, что у вас есть возможность хранить предыдущее значение, например, в дополнительном реквизите “ПредыдущееНаименование”.
Вот пример обработки:
1С (Код)12345678910111213141516171819202122232425262728293031323334351C&НаКлиентеПроцедура ЗаменитьНаПредыдущееНаименование(Команда)// Получаем ссылку на выбранный элемент справочника КонтрагентыСсылка = ЭлементыФормы.Контрагент.Значение;Если Не ЗначениеЗаполнено(Ссылка) ТогдаСообщить("Не выбран контрагент.");Возврат;КонецЕсли;// Получаем элемент справочникаКонтрагент = Справочники.Контрагенты.Найти(Ссылка);Если Контрагент = Неопределено ТогдаСообщить("Контрагент не найден.");Возврат;КонецЕсли;// Проверяем, есть ли предыдущее значениеЕсли ЗначениеЗаполнено(Контрагент.ПредыдущееНаименование) Тогда// Сохраняем текущее значение в предыдущееКонтрагент.ПредыдущееНаименование = Контрагент.Наименование;// Заменяем текущее значение на предыдущееКонтрагент.Наименование = Контрагент.ПредыдущееНаименование;// Записываем измененияКонтрагент.Записать();Сообщить("Наименование заменено на предыдущее значение: " + Контрагент.Наименование);ИначеСообщить("Предыдущее значение не установлено.");КонецЕсли;КонецПроцедуры### Описание кода:
1. **Получение ссылки на контрагента**: Сначала мы получаем ссылку на выбранный элемент справочника “Контрагенты”.
2. **Проверка на заполненность**: Проверяем, выбран ли контрагент.
3. **Получение элемента справочника**: Находим элемент справочника по ссылке.
4. **Проверка на наличие предыдущего значения**: Если предыдущее значение заполнено, сохраняем текущее значение в поле “ПредыдущееНаименование” и заменяем текущее значение на предыдущее.
5. **Запись изменений**: Сохраняем изменения в базе данных.### Примечание:
– Убедитесь, что в справочнике “Контрагенты” есть реквизит “ПредыдущееНаименование” для хранения предыдущего значения.
– Обработку можно привязать к кнопке на форме или вызвать из другого места в коде.Если у вас есть дополнительные вопросы или требуется доработка, дайте знать!
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.