Что такое "Неявное форматирование индекса"?
Здравствуйте.
делал тестовое задание - надо было динамически создавать Таблицу Значений, по некой выборке.
Мой код:
Мне написали:
При формировании идентификатора колонки "Колонка" выполняется неявное форматирование индекса.
Если я правильно понял, то замечание относиться именно к этому куску кода.
Вопрос: Что имеется в виду, под "неявным форматирование индекса"?
В чем здесь ошибка?
ПС. Названия колонок в задаче были другие, тут заменил на просто "Колонка".
делал тестовое задание - надо было динамически создавать Таблицу Значений, по некой выборке.
Мой код:
ТЗвыборка = Новый ТаблицаЗначений;
ТЗвыборка.Колонки.Добавить("СправочникПоОсиУ",Новый ОписаниеТипов("СправочникСсылка.Справочник1"));
для й = 0 по МассивВыборки.Количество()-1 цикл
ТЗвыборка.Колонки.Добавить("Колонка"+строка(й),Новый ОписаниеТипов("Строка"),МассивВыборки[й].Наименование);
конеццикла;
Мне написали:
При формировании идентификатора колонки "Колонка" выполняется неявное форматирование индекса.
Если я правильно понял, то замечание относиться именно к этому куску кода.
Вопрос: Что имеется в виду, под "неявным форматирование индекса"?
В чем здесь ошибка?
ПС. Названия колонок в задаче были другие, тут заменил на просто "Колонка".
По теме из базы знаний
Найденные решения
Внутри вашего цикла по счетчику производится конкатенация строковой константы и значения счетчика. Именно это значение ваш рецензент обозвал "индексом". При выполнении конкатенации система попытается привести значение счетчика к типу строка используя стандартное форматирование чисел. Когда значение счетчика превысит 999 ваш код упадет с ошибкой.
Остальные ответы
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(1) трудно сказать, что они имели ввиду не зная их компетенцию.
Как вариант, вот это: "Колонка"+строка(й)
Но я бы охарактиризовал это как явное приведение типа. Можно было написать короче:
"Колонка"+й. Будет тоже самое, но платформа сделает приведение типа сама. Разница только в длине кода.
Как вариант, вот это: "Колонка"+строка(й)
Но я бы охарактиризовал это как явное приведение типа. Можно было написать короче:
"Колонка"+й. Будет тоже самое, но платформа сделает приведение типа сама. Разница только в длине кода.
Внутри вашего цикла по счетчику производится конкатенация строковой константы и значения счетчика. Именно это значение ваш рецензент обозвал "индексом". При выполнении конкатенации система попытается привести значение счетчика к типу строка используя стандартное форматирование чисел. Когда значение счетчика превысит 999 ваш код упадет с ошибкой.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот