Не могу отобразить колонку в динамическом списке программно
Уважаемые коллеги! нужна помощь:
в конфе на поддержке понадобилось добавить пару реквизитов в документ. Теперь надо вывести их в форме списка. В расширении.
Добавил в основной конфигурации реквизиты. Добавил в расширение форму списка, в форме добавил обработчик события
ПриСозданииНаСервереПосле
в нем прописал
Список.ТекстЗапроса = СтрЗаменить(Список.ТекстЗапроса, "itilprofИнциденты.КодЗавершения,", "itilprofИнциденты.КодЗавершения, itilprofИнциденты.ЧисловойПриоритет, itilprofИнциденты.КрайнийСрок, ");
НоваяКолонка = Элементы.Вставить("ЧисловойПриоритет", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.ЧисловойПриоритет";
НоваяКолонка.Заголовок = "Приоритет(Ч)";
НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода;
НоваяКолонка = Элементы.Вставить("КрайнийСрок", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.КрайнийСрок";
НоваяКолонка.Заголовок = "Крайний срок";
НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода;
Колонки появились. Но в них не отображаются значения! Отбор меж тем работает. Добавил реквизиты в расширение - не помогло. Что я делаю не так?!
в конфе на поддержке понадобилось добавить пару реквизитов в документ. Теперь надо вывести их в форме списка. В расширении.
Добавил в основной конфигурации реквизиты. Добавил в расширение форму списка, в форме добавил обработчик события
ПриСозданииНаСервереПосле
в нем прописал
Список.ТекстЗапроса = СтрЗаменить(Список.ТекстЗапроса, "itilprofИнциденты.КодЗавершения,", "itilprofИнциденты.КодЗавершения, itilprofИнциденты.ЧисловойПриоритет, itilprofИнциденты.КрайнийСрок, ");
НоваяКолонка = Элементы.Вставить("ЧисловойПриоритет", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.ЧисловойПриоритет";
НоваяКолонка.Заголовок = "Приоритет(Ч)";
НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода;
НоваяКолонка = Элементы.Вставить("КрайнийСрок", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.КрайнийСрок";
НоваяКолонка.Заголовок = "Крайний срок";
НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода;
Колонки появились. Но в них не отображаются значения! Отбор меж тем работает. Добавил реквизиты в расширение - не помогло. Что я делаю не так?!
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) Я примерно так и делаю, ВидПоляФормы.ПолеНадписи я пробовал прописать, хотя это стоит и так по умолчанию после выполнения Элементы.Добавить(
Вот еще раз кусок моего кода
Список.ТекстЗапроса = СтрЗаменить(Список.ТекстЗапроса, "itilprofИнциденты.КодЗавершения,", "itilprofИнциденты.КодЗавершения, itilprofИнциденты.ЧисловойПриоритет, itilprofИнциденты.КрайнийСрок, ");
НоваяКолонка = Элементы.Вставить("ЧисловойПриоритет", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.ЧисловойПриоритет";
НоваяКолонка.Заголовок = "Приоритет(Ч)";
НоваяКолонка.Вид = ВидПоляФормы.ПолеНадписи ;
Вот еще раз кусок моего кода
Список.ТекстЗапроса = СтрЗаменить(Список.ТекстЗапроса, "itilprofИнциденты.КодЗавершения,", "itilprofИнциденты.КодЗавершения, itilprofИнциденты.ЧисловойПриоритет, itilprofИнциденты.КрайнийСрок, ");
НоваяКолонка = Элементы.Вставить("ЧисловойПриоритет", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.ЧисловойПриоритет";
НоваяКолонка.Заголовок = "Приоритет(Ч)";
НоваяКолонка.Вид = ВидПоляФормы.ПолеНадписи ;
Позвольте вас побеспокоить вопросом:
В динамическом списке, точно существует ваша колонка?
Очень похоже на то, что колонку вы выводите, а в запросе динамического списка колонку не вывели? Может быть такое? Или все таки вывели и это глюк 1С? Как стоит задача? В чем реально вы не находите работоспособности формы?
В динамическом списке, точно существует ваша колонка?
Очень похоже на то, что колонку вы выводите, а в запросе динамического списка колонку не вывели? Может быть такое? Или все таки вывели и это глюк 1С? Как стоит задача? В чем реально вы не находите работоспособности формы?
А зачем вы вообще это делаете программно? В расширении в форме списка открываете конструктором запрос динамического списка, добавляете туда что надо, затем с левой стороны из полей динамического списка перетаскиваете мышью ваши поля на форму списка...
(10) Думаю это вопрос дальнейшей поддержки. Проще, когда форма не изменена "руками", потому что при существенном изменении формы расширение может не подключиться. Тогда приходится ее снова делать заново, что не сильно отличается от просто дописать конфигурацию со всеми "человеческими факторами". Отличается только тем, что при обновлении изменения видны, если они в конфигурации, а с расширением всегда обнаруживается постфактум. Иногда это не замечается, что приводит к неприятным моментам.
Йесс!!! Нашел! Не поверите - в исходной форме списка в ПриОткрытии запрос полностью подменялся!!!
Кароче работает все в простейшей форме без всякого шаманства,
чисто
НоваяКолонка = Элементы.Вставить("СписокЧисловойПриоритет", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.ЧисловойПриоритет";
НоваяКолонка.Заголовок = "Приоритет(Ч)";
НоваяКолонка.Вид = ВидПоляФормы.ПолеНадписи;
НоваяКолонка = Элементы.Вставить("СписокКрайнийСрок", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.КрайнийСрок";
НоваяКолонка.Заголовок = "Крайний срок";
НоваяКолонка.Вид = ВидПоляФормы.ПолеНадписи;
просто в расширении сделал изменение запроса в ПриОткрытииПосле
Кароче работает все в простейшей форме без всякого шаманства,
чисто
НоваяКолонка = Элементы.Вставить("СписокЧисловойПриоритет", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.ЧисловойПриоритет";
НоваяКолонка.Заголовок = "Приоритет(Ч)";
НоваяКолонка.Вид = ВидПоляФормы.ПолеНадписи;
НоваяКолонка = Элементы.Вставить("СписокКрайнийСрок", Тип("ПолеФормы"), Элементы.Список, Элементы.ТекущийИсполнитель);
НоваяКолонка.ПутьКДанным = "Список.КрайнийСрок";
НоваяКолонка.Заголовок = "Крайний срок";
НоваяКолонка.Вид = ВидПоляФормы.ПолеНадписи;
просто в расширении сделал изменение запроса в ПриОткрытииПосле
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот