Имя: Пароль:
1C
1С v8
ИдентификаторФормы что это?
0 lirt82
 
17.02.21
14:22
Пишу обработку по загрузке данных из файла эксель, на форме в реквизите ИмяФайла при выборе происходит ошибка как исправить?

&НаКлиенте
Процедура ИмяФайлаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    Диалог.Фильтр = "Документ Excel (*.xls;*.xlsx)|*.xls;*.xlsx";
    Диалог.МножественныйВыбор = Ложь;
    Диалог.Заголовок = НСтр("ru=’Выберите файл Excel'");
    ОповещениеЗавершения = Новый ОписаниеОповещения("ВыбратьИПередатьФайлНаСерверПослеВыбораВДиалоге", ОбменДаннымиКлиент, ЭтотОбъект);
    Диалог.Показать(ОповещениеЗавершения);
    
КонецПроцедуры

в общем модуле такой код

&НаКлиенте
Процедура ИмяФайлаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    Диалог.Фильтр = "Документ Excel (*.xls;*.xlsx)|*.xls;*.xlsx";
    Диалог.МножественныйВыбор = Ложь;
    Диалог.Заголовок = НСтр("ru=’Выберите файл Excel'");
    ОповещениеЗавершения = Новый ОписаниеОповещения("ВыбратьИПередатьФайлНаСерверПослеВыбораВДиалоге", ОбменДаннымиКлиент, ЭтотОбъект);
    Диалог.Показать(ОповещениеЗавершения);
    
КонецПроцедуры

{ОбщийМодуль.ОбменДаннымиКлиент.Модуль(845)}: Поле объекта не обнаружено (ИдентификаторФормы)
        НачатьПомещениеФайлов(
1 lirt82
 
17.02.21
14:24
вот код из общего модуля

Процедура ВыбратьИПередатьФайлНаСерверПослеВыбораВДиалоге(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт
    
    Если ВыбранныеФайлы <> Неопределено
        И ВыбранныеФайлы.Количество() = 1 Тогда
        
        Оповещение = Новый ОписаниеОповещения("ВыбратьИПередатьФайлНаСерверПослеВыбораВДиалогеЗавершение", ЭтотОбъект, ДополнительныеПараметры);
        СписокДляПередачи = Новый Массив;
        СписокДляПередачи.Добавить(Новый ОписаниеПередаваемогоФайла(ВыбранныеФайлы[0]));
        
        НачатьПомещениеФайлов(
            Оповещение,
            СписокДляПередачи,,
            Ложь,
            ДополнительныеПараметры.ИдентификаторФормы);
        
    КонецЕсли;
    
КонецПроцедуры
2 lirt82
 
17.02.21
14:25
конфа розница 2
3 FIXXXL
 
17.02.21
14:29
ДополнительныеПараметры.ИдентификаторФормы
при вызове общей процедуры собери нормально доп.параметры
4 lirt82
 
17.02.21
17:48
(3) сделал по-простому
&НаКлиенте
Процедура ИмяФайлаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    Диалог.Заголовок = НСтр("ru=’Выберите файл Excel'");
    Диалог.ПолноеИмяФайла = Объект.ИмяФайла;
    Диалог.Фильтр = "Документ Excel (*.xls;*.xlsx)|*.xls;*.xlsx";
    
    ОчиститьСообщения();
    Если Диалог.Выбрать() Тогда
        Объект.ИмяФайла = Диалог.ПолноеИмяФайла;
    КонецЕсли;
    
КонецПроцедуры
5 Капитан Джек Воробей
 
17.02.21
18:01
(1) Вместо ДополнительныеПараметры.ИдентификаторФормы поставить УникальныйИдентификатор
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший