Имя: Пароль:
1C
1С v8
Запись таб.док на сервере. Использование синхронных методов на клиенте запрещено
0 wms
 
25.02.16
23:02
На сервере табдок сохраняется в файл- excel
Все работало пока не перешли на новую УТ и не обновили платформу
УТ11.1С:Предприятие 8.3 (8.3.7.1873)


табдок.Записать(ИмяТемпФайла, ТипФайлаТабличногоДокумента.XLS);
-эта строка выдает ошибку Модуль(933)}: Ошибка при вызове метода контекста (Записать): Использование синхронных методов на клиенте запрещено!

да, в свойствах конфы установлено Режим использования асинхронных вызывов в "Не использовать" Менять не хочу т.к. конфа почти типовая.

Как обойти эту проблему?
1 wms
 
25.02.16
23:03
код исполняется на сервере.База файловая.И такое сообщение
2 Lexey_
 
25.02.16
23:11
(0) стаж 10 лет? Использовать асинхронный аналог НачатьЗапись()
3 wms
 
25.02.16
23:15
(2) в УФ месяцы, если не дни
за наводку спасибо попробую
читаю это пока не в хуб ногой
http://v8.1c.ru/o7/201312ref/index.htm
4 wms
 
25.02.16
23:17
меня вот такие советы убивают типа
http://devtrainingforum.v8.1c.ru/forum/thread.jsp?id=638314
"в свойствах конфигурации в категории "Совместимость" нужно установить подходящее свойство для "режим использования синхронных вызовов"." т.е. 1С в типовой изменила, а вы верните?
5 wms
 
26.02.16
00:10
cltkfk
        ИмяТемпФайла = ПолучитьИмяВременногоФайла();
        табдок.НачатьЗапись(,ИмяТемпФайла,
        ТипФайлаТабличногоДокумента.XLS);


не ругается, но и  файла нет
6 wms
 
26.02.16
00:11
(5)сделал так, не получилось
7 wms
 
26.02.16
08:26
ап
8 Lexey_
 
26.02.16
08:32
(6) "но и  файла нет" на сервере хоть?
9 LordCMEPTb
 
26.02.16
08:38
(0) На сервере табдок сохраняется в файл- excel ...
(5) НачатьЗапись (BeginWriting)
...
Доступность:
Тонкий клиент, веб-клиент, толстый клиент.

Точно на сервере, а не в толстом клиенте?
10 wms
 
26.02.16
08:46
(9)база файловая. в общем модуле стоит галка "Сервер" и "ВызовСервера"
11 LordCMEPTb
 
26.02.16
09:02
(10) Рад за вас. У меня тоже база файловая и ошибка появляется. Вот только в толстом клиенте... Но до этого мы дойдем где-то в 56м посте.
12 wms
 
26.02.16
09:16
(11)черт. спасибо заработало.
я просто периодически запускаю режим отладки в толстом клиенте (запросы в консоле делаю)
оказывается в этом дело.
Перечитал справку.
Записать(<ИмяФайла>, <ТипФайлаТаблицы>)
Описание:

Записывает табличный документ в файл.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
И ни слова нет про не работает в толстом клиенте если установлен режим синхронности "Не использовать" и поэтому в этом режими в толстом и не работает...
еще раз спасибо огромное. бился полночи.
С утра режим асинхронности установил в "Использовать" и тоже заработало.Но теперь режим вернул как было
13 wms
 
26.02.16
09:21
где бы полный список синхронных методов языка 1С теперь найти?
14 LordCMEPTb
 
26.02.16
09:31
По идее в апдейтах пишут про новые асинхронные методы. Плюс в синтакс-помощнике, если пишут про клиентский метод в описании "следует использовать метод Начать...", то надо менять.
З.Ы. На стороне сервера асинхронности пока нет, можно не заморачиваться.
15 wms
 
26.02.16
09:40
Вылезла новая проблема.Теперь уже в типовом коде 1С УТ11.
Я в (0) создаю электронные письма исходящие со вложенными эксель файлами.
Проблему (0) решил.Но, пробую в тонком клиенте из электронного письма открыть эксель файл и такая ошибка:
{ОбщийМодуль.ФайловыеФункцииСлужебныйКлиент.Модуль(456)}: Ошибка при вызове метода контекста (ПодключитьРасширениеРаботыСФайлами)
        Возврат ПодключитьРасширениеРаботыСФайлами();
по причине:
Использование синхронных методов на клиенте запрещено!

Включаю Режим использования асинхронных методов в конфигурации в "Использовать" - это чем то чревато?
16 wms
 
26.02.16
13:14
чтоб новую тему не заводить еще один вопросик.
База файловая.Запускаю регламентное задание(процедура в общем модуле галка "Сервер") - отладка не работает

Сделал внешнюю обработку и вызываю оттуда отладка в этом общем модуле все работает. Код внешней обработки такой:
&НаСервере
Процедура КомандаНаОтправкуЭлектронныхПисемНаСервере()
    УправлениеЭлектроннойПочтой.ПолучениеИОтправкаЭлектронныхПисем();
КонецПроцедуры

Почему отладка напрямую не работает?
17 wms
 
26.02.16
13:16
вернее почему вроде понятно. можно сделать чтобы работала отладка напрямую?
18 LordCMEPTb
 
26.02.16
13:21
А автоподключение фоновых заданий стоит?
19 wms
 
26.02.16
13:52
(18)это как и где?
фоновые задание работают автоматически по расписанию
Основная теорема систематики: Новые системы плодят новые проблемы.