![]() |
![]() |
![]() |
|
Печать файла в формате ворд или пдф, в зависимости с какой роли пользователь зашел в прогу | ☑ | ||
---|---|---|---|---|
0
Vasutka12
22.05.21
✎
15:58
|
Всем доброго здравия, есть вопрос. Есть рабочий макет с типом active documents, в который подставляются необходимые данные из документа. Нужно, если пользователь заходит от имени Администратора печатать файл только в формате pdf, а если от имени бухгалтера - только в формате word. Как это реализовать?? Мало примеров в гугле, может быть кто знает как это сделать? Вот код, который сохраняет оба формата файлов. А как это осуществить по роляи?
&НаКлиенте Процедура СформироватьКнопка(Команда) Серверная(); КонецПроцедуры &НаСервере Процедура Серверная() Сформировать=РеквизитФормыВЗначение("Объект").ПолучитьМакет("Сформировать"); // Получить объект из макета. MSWord = Сформировать.Получить(); Попытка Документ = MSWord.Application.Documents(1); Документ.Activate(); // Получить объект, который будет использоваться для поиска и замены. Замена = Документ.Content.Find; // Заменить заранее определенные ключевые конструкции на требуемый текст. Замена = Документ.Content.Find; Замена.Execute("<Data>", Ложь, Истина, Ложь, , , Истина, , Ложь, (Формат(Объект.Дата, "ДЛФ=Д"))); Замена = Документ.Content.Find; Замена.Execute("<Data1>", Ложь, Истина, Ложь, , , Истина, , Ложь, Объект.ДатаПриема); // Вкл видимость приложения и активизируем его. //MSWord.Application.Visible = Истина; MSWord.Activate(); Если ????? MSWord.SaveAS("D:\"+"Документ №"+ Объект.Номер +".pdf",17 ); MSWord.SaveAs("D:\"+"Документ №"+ Объект.Номер +".docx" , 16); Исключение // Если произойдет ошибка, выводятся данные об ошибке, и объект закрывается. Сообщение = Новый СообщениеПользователю(); Сообщение.Текст = ОписаниеОшибки(); Сообщение.Сообщить(); MSWord.Application.Quit(); КонецПопытки; КонецПроцедуры |
|||
1
Garykom
гуру
22.05.21
✎
16:04
|
откуда вы беретесь?
с вопросами типа: есть авто и есть сигнализация которая играет две мелодии как сделать чтобы сел владелец авто или нет она разные играла? |
|||
2
ДенисЧ
22.05.21
✎
16:04
|
если РольДоступна("ЯМогуПечататьТолькоВПДФ) Тогда
// печатаем в пдф Иначе... |
|||
3
ДенисЧ
22.05.21
✎
16:05
|
(1) Плохой пример.
|
|||
4
Vasutka12
22.05.21
✎
16:06
|
(3) Он рабочий
|
|||
5
Garykom
гуру
22.05.21
✎
16:06
|
(3) для ТС это примеры очень похожи см (4) :)
|
|||
6
Garykom
гуру
22.05.21
✎
16:07
|
(2) вот откуда он про роли догадается?
лучше две кнопки сделать и пусть юзер сам выбирает ну или доп реквизит или доп сведение на юзера навесить что сильно проще |
|||
7
Vasutka12
22.05.21
✎
16:11
|
(2) Огромное спасибо, работает
|
|||
8
ДенисЧ
22.05.21
✎
16:12
|
(6) "заходит от имени Администратора ..., а если от имени бухгалтера"
Должен догадаться... Ну... Я ещё иногда верю в способности людей... |
|||
9
Garykom
гуру
22.05.21
✎
16:12
|
(8) а потом зайдет бухгалтер с полными правами и упс
|
|||
10
Garykom
гуру
22.05.21
✎
16:14
|
(9)+ и будет:
чтобы эта штука правильно печатала мы должны у вас права забрать! ну или вот вам вторая учетка урезанная туда заходите вторым сеансом и там печатайте... |
|||
11
ДенисЧ
22.05.21
✎
16:16
|
(9) Сама виновата будет.
|
|||
12
Новый1сник2
22.05.21
✎
16:27
|
(9) если у бухгалтера нет этой роли, то все норм
|
|||
13
acanta
22.05.21
✎
16:37
|
(10) и почему программист 1с не установил лицензии не на компьютер, а на сеанс...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |