Имя: Пароль:
1C
1С v8
8.2 Вопрос знатокам веб клиента
, ,
0 ironkrab
 
29.01.13
11:51
Доброе время суток, господа! Столкнулся со следующим в веб интерфейсе не работает следующее (код упростил ниже плинтуса)

&НаКлиенте
Процедура ВыполнитьВыгрузку(Команда)    
  ТекТабДок=Новый ТабличныйДокумент;
  ТекТабДок.Записать("C:\MYFILES\LIST1");
  Сообщить(ТипЗНЧ(ТекТабДок));
КонецПроцедуры

Процедура выполняется без ошибок, сообщает тип "Табличный докуменет", а папка C:\MYFILES пустая


Если я ставлю ТекТабДок=Новый ТЕКСТОВЫЙДокумент - все работает.

В чем тут прикол???
браузер - эксплорер и мозила
1 AaNnDdRrEeYy
 
29.01.13
12:00
До конца путь пропиши ТекТабДок.Записать("C:\MYFILES\LIST1.mxl");
2 ironkrab
 
29.01.13
12:05
(1) Не помогает, пробовал.
3 AaNnDdRrEeYy
 
29.01.13
12:07
второй параметр укажи
4 Wobland
 
29.01.13
12:08
а если у меня нету диска с?
5 ironkrab
 
29.01.13
12:11
(4) Но у меня то он есть!!!, а код не работает!!!
6 Wobland
 
29.01.13
12:12
При работе на веб-клиенте вызов метода выполняет обращение к серверу.

на сервере не искал?
7 ironkrab
 
29.01.13
12:12
(3) Изначально было со вторым параметром, ни html ни xls не работали. Без него это так - последняя надежда. И тоже не работает.
8 ironkrab
 
29.01.13
12:13
(6) Я на локалхосте тестирую, т.е я и сервер и клиент
9 Smit1C
 
29.01.13
12:13
+6 и возможно на сервере нет прав на запись в диск С
10 andreymongol82
 
29.01.13
12:14
(7) А если КаталогВременныхФайлов()+"ИмяФайла" попробовать? и там поискать?
11 ironkrab
 
29.01.13
12:16
(7) Начальство отзывает - вернусь попробую и обязательно отпишусь! Спасибо!
12 ironkrab
 
29.01.13
12:16
7 -> 10
13 Wobland
 
29.01.13
12:21
(10) а нет такого
14 Wobland
 
29.01.13
12:22
а вот так мне мозилла предлагает сохранить текстовый документ: "C_LIST1"
ТекТабДок.Записать("C:\LIST1");
15 Wobland
 
29.01.13
12:22
сохранять на сервере, а потом как-то одавать клиенту?
16 andreymongol82
 
29.01.13
12:23
(13) В смысле нет? Передаем на сервер, получаем на сервер каталог, возвращаем строку (15) - ну да, как-то так
17 Wobland
 
29.01.13
12:24
(16) и что клиент с этой строкой делать будет?
18 andreymongol82
 
29.01.13
12:26
(17) Путь к временному каталогу, куда всякая хрень падать может
19 Wobland
 
29.01.13
12:27
(18) нету временного каталога на веб-клиенте. на зачем клиенту серверный путь?
20 andreymongol82
 
29.01.13
12:29
(19) А куда тогда внешние обработки из "Дополнительные внешние обработки" валятся в веб-клиенте?
21 Wobland
 
29.01.13
12:29
(20) понятия не имею
22 andreymongol82
 
29.01.13
12:33
(21) В в типовом решении во временном каталоге, когда открывается внешняя обработка из сохраненных во "внешние обработки" создается файл, потом путь к этому отдается клиенту и соответственно открывается обработка. Может, если в вэб как-то по другому реализовано, то тогда не знаю. А так можно было бы поглядеть.
23 ironkrab
 
29.01.13
21:08
(10) Каталог временных файлов на вебе недоступен...
24 ironkrab
 
29.01.13
21:10
Хочется знать как у других обстоят дела с этим вопросом, неужели никто не сохранял в ВЕБЕ отчеты в файл программно, без непосредственного сохранения пользователем через "сохранить как" ???
25 NcSteel
 
29.01.13
21:16
(0) Книжки лень почитать? БСП открыть лень?
26 ironkrab
 
29.01.13
21:21
(25) Синтаксис помощник мне не помог, книг существует много...
Можешь ткнуть во что-то конкретное- буду признателен..
А если так рассуждать то и Миста не нужна...
27 ironkrab
 
29.01.13
21:31
Удивляет другое - код на клиенте из (0) выполняется без сообщений об ошибке и ... без результата
28 ironkrab
 
30.01.13
10:06
Апну
29 ironkrab
 
30.01.13
10:21
Люди, если кому не трудно - повторите у себя этот эксперимент с кодом из (0) на ВЕБе и напишите результат, чтобы я хотя бы знал глюк это или фича.
30 Wobland
 
30.01.13
10:23
(29) аналогично. ещё вчера
31 ironkrab
 
30.01.13
10:27
(30) Спасибо.
Хоть бери да вручную в тексте  html файл собирай и сохраняй как текстовый документ с расширением html. На крайняк это и буду делать...
32 Wobland
 
30.01.13
10:29
тебе ТабДок в хтмл сохранить надо? в 8.1 сервер такого не умел
33 ironkrab
 
30.01.13
11:05
(32) В идеале - сохранить пару десятков мелких файликов в екселе на клиенте. Ну на крайняк пойдет и html.
34 НЕА123
 
30.01.13
11:11
не мое.

&НаСервереБезКонтекста
Функция СохранитьМакетНаСервере(Макет,ТипФайла,УИД)
   ИмяФайла=ПолучитьИмяВременногоФайла("tmp");
   Попытка
       Макет.Записать(ИмяФайла,ТипФайла);
       Двоичные=Новый ДвоичныеДанные(ИмяФайла);
       Адрес=ПоместитьВоВременноеХранилище(Двоичные,УИД);
       Возврат Адрес;
   Исключение
       Возврат Неопределено;
   КонецПопытки;
КонецФункции

&НаКлиенте
Процедура Сохранить(Команда)
   Диалог=Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
   Диалог.Фильтр =
   "Формат MXL (*.mxl)|*.mxl|"
   + "Формат EXCEL (*.xls)|*.xls|"
   + "Формат EXCEL 2007 (*.xlsx)|*.xlsx|";
   Если Диалог.Выбрать() Тогда
       Файл=Новый Файл(Диалог.ПолноеИмяФайла);
       ТипФайла=ТипФайлаТабличногоДокумента.XLS97;
       Если Файл.Расширение=".mxl" Тогда
           ТипФайла=ТипФайлаТабличногоДокумента.MXL;
       ИначеЕсли Файл.Расширение=".xls" Тогда
           ТипФайла=ТипФайлаТабличногоДокумента.XLS97;
       ИначеЕсли Файл.Расширение=".xlsx" Тогда
           ТипФайла=ТипФайлаТабличногоДокумента.XLSX;
       КонецЕсли;
       Файл=Неопределено;
   КонецЕсли;
   АдресМакета=СохранитьМакетНаСервере(Результат,ТипФайла,ЭтаФорма.УникальныйИдентификатор);
   Если АдресМакета<>Неопределено Тогда
       Описание=Новый ОписаниеПередаваемогоФайла(Диалог.ПолноеИмяФайла,АдресМакета);
       МассивОписаний=Новый Массив;
       МассивОписаний.Добавить(Описание);
       Если ПолучитьФайлы(МассивОписаний,,,Ложь)=Ложь Тогда
           ОбщиеФункцииКлиент.СообщитьСтандартно("Не удалось сохранить файл!");
       КонецЕсли;
   КонецЕсли;
КонецПроцедуры
35 iceman2112
 
30.01.13
11:14
вообще не айс, сохранять с браузера что то.
Есть же стандрат, "сохранить как..."
Что нужно отчет пади сохранить на машине клиента?
36 ironkrab
 
30.01.13
11:14
(34) Спасибо !!! Буду пробовать!
37 ironkrab
 
30.01.13
11:16
(35) Нужно сохранить ряд мелких файликов (штук 20) для рассылки по клиентам (типа уведомления), для каждого кликать сохранить как - не айс.
38 ironkrab
 
31.01.13
00:41
Проблема решена. Огромное спасибо  НЕА123, а также всем неравнодушным. Метод в (34) отлично работает на експлорере (с мозилой правда пока не хочет - но это уже детали).
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс