Имя: Пароль:
1C
1С v8
Мне надо выполнить метод в документа по его текстовому названию как быть?
0 AlexandrV
 
17.03.14
16:42
Мне необходимо передать в привилегированный модуль название функции которая будет вызвана для определенного документа. Например для документа Документы.РеализацияТоваровУслуг
"ПустаяСсылка()"; "ПолучитьСтруктуруПечатныхФорм()"
1 Ksandr
 
17.03.14
16:42
Вычислить(ИмяМенеджера + "." + ИмяМетода)
2 Добрый хачик
 
17.03.14
16:43
будь мужиком! Выполни!
3 Добрый хачик
 
17.03.14
16:43
Выполнить (Execute)
Выполнить (Execute)
Синтаксис:
    Выполнить(<Строка>)

Параметры:
    <Строка>
    Строка, содержащая текст исполняемого кода.

Описание:
Позволяет выполнить фрагмент кода, который передается ему в качестве строкового значения.

Примечание:
В режиме запуска веб-клиент оператор не поддерживается и его вызов игнорируется.
4 Ksandr
 
17.03.14
16:46
(3) "Выполнить" в привилегированном модуле дает возможность с помощью внешней обработки вызвать например формирование ТЗ с нужными данными, затем ЗначениеВСтрокуВнутр и записать в журнал регистрации, либо в параметр сеанса с типом ХранилищеЗначения, откуда достать и использовать по своему назначению.
5 Добрый хачик
 
17.03.14
17:57
(4) достаточно перед выполнение наименование процедуры пропустить через СтрЗаменить(Наименование,";","")
6 AlexandrV
 
17.03.14
18:16
Проблема еще в том, что привилегированный модуль запускается на сервере, а вызываемая функция на клиенте
Подскажите как быть?
7 х86
 
17.03.14
18:18
(6)переписать алгоритм
- команду "Выполнить" можно использовать только в редких случаях (за весь свой стаж использовал пару раз и то из-за лени переписывания)
- с сервера клиента ты ни как не позовёшь
8 AlexandrV
 
17.03.14
18:33
(7) можно процедуру "выполнить" можно убрать.
но вызывать процедуру клиентского типа из привилегированного модуля, где можно процедуру вызвать под полными правами
9 Ksandr
 
17.03.14
18:49
(8) Задача в чем заключается?
10 hhhh
 
17.03.14
20:29
(8) вообще-то ПолучитьСтруктуруПечатныхФорм() можно и на сервере выполнить, с чего это она клиентская?
11 Добрый хачик
 
17.03.14
21:49
(10) давай, выполни
12 hhhh
 
17.03.14
22:45
(11) ну вот, ты будешь смеяться

    СтруктураМакетов = Новый Структура;
    
    СтруктураМакетов.Вставить("Накладная",                          "Расходная накладная");
    СтруктураМакетов.Вставить("Акт",                                 "Акт об оказании услуг");
    СтруктураМакетов.Вставить("ТОРГ12",                             "ТОРГ-12 (Товарная накладная с услугами)");
    СтруктураМакетов.Вставить("ТОРГ12_БезУслуг",                    "ТОРГ-12 (Товарная накладная)");
    СтруктураМакетов.Вставить("_1Т",                                "Бланки ТТН");
    СтруктураМакетов.Вставить("М15",                                  "М-15 (Накладная)");
    СтруктураМакетов.Вставить("УниверсальныйПередаточныйДокумент",     "Универсальный передаточный документ (УПД)");
    СтруктураМакетов.Вставить("СправкаРасчетВал",                     "Справка-расчет ""Рублевая сумма документа в валюте""");
        
    Возврат СтруктураМакетов;

зачем нужно на клиент идти, чтобы этовыполнить?
13 AlexandrV
 
18.03.14
09:08
В печати для реализации пакета документов прописана хрень типа
Документы.РеализацияТоваровУслуг.создатьОбъект. ...
Для разных доков в разных местах
получается если юзер не имеет права на создание документа - то и псевдо создание у него не проходит
вот и пришлось искать выходы
юзер который будет пакет документов печатать имеет права только на их просмотр

(12) расписывать структуры и другие функции в ручную можно, но не хочу этим гимором заниматься хочется найти решение общее
14 AlexandrV
 
18.03.14
11:22
Подскажите как запустить пакетную печать для юзера с минимальными правами
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn