И вот наступил момент, когда стало понятно время, потраченное на решение задачи, превышает удовольствие от ее решения иногда эти величины соизмеримы.
Урок 44. Автоподсчет суммы в табличной части документа
Сегодня поработаем с документом, а именно с его табличной частью.
Очень часто на предприятиях возникает необходимость в том, чтобы вести учет товаров, приходящих и уходящих, а соответственно и суммы, которые приходят или уходят за количество единиц этого товара.
Мы сделаем так, чтобы при введении в столбец «Количество» и столбец «Цена» происходил автоматический подсчет суммы этой строки.
- как только начинает вводиться в столбец «Количество» какое-то значение, так сразу же начинает происходить подсчет суммы;
- как только начинает вводиться в столбец «Количество» какое-то значение, так сразу же начинает происходить подсчет суммы.
В понимании платформы это звучит так; как только пользователь начинает изменять столбец «Количество» или «Цена», так сразу считается сумма автоматически. Происходит срабатывание события «ПриИзменении».
Математические считается это именно так. А в понимании платформы нужно еще сначала обратиться к этим столбцам и потом только их перемножать.
Перед тем как обратиться к столбцу, сначала нужно показать платформе, что мы хотим работать с конкретной табличной частью, так как их может быть несколько.
Обращение к табличной части происходит следующим образом:
Обращение к самим столбцам происходит так, где уже происходит подсчет суммы:
Весь код прописывается всегда в модуле. Так как мы работаем с табличной частью, то соответственно использовать нужно модуль формы этого объекта.
Давайте откроем форму документа «РасходДенег» и посмотрим на то, как называется табличная часть (Рисунок 1).
Табличная часть называется «Товары» и именно поэтому мы обращаемся так, как было описано выше.
Мы уже знаем, что сумма должна считаться при изменении столбца «Количество» или столбца «Цена».
Давайте выделим столбец «Количество», найдем событие «ПриИзменении» и создадим процедуру на клиенте. Откроется модуль формы (Рисунок 2).
Тут необходимо убрать зеленую строку (закомментированная строка) и вместо нее написать то, что мы писали выше: сначала обращение к табличной части, а затем уже обращение к самим столбцам и подсчет суммы (Рисунок 3).
Теперь необходимо сделать так, чтобы и при изменении цены считалась сумма.
Заходим в режим разработчика и находим столбец «Цена», находим событие «ПриИзменении» и создаем процедуру на клиенте (Рисунок 5).
Берем из первой процедуры внутреннюю часть и копируем ее во вторую процедуру. Все точно также. При изменении цены будет происходить перемножение тех же самых столбцов, а значит новый код писать ненужно (Рисунок 6).
Промокоды на Займер на скидки
Нажмем на кнопку проверки, ошибок нет. Запустим пользовательский режим и проверим изменения. При изменении количества и цены должен происходить подсчет суммы строки (Рисунок 7).
Когда написано много программного кода это не очень хорошо, так как каждая строка такого кода занимает место в памяти. Чем больше кода, тем больше занимает программа места.
1с 8.3 табличная часть документа
Обратите внимание, что данная функция является обязательной для внешних печатных форм в конфигурациях использующих обычное приложение.
Файл внешней обработки
Перейдем к решению задачи. Для начала откроем 1С 8 в режиме Конфигуратор. Именно в этом режиме осуществляются все разработки на платформе 1С 8. Теперь нам необходимо создать файл внешней обработки. Для этого кликнем по меню Файл -> Новый… или по пиктограмме нового файла.
В открывшемся окошке выберем пункт Внешняя обработка.
Далее в поле Имя необходимо вписать название внешней обработки. В нашем случае назовем ее просто: «ПечатнаяФорма», поле синоним при этом заполнится автоматически. Обратите внимание, что в поле Имя, внешней обработки, следует писать название без пробелов и знаков препинания.
Добавим реквизит внешней обработки СсылкаНаОбъект и выберем для него тип ДокументСсылка.ПоступлениеТоваровУслуг. Для этого в дереве метаданных внешней обработки 1С выделим пункт Реквизиты и нажмем кнопку Добавить (кнопка с зеленым плюсом). В правой части экрана откроется окно свойств реквизита, в поле Имя впишем — СсылкаНаОбъект. В поле Тип нажмем кнопку с тремя точками.
В дереве типов раскроем ветку ДокументСсылка, и найдем там элемент ПоступлениеТоваровУслуг, поставим напротив него галочку и нажмем ОК.
Сохраним файл внешней обработки на жесткий диск, для этого воспользуемся меню Файл -> Сохранить, пиктограммой Сохранить (синяя дискета), либо сочетанием клавиш Ctrl + S. Назовем сохраняемый файл «ПечатнаяФорма».
Добавить реквизит табличной части программно
- Создание файла внешней печатной формы;
- Создание макета печатной формы;
- Написание программного кода для вывода данных печатной формы на экран;
- Создание параметров авторегистрации печатной формы;
- Подключение внешней печатной формы к базе 1С Предприятия.
Создание макета печатной формы
Приступим к созданию макета печатной формы 1С. Макет служит шаблоном для вывода печатной формы, поэтому если хотите, чтобы ваша печатная форма выглядела хорошо, следует уделить ему внимание.
В дереве метаданных внешней обработки добавим новый макет, в окне конструктора макета ничего менять не будем и нажмем кнопку Готово.
Добавление шапки макета
В первую очередь создадим область Шапка, в нее будут выводится данные для заголовка печатной формы. Для данной области нам потребуется семь строк макета. Выделим их и, как я уже писал выше, нажмем сочетание клавиш Ctrl + Shift + N, в поле Имя напишем «Шапка» и нажмем кнопку ОК.
Заголовок печатной формы должен выделяться среди прочего текста, поэтому еще раз выделим ячейку и при помощи пиктограмм на панели форматирования макета, поставим выравнивание текста По центру и размер шрифта 14.
На рисунке видно, как отличаются параметры макета, от обычного текста.
Добавление шапки таблицы макета
Добавление таблицы в макет
Добавление подвала в макет
Последняя необходимая нам область макета — это Подвал. В нее будут выводиться итоги по количеству и сумме. Создание аналогично созданию области Данные, но дополнительно следует выделить итоги жирным шрифтом.
Для этого нужно просто кликнуть левой кнопкой мышки по пустому пространству на Панели задач и не отпуская кнопку мышки переместить Панель задач в нужное положение, например в них экрана.
Особенности работы полосы прокрутки
Источник: http://its.1c.eu/db/content/metod8dev/src/platform81/metod/form/table field/i8102812.htm
После того как вы открепили Панель задач, вы можете переместить ее в низ экрана или в любое другое положение при помощи мышки. Для этого нужно просто кликнуть левой кнопкой мышки по пустому пространству на Панели задач и не отпуская кнопку мышки переместить Панель задач в нужное положение, например в них экрана.
После того как Панель задач займет нужное вам положение не забудьте закрепить ее на этом месте с помощью меню. Это позволит избежать подобных проблем в будущем.
Создание обработки заполнения табличной части 1С 8
Как выделить сразу все документы
Первый пример — когда нужно выделить сразу все документы. Откроем список документов «Реализация (акт, накладная)».
Для выделения всех строк нажмем комбинацию клавиш CTRL+A на клавиатуре. Все строки будут желтого цвета.
Наша команда предоставляет услуги по консультированию, настройке и внедрению 1С.
Связаться с нами можно по телефону
+7 499 350 29 00
.
Услуги и цены можно увидеть по
ссылке
.
Будем рады помочь Вам!
Теперь можем выполнить массовое изменение. Для этого нажмем правой кнопкой мыши в списке документов, либо кнопку «Еще». Затем выбираем нужное действие, например, «Провести».
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы