Имя: Пароль:
1C
1С v8
&НаСервере
0 Powerfool
 
15.07.14
08:54
В общем модуле с галками "Сервер", "Клиент(обычное приложение)", "ВЫзов сервера" пишу код
&НаКлиенте
Функция ПолучитьМакетСчетФактуры(СчетФактура) Экспорт
    
    МассивОбъектов = Новый Массив;
    МассивОбъектов.Добавить(СчетФактура);
    ОбъектыПечати = Новый СписокЗначений;
    
    ТабДокумент = Новый ТабличныйДокумент;
    ЗаполнитьТабДокумент(ТабДокумент, МассивОбъектов, ОбъектыПечати);
    Возврат ТабДокумент;     
    
КонецФункции

&НаСервере
Процедура ЗаполнитьТабДокумент(ТабДокумент, МассивОбъектов, ОбъектыПечати)
    ТабДокумент = Документы.СчетФактураВыданный.ПечатьСчетаФактуры(МассивОбъектов, ОбъектыПечати);
КонецПроцедуры

Вызываю функцию "ПолучитьМакетСчетФактуры" в модуле документа СчетФактураВыданный. При вызове получаю ошибку "Процедура или функция с указанным именем не определена (ЗаполнитьТабДокумент)
    <<?>>ЗаполнитьТабДокумент(ТабДокумент, МассивОбъектов, ОбъектыПечати);".

Что я делаю не так?
1 Armando
 
15.07.14
08:55
ПолучитьМакетСчетФактуры или ЗаполнитьТабДокумент?
2 Powerfool
 
15.07.14
08:56
(1) ПолучитьМакетСчетФактуры
3 Wobland
 
15.07.14
08:57
не экспортируешь не так
4 Wobland
 
15.07.14
08:57
(3) ээ.. не в туда посмотрел
5 Powerfool
 
15.07.14
08:57
(3) а?
6 Jokero
 
15.07.14
08:57
Попробуй имя модуля перед ЗаполнитьТабДокумент
7 Defender aka LINN
 
15.07.14
09:05
(0) И давно &НаКлиенте в общих модулях работать начало, не подскажешь?
8 Powerfool
 
15.07.14
09:35
(6) Не помогло
Разнести процедуры на разные модули не помогло
9 Powerfool
 
15.07.14
09:37
Опишу ситуацию сначала, может так найду друзей по несчастью. Мне надо получить заполненный макет счет-фактуры, но беда в том, что печать счетов фактур происходит в модуле менеджера на сервере.

Вопрос иной: Как получить заполненный макет счет-фактуры?
10 Defender aka LINN
 
15.07.14
09:46
(9) Вызвать функцию печати с сервера, вернуть на клиента. А как, по-твоему, оно работает вообще?
11 Powerfool
 
15.07.14
09:51
(10) Все было так просто если бы печать была функцией. Но печать это процедура из которой нихрена не вернешь. Да и вернуть с сервера Табличный документ неполучается, ругается на передачу мутабельного значения
12 НеБорис Нуралиев
 
15.07.14
09:56
Если ты в обычном приложении это все делаешь, то зачем тебе разносить это на сервер и на клиент? Оно все на клиенте работать будет. Убирай директивы перед процедурами.
13 Powerfool
 
15.07.14
10:08
(12) Ага, только вот в типовом коде есть строка
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабДокумент, НомерСтрокиНачало, ОбъектыПечати, Ссылка);
А "УправлениеПечатью" - это общий серверный модуль не видимый на клиенте.

Не придумал ничего умней чем сделать УправлениеПечатью видимым на клиенте
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан