Данные для заполнения колонок «В одном месте», «Мест, штук» берутся из справочника Единицы измерения. Единица измерения и коэффициент соответственно.
Проверено на УНФ 1.4.9.44 и 1.5.2.26.
Для заполнения колонки «Масса брутто» необходимо в конфигурацию добавить непериодический регистр сведений. Изменения существующих объектов конфигурации не требуется.
Данные о количестве мест выводятся в любом случае.
Кому нужен вес единиц измерения, далее описание регистра и формы.
Имя регистра: dev_ЕдиницаИзмеренияВес
Измерения: ЕдиницаИзмерения тип СправочникСсылка.ЕдиницыИзмерения
Ресурсы: ВесКг тип Число 15,3
Объем тип Число 15,3
ФормаСписка.
Используется форма списка. Выводятся все имеющиеся в справочнике Единицы измерения элементы с указанием номенклатуры. Отбор по счету учета номенклатуры = Товары (41).
Удаляем автоматически создаваемый динамический список. Добававляем.
Реквизиты:
Список ТИП (ТаблицаЗначений)
Колонки:
Номенклатура Тип СправочникСсылка.Номенклатура
ЕдиницаИзмерения Тип СправочникСсылка.ЕдиницыИзмерения
БазоваяЕдиница Тип СправочникСсылка.КлассификаторЕдиницИзмерения
ВесКг Тип Число 15,3
Объем Тип Число 15,3
Выносим Список на форму.
Модуль формы:
//////////////////////////////////////////////////////
&НаКлиенте
Перем НомерСтроки;
&НаКлиенте
Перем НужноЗаписать;
// ОТКРЫТИЕ ФОРМЫ
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Таблица = ПолучитьСписок();
ЗначениеВДанныеФормы(Таблица, Список);
КонецПроцедуры
&НаСервереБезКонтекста
Функция ПолучитьСписок()
ТекстЗапроса =
"ВЫБРАТЬ
| ЕдиницыИзмерения.Владелец КАК Номенклатура,
| ЕдиницыИзмерения.Ссылка КАК ЕдиницаИзмерения,
| ЕдиницыИзмерения.Владелец.ЕдиницаИзмерения КАК БазоваяЕдиница,
| dev_ЕдиницаИзмеренияВес.ВесКг,
| dev_ЕдиницаИзмеренияВес.Объем
|ИЗ
| Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.dev_ЕдиницаИзмеренияВес КАК dev_ЕдиницаИзмеренияВес
| ПО ЕдиницыИзмерения.Ссылка = dev_ЕдиницаИзмеренияВес.ЕдиницаИзмерения
|ГДЕ
| ЕдиницыИзмерения.Владелец.СчетУчетаЗапасов = ЗНАЧЕНИЕ(ПланСчетов.Управленческий.ТоварыПродукция)
|
|УПОРЯДОЧИТЬ ПО
| Номенклатура,
| ЕдиницаИзмерения";
Запрос = Новый Запрос;
Запрос.Текст = ТекстЗапроса;
Возврат Запрос.Выполнить().Выгрузить();
КонецФункции
&НаКлиенте
Процедура ПриОткрытии(Отказ)
НужноЗаписать = Ложь;
КонецПроцедуры
// ЗАПИСЬ ЗАПИСИ РЕГИСТРА при изменении активной строки или при закрытии формы
&НаСервереБезКонтекста
Процедура Записать(ДанныеСтруктура)
Набор = РегистрыСведений.dev_ЕдиницаИзмеренияВес.СоздатьНаборЗаписей();
Набор.Отбор.ЕдиницаИзмерения.Установить(ДанныеСтруктура.ЕдиницаИзмерения);
Если ДанныеСтруктура.ВесКг = 0 И ДанныеСтруктура.Объем = 0 Тогда
Набор.Прочитать();
Набор.Удалить(0);
Иначе
Запись = Набор.Добавить();
Запись.ЕдиницаИзмерения = ДанныеСтруктура.ЕдиницаИзмерения;
Запись.ВесКг = ДанныеСтруктура.ВесКг;
Запись.Объем = ДанныеСтруктура.Объем;
КонецЕсли;
Набор.Записать(Истина);
КонецПроцедуры
&НаКлиенте
Процедура СписокПриАктивизацииСтроки(Элемент)
Если НужноЗаписать Тогда
Строка = Список.Получить(НомерСтроки);
ДанныеСтруктура = Новый Структура;
ДанныеСтруктура.Вставить("ЕдиницаИзмерения", Строка.ЕдиницаИзмерения);
ДанныеСтруктура.Вставить("ВесКг", Строка.ВесКг);
ДанныеСтруктура.Вставить("Объем", Строка.Объем);
Записать(ДанныеСтруктура);
КонецЕсли;
НомерСтроки = Элемент.ТекущиеДанные.ПолучитьИдентификатор();
НужноЗаписать = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура СписокВесКгПриИзменении(Элемент)
НужноЗаписать = Истина;
КонецПроцедуры
&НаКлиенте
Процедура СписокОбъемПриИзменении(Элемент)
НужноЗаписать = Истина;
КонецПроцедуры
&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
Если НужноЗаписать Тогда
Строка = Список.Получить(НомерСтроки);
ДанныеСтруктура = Новый Структура;
ДанныеСтруктура.Вставить("ЕдиницаИзмерения", Строка.ЕдиницаИзмерения);
ДанныеСтруктура.Вставить("ВесКг", Строка.ВесКг);
ДанныеСтруктура.Вставить("Объем", Строка.Объем);
Записать(ДанныеСтруктура);
КонецЕсли;
КонецПроцедуры
//////////////////////////////////////////////////////
Как раз понадобилась ТОРГ12 с количеством мест и массой Брутто. Будем пробовать.
А для 1.6 не модифицировали?
(2) Обновил релиз до последнего и увидел, что работает из коробки.