Имя: Пароль:
1C
1С v8
СКД. Врагам автозаполнения вопрос.
0 fisher
 
25.08.11
18:17
Как правильно в СКД без автозаполнения настроек сформулировать выражение для конца периода в виртуальной таблице? Чтобы в виртуальную таблицу подставлялось выражение конца дня для выбранной даты конца периода?
Прописываю в конструкторе на закладке компоновки
КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ)
Он мне в запрос тулит
{(КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ)) КАК Поле2}
И это Поле2 светит как параметр СКД.
Пытаюсь вручную соорудить типа такого: КОНЕЦПЕРИОДА({(&КонПериода)}, ДЕНЬ) - не канает. Помогите раз и навсегда разобраться с магией фигурных скобок!
1 Мимохожий Однако
 
25.08.11
18:23
В порядке эксперимента. Добавь на форму внешнего отчета Период и посмотри, что в коде прописано. Доступно и всерьез :-)
2 fisher
 
25.08.11
18:44
А без доп-параметра никак?
3 Alexandr Puzakov
 
25.08.11
18:44
А зачем в тексте запроса? Почему не на вкладке "Параметры" конструктора СКД?
4 fisher
 
25.08.11
18:49
(3) Тогда через два параметра? Второй недоступный и в качестве выражения КОНЕЦПЕРИОДА по второму параметру, который выбирает пользователь? Только так можно?
5 Alexandr Puzakov
 
25.08.11
19:10
(4) отключить ему видимость и доступность, и будет нормально. В типовых 6-8 параметров (в общем), из которых пользователь заполняет только 2-3 - распространенная картина.
6 fisher
 
25.08.11
19:22
(5) Понятно... Думал, в коде более гибко можно...
7 IronDemon
 
25.08.11
19:42
Руками в тексте убрать " КАК Поле2"
8 mikeA
 
25.08.11
20:10
{(КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ)) КАК КонПериода}
9 mikeA
 
25.08.11
20:12
и лучше это называть ДатаНачала и ДатаОкончания, так они будут в нужном порядке по алфавиту отсортированы
10 fisher
 
26.08.11
10:51
(8) Во! Так я тоже делал. Не ругалось. Но были большие сомнения, что это работает правильно. До проверки руки не дошли.
(9) Спасибо, добрый человек.
11 Stillcat
 
26.08.11
11:02
А просто на вкладке "Параметры" для КонПериода
в поле "Выражение"
написать
КонецПериода(&КонецПериода,"День")

не катит чтоль?
12 guitar_player
 
26.08.11
11:04
(11) а тему прочитать. в (3) было предложение
13 Stillcat
 
26.08.11
11:07
(12) Ага, там потом еще что-то про два параметра было.
Так никаких двух не надо.
14 fisher
 
26.08.11
11:09
(13) Ага. А "КонПериода" и "КонецПериода" в (11) - это не два параметра? Понятно, что пользователь только с одним работать будет. Но (8) элегантнее.
15 Stillcat
 
26.08.11
11:12
(14) КонецПериода - это просто функция, а не параметр
Может все-таки сначала попробуешь?
16 Stillcat
 
26.08.11
11:14
+(15)
Сори, вот правильная строка:
КонецПериода(&КонПериода,"День")
17 Axel2009
 
26.08.11
11:24
(16) а если параметр не будут указывать, что делать?
18 fisher
 
26.08.11
11:29
(16) Да, так тоже работает. Сенк.
Хотел в первую очередь с фигурными скобками разобраться.
Для меня просто не до конца очевидно, как СКД анализирует и интерпретирует код внутри фигурных скобок. С параметрами в частности. Еще по поводу построителя, помню, была шаманская статья. Типа можно целые соединения в фигурные скобки заключать и тогда соединение не будет добавляться в итоговый запрос, если не выбираются поля из связанной таблицы. Могу соврать, но что-то типа такого.
19 Stillcat
 
26.08.11
11:59
(17) Не понял вопроса, пустым чтоли останется?
Ну так тогда в любом случае останется.
Или из автосохранения считается?
Так там он уже на конец дня будет сохранен.
20 fisher
 
26.08.11
12:02
В продолжение темы параметров СКД.
Можно ли как-то сделать так, чтобы выбор параметра СКД, тип которого - некий подчиненный справочник, открывался сразу по заданному владельцу?
21 fisher
 
26.08.11
12:04
Связь по типу для параметра СКД вроде можно настраивать в "Параметрах редактирования". А связь по владельцу? Там есть некие "Параметры выбора" и "Связи параметров выбора", но как ими пользоваться и для чего они нужны, не совсем понятно...
Основная теорема систематики: Новые системы плодят новые проблемы.