![]() |
|
Групповое изменение реквизита в выбранных документах | ☑ | ||
---|---|---|---|---|
0
Vladislav2023
31.10.23
✎
12:11
|
Доброго времени суток!
Конфигурация Бухгалтерия 3.0 (3.0.50.1), платформа 8.3.18.1959. Прошу помочь с реализацией задачи: Создан документ, в нём есть числовое поле(4 знака), куда вводит номер вручную бухгалтер(номер задаёт он сам). Как можно сделать так, чтобы при выделении из списка документов, при вводе в поле номера(Думаю так: добавлю на форму списка ещё одно поле для ввода и команду "ДобавитьНомер"), он автоматически проставлялся в выбранные документы? Т.е. добавляю на форму списка поле ввода для номера, выделяю документы, нажимаю "ДобавитьНомер" и в выделенные документы проставляется этот номер. Я так понимаю выполняется аналогично групповому изменению реквизитов, но подскажите как это реализовать программно? |
|||
1
AAA
31.10.23
✎
12:19
|
я бы написал для этого специальную внешнюю обработку. Заполнить, пометить нужные, выполнить.
|
|||
2
Donkey_hot
31.10.23
✎
12:21
|
(0) Элементы.Список.ВыделенныеСтроки
|
|||
3
KJlag
31.10.23
✎
12:25
|
(0) я уже вижу случайные нажатия по кнопке на форме
|
|||
4
Donkey_hot
31.10.23
✎
12:27
|
(3) Ну да, на такие действия лучше вешать дополнительный запрос подтверждения с указанием количества изменяемых документов.
|
|||
5
Vladislav2023
31.10.23
✎
13:51
|
Можете пожалуйста подсказать как написать код используя "Элементы.Список.ВыделенныеСтроки"?
Я совсем недавно начал изучать 1с, буду благодарен! Может стоить создать произвольную форму, в ней поле для ввода номера и кнопку "Изменить"? Т.е. когда бухгалтер выделит документы, нажмёт кнопку "ДобавитьНомер", откроется эта форма. |
|||
6
Мимохожий Однако
31.10.23
✎
14:31
|
(0) Один и тот же номер в несколько документов? Это разовая акция или на постоянной основе? Откуда столь древняя конфигурация? Платформа пиратка?
|
|||
7
Vladislav2023
01.11.23
✎
05:47
|
Номер является идентефикатором для целей самого бухгалтера. По сути больше никому в работе не нужен. Лицензия, не пиратка.
Вот такой пример хочу прикрутить: &НаКлиенте Процедура ИзменитьРеквизит(Команда) ТД = Элементы.Список.ТекущиеДанные;//сюда поставлю Элементы.Список.ВыделенныеСтроки Если ТД = Неопределено Тогда возврат; КонецЕсли; ИзменитьРеквизитНаСервере(Тд.Ссылка,"Вот такое вот наименование");//сюда поставлю реквизит, числовое поле, для ввода номера КонецПроцедуры &НаСервереБезКонтекста Процедура ИзменитьРеквизитНаСервере(Ссылка,ЗначениеРеквизита) Объект = Ссылка.ПолучитьОбъект(); Объект.Наименование = ЗначениеРеквизита; Объект.Записать(); КонецПроцедуры |
|||
8
Donkey_hot
01.11.23
✎
06:04
|
(7) Ну в целом правильно, в ВыделенныеСтроки у вас будет массив, передавайте его целиком на сервер, и там в цикле записывайте. С точки зрения юзабилити еще желательно показать промежуточный вопрос "Вы собираетесь указать номер для N документов. Продолжить?" Да/нет. И по результатам выполнения ПоказатьОповещениеПользователя, чтобы проинформировать об успешном завершении операции.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |