Имя: Пароль:
1C
1С v8
КАК проверить ТЗ на уникальность записей без использования запроса?
,
0 suvolod
 
30.01.13
07:42
Есть ТЗ, в которой могут встречаться дубли номенклатуры. Хочется как-то этот факт отловить, причем мне интересно решение  именно через ТЗ. Начало кода:

ТЗ = СсылкаНаОбъект.Товары.Выгрузить("Номенклатура");
ТЗ.Колонки.Добавить("Количество");
ТЗ.ЗаполнитьЗначения(1, "Количество");
ТЗ.Свернуть("Номенклатура", "Количество");

после сворачивания в поле количество может быть 2, 3... n записей. Я правильно понимаю, что специального метода (типа Найти или НайтиСтроки) для поиска или отбора по условию Значение > какого-то числа у таблицы нет? .... а значит придется делать обычный перебор и сравнение в цикле?
1 0xFFFFFF
 
30.01.13
07:43
сравнить количество строк до и после сворачивания
2 Wobland
 
30.01.13
07:44
придётся делать запрос
3 suvolod
 
30.01.13
07:45
(1) точно! и даже возиться с доп. колонкой количество не нужно. спасибо :)..
4 suvolod
 
30.01.13
07:50
Добью вопрос: предложенное 0xFFFFFF решение рабочее, с небольшим минусом - нет аналитики  - т.е. название задублированной номенклатуры я юзеру уже выдать не смогу. Получается, что для детализации дублей все равно нужен будет перебор, без вариантов?
5 kosts
 
30.01.13
07:57
(4) Почему так боишься переборов, у тебя ТЗ на миллион строк?
6 Живой Ископаемый
 
30.01.13
08:04
2(4) у тебя ведь в колонке количество единицы. если ты свернешь, сказав эту колонку суммировать, по повторяющейся аналитике будет больше единицы
7 suvolod
 
30.01.13
08:08
(5)Переборов не боюсь, просто было интересно - вдруг есть решение изящнее.
(6) Всё так и есть, хотелось просто узнать, можно ли как-то выбрать эти записи, где Количество>1 без перебора в цикле.

Ладно, кажется, я слишком многого хотел, большое спасибо за обсуждение. Тему можно считать закрытой.
8 wel_ko
 
30.01.13
08:28
в свое время делал так. Сортировка по количеству, например по убыванию. потом нахождении строки с количеством 1. И выгрузка с начала ТЗ по найденную строку-1 в другую ТЗ.
Но может это не совсем то, что тебе нужно в данном случае.
9 Рэйв
 
30.01.13
08:31
(7)Отсортируй колонку количество по убыванию..Те, что >1(если есть) будут первыми
10 Лефмихалыч
 
30.01.13
08:32
(0) а зачем это делать без использования запроса?
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn