Запись и изменение реквизитов в документах из модуля формы списка документов "Построчно"

31.01.18

Задачи пользователя - Адаптация типовых решений

Работа со строками списка документов Заказы покупателей в 1С: УНФ.

Это первая публикация, просьба строго не судить.

Теория.

Пришло время воплотить когда-то задуманные мысли в реальность. Мысли заключались в том, что в конфигурации 1С: УНФ существует несколько Статусов документа "Заказ-наряд"(1) такие как "Открыт", "ВРаботе", "Выполнен" и в добавок существует справочник "Состояния заказов", который в свою очередь подразумевает один из вышеперечисленных статусов. Так вот статусов 3, а элементов состояний из справочника - 4. Почему и как? Так Нада! И поэтому 2 элемента справочника "Состояния заказов" подразумевают собой Статус "Выполнен" и назывались они "Ждет отгрузки" и Отгружен".

Вы скажете ну и в чём воплощение мысли то, да в том что была необходимость автоматизировать процесс перехода Заказов покупателей в "Отгруженное" состояние. Не открывать каждый документ и не перевыбирать состояния с дальнейшим проведением, а выбирать вручную строки документов, которые уже находились в Статусе "Выполнен" , а для пользователя в Состоянии "Ждёт отгрузки" и при нажатии на определенную кнопку командной панели выбранные документы записывались с изменением реквизита "Состояние заказа" в состояние "Отгружен".

Практика.

1. Методом несложных манипуляций создаем кнопку на командной панели списка документов "Заказы покупателей".

2. В модуле формы списка пишем 100500 тыс. строк быдлокода(Шутка) Выглядит он так:

&НаКлиенте
Процедура  ОтгрузитьЗаказы(Команда)
    ВыделенныеСтроки = Элементы.Список.ВыделенныеСтроки;    
    ОтгрузитьЗаказыСервер(ВыделенныеСтроки);
    
КонецПроцедуры

&НаСервере
Функция ОтгрузитьЗаказыСервер(ВыделенныеСтроки)
    
    Для каждого ВыдСтрока Из ВыделенныеСтроки Цикл
        ОбъектДокумента = ВыдСтрока.ПолучитьОбъект();
    Если НЕ ОбъектДокумента.ПометкаУдаления и ОбъектДокумента.СостояниеЗаказа.Код="Выполнен3" Тогда
        ОбъектДокумента.Заблокировать();
        ОбъектДокумента.СостояниеЗаказа = Справочники.СостоянияЗаказовПокупателей.НайтиПоКоду("Выполнен4");
        ОбъектДокумента.Записать(РежимЗаписиДокумента.Запись, РежимПроведенияДокумента.Неоперативный);
        ОбъектДокумента.Разблокировать();
        Сообщить("Заказ отгружен успешно!");
        Элементы.Список.Обновить();
    КонецЕсли
        
КонецЦикла;
КонецФункции 


Вуаля при нажатии на кнопку командной панели выбранные документы с состоянием "Ждет отгрузки" переходят в состояние "Отгружен". 

Спасибо за внимание.

(1) Это документ "Заказ покупателя" с видом операции "ЗаказНаряд" и возможностью проводить отгрузку/резервирование по структурным единицам, фиксировать отгрузку, зачитывать авансы и т.д.). 

Динамические списки Строка Строки Запись Проведение

См. также

Адаптация типовых решений Платформа 1С v8.3 1С:Документооборот Россия Платные (руб)

Расширение конфигурации для «1С:Документооборот КОРП», редакция 3.0. позволяет: 1.использовать произвольные табличные части в качестве дополнительных реквизитов к документу; 2 использовать произвольные табличные части в шаблонах в формате docx для автоматического заполнения таблиц.

29400 руб.

29.06.2023    5676    14    5    

24

Логистика, склад и ТМЦ Адаптация типовых решений Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Чтобы не допустить путаницы с обещаниями клиентам и для четкого контроля исполнения заказов мы используем резервирование товаров. Мы доработали УНФ, чтобы она автоматически отменяла старые резервы и не мешала эффективно продавать.

7200 руб.

02.08.2023    3925    11    0    

29

Адаптация типовых решений Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Абонемент ($m)

Каждый из нас сталкивается с ситуацией, когда какой-нибудь менеджер показывает свой Excel и рассказывает, как он что-то из 1С копирует в него, снабжает пояснениями, выделяет цветом и т.д. и т.п. Заканчивается все просьбой сделать вот чтобы также было в 1С. И оказывается такой человек (почти с гарантией) либо лучшим продажником, либо каким-то важным, за все отвечающим, - на ком все держится.

2 стартмани

22.04.2024    5104    dimanich70    15    

21

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

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

01.03.2024    5562    dimanich70    9    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. rpgshnik 3785 31.01.18 10:31 Сейчас в теме
Я правильно понимаю, вы внесли доработку в конфигурацию на изменение выделенных заказов?
В комплексной автоматизации 2 / ЕРП типовой функционал, разве нет его у вас в УНФ?
Прикрепленные файлы:
4. DENSKR 16 31.01.18 11:06 Сейчас в теме
(1)К большому сожалению типового функционала нет.
7. rpgshnik 3785 31.01.18 11:15 Сейчас в теме
(4) Хм... странно что нет, элементарная вещь вроде.
2. Naposaram 299 31.01.18 10:33 Сейчас в теме
А зачем для этого писать "статью", это же элементарно...
mr_tuzlukov; A_Max; pm74; +3 Ответить
5. DENSKR 16 31.01.18 11:07 Сейчас в теме
(2)Зачем читать статью если это элементарно?
8. Naposaram 299 31.01.18 12:28 Сейчас в теме
(5) А кто сказал, что её читал?
3. rpgshnik 3785 31.01.18 10:34 Сейчас в теме
в УАТ 2.1 вообще есть групповая обработка прямо в списке, забавно раньше не обращал внимание
Прикрепленные файлы:
6. DENSKR 16 31.01.18 11:08 Сейчас в теме
(3), Можно было бы обойтись и подключением типовой обработки группового изменения реквизитов, но увы такого рода "костыль" описанный в статье больше по душе :)
Оставьте свое сообщение