|
Вордовский док (шаблон в актив документ) не открывается из 1С. Как быть? | ☑ | ||
---|---|---|---|---|
0
temsa
16.04.15
✎
11:02
|
Создал внешний отчет в нем реализвал это:
&НаСервере Процедура ПечатьНаСервере() Попытка АктивныйДокумент = ВнешниеОтчеты.Создать("ТД").ПолучитьМакет("Договор"); Исключение АктивныйДокумент = Отчеты.ТД.ПолучитьМакет("Договор"); КонецПопытки; MSWord = АктивныйДокумент.Получить(); Попытка Договор = MSWord.Application.Documents(1); Договор.Activate(); Замена = Договор.Content.Find; Замена.Execute("<Data>", Ложь, Истина, Ложь, , , Истина, , Ложь, """"+Отчет.ДатаДоговора+""""); Замена.Execute("<org>", Ложь, Истина, Ложь, , , Истина, , Ложь, """"+Отчет.Организация+""""); ............. MSWord.Application.Visible = Истина; MSWord.Activate(); Исключение Сообщить(ОписаниеОшибки()); MSWord.Application.Quit(); КонецПопытки; КонецПроцедуры Вы итоге отлачиком все нормально видел работает. Но я не вижу сформиорованый вордовский документ. Где искать ее???? |
|||
1
Любопытная
16.04.15
✎
11:03
|
А база поди клиент-серверная?
|
|||
2
1976vas
16.04.15
✎
11:03
|
(0) В свернутом значке на панели задач?
|
|||
3
temsa
16.04.15
✎
11:06
|
(1) да.
(2) Нифига нет. Даже в диспетчере задач глнянул. там я вижк только процесс и все. |
|||
4
Любопытная
16.04.15
✎
11:07
|
(3) ну и ворд ты открываешь НаСервере...
|
|||
5
temsa
16.04.15
✎
11:14
|
(4) Я сомневался но увиденный видеоурок снял сомнения.
И как я должен открывать документ?? |
|||
6
Cube
16.04.15
✎
11:16
|
(3) "да"
Вроде не пятница)))) (5) "И как я должен открывать документ??" &НаКлиенте... |
|||
7
temsa
16.04.15
✎
11:25
|
(6) а почему тут у товарища работает от сервера?
не в качестве рекламы: https://www.youtube.com/watch?v=uoYWOYVo5P8 |
|||
8
temsa
16.04.15
✎
11:27
|
+(7) 14 минута 17 секунда
|
|||
9
Любопытная
16.04.15
✎
11:35
|
У вас печатная форма для типовой конфы? В типовых вордовские макеты теперь можно методами конфы делать, оч хорошо на клиенте все делается.
|
|||
10
Любопытная
16.04.15
✎
11:37
|
(7) У чувака может база файловая. Ну или просто клиент и сервер - одна и та же машина
|
|||
11
temsa
16.04.15
✎
11:38
|
(9) Конфа самопска на 8.3. пытаюсь трудовой договор сотра сс компанией прикрутить к самописке с возможностью подставлять данные о сотруднике и о фирме.
|
|||
12
Любопытная
16.04.15
✎
11:39
|
(11) Ну тогда всё так, но НаКлиенте
|
|||
13
temsa
16.04.15
✎
11:46
|
(12) Перекинул все на клиент
теперь ошибка на АктивныйДокумент = РеквизитФормыВзначение("Отчет").ПолучитьМакет("Договор"); {Форма.ФормаОтчета.Форма(42)}: Ошибка при вызове метода контекста (РеквизитФормыВЗначение) АктивныйДокумент = РеквизитФормыВзначение("Отчет").ПолучитьМакет("Договор"); по причине: Метод недоступен на клиенте |
|||
14
Cube
16.04.15
✎
12:25
|
(13) Прикольно да? Управляемый интерфейс заставит тебя думать, даже не сомневайся. Тупые копипасты тут не проканывают :)
|
|||
15
temsa
16.04.15
✎
12:28
|
(14) Я понимаю что надо действия на клиенте и на сервере надо разбивать. Неужели мне надо через хранилище это реализовать?
|
|||
16
temsa
16.04.15
✎
12:59
|
Продвинулся.
Записал Договор.SaveAs(ВремФайл); Адрес = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ВремФайл)); Далее на клиенте прочитал Договор = ПолучитьИзВременногоХранилища(Адрес); И как теперь быть? |
|||
17
Cube
16.04.15
✎
13:01
|
||||
18
temsa
20.04.15
✎
11:43
|
Преодолел некоторые трудности и реалиозвал отчет с выводом из актив-документ с подстановкой данных шаблону.
Но! У меня локально работает нормально. Причем у меня локально клиент-серверно все работает. А вот на сервере выходит не понятная ошибка. Причем я на том сервере я сижу терминально. Также по сети кадровик не может сформировать у нее тонкий клиент. Как быть? Тут искал причину пишут что проблема доступа от пользователя от имени которого запущен сервер 1С. |
|||
19
temsa
20.04.15
✎
11:45
|
Вот как было решено:
&НаСервере Процедура ПечатьНаСервере(Адрес) Попытка АктивныйДокумент = ВнешниеОтчеты.Создать("ТД").ПолучитьМакет("Договор"); Исключение АктивныйДокумент = Отчеты.ТД.ПолучитьМакет("Договор"); КонецПопытки; MSWord = АктивныйДокумент.Получить(); ВремФайл = ПолучитьИмяВременногоФайла("doc"); УдалитьФайлы(ВремФайл); Попытка Договор = MSWord.Application.Documents(1); Договор.Activate(); Замена = Договор.Content.Find; Замена.Execute("<nomer>" , Ложь, Истина, Ложь, , , Истина, , Ложь, Отчет.Номер); .......... Договор.SaveAs(ВремФайл); Адрес = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ВремФайл)); Исключение Сообщить(ОписаниеОшибки()); MSWord.Application.Quit(); КонецПопытки; КонецПроцедуры &НаКлиенте Процедура Сформировать(Команда) Адрес = ""; ПечатьНаСервере(Адрес); ДвоичныеДанные = ПолучитьИзВременногоХранилища(Адрес); ИмяВременногоФайла = "D:\dogovora\"+элементы.Работник.ВыделенныйТекст+".doc"; ДвоичныеДанные.Записать(ИмяВременногоФайла); КонецПроцедуры |
|||
20
temsa
20.04.15
✎
11:45
|
На этой строке выходит ошибка без указания ошибки:
MSWord = АктивныйДокумент.Получить(); |
|||
21
temsa
22.04.15
✎
13:20
|
АУУУ Народ кто нибудь подскажите с последними вопросам как быть????
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |