Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
20 мая 2024, 10:25

Заполнение значений по координатам Номеклатура и Сотрудник

Автор NedoProgrammist, 19 дек 2018, 13:05

0 Пользователей и 1 гость просматривают эту тему.

NedoProgrammist

Делаю отчет  документа производство за смену. Необходимо по каждой номенклатуре (материалов, продукции) и сотруднику вывести его количество (вес).
Макет:



Код:


Для каждого СтрНоменклатура из ТаблНоменМ Цикл

Если ЗначениеЗаполнено(СтрНоменклатура.Номенклатура) Тогда

ОбластьНоменклатураМатериалыОбщий.Параметры.Материалы = СтрНоменклатура.Номенклатура;

ОбластьНоменклатураМатериалыОбщий.Параметры.КоличествоМат = СтрНоменклатура.Количество;

ОбластьНоменклатураМатериалыОбщий.Параметры.ЕдиницаИзмерения = СтрНоменклатура.ЕдиницаИзмерения;

ТабДокумент.Вывести(ОбластьНоменклатураМатериалыОбщий,1);

Для Каждого СтрСотрудник из ТаблСотрудникМИмя Цикл

Для Каждого СтрСотрНоменкл из ТаблНомМК.НайтиСтроки(Новый Структура("Номенклатура,Сотрудник1",СтрНоменклатура.Номенклатура,СтрСотрудник.Сотрудник1)) Цикл

Если СтрСотрудник.Сотрудник1 = СтрСотрНоменкл.Сотрудник1 Тогда

ОбластьНоменклатураМатериалыСтолбСотрудник.Параметры.КоличествоМатериалы = СтрСотрНоменкл.Количество;

ТабДокумент.Присоединить(ОбластьНоменклатураМатериалыСтолбСотрудник,1);
СчМ3=СчМ3+СтрНоменклатура.Количество;

Иначе ОбластьНоменклатураМатериалыСтолбСотрудник.Параметры.КоличествоМатериалы = 0;

ТабДокумент.Присоединить(ОбластьНоменклатураМатериалыСтолбСотрудник,1);

КонецЕсли;

КонецЦикла;

КонецЦикла;



Отчет:


Собственно вопрос, как в ячейке сотрудника который не относится к данной номенклатуре (в данный момент материалу) указать "0"?
Пример:


antoneus

Для Каждого СтрСотрудник из ТаблСотрудникМИмя Цикл
    СтрПоСотруднику = ТаблНомМК.НайтиСтроки(Новый Структура("Номенклатура,Сотрудник1",СтрНоменклатура.Номенклатура,СтрСотрудник.Сотрудник1));
    Если СтрПоСотруднику.Количество() = 0 Тогда
        ОбластьНоменклатураМатериалыСтолбСотрудник.Параметры.КоличествоМатериалы = 0
    Иначе
        ОбластьНоменклатураМатериалыСтолбСотрудник.Параметры.КоличествоМатериалы = СтрПоСотруднику[0].Количество
    КонецЕсли;
    ТабДокумент.Присоединить(ОбластьНоменклатураМатериалыСтолбСотрудник,1);
КонецЦикла;

NedoProgrammist

Цитата: antoneus от 19 дек 2018, 13:52
Для Каждого СтрСотрудник из ТаблСотрудникМИмя Цикл
    СтрПоСотруднику = ТаблНомМК.НайтиСтроки(Новый Структура("Номенклатура,Сотрудник1",СтрНоменклатура.Номенклатура,СтрСотрудник.Сотрудник1));
    Если СтрПоСотруднику.Количество() = 0 Тогда
        ОбластьНоменклатураМатериалыСтолбСотрудник.Параметры.КоличествоМатериалы = 0
    Иначе
        ОбластьНоменклатураМатериалыСтолбСотрудник.Параметры.КоличествоМатериалы = СтрПоСотруднику[0].Количество
    КонецЕсли;
    ТабДокумент.Присоединить(ОбластьНоменклатураМатериалыСтолбСотрудник,1);
КонецЦикла;


Спасибо, все работает! :zebzdr: :lol:
Пытаюсь реализовать для СерииНоменклатуры и то же самое для Продукции.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск