|   |   | 
| 
 | 1С 8.2 в СКД применение функций общего модуля | ☑ | ||
|---|---|---|---|---|
| 0
    
        Akava 20.11.14✎ 06:10 | 
        В 1с 8.2 в СКД в вычисляемых полях мне нужно использовать функцию общего модуля, но функция не найдена ... чтобы она заработала ее нужно подключить.
 Прочитала, что нужно поставить "Истина" в настройках ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,, ДанныеРасшифровкиКонсоли, Истина); а где это прописать нужно? никак врубится не могу или как по-другому нужно и где? | |||
| 1
    
        zsergey 20.11.14✎ 06:32 | 
        Написать функцию в общем модуле. В "Выражении" пишем: "ОбщийМодуль.ВашаФункция(Параметр)"     | |||
| 2
    
        su_mai 20.11.14✎ 06:56 | 
        Общий модуль должен быть доступен в контексте сервера и функция должна быть объявлена с ключевым словом Экспорт.     | |||
| 3
    
        Akava 20.11.14✎ 06:58 | 
        мне нужно найти подстроку, хочу использовать функцию Найти()     | |||
| 4
    
        Wobland 20.11.14✎ 06:59 | 
        (3) что планируешь делать?     | |||
| 5
    
        su_mai 20.11.14✎ 07:05 | 
        (3) В СКД есть функция "Подстрока"     | |||
| 6
    
        Akava 20.11.14✎ 07:05 | 
        (4) Мне нужно найти позицию скобки в наименовании должности и вывести должность до этой скобки
 Пишу выражение в вычисляемом поле СКД Подстрока(Должность,1,Найти(Должность,"(")) | |||
| 7
    
        su_mai 20.11.14✎ 07:10 | 
        (6) Лучше сделай функцию ПолучитьДолжность(Строка), которая возвращает строку должности по нужному алгоритму.     | |||
| 8
    
        Wobland 20.11.14✎ 07:11 | 
        (6) а не пробовал почитать советы?     | |||
| 9
    
        Akava 20.11.14✎ 07:18 | 
        только через ОбщийМодуль можно сделать?
 проще никак? функция то стандартная, ее подключить как то можно я не могу изменять конфигурацию, делаю внешний отчет | |||
| 10
    
        slin-dev 20.11.14✎ 07:27 | 
        тогда во время построчного вывода
 или не через СКД | |||
| 11
    
        su_mai 20.11.14✎ 07:30 | 
        (10) Но это тот еще "гемор", особенно для тех кто будет в дальнейшем дорабатывать этот отчет.     | |||
| 12
    
        Akava 20.11.14✎ 07:43 | 
        В описании встроенного языка написано, что функция Найти() - это встроенная функции языка 
 Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение. Все таки можно ее в СКД использовать или нет? | |||
| 13
    
        Поpyчик-4 20.11.14✎ 08:22 | 
        (12) Попробуйте сами, пальцы же не сгниют.     | |||
| 14
    
        Akava 20.11.14✎ 09:19 | 
        (13) что попробовать?     | |||
| 15
    
        RomaH naïve 20.11.14✎ 09:19 | 
        отчет наверное внешний?     | |||
| 16
    
        Akava 20.11.14✎ 09:20 | 
        (15) да, внешний
 в этом может быть причина? | |||
| 17
    
        Мимохожий Однако 20.11.14✎ 09:21 | 
        Попробуй поместить функцию в модуль твоего отчета.     | |||
| 18
    
        RomaH naïve 20.11.14✎ 09:30 | 
        (16) да
 насколько помню - функции ОМ можно использовать только во встроенных отчетах | |||
| 19
    
        Banned 20.11.14✎ 09:32 | 
        (18) Мой опыт (сомнительный) показывает обратное.     | |||
| 20
    
        тарам пам пам 20.11.14✎ 11:40 | 
        (19), все верно, из внешних отчетов можно вызывать функции общих модулей. А вот функции встроенного языка - какого-то хрена нельзя. Я делал маразм вида 
 "Функция _СокрЛП(Строка) Возврат СокрЛП(Строка); КонецФункции" в общем модуле в таком случае. | |||
| 21
    
        Akava 02.12.14✎ 11:59 | 
        Спасибо всем! Создала свою функцию в общем модуле, все работает, по другому получается что никак     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |