Имя: Пароль:
1C
1C 7.7
v7: Поиск в таблице значений
0 а кому щас легко
 
25.06.12
22:49
В ТЗ порядка 20000 строк. Есть колонка "Код" , значения кода иногда повторяются. Как найти эти самые повторяющиеся коды?
(Сделал пока так: выгружаю справочник в Таблицу значений и прокручиваю ее внутри нее самой и проверяю, очень долго получается.)
1 а кому щас легко
 
25.06.12
22:51
Наверно надо было отсортировать по коду и одним циклом бы обошелся.
2 viktor_vv
 
25.06.12
22:52
Добавь колонку счетчик, заполни 1, потом сверни по колонке код с суммрованием добавленной колонки отсортируй и выбери те, где счетчки больше 1.
3 Хряк
 
25.06.12
22:52
отсортируй по коду
если повторяются будуть лежать рядом
сначала найти значение потом в цикле см значение след строки
4 viktor_vv
 
25.06.12
22:54
(0) А зачем выгружать в ТЗ из справочника. Запросом по справочнику с группировкой по реквизиту почему не ?
5 а кому щас легко
 
25.06.12
22:56
(4) не знаю семерошных запросов
6 viktor_vv
 
25.06.12
23:06
ТекстЗапроса = "
|КодСправочника = Справочник.ТвойСправочник.Код;
|Элемент = Справочник.ТвойСправочникю.ТекущийЭлемент;
|Функция Сч = СчЁтчик();
|Группировка КодСправочника ;
|Группировка Элемент без групп ;
|";

Запрос = СоздатьОбъект("Запрос");
Запрос.Выполнить(ТекстЗапроса) ;

Пока Запрос.Группировка("КодСправочника") = 1 Цикл
  Если Запрос.Сч =1 Тогда
   Продолжить ;
  КонецЕсли ;
    Пока Запрос.Группировка("Элемент") = 1 Цикл
       Сообщить("Код : "+ Запрос.КодСправочника + "  ,  "+Запрос.Элемент);
    КонецЦикла ;
КонецЦикла ;

Как-то так.
7 viktor_vv
 
25.06.12
23:07
* Сообщить("Код : "+ Запрос.КодСправочника + "  ,  "+Запрос.Элемент");
8 viktor_vv
 
25.06.12
23:07
Тьфу, (7) не надо.
9 а кому щас легко
 
25.06.12
23:11
спасибо