Имя: Пароль:
1C
1С v8
Как получить доступ к процедуре модуля объекта из внешней обработки ?
,
0 raykom
 
09.06.14
12:31
Привет всем.

Есть объект вида документ. В настоящий момент я его создал

Документы.АктСверкиВзаиморасчетов.СоздатьДокумент();

и заполнил. Еще не записал.


Дальше задача получить печатную форму в файл.
Имеется ЭКСПОРТНАЯ процедура модуля объекта типа Печать ();

Как вот ее вызвать из модуля внешней обработки ? Или надо записывать документ и потом его уже получать как объект ?
Спасибо
1 Dmitry1c
 
09.06.14
12:38
Вариант скопировать процедуру во внешнюю обработку?
Ты же не можешь распечатать печатную форму, пока не записал объект в базу.
2 Dmitry1c
 
09.06.14
12:39
ТС, ты в конечном счете чего хочешь добиться? Групповой печати актов сверки без сохранения документов в базе?
3 jsmith82
 
09.06.14
12:40
для обычного приложения ЭтотОбъект.ИмяМетода();
для управляемого РеквизитФормыВЗначение("Объект").ИмяМетода();
4 jsmith82
 
09.06.14
12:41
а, чукча не писатель
5 jsmith82
 
09.06.14
12:41
Записывать не надо
6 Dmitry1c
 
09.06.14
12:41
(3) ага, а метод полезет запросы к базе делать при формировании печатной формы. А объект не сохранен в базе.
7 jsmith82
 
09.06.14
12:42
Читаю (0) в третий раз и всё больше офигеваю
8 Dmitry1c
 
09.06.14
12:43
Да, уж лучше бы сказал, чего в конечном итоге хочет. А то походу мается чем-то... ненужным.
9 raykom
 
09.06.14
12:48
Етить ...
Нужно получить печатную форму в файл. Что проще, чем обратиться к стандартной процедуре ?
10 raykom
 
09.06.14
12:49
(3)Да. Для обычного приложения
11 raykom
 
09.06.14
12:51
(1)Ну в конечном итоге то так и сделаю, если ни чего похитрее не порекомендуете.

Час прибежит ДенисЧ и начнет советовать поставить водку в холодильник и впаривать паленый СП без скидок ...
12 raykom
 
09.06.14
12:52
(6)Вот вот.
13 Dmitry1c
 
09.06.14
12:53
(9) т.е. печатную форму акта сверки без сохранения самого объекта-документа?

Странно конечно.

Ну тогда в обработку код полюбому и заполнять табличные части уже у обработки.
14 raykom
 
09.06.14
12:55
(13)Да кто сказа то, что без сохранения ?
Я просто сказал, на каком этапе нахожусь в данный момент. Надо сохранить, так сохраню. Просто потом тогда еще надо будет получать документ.
Думал прямо на этапе создания какнить можно
15 mistеr
 
09.06.14
13:00
(14) >Просто потом тогда еще надо будет получать документ.
Зачем, если он уже есть?

Проблема этого подхода в другом. Будут плодиться документы, бухи будут нервничать.
16 raykom
 
09.06.14
13:04
(15)С чего он есть то ? Я его еще не записал. Бухи не будут нервничать, так задумано.
17 raykom
 
09.06.14
13:06
Етить, на вопрос из темы то ответит ктонибудь ?

Просто. Как получить доступ к экспортной процедуре модуля объекта из внешней обработки ?

Варианты - до записи созданного объекта или после записи.
18 hhhh
 
09.06.14
13:09
(17) ну просто переписать эту процедуру в модуль менеджера. Или в модуль обработки. Копипаст это делает за 0,7 секунды.
19 raykom
 
09.06.14
13:14
Еееттить ...

А если так ?

НовыйАкт = Документы.АктСверкиВзаиморасчетов.СоздатьДокумент();

бла бла заполнилю

НовыйАкт.Записать();
НовыйАкт.Печать(параметры);


Не ?
20 raykom
 
09.06.14
13:15
Другой вопрос, что стандартная будет печатать в принтер (надо покурить с просмотром или без), а мне надо в файл.
21 mistеr
 
09.06.14
14:02
(19) Именно так. В переменной НовыйАкт он и "есть". Чего еще получать?
22 mistеr
 
09.06.14
14:03
(20) Стандартные вообще-то возвращают ТД.
23 raykom
 
09.06.14
14:30
Теперь такая беда.

Такой код возвращает ошибку по исключению.

Процедура ЗаписатьАктСверки(ИмяКаталога,АктСверки)
    
    ПроверитьСуществованиеКаталога(ИмяКаталога);
    
    ИмяФайла = ИмяКаталога+"\1111г.xls";
    
    Попытка
        АктСверки.Записать(ИмяФайла, ?(Прав(ИмяФайла,3) = "xls", ТипФайлаТабличногоДокумента.XLS, ТипФайлаТабличногоДокумента.MXL));
    Исключение
        Предупреждение("Ошибка при записи. Файл не записан.");
    КонецПопытки;        
КонецПроцедуры

Как понять, что я не так карябаю ?
Проверка наличия каталога - есть, каталог реально создается и присутствует.

Что надо то ?
24 raykom
 
09.06.14
14:34
+(23)Вопрос отменяется пока. Вместо печатной формы передаю сам объект
25 mistеr
 
09.06.14
15:01
(23) >Как понять, что я не так карябаю ?
Не глотать исключения, а посмотреть в чем причина.
26 raykom
 
09.06.14
15:07
Да, спасибо. Уже разобрался.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой