![]() |
![]() |
![]() |
|
Элемент неопределенного вида в запросе | ☑ | ||
---|---|---|---|---|
0
Mihalich
31.10.04
✎
19:46
|
Стоит задача: в запросе обратиться к документам одного вида, у которых есть реквизит1 неопределенного вида. Вопрос: как в запросе обратиться к свойствам справочника неопределенного вида?
Пример: ТекстЗапроса = "//{{ЗАПРОС(ff) |ТекущийДокумент = Документ.КонтактСКлиентом.ТекущийДокумент; |Клиент = Документ.КонтактСКлиентом.Клиент; |Группировка Клиент.Наименование; |Группировка ТекущийДокумент; |"//}}ЗАПРОС ; У документа КонтактСКилентом реквизит клиент - справочник неопределенного вида, поэтому вылетает ошибка: Неверно заданный путь 'Наименование'. Есть у кого-нибудь соображения по этому поводу? |
|||
1
Таня
31.10.04
✎
20:52
|
у меня наверное такое соображение есть:
ТекстЗапроса = "//{{ЗАПРОС(ff) |ТекущийДокумент = Документ.КонтактСКлиентом.ТекущийДокумент; |Клиент = Документ.КонтактСКлиентом.Клиент.Наименование; |Группировка Клиент; |Группировка ТекущийДокумент; |"//}}ЗАПРОС ; |
|||
2
Aleksey
31.10.04
✎
20:55
|
Попробуй так:
ТекстЗапроса = "//{{ЗАПРОС(ff) |ТекущийДокумент = Документ.КонтактСКлиентом.ТекущийДокумент; |КлиентНаим = Документ.КонтактСКлиентом.ВидСпр1.Клиент.Наименование, |Документ.КонтактСКлиентом.ВидСпр2.Клиент.Наименование, ....; |Группировка КлиентНаим; |Группировка ТекущийДокумент; |"//}}ЗАПРОС ; То есть при определении переменной КлиентНаим перечислить явно все виды справочника КонтактСКлиентом которые могут встретиться |
|||
3
Mihalich
01.11.04
✎
05:40
|
to (1) в этом случае и появляется ошибка: Неверно заданный путь 'Наименование'.
to (2) попробовал, тот же результат: Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Отчет.РаботаСКлиентамиЗапрос.Форма.Модуль(395)}: Клиент = Документ.КонтактСКлиентом. <<?>> ПотенциальныеКлиенты.Клиент.Наименование, Запрос[3] : Неверно заданный путь 'ПотенциальныеКлиенты' Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Отчет.РаботаСКлиентамиЗапрос.Форма.Модуль(395)}: Документ.КонтактСКлиентом. <<?>> Клиенты.Клиент.Наименование; Запрос[4] : Неверно заданный путь 'Клиенты' Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Отчет.РаботаСКлиентамиЗапрос.Форма.Модуль(395)}: Группировка Клиент <<?>> ; Запрос[5] : Переменная 'Клиент' не опеределена |
|||
4
Mihalich
01.11.04
✎
07:12
|
Уважаемый Волшебник!
У тебя есть мысли по этому поводу? |
|||
5
Волшебник
01.11.04
✎
07:13
|
Нельзя группировать по наименованиям.
|
|||
6
Mihalich
01.11.04
✎
07:18
|
to (5)
(3) приведено для примера, т.е. реально мне не нужно упорядочивать по наименованию. Вполне уместен следующий вариант: ТекстЗапроса = "//{{ЗАПРОС(ff) |ТекущийДокумент = Документ.КонтактСКлиентом.ТекущийДокумент; |Клиент = Документ.КонтактСКлиентом.Клиент; |Телефон = Документ.КонтактСКлиентом.Клиент.Телефон; |Группировка Клиент; |Группировка ТекущийДокумент; |"//}}ЗАПРОС Уточняю вопрос: как в запросе обратиться к реквизитам поля типа справочник неопределенного вида? |
|||
7
Волшебник
01.11.04
✎
07:24
|
(6) Сделай условие таким, чтобы не возникало ошибки.
|
|||
8
Mihalich
01.11.04
✎
07:32
|
Волшебнику (7)
Какое условие нужно изменить? Повторяю, следующий запрос РАБОТАЕТ: ТекстЗапроса = "//{{ЗАПРОС(ff) |ТекущийДокумент = Документ.КонтактСКлиентом.ТекущийДокумент; |Клиент = Документ.КонтактСКлиентом.Клиент; |Группировка Клиент; |Группировка ТекущийДокумент; |"//}}ЗАПРОС А токой выдает ошибку: Вполне уместен следующий вариант: ТекстЗапроса = "//{{ЗАПРОС(ff) |ТекущийДокумент = Документ.КонтактСКлиентом.ТекущийДокумент; |Клиент = Документ.КонтактСКлиентом.Клиент; |Телефон = Документ.КонтактСКлиентом.Клиент.Телефон; |Группировка Клиент; |Группировка ТекущийДокумент; |"//}}ЗАПРОС Ошибка: Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда {Отчет.РаботаСКлиентамиЗапрос.Форма.Модуль(395)}: Телефон = Документ.КонтактСКлиентом.Клиент. <<?>> Телефон; Запрос[4] : Неверно заданный путь 'Телефон' У меня Поле "клиент" в документе "КонтактСКлиентом" может быть двух видов: "Справочник.Клиенты" и "Справочник.ПотенциальныеКлиенты". В обоих справочниках есть реквизиты с именем "телефон" |
|||
9
Морозов Александр
01.11.04
✎
07:41
|
"Телефон" можно вынести из запроса...
|
|||
10
Mihalich
01.11.04
✎
07:47
|
to (9) Еще раз повторяюсь: как в запросе обратиться к реквизитам поля типа справочник неопределенного вида? Т.е. мне нужно знать принципиально, возможно такое или нет? А то, что телефон можно вынести из запроса и так понятно (не в этом суть)
|
|||
11
Морозов Александр
01.11.04
✎
08:06
|
(10)Черт его знает я просто не сталкивался... Наверно пока не схормируется запрос нельзя...
|
|||
12
Mihalich
01.11.04
✎
08:10
|
(11) спасибо за ответ.
Кто-нибудь еще сталкивался с такой проблемой? |
|||
13
Rovan
гуру
01.11.04
✎
08:48
|
(12) Это не проблема, как говорится, это фича (свойство) 7.7.
|
|||
14
Морозов Александр
01.11.04
✎
08:56
|
А если так:
|Телефон=Запрос.Клиент.Телефон; или |Телефон=Клиент.Телефон; |
|||
15
Rovan
гуру
01.11.04
✎
09:00
|
Я думаю, что в запросе вообще нельзя обращатся к реквизитам элемента (документа)неопределенного вида (можно только в общим полям документов).
|
|||
16
Mihalich
01.11.04
✎
09:19
|
to (14) ни первый, ни второй вариант не работает. (неверно заданный путь).
(13),(15) Похоже, что это так. А жаль. Придется выгрузку в ТЗ делать и с ней развлекаться, что скажеться на производительности. :) |
|||
17
Mihalich
01.11.04
✎
10:40
|
Кто-нибудь еще может высказаться по этому поводу?
|
|||
18
Морозов Александр
01.11.04
✎
10:49
|
(16)А зачем выгружать в ТЗ?
|
|||
19
Rovan
гуру
01.11.04
✎
10:51
|
(17) В чем заключается главная задача ? Что есть и что нужно получить ?
|
|||
20
Mihalich
01.11.04
✎
14:40
|
Есть документ: контакт с клиентом. В нем есть поле "клиент" типа справочник (Справочник.Клиента, Справочник.ПотенциальныеКлиенты). Необходимо получить отчет по контактам с клиентами (как потенциальным, так и постоянным). При этом необходимо помнить, что:
1. ФИО клиента не идентифицируют клиента (могут быть разные клиентыс одинаковыми ФИО). Полностью идентифицируют клинета: ФИО, телефон [, место работы, должность]. 2. Прежде чем стать клиентом, человек сначала является потенциальным клиентом. Т.е. если клиент есть в спр "Клиенты", то он наверняка есть и в спр. "потенциальные клиенты" (в спр. "Клиенты" есть ссылка на спр. "потенциальные клиенты"). 3. Отчет необходимо получить с группировкой по клиенту, при чем, если клиент являлся потенциальным клиентом, затем стал постоянным клиентом, тогда в отчет он должен входить в одну группировку (должна быть видна вся история взаимодействия с данным клиентом). Вот так. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |