Имя: Пароль:
1C
1С v8
Как выгрузить выделенные строки?
,
0 617
 
02.10.24
10:24
Управляемая форма
Реквизит "ДанныеИзФайла" тип "ДанныеФормыКоллекция" (ТаблицаЗначений)

Код

&НаКлиенте
Процедура Команда1(Команда) 
	ВыделенныеСтроки = Элементы.ДанныеИзФайла.ВыделенныеСтроки;
	Команда1НаСервере(ВыделенныеСтроки);
КонецПроцедуры

&НаСервере
Процедура Команда1НаСервере(ВыделенныеСтроки);
	ТЗ = Новый ТаблицаЗначений;
	ТЗ = ДанныеИзФайла.Выгрузить(ВыделенныеСтроки, );
КонецПроцедуры


приводит к ошибке "Несоответствие типов (параметр номер '1')"
Какой массив ожидается в первом параметре метода?
1 CepeLLlka
 
02.10.24
10:27
Надо погуглить
2 Волшебник
 
02.10.24
10:29
Надо открыть синтакс-помощник на строке с типом переменной "ДанныеИзФайла", найти там метод "Выгрузить" и посмотреть, что ожидается первым параметром.
3 formista2000
 
02.10.24
10:30
(2) Может, лучше отладчик? ;-)
4 Волшебник
 
02.10.24
10:31
(3) Там нет этой информации
5 formista2000
 
02.10.24
10:34
(4) Ой, ну да! ))
(0) Различай "строка таблицы значений" и "данные формы коллекция" или как их там...
6 formista2000
 
02.10.24
10:37
(0) РеквизитФормыВЗначение должно помочь тебе.
7 617
 
02.10.24
10:42
Хм. Там должен быть массив именно строк, а не идентификаторов строк.

&НаСервере
Процедура Команда1НаСервере(ВыделенныеСтроки);
	ТЗ = Новый ТаблицаЗначений;
	МВС = Новый Массив();
	Для Каждого Строка Из ДанныеИзФайла Цикл
		Если МассивВыделенныхСтрок.Найти(Строка.ПолучитьИдентификатор()) = Неопределено Тогда Продолжить КонецЕсли;
		МВС.Добавить(Строка);
	КонецЦикла;
	ТЗ = ДанныеИзФайла.Выгрузить(МВС, );
КонецПроцедуры
8 lEvGl
 
гуру
02.10.24
10:54
выделенные строки, емнип, и есть массив строк. куда выгрузить надо? перебор этого массива и выгрузка каждой, можно даже без сервера, если текстовый файл нужен или еще что то в этом роде
нет, там массив идентификаторов, значит надо получать строку по индентификатору
зы. от типа таблицы зависит, если тз, то да, массив идентификаторов
9 Волшебник
 
02.10.24
10:46
Команда1 - плохое имя команды
10 sikuda
 
02.10.24
11:47
(4) Это ещё раз подтверждает, что в головах 1С-ников нет никаких схем работы типа MVC.
Нет понимания, что ВыделенныеСтроки это не данные, а представление (только индексы) реальных данных (7).
11 CepeLLlka
 
02.10.24
10:48
(10)Да даже вот это тут зачем?
ТЗ = Новый ТаблицаЗначений;