|
изменение условия запроса | ☑ | ||
---|---|---|---|---|
0
Vasus55
18.01.12
✎
20:46
|
как программно можно отключать одно из условий запроса?
ВЫБРАТЬ РАЗРЕШЕННЫЕ ОбслуживаемыеКлиентыКонтакты.ДатаИВремя, ОбслуживаемыеКлиентыКонтакты.ТипКонтакта, ОбслуживаемыеКлиентыКонтакты.Комментарии, ВЫБОР КОГДА Контакт.Порядок = 4 ТОГДА 1 ИНАЧЕ 0 КОНЕЦ КАК КоличествоВстреч, ОбслуживаемыеКлиентыКонтакты.Ссылка.Менеджер, ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент, ВЫБОР КОГДА Контакт.Порядок = 0 ИЛИ Контакт.Порядок = 1 ТОГДА 1 ИНАЧЕ 0 КОНЕЦ КАК КоличествоЗвонков ИЗ Документ.ОбслуживаемыеКлиенты.Контакты КАК ОбслуживаемыеКлиентыКонтакты ЛЕВОЕ СОЕДИНЕНИЕ Перечисление.ТипКонтакта КАК Контакт ПО ОбслуживаемыеКлиентыКонтакты.ТипКонтакта = Контакт.Ссылка ГДЕ ОбслуживаемыеКлиентыКонтакты.ДатаИВремя МЕЖДУ &ДатаНачала И &ДатаОкончания И ОбслуживаемыеКлиентыКонтакты.Ссылка.Менеджер = &Менеджер И ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент = &Контрагент Необходимо чтобы если в поле контрагент ничего не заполнено, то последние условие не учитывалось при выводе результатов. |
|||
1
vicof
18.01.12
✎
20:49
|
Если ЗначениеЗаполнено(Контрагент) Тогда
|
|||
2
vicof
18.01.12
✎
20:50
|
СтрЗаменить(ТекстЗапроса, "И ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент = &Контрагент", "")
|
|||
3
vicof
18.01.12
✎
20:50
|
(1) *Не ЗначениеЗаполнено
|
|||
4
Vasus55
18.01.12
✎
21:05
|
(3)сделал так
выдает ошибку при вызове метода контекста (НайтиПараметры), синтаксическая ошибка "Когда" И ... ВЫБОР КОГДА НЕ ЗначениеЗаполнено(&Контрагент) ТОГДА СтрЗаменить(ТекстЗапроса, "И ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент = &Контрагент", "") ИНАЧЕ ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент = &Контрагент КОНЕЦ |
|||
5
Vasus55
18.01.12
✎
21:05
|
* (3)сделал так
выдает ошибку при вызове метода контекста (НайтиПараметры), синтаксическая ошибка "Когда" И ... ВЫБРАТЬ РАЗРЕШЕННЫЕ ОбслуживаемыеКлиентыКонтакты.ДатаИВремя, ОбслуживаемыеКлиентыКонтакты.ТипКонтакта, ОбслуживаемыеКлиентыКонтакты.Комментарии, ВЫБОР КОГДА Контакт.Порядок = 4 ТОГДА 1 ИНАЧЕ 0 КОНЕЦ КАК КоличествоВстреч, ОбслуживаемыеКлиентыКонтакты.Ссылка.Менеджер, ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент, ВЫБОР КОГДА Контакт.Порядок = 0 ИЛИ Контакт.Порядок = 1 ТОГДА 1 ИНАЧЕ 0 КОНЕЦ КАК КоличествоЗвонков ИЗ Документ.ОбслуживаемыеКлиенты.Контакты КАК ОбслуживаемыеКлиентыКонтакты ЛЕВОЕ СОЕДИНЕНИЕ Перечисление.ТипКонтакта КАК Контакт ПО ОбслуживаемыеКлиентыКонтакты.ТипКонтакта = Контакт.Ссылка ГДЕ ОбслуживаемыеКлиентыКонтакты.ДатаИВремя МЕЖДУ &ДатаНачала И &ДатаОкончания И ОбслуживаемыеКлиентыКонтакты.Ссылка.Менеджер = &Менеджер И Когда НЕ ЗначениеЗаполнено(Контрагент) Тогда СтрЗаменить(ТекстЗапроса, "И ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент = &Контрагент", "") ИНАЧЕ ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент = &Контрагент КОНЕЦ |
|||
6
vicof
18.01.12
✎
21:09
|
Не в тексте же запроса его менять.
Почитай СП для начала. |
|||
7
Лефмихалыч
18.01.12
✎
21:10
|
будь мужиком, юзай построитель... блеать
|
|||
8
Vasus55
18.01.12
✎
21:24
|
(7) ошибки))))
{Отчет.ЭтапыРаботыСКлиентом1.Форма.ЭтапыРаботыСКлиентом1.Форма(90,24)}: Ожидается выражение Если ЗначениеЗаполнено(<<?>>&Менеджер) Тогда (Проверка: Толстый клиент (обычное приложение)) {Отчет.ЭтапыРаботыСКлиентом1.Форма.ЭтапыРаботыСКлиентом1.Форма(90,6)}: Недостаточно фактических параметров (ЗначениеЗаполнено) Если <<?>>ЗначениеЗаполнено(&Менеджер) Тогда (Проверка: Толстый клиент (обычное приложение)) {Отчет.ЭтапыРаботыСКлиентом1.Форма.ЭтапыРаботыСКлиентом1.Форма(97,24)}: Ожидается выражение Если ЗначениеЗаполнено(<<?>>&Контрагент) Тогда (Проверка: Толстый клиент (обычное приложение)) {Отчет.ЭтапыРаботыСКлиентом1.Форма.ЭтапыРаботыСКлиентом1.Форма(97,6)}: Недостаточно фактических параметров (ЗначениеЗаполнено) Если <<?>>ЗначениеЗаполнено(&Контрагент) Тогда (Проверка: Толстый клиент (обычное приложение)) |
|||
9
Vasus55
18.01.12
✎
21:45
|
помогите исправить ошибку....((
|
|||
10
Vasus55
18.01.12
✎
22:03
|
работает, но только на заполненные параметры, а если не заполненно поле то ничего не выдает
|
|||
11
Vasus55
18.01.12
✎
22:16
|
Если ЗначениеЗаполнено(Менеджер) Тогда
ЭлементОтбора = ПостроительОтчетаЭтапыРаботыСКлиентом1.Отбор.Добавить("Менеджер"); ЭлементОтбора.ВидСравнения = ?(Менеджер.ЭтоГруппа, ВидСравнения.ВГруппе, ВидСравнения.Равно); ЭлементОтбора.Значение = Менеджер; ЭлементОтбора.Использование = Истина; Иначе ЭлементОтбора.Установить(Ложь); так не работает |
|||
12
Vasus55
18.01.12
✎
22:29
|
ЭлементОтбора.Использование =Ложь;
и так тоже((( |
|||
13
Vasus55
18.01.12
✎
22:30
|
кто нить вообще знает как решить проблему???
|
|||
14
GROOVY
18.01.12
✎
22:31
|
И ОбслуживаемыеКлиентыКонтакты.Ссылка.Менеджер = &Менеджер
И (ОбслуживаемыеКлиентыКонтакты.Ссылка.Контрагент = &Контрагент ИЛИ &Контрагент = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)) |
|||
15
Vasus55
19.01.12
✎
12:30
|
(14) а как для даты тоже самое написать?
|
|||
16
1с-кин
19.01.12
✎
12:35
|
(15) пустая Дата - это 01.01.01, задай параметр ПустаяДата, и сравнивай с ним.
|
|||
17
Vasus55
19.01.12
✎
12:45
|
(ОбслуживаемыеКлиентыКонтакты.ДатаИВремя МЕЖДУ &ДатаНачала И &ДатаОкончания
| ИЛИ &ДатаИВремя =&ПустаяДата) сделал так, ошибку ввдает |
|||
18
Wobland
19.01.12
✎
12:47
|
(17) =ДАТАВРЕМЯ(1, 1, 1)
|
|||
19
Vasus55
19.01.12
✎
12:58
|
(ОбслуживаемыеКлиентыКонтакты.ДатаИВремя МЕЖДУ &ДатаНачала И &ДатаОкончания
| ИЛИ &ДатаИВремя =Дата('01.01.0001')) тоже не работает, (ОбслуживаемыеКлиентыКонтакты.ДатаИВремя МЕЖДУ &ДатаНачала И &ДатаОкончания | ИЛИ &ДатаИВремя =ДатаИВремя(01.01.01)) тоже не работает |
|||
20
1с-кин
19.01.12
✎
12:58
|
(17) Пустая дата - это УстановитьПараметр ("ПустаяДата", Дата(1,1,1));
|
|||
21
Wobland
19.01.12
✎
12:58
|
(19) =ДАТАВРЕМЯ(1, 1, 1)
|
|||
22
1с-кин
19.01.12
✎
13:00
|
(19) что за Дата('01.01.0001'), да еще и дата в запросе????
что за ДатаИВремя(01.01.01)???? |
|||
23
Vasus55
19.01.12
✎
14:32
|
(21)пишет значение не задано значение параметра ДатаИВремя
|
|||
24
Wobland
19.01.12
✎
14:35
|
(23) как? ты не задал значение параметра ДатаИВремя?
|
|||
25
Vasus55
19.01.12
✎
14:37
|
а какое значение ему нужно задать если мне нужно чтобы отчет формировалалсь как при выборе даты так и нет
|
|||
26
Wobland
19.01.12
✎
14:42
|
(25) перечитал. какая из дат имеется в виду?
|
|||
27
Wobland
19.01.12
✎
14:44
|
http://www.forum.mista.ru/topic.php?upd&id=589229, посты 15 и 16
|
|||
28
Vasus55
19.01.12
✎
14:46
|
ДатаНачала И ДатаОкончания их я вожу в качестве параметра
|
|||
29
Vasus55
19.01.12
✎
14:54
|
(ОбслуживаемыеКлиентыКонтакты.ДатаИВремя МЕЖДУ &ДатаНачала И &ДатаОкончания
| ИЛИ ОбслуживаемыеКлиентыКонтакты.ДатаИВремя МЕЖДУ &ДатаНачала=ДатаВремя(1,1,1) И &ДатаОкончания=ДатаВремя(31,12,90)) и так тоже не работает(( |
|||
30
Wobland
19.01.12
✎
14:55
|
(29) 90е декабря 1931 года? это ту загнул
|
|||
31
Wobland
19.01.12
✎
14:56
|
что ты хочешь от ДатыОкончания, когда юзер её не говорит?
|
|||
32
Vasus55
19.01.12
✎
15:08
|
все сделал, вопрос закрыт!
(31)спасибо за намек |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |