|
v7: Подскажите по черному запросу | ☑ | ||
---|---|---|---|---|
0
DES
03.05.18
✎
11:21
|
Есть лицевые счета по адресам (город,улица,дом,квартира)
Как найти двойников, тех что на одном адресе имеет два и более лицевых счета? двойные адреса нашел, как выйти на их ЛС? "//{{ЗАПРОС(Сформировать) |Без итогов; |Город = Справочник.ЛицевыеСчета.Город; |Улица = Справочник.ЛицевыеСчета.Улица; |Квартира = Справочник.ЛицевыеСчета.Квартира; |Дом = Справочник.ЛицевыеСчета.Дом; |Функция Счётчик = Счётчик(); |Группировка Город; |Группировка Улица; |Группировка Дом; |Группировка Квартира; |"//}}ЗАПРОС |
|||
1
Zmich
03.05.18
✎
11:25
|
(0). |ЛС = Справочник.ЛицевыеСчета.ТекущийЭлемент;
и сделать последней группировку ЛС |
|||
2
DES
03.05.18
✎
11:28
|
ЛС тогда счетчик не будет считать?
|
|||
3
DES
03.05.18
✎
11:30
|
как я узнаю что их больше одного на адресе?
|
|||
4
Zmich
03.05.18
✎
11:37
|
(3). Внутри каждой группировки будет свой Запрос.Счётчик, только нужно убрать |Без итогов;
|
|||
5
DES
03.05.18
✎
12:26
|
а еще почему подсчет записей в справочнике
Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = " |ТекущийЭлемент = Справочник.РРИЦ_банки.ТекущийЭлемент; |Функция Счетчик = Счётчик(); |"; Запрос.Выполнить(ТекстЗапроса); Если Запрос.Счетчик=0 Тогда на файловой базе дает 0 а на скуле 1 ? |
|||
6
Ёпрст
03.05.18
✎
12:31
|
(5) в файловой базе 0 записей, в sql- 1.
А так, для (0) функция счётчик бессмысленна, ибо это не having |
|||
7
trdm
03.05.18
✎
12:32
|
(0) > Подскажите по черному запросу
Офтопик. А политкорректно ли называть такие запросы черными? |
|||
8
NSSerg
03.05.18
✎
12:34
|
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = " |Обрабатывать непомеченныенаудаление; |Город = Справочник.ЛицевыеСчета.Город; |Улица = Справочник.ЛицевыеСчета.Улица; |Квартира = Справочник.ЛицевыеСчета.Квартира; |Дом = Справочник.ЛицевыеСчета.Дом; |ЛС = Справочник.ЛицевыеСчета.ТекущийЭлемент; |Функция Счётчик = Счётчик(); |Группировка Город; |Группировка Улица; |Группировка Дом; |Группировка Квартира; |Группировка ЛС без групп;"; Запрос.выполнить(ТекстЗапроса); Пока Запрос.группиовка(1)=1 Цикл Пока ЗАпрос.группировка(2)=1 Цикл Пока ЗАпрос.группировка(3)=1 цикл Пока Запрос.группировка(4)=1 цикл сч=0; Пока ЗАпрос.группировка(5)=1 цикл сч=сч+1; КонецЦикла; Если сч>1 тогда сообщить("Ошибка"); КонецЕсли; КонецЦикла; КонецЦикла; КонецЦикла; КонецЦикла; Можно так, а можно выгрузить запрос в ТЗ, добавить колонку, заполнить её единицами, свернуть по адресу, пробежаться по строкам, и там где в добавленной колонке больше единицы - выдать ошибку. |
|||
9
NSSerg
03.05.18
✎
12:35
|
В Запросе - забыл удалить функцию "счётчик" - она там не нужна.
|
|||
10
trdm
03.05.18
✎
12:47
|
На скуле было бы проще.
|
|||
11
NSSerg
03.05.18
✎
12:49
|
(10) Куда уж проще.
|
|||
12
DES
03.05.18
✎
16:20
|
А как исключить помеченные на удаление?
|
|||
13
Chameleon1980
03.05.18
✎
18:23
|
Обрабатываит НеПомеченные на удаление. или как там
|
|||
14
Chameleon1980
03.05.18
✎
18:24
|
в самом начале запроса
Обрабатывать НеПомеченныеНаУдаление; |
|||
15
Злопчинский
03.05.18
✎
19:19
|
(12) СП по языку запросов почитай - там есть
|
|||
16
DES
03.05.18
✎
22:06
|
(6) в скуле тоже 0, только что создан справочник.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |