![]() |
|
Проверка на несколько карточек физических лиц | ☑ | ||
---|---|---|---|---|
0
LivingStar
01.11.19
✎
06:51
|
Задача вроде бы простая. Но как то не могу сообладать с правильным решением.
Нужно сделать проверку на несколько карточек физических лиц. Есть таблица физических лиц. Делать это перебором этой таблицы, и в цикле делать запрос по справочнику физические лица? Смотреть если в выборке больше одной запись, то выводить ??? В принципе все сработает, напрягает что запрос будет в цикле. Но можно же так? |
|||
1
shadow_sw
01.11.19
✎
06:52
|
Нужно больше тем :))) еще 10 открой
|
|||
2
shadow_sw
01.11.19
✎
06:53
|
выбрать 1 не умеешь в запросе?
|
|||
3
LivingStar
01.11.19
✎
06:55
|
(2) Что выбрать????? Мне нужно вывести коды дублей физических лиц. Я написал как хочу это сделать в (0).
А вы что предлагаете???????? Как делать вашим методом? Покажете? |
|||
4
LivingStar
01.11.19
✎
06:58
|
(2) нет таких идей
|
|||
5
Paint_NET
01.11.19
✎
06:59
|
Какой ещё цикл?
Выбери все значения, сгруппированные по ФИО или другому уникальному реквизиту, где количество > 1 |
|||
6
Sergz66
01.11.19
✎
07:00
|
......
Сгруппировать ...... Имеющие ...... |
|||
7
LivingStar
01.11.19
✎
07:00
|
(5) Что такое количество > 1 ?
|
|||
8
Paint_NET
01.11.19
✎
07:02
|
ВЫБРАТЬ
Пользователи.ФизическоеЛицо.Наименование КАК ФизическоеЛицоНаименование, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Пользователи.Ссылка) КАК Ссылка ИЗ Справочник.Пользователи КАК Пользователи СГРУППИРОВАТЬ ПО Пользователи.ФизическоеЛицо.Наименование ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Пользователи.Ссылка) > 1 Как-то так. |
|||
9
LivingStar
01.11.19
✎
07:05
|
(8) Что за пользователи не понятно.
ВЫБРАТЬ ФизическиеЛица.Код КАК Код, ФизическиеЛица.Ссылка КАК Ссылка, ФизическиеЛица.ФИО КАК ФИО, ФизическиеЛица.СтраховойНомерПФР КАК СтраховойНомерПФР ИЗ Справочник.ФизическиеЛица КАК ФизическиеЛица Хотелось бы найти дубли по СНИЛС или ФИО . |
|||
10
catena
01.11.19
✎
07:06
|
(9)переделай запрос из (8) под себя
|
|||
11
LivingStar
01.11.19
✎
07:09
|
Так верно?
ВЫБРАТЬ ФизическиеЛица.ФИО КАК ФИО, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) КАК Ссылка ИЗ Справочник.ФизическиеЛица КАК ФизическиеЛица СГРУППИРОВАТЬ ПО ФизическиеЛица.ФИО ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) > 1 |
|||
12
Paint_NET
01.11.19
✎
07:10
|
(11) Да, так ты получишь список всех дублей ФИО. Теперь если хочешь получить ссылку, можешь к этому запросу левым соединением прикрутить справочник физлиц с выводом ссылок.
|
|||
13
Йохохо
01.11.19
✎
07:11
|
(12) максимум
|
|||
14
LivingStar
01.11.19
✎
07:12
|
(12) Так правильно?
ВЫБРАТЬ ФизическиеЛица.ФИО КАК ФИО, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) КАК Ссылка, ФизическиеЛица1.Ссылка КАК Ссылка1 ИЗ Справочник.ФизическиеЛица КАК ФизическиеЛица ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица1 ПО ФизическиеЛица.Ссылка = ФизическиеЛица1.Ссылка СГРУППИРОВАТЬ ПО ФизическиеЛица.ФИО, ФизическиеЛица1.Ссылка ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) > 1 |
|||
15
catena
01.11.19
✎
07:13
|
(14)нет, группировка по ссылка даст количество(ссылка) всегда равным 1
|
|||
16
LivingStar
01.11.19
✎
07:13
|
Что то (14) не работает
|
|||
17
LivingStar
01.11.19
✎
07:14
|
как правильно сделать?
|
|||
18
Paint_NET
01.11.19
✎
07:15
|
(13) Да, точно, без левого соединения же можно :)
|
|||
19
Paint_NET
01.11.19
✎
07:15
|
+(18) Хотя не, оно же только одну ссылку выведет. А нужно все дубли, как правило.
|
|||
20
Paint_NET
01.11.19
✎
07:16
|
(17) Ссылку выкинь.
|
|||
21
Sergz66
01.11.19
✎
07:23
|
(0)Лучше закрыть конфигуратор... Открыть в пользовательском режиме обработку Поиск и удаление дублей. Есть вроде во всех типовых.
|
|||
22
LivingStar
01.11.19
✎
07:28
|
тут все верно?
ВЫБРАТЬ ФизическиеЛица.ФИО КАК ФИО, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) КАК КоличествоДублей ПОМЕСТИТЬ ВТ_Дубли ИЗ Справочник.ФизическиеЛица КАК ФизическиеЛица СГРУППИРОВАТЬ ПО ФизическиеЛица.ФИО ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) > 1 ; ///////////////////////////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ФизическиеЛица.ФИО КАК ФИО, ФизическиеЛица.Ссылка ИЗ ВТ_Дубли КАК ВТ_Дубли ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица ПО ВТ_Дубли.ФИО = ФизическиеЛица.ФИО СГРУППИРОВАТЬ ПО ФизическиеЛица.Ссылка, ФизическиеЛица.ФИО УПОРЯДОЧИТЬ ПО ФизическиеЛица.ФИО |
|||
23
LivingStar
01.11.19
✎
07:31
|
А если мне нужно искать по переданной параметром таблицей значений?
То есть по ФИО ил этой таблицы, дубли в справочнике ФизическиеЛица. Как её встроить в запрос? |
|||
24
Paint_NET
01.11.19
✎
07:36
|
||||
25
Paint_NET
01.11.19
✎
07:37
|
(22) Во втором пакете группировка не нужна. Хотя работать будет и с ней.
|
|||
26
ads55
01.11.19
✎
07:41
|
(0) а для чего лисапед?
в ЗУПе же есть "Обработки.ОбъединениеКарточекСЛичнымиДанными". Или учебная задача? |
|||
27
shadow_sw
01.11.19
✎
07:44
|
||||
28
ads55
01.11.19
✎
07:50
|
(27) а понял, спс. Пошел работать дальше.
|
|||
29
hhhh
01.11.19
✎
07:55
|
(23) Тебе же вчера уже объяснили, как встроить таблицу значений в запрос. И ты уже встроил. Вспоминай уже.
|
|||
30
LivingStar
01.11.19
✎
07:57
|
почему так не выбирает? Я передаю список ФИО, среди которого хочу искать дубли
ВЫБРАТЬ ФизическиеЛица.ФИО КАК ФИО, КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) КАК КоличествоДублей ПОМЕСТИТЬ ВТ_Дубли ИЗ Справочник.ФизическиеЛица КАК ФизическиеЛица ГДЕ ФизическиеЛица.Ссылка В(&СписокФизЛиц) СГРУППИРОВАТЬ ПО ФизическиеЛица.ФИО ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) > 1 ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ФизическиеЛица.ФИО КАК ФИО, ФизическиеЛица.Ссылка КАК Ссылка ИЗ ВТ_Дубли КАК ВТ_Дубли ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица ПО ВТ_Дубли.ФИО = ФизическиеЛица.ФИО СГРУППИРОВАТЬ ПО ФизическиеЛица.Ссылка, ФизическиеЛица.ФИО УПОРЯДОЧИТЬ ПО ФизическиеЛица.ФИО |
|||
31
Paint_NET
01.11.19
✎
08:23
|
(30) Потому что &СписокФизЛиц - это не список, а ТЗ, в нём нет никаких ссылок, есть только ФИО, и не надо в первом пакете лезть в справочник, обращайся напрямую к ТЗ.
|
|||
32
LivingStar
01.11.19
✎
08:38
|
(31) Как не список, когда я в консоле запросов создал список значений.
|
|||
33
LivingStar
01.11.19
✎
08:38
|
(31) Как обращаться на прямую в ТЗ?
В список я вроде как ссылки на физ лица и добавляю, все должно быть в порядке. А не работает ( |
|||
34
catena
01.11.19
✎
08:50
|
"вроде как" и "не работает" - не слишком точное описание. Показывай скрины, что в списке, что в результате. Ты обе дублирующие ссылки в список добавил или только одну и ждешь, что найдет вторую?
|
|||
35
ice777
01.11.19
✎
09:13
|
что за конфиг я не знаю, но идентифицировать физлиц по ФИО это что-то. У меня фио- в регистре сведений.
Ибо вчера тетка Петрова, а завтра- Сидорова. |
|||
36
LivingStar
01.11.19
✎
09:55
|
(35) Похоже вы кстати правы.
Есть регистр сведений ФИОФизическихЛиц, тогда извлекать нужно из него? А не из справочника. |
|||
37
LivingStar
01.11.19
✎
13:26
|
Подскажите пожалуйста по запросу. А то вечер, плохо соображается. Этот запрос выбирает не корректные данные.
Почему???? ФИО, не соответствует выбранным. Запрос.Текст = "ВЫБРАТЬ | Таблица.Колонка1 КАК ФИОФизЛица, | Таблица.Колонка2 КАК Рост, | Таблица.Колонка3 КАК РазмерОдежды, | Таблица.Колонка4 КАК РазмерОбуви, | Таблица.Колонка5 КАК РазмерГоловногоУбора, | Таблица.Колонка6 КАК РазмерПротивогаза, | Таблица.Колонка7 КАК РазмерРеспиратора, | Таблица.Колонка8 КАК РазмерПерчаток, | Таблица.Колонка9 КАК РазмерРукавиц, | Таблица.Колонка10 КАК СНИЛС |ПОМЕСТИТЬ ВТ_АнтропометрическиеСведения |ИЗ | &Таблица КАК Таблица |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ФизическиеЛица.Ссылка КАК ФизическоеЛицоСсылка, | ФизическиеЛица.Фамилия КАК Фамилия, | ФизическиеЛица.Имя КАК Имя, | ФизическиеЛица.Отчество КАК Отчество, | ФизическиеЛица.ФИО КАК ФИО, | ФизическиеЛица.СтраховойНомерПФР КАК СтраховойНомерПФР, | ВТ_АнтропометрическиеСведения.ФИОФизЛица КАК ФИОФизЛица, | ВТ_АнтропометрическиеСведения.Рост КАК Рост, | ВТ_АнтропометрическиеСведения.РазмерОдежды КАК РазмерОдежды, | ВТ_АнтропометрическиеСведения.РазмерОбуви КАК РазмерОбуви, | ВТ_АнтропометрическиеСведения.РазмерГоловногоУбора КАК РазмерГоловногоУбора, | ВТ_АнтропометрическиеСведения.РазмерПротивогаза КАК РазмерПротивогаза, | ВТ_АнтропометрическиеСведения.РазмерРеспиратора КАК РазмерРеспиратора, | ВТ_АнтропометрическиеСведения.РазмерПерчаток КАК РазмерПерчаток, | ВТ_АнтропометрическиеСведения.РазмерРукавиц КАК РазмерРукавиц, | ВТ_АнтропометрическиеСведения.СНИЛС КАК СНИЛС |ИЗ | ВТ_АнтропометрическиеСведения КАК ВТ_АнтропометрическиеСведения | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица | ПО (ФизическиеЛица.СтраховойНомерПФР = ВТ_АнтропометрическиеСведения.СНИЛС | ИЛИ ВТ_АнтропометрическиеСведения.ФИОФизЛица = ФизическиеЛица.ФИО)"; Запрос.УстановитьПараметр("Таблица", ТаблицаРезультат); |
|||
38
hhhh
01.11.19
✎
13:38
|
(37) что значит "некорректные"?
|
|||
39
LivingStar
01.11.19
✎
13:48
|
||||
40
hhhh
01.11.19
✎
13:55
|
(39) ну может снилс совпадает. У тебя же условие ИЛИ.
|
|||
41
LivingStar
01.11.19
✎
14:18
|
снилс там нет вообще в справочнике для этой строки, а вы видите произошла связка соединения, почему???????
Я это и хочу понять и выявить как это исправить что бы выбиралось нормально. |
|||
42
LivingStar
04.11.19
✎
08:01
|
(37) Это решено, в первом пакете там нужно если нет СНИЛС ставить "-".
Тогда во втором нормально идет выборка. Подскажите ещё пожалуйста по выборке дублирующихся записей справочника физические лица. |
|||
43
Мимохожий Однако
04.11.19
✎
08:11
|
(0) Есть типовая обработка Поиск и замена дублей справочника. Выбираешь справочник Физические лица и вперед
|
|||
44
LivingStar
04.11.19
✎
10:23
|
(31) То есть всего будет три пакета? В случае передачи таблицы значения параметром ?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |