![]() |
![]() |
![]() |
|
Ошибка при вызове метода контекста (ПолучитьИзВременногоХранилища) | ☑ | ||
---|---|---|---|---|
0
miSoft
14.03.19
✎
14:21
|
Дорогие друзья всем доброго времени суток.
Помогите пожалуйста понять что я делаю не так. Поставлена задача вывести на форму табличный документ Excel. Код: &НаКлиенте Процедура ПоместитьФайлИнтерактивно() ОбработкаОкончанияПомещения = Новый ОписаниеОповещения ("ОбработчикОкончанияПомещения", ЭтотОбъект); НачатьПомещениеФайла(ОбработкаОкончанияПомещения, , , Истина, ЭтаФорма.УникальныйИдентификатор); КонецПроцедуры &НаКлиенте Процедура ОбработчикОкончанияПомещения(Результат, Адрес, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт Если Результат Тогда Сообщить(Адрес); Сообщить(ВыбранноеИмяФайла); Объект.ДиалогВыбора = Адрес; Объект.НаименованиеЗагружаемогоФайла = ВыбранноеИмяФайла; Иначе Сообщить("Файл не был помещен."); КонецЕсли КонецПроцедуры &НаКлиенте Процедура КнопкаВыбораФайла(Команда,ДиалогВыбора) ОбработатьФайлНаСервере(ДиалогВыбора); //Адрес = ; КонецПроцедуры &НаСервере Процедура ОбработатьФайлНаСервере(ДиалогВыбора) Объект.ТабличныйДокумент.Очистить(); Путь = КаталогВременныхФайлов()+"1Ctabdoctemp.xls"; Файл = ПолучитьИзВременногоХранилища(ДиалогВыбора); Файл.Записать(Путь); ТабДок = Новый ТабличныйДокумент; ТабДок.Прочитать(Путь,СпособЧтенияЗначенийТабличногоДокумента.Значение); ТабличныйДокументРеквизитФормы.Вывести(ТабДок); Сообщить("Загрузка таблицы Excel произведена успешно!"); КонецПроцедуры Получаю ошибку: {ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(37)}: Ошибка при вызове метода контекста (ПолучитьИзВременногоХранилища) Файл = ПолучитьИзВременногоХранилища(ДиалогВыбора); по причине: Недопустимое значение параметра (параметр номер '1') Он говорит что не понимает что я от него хочу. У меня создан реквизит строковый куда помещается адрес, имя реквизита ДиалогВыбора. Почему он не может понять то че я от него хочу? Не судите строго, я только учусь писать код, прям только начал :) |
|||
1
Mort
14.03.19
✎
14:53
|
Процедура КнопкаВыбораФайла(Команда,ДиалогВыбора) что это за второй параметр?
Какой порядок вызовов? |
|||
2
Вафель
14.03.19
✎
14:56
|
передача файла с клиента на сервер
https://gist.github.com/a-sitnikov/6bd195061cd0c3911b1fd03910f0db10 |
|||
3
RomaH
naïve
14.03.19
✎
15:05
|
длины строки не хватает
|
|||
4
miSoft
14.03.19
✎
15:18
|
(3) Она неограниченной длины
|
|||
5
miSoft
14.03.19
✎
15:19
|
(4) Разобрался ребят. На всякий случай скину рабочий код, может кому-то пригодится:
&НаКлиенте Процедура ПоместитьФайлИнтерактивно() ОбработкаОкончанияПомещения = Новый ОписаниеОповещения ("ОбработчикОкончанияПомещения", ЭтотОбъект); НачатьПомещениеФайла(ОбработкаОкончанияПомещения, , , Истина, ЭтаФорма.УникальныйИдентификатор); КонецПроцедуры &НаКлиенте Процедура ОбработчикОкончанияПомещения(Результат, Адрес, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт Если Результат Тогда Сообщить(Адрес); Сообщить(ВыбранноеИмяФайла); Объект.ДиалогВыбора = Адрес; Объект.НаименованиеЗагружаемогоФайла = ВыбранноеИмяФайла; Иначе Сообщить("Файл не был помещен."); КонецЕсли КонецПроцедуры &НаКлиенте Процедура КнопкаВыбораФайла(Команда) ОбработатьФайлНаСервере(); КонецПроцедуры &НаСервере Процедура ОбработатьФайлНаСервере() Объект.ТабличныйДокумент.Очистить(); Путь = КаталогВременныхФайлов()+"1Ctabdoctemp.xls"; Файл = ПолучитьИзВременногоХранилища(Объект.ДиалогВыбора); Файл.Записать(Путь); ТабДок = Новый ТабличныйДокумент; ТабДок.Прочитать(Путь,СпособЧтенияЗначенийТабличногоДокумента.Значение); ТабличныйДокументРеквизитФормы = ТабДок; Сообщить("Загрузка таблицы Excel произведена успешно!"); КонецПроцедуры &НаСервере Процедура УдалениеВременныхФйловИзКаталогаФайлов() Путь = КаталогВременныхФайлов()+"1Ctabdoctemp.xls"; УдалитьФайлы(Путь); КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |