Имя: Пароль:
1C
1С v8
Заполнение по координатам
0 ParamPamPam
 
17.12.18
12:20
Имеется 3 таблицы,
1-ТаблНоменМ:(Номенклатура,Количество)
2-ТаблСотрудникМИмя (Сотрудники)
3-ТаблНомМК (Номенклатура,Количество,Сотрудник)

Номенклатура заполняется по вертикали, а сотрудники по горизонтали. Как реализовать что бы в строчке номенклатуры и в столбце сотрудника который не работал с данной номенклатурой в ячейку поместить 0.

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




http://c.radikal.ru/c27/1812/78/908eccc74cd6.png