|   |   | 
| 
 | Как создать файл на веб клиенте ? | ☑ | ||
|---|---|---|---|---|
| 0
    
        antihacker 07.12.16✎ 11:45 | 
        Все привет !
 Вот это работает на тноком клиенте ИмяФайла = ПолучитьИмяВременногоФайла(Элементы.ФТЧДокументыДоговора.ТекущиеДанные.ИмяФайла); Doc = СформироватьФайл(Элементы.ФТЧДокументыДоговора.ТекущиеДанные.ИмяФайла, Элементы.ФТЧДокументыДоговора.ТекущиеДанные.РазмерФайла,Элементы.ФТЧДокументыДоговора.ТекущиеДанные.ТипФайла); Если Doc <> Неопределено Тогда Doc.Записать(ИмяФайла); Word = Новый COMОбъект("Word.Application"); Word.Documents.Open(ИмяФайла); Word.Visible = Истина; ДобавитьОбработчик Word.DocumentBeforeClose, ПередЗакрытиемДокументаWord; ДобавитьОбработчик Word.Quit, ВыходИзWord; КонецЕсли; Но понятно что из за ПолучитьИмяВременногоФайла не работает на веб клиенте. Как быть ? | |||
| 1
    
        DGorgoN 07.12.16✎ 11:58 | ||||
| 2
    
        antihacker 07.12.16✎ 12:08 | 
        DGorgoN, что этим хочешь сказать ? Не вижу подсказку.     | |||
| 3
    
        Cool_Profi 07.12.16✎ 12:10 | ||||
| 4
    
        antihacker 07.12.16✎ 12:20 | 
        Все гениальн просто
 Оболочка = Новый COMОбъект("WScript.Shell"); Путь = Оболочка.ExpandEnvironmentStrings("%APPDATA%"); Путь=Путь+"\Local Settings\Temp"; ИмяФайла = Путь +"\"+ Элементы.ФТЧДокументыДоговора.ТекущиеДанные.ИмяФайла; ТекТабДок=Новый ТабличныйДокумент; ТекТабДок.Записать(ИмяФайла); Doc = СформироватьФайл(Элементы.ФТЧДокументыДоговора.ТекущиеДанные.ИмяФайла, Элементы.ФТЧДокументыДоговора.ТекущиеДанные.РазмерФайла,Элементы.ФТЧДокументыДоговора.ТекущиеДанные.ТипФайла); Если Doc <> Неопределено Тогда Doc.Записать(ИмяФайла); Word = Новый COMОбъект("Word.Application"); Word.Documents.Open(ИмяФайла); Word.Visible = Истина; ДобавитьОбработчик Word.DocumentBeforeClose, ПередЗакрытиемДокументаWord; ДобавитьОбработчик Word.Quit, ВыходИзWord; КонецЕсли; | |||
| 5
    
        antihacker 07.12.16✎ 13:26 | 
        Началась другая проблема )))
 Метода Записать(ИмяФайла) не работает на веб клиенте. А че его заменить ? | |||
| 6
    
        Garykom гуру 07.12.16✎ 13:40 | 
        Заменить созданием файла на сервере и отправкой его на клиент чтобы юзер сам сохранил куда нуна.     | |||
| 7
    
        antihacker 07.12.16✎ 13:46 | 
        Garykom, а как мне тогда отловить изменения в ворд файле при закрытие ? Мне именно это и нужно. 
 Вообщем задача такая. Открывает юзер ворд документ, редактирует и закрывает. При закрытие 1С должен в базу добавить отредактированную версию файла. Думал через табличный документ, но в веб клиенте он тоже не редактируеться ? Как быть ? | |||
| 8
    
        Cyberhawk 07.12.16✎ 14:05 | 
        "отловить изменения в ворд файле при закрытие ?" // Если бы браузеры такое умели, это был бы ахтунг     | |||
| 9
    
        DGorgoN 07.12.16✎ 14:20 | 
        (7) Никак через тонкий клиент, ну как то такие вот ограничения.     | |||
| 10
    
        Fragster гуру 07.12.16✎ 14:21 | 
        воспользуйся подсистемой РаботаСФайлами или ПрисоединенныеФайлы в БСП     | |||
| 11
    
        antihacker 07.12.16✎ 14:31 | 
        Что за подсистема ? У меня своя конфига. Пишем с нуля ))     | |||
| 12
    
        Fragster гуру 07.12.16✎ 14:34 | 
        (11) я тоже пишу с нуля Зацените канбан доску на 1с , но использование БСП в куче мест помогает. например в работе с файлами. а сейчас еще и в интеграции с электронной почтой (реализация фичи в процессе).     | |||
| 13
    
        antihacker 07.12.16✎ 14:38 | 
        У тебя же не веб клиент.     | |||
| 14
    
        Fragster гуру 07.12.16✎ 14:39 | 
        (13) в веб клиенте всё работает     | |||
| 15
    
        antihacker 07.12.16✎ 15:14 | 
        Тогда пример покажи. Как ты решил эту задачу ?     | |||
| 16
    
        Fragster гуру 07.12.16✎ 15:20 | 
        (15) какую? обновлять данные в 1с при завершении редактирования файла? в общем модуле РаботаСФайламиПереопределяемый описал алгоритм в процедуре ПриОсвобожденииФайла     | |||
| 17
    
        Fragster гуру 07.12.16✎ 15:21 | 
        вся работа с файлом - на сервере     | |||
| 18
    
        antihacker 07.12.16✎ 15:31 | 
        Я не понял. Где то можно смотреть твои процедуры ?     | |||
| 19
    
        Fragster гуру 07.12.16✎ 15:40 | 
        (18) в конфигурации из (12) обработка файлов при завершении редактирования не применяется. А про то, где это следует делать - в (16).
 Для этого нужно внедрить БСП (минимальное внедрение по мануалам - не такая сложная штука) с подсистемой присоединенных файлов или файловых функций, а потом - (16) заодно и все файлы будут храниться в базе (или томах на сервере), а не у юзеров. если же требуется что-то другое, а не обработка файла при окончании редактирования - то сформулируй задачу. | |||
| 20
    
        antihacker 08.12.16✎ 06:11 | 
        У меня платформа 8.3.6. Не могу открыть конфигу. Он под 8.3.8
 Есть под 8.3.6 ? | |||
| 21
    
        antihacker 08.12.16✎ 08:29 | 
        Уважаемый. Я что то не нашел модуль РаботаСФайламиПереопределяемый     | |||
| 22
    
        antihacker 08.12.16✎ 10:30 | 
        А нашел, но ПриОсвобожденииФайла пустой.     | |||
| 23
    
        Fragster гуру 08.12.16✎ 11:28 | 
        (22) конечно пустой. там ты должен прописать, что ты хочешь сделать после того, как пользователь завершит редактирование файла.     | |||
| 24
    
        Fragster гуру 08.12.16✎ 11:29 | 
        или ничего не писать, если ничего не хочешь делать.     | |||
| 25
    
        antihacker 08.12.16✎ 14:53 | 
        Fragster, извини. Я так и не смог понять по твоей базе, как через браузер, отлавливаеться измененный файл после закрытия файла. Ведь в базу надо обратно передать измененный файл. В тоноком мы это делаем так 
 ДобавитьОбработчик Word.DocumentBeforeClose, ПередЗакрытиемДокументаWord; Или вообще другой подход для решения данной задачи. | |||
| 26
    
        Fragster гуру 08.12.16✎ 15:16 | 
        (25) http://v8.1c.ru/doc8/limits.htm 
 нужно установить расширение для работы с файлами. а вообще во всех типовых не "отлавливаеться измененный файл после закрытия файла", а файл помещается в базу при окончании редактирования. Или ты документацию по БСП не открывал? | |||
| 27
    
        Fragster гуру 08.12.16✎ 15:16 | 
        *при нажатии на кнопку "закончить редактирование"     | |||
| 28
    
        Fragster гуру 08.12.16✎ 15:18 | 
        ты пытаешься решить задачу без учета того, что это все может работать в браузере на андроиде, например     | |||
| 29
    
        Fragster гуру 08.12.16✎ 15:20 | 
        по этому в 1с и сделали так - при нажатии на "начать резактирование" файл скачивается и открывается (в тонком или с установленным расширением), а при "закончить редактирование" - в тонком и с расширением - закачивается обратно, без расширения - выбирается, какой же файл закачать обратно     | |||
| 30
    
        antihacker 08.12.16✎ 15:24 | 
        Начинаю понимать
 Забирает от сюда когда нажимаешь на -"Сохранить и освободить" ? C:\Users\user1\AppData\Roaming\1C\1Cv82\fa784580-1e66-4e80-8839-0a41e0c2dca2\071523a4-516f-4fce-ba4b-0d11ab7a1893\App\0000000000 А не заполниться файлами комп клиента ? Или потом они как то очищаються ? Вроде это не временное хранилище, который при закрытие форм всам удаляться. | |||
| 31
    
        Fragster гуру 08.12.16✎ 15:27 | 
        (30) вроде не замечал проблем     | |||
| 32
    
        antihacker 08.12.16✎ 15:33 | 
        То есть все таки не удалються автоматом ?     | |||
| 33
    
        antihacker 08.12.16✎ 15:37 | 
        А нет возможности сохранить в ввременное хранилище и открыть от туда в ворде для редактирование ? И забирать измененный файл тоже от туда . Тогда временное хранилще сами удалялись бы.     | |||
| 34
    
        Fragster гуру 08.12.16✎ 15:42 | 
        временное хранилище на сервере     | |||
| 35
    
        antihacker 08.12.16✎ 15:52 | 
        нее на клиенте же остаеться открытый файл. Который лежит по пути C:\Users\user1\AppData\Roaming\1C\1Cv82\fa784580-1e66-4e80-8839-0a41e0c2dca2\071523a4-516f-4fce-ba4b-0d11ab7a1893\App\0000000000     | |||
| 36
    
        antihacker 13.12.16✎ 08:14 | 
        Fragster, в принципе все понял. Но вот эти нулики - "0000000000" которые прибавляються к строке рабочего каталога, от куда беруться ? Это  что то системное, что так и должно быть или просто твое решение ? Не могу понять его истенную роль.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |