Новости экономики и финансов. Курсы валют, ситуация на биржах, акции, котировки, аналитика: 💫 💫 💫 💫 💫 читайте на сайте

1C Фиксированная Ширина Колонки Табличной Части • Суть решения

В 1С Предприятии 8 для активизации строки конкретного табличного поля следует выполнить установку свойства ТекущаяСтрока соответствующего элемента управления.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Если тип значения РегистрСведенийСписок, тогда свойству ТекущаяСтрока присваивается значение типа РегистрСведенийКлючЗаписи. Примеры работы с табличным полем в 1С 8 | — все для начинающих и опытных программистов 1С Обращайтесь в форму связи

1С итог по столбцу

Иногда возникает потребность вывести в таблице некоторые ресурсы только в итоге по строкам. Например, требуется вывести в колонках таблицы номенклатуру с указанием суммы оборота и суммы по количеству проданной номенклатуры, а в итоге по строке требуется видеть только итог по сумме.

Если просто добавить в настройки таблицу, и указать, что нужно выводить ресурсы Сумма оборот и Количество оборот,

Для того чтобы итог по строке содержал только определенный ресурс, можно воспользоваться детальными записями, в которых выводятся только ресурсы (см. раздел «Особенности использования детальных записей»).

Для этого, добавим в колонки группировку без полей группировки:

Мы добились того, что в правой части таблицы появился еще один итог по строке, в котором выводятся все ресурсы.

Нам требуется, чтобы в итоге по строке выводилось только поле «Сумма оборот», поэтому перейдем в выбранные поля только что добавленной нами группировки (в конструкторе схемы компоновки данных для этого нужно выделить группировку и переключить текущие редактируемые настройки на «Детальные записи»).

В выбранных полях нашей группировки добавим поле СуммаОборот, и удалим авто поле, т.к. мы точно знаем, какие поля нам нужны.

Теперь, для того, чтобы итог по строке не выдавался два раза, уберем вывод общего итога из группировки Номенклатура. Для этого установим параметр вывода «Расположение общих итогов» в значение «Нет».

Вопрос знатокам: это глюк системы или можно обойтись другими программными средствами? Например отслеживать F9 и вызывать функцию РсчетСуммыПоДокументу()

Синтаксис-помошник вам в помощь!
Если у Вас своя процедура — поделитесь, пожалуйста.
Спасибо.

ПОМОГИТЕ правильно рассчитать сумму документа!
Спасибо.

В результате долгих мучений сам нашел правильное решение.
Да, в 1С 8.2 пока есть глюк с расчетом при копировании текущего элемента (кнопкой или F9). С этим надо смириться и учитывать при работе.
Решение проблемы:
На форме не показывать поле из объекта, рассчитываемое суммированием записей таблицы, например для документа «ПриходнаяНакладная» реквизит «СуммаПоДокументу», а показывать поле надписи «СписокНоменклатурыИтогСумма» (выше подробно описал, как его отобразить).
Отслеживаем событие для формы «ПередЗаписью»:
Код 1C v 8.2 УП

Для дальнейших расчетов в документе «ПриходнаяНакладная» реквизит «СуммаПоДокументу» будет показывать правильное значение.

Какую часть дохода тратите на еду?
До 50%Больше 50%

Продолжаем изучать программирование в системе 1С Предприятие. Сегодня поговорим о том, как подсчитать итоги по колонке в табличной части. Нам нужно чтобы итог подсчитывался автоматически.

В результате долгих мучений сам нашел правильное решение.
Да, в 1С 8.2 пока есть глюк с расчетом при копировании текущего элемента (кнопкой или F9). С этим надо смириться и учитывать при работе.
Решение проблемы:
На форме не показывать поле из объекта, рассчитываемое суммированием записей таблицы, например для документа «ПриходнаяНакладная» реквизит «СуммаПоДокументу», а показывать поле надписи «СписокНоменклатурыИтогСумма» (выше подробно описал, как его отобразить).
Отслеживаем событие для формы «ПередЗаписью»:
Код 1C v 8.2 УП

1С таблица значений итоги в подвале –

Автоподсчёт итогов по колонке в табличной части 1С

И так преступим, запускаем 1С в режиме конфигуратора. Далее переходим в созданный ранее документ. Открываем его и переходим на вкладку формы и открываем её.

В окне формы нужно кликнуть два раза на табличную часть справа должно появиться окно свойств таблицы. В нем ищем пункт Подвал и ставим галочку.

После чего на форме в табличной части снизу должен появиться подвал.

Теперь на нужно чтобы в колонке Сумма подсчитывался итого. Для этого на вкладке Элементы ищем пункт с Название МатериалыСумма и кликаем на нем два раза. Справа появиться свойства поля в них ищем пункт
ТекстПодвала и вписываем Итого. А в пункте ПутьКДаннымПОдвала кликаем на три точечки.

Теперь запускаем отладку и проверяем считается ли итог по колонке в табличной части документа.

Вот мы и сделали автоматический подсчет итогов по колонке. Таким образом можно подсчитать итого во всех колонках и в любых документах.

Скриншоты, опубликованные в данной статье, являются цитатами и иллюстрациями программного продукта «1C:Предприятие», авторское право на который принадлежит ЗАО 1С.

документе много разных блоков — с разными форматами строк, то алгоритм уже не сработает — поскольку все последующие строки табл.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
В программе 1С высота строки табличного документа изменится вручную, если навести мышку на нижнюю границу заголовка строки и дождаться когда курсор мыши преобразуется в раздвоенную вертикальную стрелку. 1с перебрать строки таблицы формы. Обращайтесь в форму связи

1С просто и понятно

Отсортировать табличную часть по колонке, которая не является реквизитом ,невозможно, используя метод «Сортировать».

Использование данного метода вернет вам ошибку: «Неверное имя колонки 1с».

Для того чтобы отсортировать табличную часть по вычисляемой колонке, можно использовать следующий код, который, в данном примере, прописан в процедуре нажатия кнопки:

ТабЧасть=Товары.Выгрузить(); // создаем временную таблицу
ТабЧасть.Колонки.Добавить(«Артикул»); // добавляем в нее нужную колонку

Горящие товары с бесплатной доставкой
 «AliExpress Россия» работает отдельно от глобального «AliExpress» принадлежащего Alibaba. Он не зависит от мировых банковских систем и не попал под санкционный список со стороны США и Великобритании. Из Китая соответственно тоже можно заказывать ничего не опасаясь.

Для каждого Стр из ТабЧасть цикл
Стр.Артикул=Стр.Номенклатура.Артикул; // переписываем информацию из расчетной колонки во временную таблицу
КонецЦикла;

ТабЧасть.Сортировать(«Артикул»); // Сортируем временную таблицу по нужной колонке
Товары.Загрузить(ТабЧасть); // Загружаем временную таблицу в табличную часть

Надеюсь, эта статья была вам полезна. Если у вас остались вопросы вы можете задать их в комментариях.)

Таблица значений 1С – 3 часть. Метаданные. Перебор колонок таблицы значений 1С

1с сортировка табличной части управляемые формы

Настройка сортировки в форме списка по произвольной колонке.

Тип: СравнениеЗначений.
Объект для сравнения элементов. Если объект сравнения не задан, сравнение выполняется по следующим правилам:
элементы, чьи типы не совпадают, сравниваются по коду типа;
элементы простых типов сравниваются по значению;
элементы остальных типов сравниваются по строковому представлению.

Описание:
Сортирует табличную часть в соответствии с указанными правилами сортировки.

Похожие FAQ

Еще в этой же категории

Заполнение списка значений в элементе поле выбора на форме 9
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип — Произвольный, Использование — Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Форма

Программное создание таблицы значений с условным оформлением 6
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Форма

Как активизировать, перевести фокус на необходимый элемент на форме? 6
//Текущему Элементу формы присваиваем элемент котровый необходимо активизировать ЭтаФорма.ТекущийЭлемент = ЭлементыФормы.ТабличноеПоле; Форма

Программное добавление элементов на форму 6
ЭлементыФормы (Controls) . Добавить (Add) — Добавляет элемент управления на форму. Синтаксис: Добавить( Тип , Имя , Видимость , ПоместитьНа ) Параметры: Тип (обязательный) Тип: Тип. Тип добавляемого элемента управления: Индикатор; П Поле выбора

Как ограничить список выбора? 5
Ограничим список элементов, установив отбор в открываемой форме //Пример 1 Процедура СтатьяПДРНачалоВыбора(Элемент, СтандартнаяОбработка) ФормаВыбора = Справочники.ПрочиеДоходыИРасходы.ПолучитьФормуВыбора(, Элемент); ЭлементОтбораВидПДР = Форма Посмотреть все в категории Работа с Формой (Диалог) и её элементами

Скриншоты, опубликованные в данной статье, являются цитатами и иллюстрациями программного продукта 1C Предприятие , авторское право на который принадлежит ЗАО 1С.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Мы увидели в примере выше, что для обращения к значению, находящемуся в конкретной строке и конкретном столбце таблицы значений мы можем использовать последовательный вызов двух операторов. Похожие FAQ Обращайтесь в форму связи

Суть решения

Все просто — в момент присоединения одного табличного документа к другому мы создаем для него новый формат строк. По сути тоже самое, что происходит при интерактивном редактировании макета, когда вы выделяете строки и изменяете для них ширину столбца.

Рис.2. Табличный документ из двух частей. Создан новый формат строк.

Рис. 3. Вопрос в редакторе табличного документа при изменении ширины столбцов.

Скачать файлы

Специальные предложения

Всё равно ширина колонок будет одна и та же в обоих макетах, т.е. уедет ваш второй макет от изначального шаблона. Или я ошибаюсь? Точно, ошибаюсь, проверил 🙂 Тогда «плюс» 🙂

Особенности использования форматированных строк описаны на ИТС
Особенности работы с форматами строк табличного документа

Но из голой теории мало что понятно — не хватает картинок. примеров на реальных макетах.
В справке 1С — предоставлен пример такой же , как и в публикации — который отрабатывает присоединяемый табл. документ, у которого один (!) формат строк на весь макет.

Если в присоединяемом табл. документе много разных блоков — с разными форматами строк, то алгоритм уже не сработает — поскольку все последующие строки табл. документа будут приводиться к формату первого блока строк.

Автор алгоритма потрудился разделить присоединяемый табл.документ на все блоки разных форматов строк — присоединил каждый по отдельности. Ему огромное спасибо за предоставленный алгоритм!

Расскажу в чем нюанс. Сначала я выводил так таб. документы:

В таком случае два макета садятся в один — с первого взгляда красиво, но в формат А4 Портрет уже не влезает — колонки изменяют ширину. По отдельности каждый макет влезает в А4.

Пришлось воспользоваться алгоритмом соединения табл. документов через СоздатьФорматСтрок() — результат положительный и представлен на скриншотах.

См. также

Получение данных из таблицы значений 1С при помощи номеров колонок

💥Принимайте участие в опросе и получайте бесплатную консультацию

Related posts

Добавить комментарий

*