Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Путь к файлу для печати

Путь к файлу для печати
Я
   Vasutka12
 
18.06.21 - 15:12
Здравствуйте! Можно ли как то иначе сохранять форматы пдф и ворд из шаблона без указывания конкретного пути для сохранения??

Если РольДоступна("Администратор") Тогда
  MSWord.SaveAS("D:\файлы\"+".pdf", 17 );
КонецЕсли;

Если РольДоступна("Менеджер") Тогда
  MSWord.SaveAS("D:\файлы\"+".docx" , 16);
КонецЕсли;
   acht
 
1 - 18.06.21 - 15:13
(0) >  без указывания конкретного пути для сохранения
Сохранять куда?
   Vasutka12
 
2 - 18.06.21 - 15:28
(1) на компьютер
   acht
 
3 - 18.06.21 - 15:31
(2) В мышку, что-ли? Ну ты сам задумайся.
   Новый1сник2
 
4 - 18.06.21 - 15:48
Пятница сегодня, полет нормальный))
   Vasutka12
 
5 - 18.06.21 - 15:50
(0) я имею ввиду что если вдруг базу открыть на другом ПК, нужно будет постоянно меенять путь к файлу, как этого избежать?
   Новый1сник2
 
6 - 18.06.21 - 15:51
(0) если правильно понимаю, нужно чтобы диалог открылся и там юзер сам указывал куда сохранять?
   Vasutka12
 
7 - 18.06.21 - 15:53
(6) просто при нажатии на кнопку открывался файл (шаблон) и он уже сам решает куда его сохранить, если это необходимо, а если нет, то просто открыл посмотрел и закрыл без всяких сохранений на ПК
   Новый1сник2
 
8 - 18.06.21 - 15:57
(7) была такая задачка, файл сохранять во временные файлы и запускать для пользователя, если нужно пользователь сохранит в своей папке, если нет то кэш с временными файлами потом очищается, после перезагрузки сервера.
   acht
 
9 - 18.06.21 - 15:58
(7) > открыл посмотрел и закрыл без всяких сохранений
Оно так не работает. Ты не можешь посмотреть нигде несохраненный файл.

Набивай макет данными на клиенте и активизируй word с несохраненным документом. Пусть пользователь сам решает куда его сохранять и в каком формате.
   Vasutka12
 
10 - 18.06.21 - 15:58
(8) где ее можно найти?
   Новый1сник2
 
11 - 18.06.21 - 16:01
(10) Я сам делал, сейчас не вспомню, по гугли как сохранить во временные файлы и запустить для пользователя этот файл.
   Новый1сник2
 
12 - 18.06.21 - 16:02
(10) база серверная ?
   acht
 
13 - 18.06.21 - 16:07
(7) Если уж совсем красиво, то формируй файл на сервере, сохраняй во временом хранилище и отдавай его пользователю через НачатьПолучениеФайлаССервера вариант с диалогом. У пользователя выскочит вопрос "открыть или сохранить" - пусть сам решает.
   Новый1сник2
 
14 - 18.06.21 - 16:14
(10) посмотри функцию ПолучитьИмяВременногоФайла(<Расширение>) в СП, я через нее делал.
   minsk1s
 
15 - 18.06.21 - 22:37
(0) как вариант получить каталог мои документы:

&НаСервере
Функция ПолучитьКаталогМоиДокументы()

    МояОбработка = ЭтотОбъект.Метаданные().ПолноеИмя();
    КаталогMyDocuments = ХранилищеНастроекДанныхФорм.Загрузить(МояОбработка, "КаталогСохранения");

    Если ПустаяСтрока(КаталогMyDocuments) Тогда// не заполнен

        WScript = Новый COMОбъект("WScript.Shell");
        КаталогMyDocuments = WScript.SpecialFolders().Item("MyDocuments");
        WScript = Неопределено;
    КонецЕсли;

    Возврат КаталогMyDocuments;

КонецФункции
   acht
 
16 - 18.06.21 - 23:16
(15) Как же вы надоели, нажиматели кнопок, обнаружившие Великую ИстинуВ Интернете.

Глобальный контекст (Global context)
КаталогДокументов (DocumentsDir)

Синтаксис:
КаталогДокументов()

Возвращаемое значение:
Тип: Строка.
Путь к каталогу.

Для режимов запуска "Тонкий клиент" и "Толстый клиент":
в MS Windows: <Personal>;
в Linux: выбирается из надстройки gnome. Если gnome не указан, то метод вернет домашний каталог <Home>.
Для режимов запуска "Веб клиент" (реализуются только в расширении для работы с файлами):
при использовании веб-браузера Microsoft Internet Explorer: <Personal>;
при использовании веб-браузера Mozilla Firefox (с помощью XPCOM интерфейса nsIDirectoryServiceProvider):
в MS Windows: <Personal>;
в Linux: <Home>;
в macOS: <Docs> ;
в OSX: <UsrDocs>.

Для мобильной платформы:
iOS: Подкаталог \Documents относительно домашней директории приложения. Стандартный каталог, который доступен для обмена файлов в iTunes с помощью функции NSHomeDirectory().
Android:<Абсолютный путь>, может различаться на разных устройствах. Например:
/mnt/sdcard/Android/data/com.e1c.mobile/files/
/storage/emulated/0/Android/data/com.e1c.mobile/files/

Windows:
для смартфона: путь внутри домашней директории приложения (C:\Users\<User>\AppData\Local\Packages\<Application>\RoamingState). Каталог не доступен при подключении к ПК. Доступ с ПК можно обеспечить только с помощью утилиты ISETool из комплекта Windows Phone SDK.
для планшета: путь внутри домашней директории приложения C:\Data\Users\<User>\DefApps\APPDATA\Local\Packages\ <Application>\RoamingState)

Описание:
Предоставляет доступ к стандартному каталогу документов.

Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение (клиент).

Примечание:
Для работы метода на веб-клиенте необходимо предварительно подключить расширение работы с файлами.

См. также:
Глобальный контекст, метод НачатьПолучениеКаталогаДокументов

Использование в версии:
Доступен, начиная с версии 8.3.1.
   ДедМорроз
 
17 - 18.06.21 - 23:50
На самом деле,windows и microsoft word умеют открывать документы,внедренные в другие объекты через механизм OLE,но 1с этого не умеет и не желает этому учиться,т.к.это сильно не кроссплатформенно.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.