сравнение значений в строках после отбора

Новая тема
Добрый день! Подскажите, можно ли после того как заполнил ТЗ и сделал свертку и отбор, сравнить полученные строки между собой по значению(определенному столбцу) и записать цифру в переменную по количеству равную одинаковым значениям в этих строках?

Код отбора после свертки:
Таб.ВыбратьСтроки();
Пока Таб.ПолучитьСтроку()=1 Цикл

Если ПустоеЗначение(Водитель)=0 Тогда
Если Таб.ФИО<>Водитель Тогда
Продолжить;
КонецЕсли;

КонецЕсли;
Если ПустоеЗначение(Марка)=0 Тогда
Если Таб.Марка<>Марка Тогда
Продолжить;
КонецЕсли;
КонецЕсли;
//сравнить как то строки
Если Таб.ДатаРаботы=Таб.ДатаРаботы тогда //сравнивать по этому значению строки
Коллл=Коллл+1;
КонецЕсли;
КонецЦикла;

//Но у меня не работает этот код, подскажите правильное решение.
Обычно в таких случаях рисуют пример таблицы и пишут "Для такой таблицы Коллл будет равен 10. Как это реализовать?"
Денис (САМАРА) пишет:
Цитата
Обычно в таких случаях рисуют пример таблицы и пишут "Для такой таблицы Коллл будет равен 10. Как это реализовать?"
а это:

Код
 Если Таб.ДатаРаботы=Таб.ДатаРаботы тогда //сравнивать по этому значению строки
тебя не смутило?
Prikum пишет:
Цитата

      
      
Денис (САМАРА) пишет:
Цитата
Обычно в таких случаях рисуют пример таблицы и пишут "Для такой таблицы Коллл будет равен 10. Как это реализовать?"
а это:
Код
  Если Таб.ДатаРаботы=Таб.ДатаРаботы тогда //сравнивать по этому значению строки 
тебя не смутило?
Это всех смущает, поэтому  и спрашиваю, как правильно это сделать
мне нужно не количество ФИО, а посчитать дни работы сотрудника. В документе могут забивать строки с одинаковой датой. Например работал сотрудник 3.04.19 Вывозил мусор и еще ниже строка 3.04.19 гладил белье. Вот мне чтоб посчитать это за 1 день, нужно эти строки соединить вместе и посчитать сколько строк получится - это и будет отработанные дни. У меня в программе заложено заполнение ТЗ по диапазону дат потом свертка по определенным значением а потом только отбор из этих полученных строк. Вот мне нужно эти полученные строки правильно посчитать. Если сверткой, то как это сделать ПОСЛЕ ОТБОРА:
Таб.ВыбратьСтроки();
Пока Таб.ПолучитьСтроку()=1 Цикл

Если ПустоеЗначение(Водитель)=0 Тогда
Если Таб.ФИО<>Водитель Тогда
Продолжить;
КонецЕсли;
Ответили: пост #6 , пост #7
Ответ на пост №5
Evgenius пишет:      
Цитата
мне нужно не количество ФИО, а посчитать дни работы сотрудника. В документе могут забивать строки с одинаковой датой. Например работал сотрудник 3.04.19 Вывозил мусор и еще ниже строка 3.04.19 гладил белье. Вот мне чтоб посчитать это за 1 день, нужно эти строки соединить вместе и посчитать сколько строк получится - это и будет отработанные дни.
тогда создавай ещё таблицу значений и её сверни как надо.
Таб2 = СоздатьОбъект("ТаблицаЗначений");
Таб.Выгрузить(Таб2);
Таб2.Свернуть("ФИО,Марка,ДатаРаботы","<нужные колонки суммирования>");
Таб2.Сортировать("ФИО+,Марка+,ДатаРаботы+");
Таб2.ВыбратьСтроки();
Пока Таб2.ПолучитьСтроку() = 1 Цикл
....

КонецЦикла;

и по ней считай количество дней.
Ответ на пост №5
Evgenius, добавляешь свертку по "ФИО, ДатаРаботы". Потом добавляешь в ТЗ колонку "СчетДней" и еще раз сворачиваешь по "ФИО", суммируя "СчетДней".
Читают тему
(гостей: 1)

Быстрый переход