|
КАК в отчете на СКД сделать отбор по строковому типу (номер заявки) | ☑ | ||
---|---|---|---|---|
0
Sergei1982
30.10.12
✎
11:55
|
Помогите, пожалуйста, делая отчет на СКД, в отборе нужно сделать диапазон чтобы поьлзователь мог выбирать диапазон заявок типа больше или равно и ниже строчка меньше или равно в пользовательских настройках формы отчета. Беда в том, что номер заявки строковой тип, так в конторе завелось, типа могут быть заявки, где номер будет с префиксами, отсюда и гемморой
|
|||
1
Godofsin
30.10.12
✎
11:56
|
Сделай вычмсляемый параметр
|
|||
2
Sergei1982
30.10.12
✎
11:56
|
не знаю как ))
|
|||
3
Sergei1982
30.10.12
✎
11:57
|
где-то надо лезть в вычисляемые поля, но не знаю как именно
|
|||
4
Sergei1982
30.10.12
✎
11:58
|
вот этот реквизит ЗаявкиНаОказаниеУслуг.НомерБланка
|
|||
5
Sergei1982
30.10.12
✎
11:59
|
он соответственно строковый тип
|
|||
6
samozvanec
30.10.12
✎
11:59
|
в вычисляемых полях есть выражение, которое позволяет вызвать функцию общего модуля и передать параметр. можно пробегаться по кодам и обрубать все что не цифры
|
|||
7
Godofsin
30.10.12
✎
12:02
|
Так а заявки с префиксами то существуют в реале?
Если нет, то на закладку "вычисляемое поле" |
|||
8
Sergei1982
30.10.12
✎
12:04
|
вроде существуют ))
|
|||
9
Godofsin
30.10.12
✎
12:05
|
тогда (6)
|
|||
10
Sergei1982
30.10.12
✎
12:05
|
а как функция должна выглядеть типа : число (ЗаявкиНаОказаниеУслуг.НомерБланка);?
|
|||
11
Godofsin
30.10.12
✎
12:06
|
ну типа, только буквы надо оттуда убирать/заменять
|
|||
12
Sergei1982
30.10.12
✎
12:09
|
да буквы ладно, там в основном заявки с номерами , только вот они, как я говорил, строковой тип имеют
|
|||
13
Godofsin
30.10.12
✎
12:10
|
(12) что значит ладно? как ты к числу приведешь "ЧЧ000789"??
|
|||
14
Godofsin
30.10.12
✎
12:10
|
ошибка будет
|
|||
15
Sergei1982
30.10.12
✎
12:11
|
никак, конечно, но уж пока бы так и то хлеб ))
|
|||
16
GANR
30.10.12
✎
12:12
|
(0)(15) Конструктор СКД \ закладка "вычисляемые поля" \ добавить поле с выражением Вычислить(ЗаявкиНаОказаниеУслуг.НомерБланка). И строка превращается в число.
Подробнее - "Справка \ 1С:Предприятие \ Система компоновки данных \ Язык выражений системы компоновки данных \ Функции языка выражения системы компоновки данных" |
|||
17
Sergei1982
30.10.12
✎
12:12
|
вечно у нас не продумают, а потом надо извращаться переправлять все. Сразу присвоить числовой тип и все, нафига префиксы, цифр что ли мало ))
|
|||
18
Sergei1982
30.10.12
✎
12:13
|
и он Вычислить(ЗаявкиНаОказаниеУслуг.НомерБланка) определит что надо в число превращать? А в общем модуле колдовать не надо?
|
|||
19
Sergei1982
30.10.12
✎
12:14
|
пишет такое поле не найдено
|
|||
20
GANR
30.10.12
✎
12:15
|
(18) Провел эксперимент со стандартным реквизитом справочника "Код" - всё прокатило. И общих модулей не надо, что позволяет быть отчету внешним.
|
|||
21
Sergei1982
30.10.12
✎
12:16
|
вроде получилось прописать, а после вычисляемых этих полей что еще делать?
|
|||
22
GANR
30.10.12
✎
12:16
|
(19) Ах да... Надо псевдоним этого поля в запросе задать а не через точку обращаться
|
|||
23
GANR
30.10.12
✎
12:16
|
+(19) Так, наверное Вычислить(НомерБланка)
|
|||
24
Sergei1982
30.10.12
✎
12:16
|
Уважаемый Ganr, значит просто достаточно в вычисляемых полях прописать поле, потом выражение и он сам автоматом должен слопать?
|
|||
25
Sergei1982
30.10.12
✎
12:17
|
а как? ))
|
|||
26
Godofsin
30.10.12
✎
12:17
|
(16) Век живи, век учись... Я и не знал... Работает?
|
|||
27
Sergei1982
30.10.12
✎
12:18
|
сейчас проверю, не знаю пока
|
|||
28
GANR
30.10.12
✎
12:18
|
Я со строковым кодом справочника в колонке выражение прописал так Вычислить(Код) - пашет
|
|||
29
GANR
30.10.12
✎
12:18
|
(25) см. (28)
|
|||
30
Sergei1982
30.10.12
✎
12:20
|
"Номер бланка Больше или равно ""1"" И
Номер бланка Меньше или равно ""10000""" в отборе указал, ничего не выдал гад |
|||
31
Sergei1982
30.10.12
✎
12:21
|
просто в колонке выражение прописать " Вычислить(Код) " ?
|
|||
32
Sergei1982
30.10.12
✎
12:22
|
он пишет Поле не найдено "код"
|
|||
33
GANR
30.10.12
✎
12:26
|
(32) Точно... Выводить - выводит, а отбор не делает.
|
|||
34
Sergei1982
30.10.12
✎
12:27
|
Тип значения какой указывать имеющийся или желаемый ?
|
|||
35
Sergei1982
30.10.12
✎
12:27
|
засада ))
|
|||
36
GANR
30.10.12
✎
12:28
|
(35) СКД - прогрессивный инструмент, но багов там столько, что лично я уже, например, был вынужден написать процедуру трансляции настроек отбора в условие запроса.
|
|||
37
Sergei1982
30.10.12
✎
12:29
|
Пишет вот что: Ошибка исполнения отчета
по причине: Ошибка получения данных по причине: Выражение не может быть вычислено "024294" |
|||
38
GANR
30.10.12
✎
12:30
|
(34) и это не помогло
|
|||
39
Defender aka LINN
30.10.12
✎
12:30
|
(36) Ну, если делать нечего, то отчего бы и не написать, конечно. Только нафига?
|
|||
40
GANR
30.10.12
✎
12:30
|
(37) тогда общий модуль, со всеми вытекающими (((
|
|||
41
Sergei1982
30.10.12
✎
12:30
|
а, там же еще и нули могут быть, вот в чем дело, он не понимает что за число на ноль начинается, хреново
Значит в принципе теоретически работает |
|||
42
Sergei1982
30.10.12
✎
12:31
|
вытекающими прямо мне на голову ))
|
|||
43
GANR
30.10.12
✎
12:32
|
(39) Это не от нечего делать, это от необходимости обеспечить работоспособность механизма с любыми правами и в любых условиях. Вот и пришлось.
|
|||
44
GANR
30.10.12
✎
12:33
|
(41) Нет. В отчет он число выводит, но вот отбор - не работает.
|
|||
45
Sergei1982
30.10.12
✎
12:35
|
у меня наоборот, отбор подставляет калькулятор, чтобы число ввести, а в отчете не показывает
|
|||
46
Defender aka LINN
30.10.12
✎
12:37
|
(43) Транслировать отбор в условия запроса СКД умеет и сама. Если у тебя получаются "не такие" условия - то у тебя что-то не так сделано в схеме
|
|||
47
GANR
30.10.12
✎
12:45
|
(46) 1 раз на 40 где-то - этого достаточно элементарнейшие условия отбора в пользовательских полях работали неправильно или вызывались исключения на ровном месте по абсолютно неведомым причинам. Что самое плохое - СКД для меня черный ящик, и я не могу туда подлезть и исправить что-то в таких случаях. Поэтому настройку условий отбора я отдал СКД - эта часть не подводила, а работу с данными - запросам.
|
|||
48
GANR
30.10.12
✎
12:49
|
+(47) Как только это будет исправлено на уровне платформы - всё отдам СКД.
|
|||
49
Sergei1982
30.10.12
✎
13:09
|
Да, скд - это сила, макеты - уже сил больше нету ))
|
|||
50
Sergei1982
30.10.12
✎
13:10
|
Спасибо БОЛЬШОЕ за помощь и советы !!! )))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |