|
Выбор объектов, имеющих идентичное содержание в табличной части | ☑ | ||
---|---|---|---|---|
0
Paradox
21.06.13
✎
11:10
|
Можно ли как-то реализовать в запросе данную задачу? Например, в базе введен:
Документ №1: 1. Молоко 2. Кефир 3. Булка В базе имеются другие документы: Документ №2: 1. Молоко 2. Кефир 3. Булка Документ №3 1. Молоко 2. Булка 3. Кефир Задача в том, что бы найти документ, по содержанию идентичный табличной части Документ №1. Документ №3 должен исключаться. Кодом реализовать данный алгоритм не сложно, будет много переборов строк ТЧ исходного документа и искомых...но это долго. Можно как то запросом получить идентичные табличные части? Спасибо. |
|||
1
Ненавижу 1С
гуру
21.06.13
✎
11:14
|
(0) можно
|
|||
2
Лефмихалыч
21.06.13
✎
11:16
|
Соединить чо-нит с чем-нить в запросе
|
|||
3
Paradox
21.06.13
✎
11:19
|
а можно хотя бы план запроса?) или пример (ну это уж совсем халява будет, но приятная)
пока придумал такой план: 1. выбираю в ВТ исходный документ и общее число строк в ТЧ у него 2. Беру все документы и получаю так же количество строк у них. В ВТ 3. Фильтрую полученный список документов, до списка с равным количеством строк с исходным документов 4. получаю ТЧ найденных документов 5. получаю ТЧ исходного документа 6. Соединяю ТЧ исходного докумета с ТЧ найденных документов по всем полям ТЧ (номер строки, номенклатура, количество) в результате все хорошо, много чего лишнего отсекается, но по описанному примеру, попадает документ №3...т.е попадают все доки с одинаковым набором строк, но порядок строк может различаться... |
|||
4
Лефмихалыч
21.06.13
✎
11:20
|
ВЫБРАТЬ
Товар, НомерСтроки Поместить Повторы ИЗ Документ.ТвойДокумент.ТвояТабличнаяЧасть Сгруппировать по Товар, НомерСтроки ИМЕЮЩИЕ КОЛИЧЕСТВО(Ссылка) > 1 ; Выбрать РАЗЛИЧНЫЕ ТЧ.Ссылка Поместить ВсеСсылки ИЗ Документ.ТвойДокумент.ТвояТабличнаяЧасть как ТЧ ВНУТРЕННЕЕ СОЕДИНЕНИЕ Повторы по товар и НомерСтроки |
|||
5
zak555
21.06.13
✎
11:21
|
а если документ № 2 будет вида :?
1. Молоко 2. Булка 3. Кефир |
|||
6
Лефмихалыч
21.06.13
✎
11:21
|
это заготовка.
Туда еще нужно добавить: 1. максимум по номеру строки 2. соединение ВсеСсылки с табличными частями 3. ну и там и так далее Автор, нахрен это надо вообще? |
|||
7
Лефмихалыч
21.06.13
✎
11:22
|
для исследования вских корреляций, медиан и прочего матана есть специально заточенный объект АнализДанных, может тебе он нужен?
|
|||
8
RomaH
naïve
21.06.13
✎
11:23
|
почему только док №3? а почему второй нет?
|
|||
9
Paradox
21.06.13
✎
11:24
|
(5) до документ №2 не должен попасть в запрос) ТЧ должны быть полностью идентичными как у исходного документа
|
|||
10
Ненавижу 1С
гуру
21.06.13
✎
11:26
|
выбрать различные
а1.ссылка как ссылка1, а2.ссылка как ссылка2, поместить вхождение из а.товары как а1 левое соединение а.товары как а2 по а1.номенклатура=а2.номенклатура и а1.номерстроки=а2. номерстроки и а1.ссылка<>а2.ссылка; выбрать различные вхождение1.ссылка из вхождение как вхождение1 внутреннее соединение вхождение как вхождени2 по вхождение1.ссылка1=вхождение2.ссылка2 и вхождение1.ссылка2=вхождение2.ссылка1 |
|||
11
Paradox
21.06.13
✎
11:27
|
В общем как я понял, это Зопа, использовать запрос для этой цели, надо что-то другое придумать.
Левмихалыч, надо, очень) |
|||
12
Ненавижу 1С
гуру
21.06.13
✎
11:28
|
+(10) а нет, надо там классы сделать, но идея же понятна?
|
|||
13
Paradox
21.06.13
✎
11:32
|
(12) как понять классы сделать?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |