После загрузки из Экселя в табличную часть добавляется не больше 22-х строк
Здравствуйте. Подскажите пожалуйста, в чём может быть причина?
&НаКлиенте
Процедура ПолеДляВыбораФайлаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Диалог.Заголовок = "Выберите excel - файл";
Диалог.ПолноеИмяФайла = "c:\";
Диалог.Фильтр = "Таблицы (*.xls,*.xlsx)|*.xls;*.xlsx;|Microsoft Excel 97/2000/XP/2003 (*.xls)|*.xls|Microsoft Excel 2007/2010 (*.xlsx)|*.xlsx";
Если Диалог.Выбрать() Тогда
ПолеДляВыбораФайла = Диалог.ПолноеИмяФайла;
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция ЗагрузитьФайл(ПолеДляВыбораФайла) Экспорт // Загружаем из Экселя тренировки и передаём их в Таблицу Значений "ТЗ"
КнигаExcel = ПолучитьCOMОбъект(ПолеДляВыбораФайла); //Получить книгу из файла EXCEL
ExcelЛист = КнигаExcel.Sheets(1);
xlCellTypeLastCell = 11;
ExcelПоследняяСтрока = ExcelЛист.Cells.SpecialCells(xlCellTypeLastCell).Row;
ExcelПоследняяКолонка = ExcelЛист.Cells.SpecialCells(xlCellTypeLastCell).Column;
ТЗ = Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("Упражнение");
ТЗ.Колонки.Добавить("Подход");
ТЗ.Колонки.Добавить("Повторений");
ТЗ.Колонки.Добавить("Кг");
ТЗ.Колонки.Добавить("Комментарий");
ТЗ.Очистить();
Для НомСтроки = 2 По ExcelПоследняяСтрока Цикл // НомСтроки = 2 - номер колонки
НоваяСтр = ТЗ.Добавить();
НоваяСтр.Упражнение = СокрЛп(ExcelЛист.Cells(НомСтроки,2).Value);
НоваяСтр.Подход = ExcelЛист.Cells(НомСтроки,3).Value;
НоваяСтр.Повторений = ExcelЛист.Cells(НомСтроки,4).Value;
НоваяСтр.Кг = ExcelЛист.Cells(НомСтроки,5).Value;
НоваяСтр.Комментарий = СокрЛп(ExcelЛист.Cells(НомСтроки,6).Value);
КонецЦикла;
КнигаExcel=КнигаExcel.Application.Quit();
Сообщить("Загрузка завершена!");
Возврат ТЗ;
КонецФункции
&НаСервере
Функция ПолучениессылкиДляУпражнения(Наименование) Экспорт // Обработка поля для получения ссылки, для документа Тренировки
слк = Справочники.Упражнения.НайтиПоНаименованию(Наименование);
Если слк = Справочники.Упражнения.ПустаяСсылка() Тогда
Возврат Неопределено
Иначе
Возврат слк;
КонецЕсли;
КонецФункции
&НаКлиенте
Процедура ЗаполнитьТабличнуюЧасть(Команда, ТЗ) // Кнопка переименована в Загрузить на форме
ТЗ = ЗагрузитьФайл(ПолеДляВыбораФайла);
Для Каждого Строка Из ТЗ Цикл
ТЧ = Объект.Упражнения.Добавить();
ТЧ.Подход = Строка.Подход;
слкУпражнения = ПолучениессылкиДляУпражнения(Строка.Упражнение);
Если слкУпражнения = Неопределено Тогда
Возврат;
Иначе
ТЧ.Упражнение = слкУпражнения;
КонецЕсли;
ТЧ.КолвоПовторов = Строка.Повторений;
ТЧ.Кг = Строка.Кг;
ТЧ.Комментарий = Строка.Комментарий;
КонецЦикла;
КонецПроцедуры
ПоказатьНайденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот