Имя: Пароль:
1C
1С v8
СКД, выражение представления через функцию
,
0 slasher
 
24.11.17
19:12
Доброго времени суток,

ваяю отчет на СКД в самописной конфе.

Когда в выражение представления прописываю функцию, которая представлена глобальном модуле, то эта функция не отрабатывается.
По отладчику не проваливается даже туда. Функция экспортная, всё вроде нормально. Может где галочку не поставил, кто-нибудь сталкивался?
1 Мимохожий Однако
 
24.11.17
19:20
Я бы проверил свойства общего модуля
2 slasher
 
27.11.17
11:15
(1) галка "сервер" стоит, добавление и отключение других галок не приводят к изменению ситуации
3 vicof
 
27.11.17
11:29
(2) Глобальные модули зло.
Отчет программно формируется?
4 slasher
 
27.11.17
11:49
(3) нет,  обычно формируется

я бы не обращался к глобальным модулям, но мне нужно опустошить одно выводимое поле по условию, подумал, что проще через глобальник сделать
5 slasher
 
29.11.17
18:24
немного порывшись в документации, обнаружил, что возможность использования внешних функций включается принудительно.

ПроцессорКомпоновкиДанных.Инициализировать(<Макет>, <ВнешниеНаборыДанных>, <ДанныеРасшифровки>, <ВозможностьИспользованияВнешнихФункций>)

но это для программного вывода отчета, а кто-нибудь знает как включить такую возможность для обычного вывода отчета?
6 АнализДанных
 
29.11.17
19:34
(5) база серверная? отладка на севере включена?
7 DSSS
 
29.11.17
19:43
(5) Тоже интересно. Отпишись пжл если найдешь решение
8 PiotrLoginov
 
30.11.17
00:21
"<Выделить жирным>Если компоновка данных выполняется при помощи стандартных средств объекта Отчет, то использование внешних функций разрешено.</Выделить жирным> Если же компоновка данных осуществляется при помощи объектов системы компоновки данных, то, для того, чтобы разрешить использование внешних функций, необходимо в качестве значения параметра ВозможностьИспользованияВнешнихФункций функции Инициализировать объекта ПроцессорКомпоновкиДанных передать значение Истина."

http://its.1c.eu/db/metod8dev#content:3332:hdoc
9 France
 
30.11.17
02:33
(4) Опустошитель, опустошай по условию "Выбор Когда"
10 slasher
 
30.11.17
11:58
(5) база файловая, управляемые формы
11 slasher
 
30.11.17
12:01
(9) ты прав, можно и так, да и быстрее, но я уже закусил удила и хочу разобраться почему через глобальный модуль не получается

причем отчет даже не ругается когда меняю имя функции на любую абракадабру, то есть имя функции не имеет значения, будто программе пофиг, все равно обращаться в глобальный модуль не будет
12 slasher
 
30.11.17
12:07
(8) это уже интереснее,

но я не совсем понял
чем отличается 1.когда компоновка данных выполняется при помощи стандартных средств объекта Отчет и 2.когда компоновка данных осуществляется при помощи объектов системы компоновки данных
13 alxxsssar
 
30.11.17
12:44
(11) Так может у тебя спама функция кривая - отрабатывает, но формирует пустое значение. Параметры в функцию нормально передаются?
14 alxxsssar
 
30.11.17
12:45
спама = сама. Сорри
15 slasher
 
30.11.17
13:05
(13) даже не заходит туда по отладчику, даже не ругается на имя функции когда я меняю его на несуществующее
16 nordbox
 
30.11.17
13:15
Картинку (если не секретно) покажи как ты там пишешь?
17 sitex
 
naïve
30.11.17
13:25
(15) Решил проверить тоже на файловой, платформа 8.3.10.2561, вроде работает.
18 slasher
 
30.11.17
13:29
(16) не секретно, картинку чего нужно?
19 slasher
 
30.11.17
13:30
(17) платформа такая же, у тебя база типовая? обычное приложение или управляемое?
20 sitex
 
naïve
30.11.17
13:32
(19) Нетленка. УФ.
21 slasher
 
30.11.17
13:37
(20) у меня УФ и самописка с нуля, поэтому может чего не прописано или галки где не хватает
22 sitex
 
naïve
30.11.17
13:50
(21)Для теста попробовал в типовой бух 3 (3.0.52.36). Вызвал что попало на мой глаз не глобальную Функцию (ПользователиКлиентСервер.ТекущийПользователь()) , работает.
23 slasher
 
30.11.17
13:56
(22) на типовой у меня тоже всё работает замечательно, но мне нужно чтобы работало на самописке
24 drcrasher
 
30.11.17
14:02
(23) отраслевая самописка, уф:
- общий модуль, галки сервер, внеш.соединение
- скд на платформенной форме, вычисляемые поля вида "Квартира" - ОбщиеМеханизмы.СКД_ПолучитьЗначениеПоляАдресногоКлассификатора(ЗначенияПолей, "Квартира") - ограничения доступности на всё, кроме поля

очень удобно раскуривать данные КИ
25 slasher
 
30.11.17
14:27
Всё, разобрался!
Не оттуда вызывал функцию. Я прописывал вызов функции глобального модуля из поля "Выражение представления" на закладке "Набор Данных", а надо было вызывать её из поля "Выражение" на закладке "Макеты", в разделе "Параметры макета". Макет у меня был свой.
Тупанул маленько, простите.
Всем спасибо, кто откликнулся))
Независимо от того, куда вы едете — это в гору и против ветра!