Настройка списка в 1с. Учет движения денежных средств

Кроме примитивных типов данных, которые можно встретить в любом языке программирования, в 1С существуют уникальные типы. У каждого из них есть свои свойства, методы, функции, предназначение и нюансы использования в системе. Одним из таких типов является динамический список, существенно облегчающий многие прикладные задачи. Именно поэтому разработчики и должны знать и уметь обращаться с этим универсальным инструментом.

Возможности динамических списков в 1С

Предназначение данного типа заключается в отображении информации из любых таблиц БД, независимо от ее типа. Механизм был создан на основе СКД и обладает аналогичными возможностями. Но это не означает, что обязательно придется писать запрос на языке 1С, хотя эта возможность есть и ей нужно пользоваться. Вы можете просто указать таблицу, информация из которой вас интересует и 1С самостоятельно сформирует простейший запрос.

Чтобы посмотреть, как формируется динамический список и какие данные он показывает, необходимо открыть управляемые формы, где он расположен, в конфигураторе: в перечне реквизитов через контекстное меню открыть его свойства и обратить внимание на пункт «ПроизвольныйЗапрос». Если галка отсутствует, то параметр «Основная таблица» отражает таблицу БД, откуда берутся данные. В ином случае, динамический список отражает данные произвольного запроса, который можно увидеть, открыв настройку списка.

Намного чаще используется схема с произвольным запросом, так как это дает отличную возможность объединять и показывать самые разнообразные данные. Чаще всего этот механизм используется для отражения остатков на складах, цен номенклатуры, прихода, расхода или закупок. Пользоваться им нужно осторожно, так как быстродействие при сложных запросах может падать.

Еще одно полезное свойство динамического списка открывается при щелчке на надпись «Настройка списка». Это меню позволяет даже при использовании стандартного набора полей сделать информацию более доступной и понятной конечным пользователям. Вне зависимости от того, произвольный запрос или нет, вы увидите вкладку «Настройки», где сможете указать:

  • Отбор динамического списка;
  • Группировки;
  • Сортировку;
  • Оформление.

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

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

Для большей наглядности создадим отдельную внешнюю обработку и разместим на ней динамический список. Чтобы реализовать задуманное, таблицы с номенклатурой будет мало, поэтому нам необходимо разрешить произвольный запрос. В нем мы опишем левое соединение справочника с перечнем номенклатуры и регистра остатков и установим справочник в качестве основной таблицы. Такая схема позволит пользователям, работая с динамическим списком, добавлять или изменять номенклатуру.



ВЫБРАТЬ НоменклатураПеречень.Наименование КАК Наименование, ТоварыНаСкладахОстатки.Склад КАК Склад, ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток ИЗ Справочник.Номенклатура КАК НоменклатураПеречень ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ТекухцаяДата,) КАК ТоварыНаСкладахОстатки ПО НоменклатураПеречень.Ссылка = ТоварыНаСкладахОстатки.Номенклатура ГДЕ

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

&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ОстаткиНоменклатуры.Параметры.УстановитьЗначениеПараметра("ТекутаяДата",ТекущаяДатаСеанса()) КонецПроцедуры


Уже на этом этапе мы можем в 1С открыть нашу внешнюю обработку и увидеть, что динамический список работает. Мы можем смотреть остатки, создавать номенклатуру и группы, осуществлять поиск. Часто заказчики просят добавить возможность выбирать дату, на которую они будут видеть остатки. В случае формы с динамическим списком это обеспечивается за счет дополнительного поля и установки параметров с его помощью.

Добавляем реквизит «ДатаОстатков» типа «Дата» и переносим его в элементы формы. В событиях поля создаем событие «ПриИзменении» и прописываем код по установке параметра «ТекущаяДата», использующегося в динамическом запросе. Чтобы при открытии формы пользователь сразу понимал, на какую дату он видит остатки, внесем небольшие изменения в процедуру «ПриСозданииНаСервере».



&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ДатаОстатков = ТекущаяДатаСеанса(); ОстаткиНоменклатуры.Параметры.УстановитьЗначениеПараметра("ТекущаяДата", ДатаОстатков); КонецПроцедуры &НаКлиенте Процедура ДатаОстатковПриИзменении(Элемент) ОстаткиНоменклатуры.Параметры.УстановитьЗначениеПараметра("ТекущаяДата",ДатаОстатков); КонецПроцедуры

В результате наша форма Динамический список может отражать остатки на любую дату.

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

  1. Подбора;
  2. Списков.

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

Главная Заметки из Зазеркалья

04.04.2013 Настройки списков

Реализовано в версии 8.3.3.641.

Мы серьёзно улучшили работу с настройками списков. Теперь настройки выглядят проще, пользоваться ими удобнее и, самое главное, теперь настройки списков сохраняются. То есть при повторном открытии список будет выглядеть так же, как его настроил пользователь.

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

Условия, по которым выполнен отбор списка, дополнительно автоматически отображаются отдельными строками в нижней части настроек. На картинке это "Бизнес-регион" и "Основной менеджер". Это позволяет быстро включать и выключать отдельные элементы отбора.

Эти же настройки автоматически будут включены в основную форму списка, если разработчик разрешил такую возможность.

При желании пользователь может самостоятельно указать, какие настройки он хочет видеть в форме списка (какие он использует чаще всего), чтобы не "ходить" за ними в дополнительное меню "Ещё":

Как мы сказали в начале, все настройки списков (отборы, сортировка, группировка и условное оформление) теперь сохраняются автоматически. Таким образом, если пользователь однажды настроил список, то в следующий раз он увидит его с теми же настройками, которые были до закрытия.

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

Что касается "программной начинки" новых возможностей, то она очень похожа на то, как реализованы настройки у отчётов. А способность сохранения настроек у списков регулируется специальным новым свойством реквизита формы:

Стандартно все списки сохраняют настройки автоматически, но при необходимости это можно отключить.

Настройки отбора и управление формой списка в 1С 8.х

В восьмой версии 1С появились более «стройные» возможности работы с динамическими списками, нежели в версии 7.7.

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

К отборам относятся следующие кнопки:

И для более младших версий 8.х:

Открывая любую стандартную панель управления формой списка, мы можем найти на панели стандартные кнопки управления отбором. Для 8.1 и 8.2 они немного отличаются внешне, но они похожи на «воронки»-фильтры.

Кроме кнопок отбора, в версии 8.х появилась важная функция, которой так не хватало в версии 7.7: возможность вывести на экран, распечатать или сохранить на диск все элементы списка в виде таблицы. Для этого уже не нужно просить программиста нарисовать отчет.

Итак, что же такое отбор и зачем он?

Представьте себе классическую таблицу:

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

Часто возникает необходимость выбрать из общей кучи и отобразить несколько строк с нужным значением колонок:

  • Все товары с первыми символами в артикуле = 100
  • Все документы от нужного контрагента и прочее.

Или наоборот, выкинуть из списка «мешающие» элементы:

  • Все товары иностранные товары
  • Все товары с пустой ставкой НДС.

Вот тут то и приходят на помощь инструменты отбора. В 1С вы можете столкнуться с отбором во множестве разных вариаций. Но принцип будет везде одинаков: отобрать строки с нужными значениями в одном или нескольких столбцах. Или убрать строки с ненужными значениями в колонках.

Основная кнопка управления отбором - первая слева

Она открывает основную форму отбора для выбранной формы списка

Пример формы отбора справочника основных средств

Каждая строка этой формы соответствует колонке табличной формы списка (На этой форме могут быть отражены не все колонки. Некоторые колонки использовать в отборе невозможно) . Отбор может быть как по одной так и по нескольким колонкам одновременно.

Строка содержит название колонки с отметкой, вид сравнения и значение для отбора.

Значения для сравнения могут быть различных типов. Если колонка простого типа (число, строка, дата) , то вы просто вписываете значение для сравнения в поле (Код =1000, Наименование = деталь). Если колонка сложного типа (ссылка на элемент справочника, документ, перечисление), то в поле значения отбора нужно выбрать элемент этого типа.

Вид сравнения

Кроме простого «колонка равно значение» зачастую требуются более гибкие виды сравнения.

Причем виды этих сравнений зависят от типа значения отбора. Дату можно проверять не только на равно, но и на соответствие диапазону (дата от начала месяца до конца месяца), число - на принадлежность к интервалу (сумма от 1000 до 1500). Строку можно проверять на вхождение (комментарий содержит «под отчет»). Кроме того, элементы справочников можно проверять на вхождения в группу, но нельзя на больше/меньше. Можно также использовать отбор по множественным значениям - например нам нужны строки содержащие колонки с несколькими значениями.

К любому виду сравнения «равно» есть аналогичный вид сравнения «не равно». Это означает, что при выборе такого вида сравнения в списке будут все строки, кроме тех, в колонках которых содержатся указанные в значении отбора величины. Полный список видов сравнения:

  • Равно (все типы данных)
  • Больше (даты, числа, строки)
  • Больше или равно (даты, числа, строки)
  • Меньше (даты, числа, строки)
  • Меньше или равно (даты, числа, строки)
  • Интервал (4 типа с разным типом вхождения граничных значений) (даты, числа, строки)
  • Содержит (строки)
  • В списке (все типы)
  • В группе (ссылочные типы)
  • В группе из списка (ссылочные типы)

Ряду вышеперечисленных видов соответствуют противоположные по смыслу:

  • Не равно
  • Не содержит
  • Не в списке
  • Не в группе
  • Не в группе из списка

В начале каждой строчки отбора находится поле, в котором можно ставить или снимать отметку. Установленная отметка означает использование отбора, даже если вы не указали значение для отбора (он будет установлен по пустому значению). И наоборот - отключение отметки означает отказ от использования отбора. При этом выбранное значение для отбора и вид сравнения остаются заполненными.

Как мы помним, на командной панели кроме «главной воронки» содержатся и другие кнопки управления отбором. Вторая кнопка в этом списке - отбор по текущему значению. Эта очень удобная для практического использования кнопка, о чем мы расскажем далее. Ее действие заключается в следующем: установить отбор по значению в текущей колонке. Это экономит некоторое время и позволяет ускорить многие действия. Третья кнопка - история отборов. При ее нажатии вы видите все отборы, которые вы накладывали на текущий список ранее. Список хранится и после окончания работы с программой. Но только если вы завершили сеанс работы корректно, а не через перезагрузку или выключение питания компьютера. И наконец последняя кнопка - отключает все установленные отборы.

Настройка внешнего вида списков, их сохранение и вывод на печать.

У всех стандартных форм списков есть кнопки управления колонками и печатью. Настройка колонок вызывается из меню «действия», по щелчку правой кнопкой на форме списка. Иногда эта кнопка вынесена на командную панель.

По ее нажатии открывается форма настройки:

Видимые колонки отмечены галками. Можно отключить лишние и включить невидимые колонки. В правой части для текущей колонки указано положение и управление размером. Ширину всех колонок обычно можно менять, установив курсор в шапке таблицы на границе колонок (при курсор принимает вид ). Если он не меняет вид, изменение размера отключено в настройках колонки. Включить изменение размера можно в вышеуказанной форме настройки (выбрать колонку - Изменение размера: Изменять).

Когда вы получили нужный вид списка, вы можете распечатать его или сохранить на диске.

Ищем рядом с кнопкой настройки списка кнопку «вывести список». Нажимаем - открывается диалог:

Здесь также галками отмечены видимые колонки, которые будут выведены в печатную форму. Убираем ненужные, включаем нужные и нажимаем ОК. По умолчанию список выведен в табличный документ и этот табличный документ будет тут же отображен на экране. (хотя гурманы могут вывести в текстовый документ, в нем колонки разделены табуляциями). При этом внимание - будьте осторожны с динамическими списками (это те, которые показываются экранными порциями и количество их элементов заранее не известно). Если ваш справочник номенклатуры состоит из 100 тысяч позиций то вы просто не дождетесь построения печатной формы, либо вашему компьютеру не хватит памяти. Надо либо знать примерное количество элементов, которые отражает ваш список, либо грамотно установить отбор. Чтобы список можно было просмотреть глазами с начала и до конца. В общем случае не стоит выводить на печать список из более чем 10000 позиций.

Итак, список у вас на экране - теперь вы можете его распечатать. Его можно также сохранить на диск для передачи или последующего использования. По умолчанию он сохраняется во внутреннем формате 1С в файле с расширением *.mxl . Для этого вы, в правом верхнем углу выбираете пункт меню «Файл», далее «Сохранить». Вызывается стандартный диалог сохранения файлов. Открыть такой файл вы сможете только в среде 1С. Причем этой же версии платформы. («Файл» - Открыть - выбираете свой сохраненный ранее файл).

Практические примеры:

1. Напечатаем список расходных накладных, созданных пользователем Иванова

Если мы видим в списке документ, созданный Ивановой, просто становимся на ячейке, содержащей «Иванова» и нажимаем отбор по текущей ячейке. Ждем некоторое время и видим список документов, созданных Ивановой. При этом нам нужны не все документы, а только по двум организациям (например ИЧП "Предприниматель"и Торговый дом "Комплексный" из демо-базы). Нажимаем первую основную кнопку отбора, в диалоге находим строку «организация», выбираем вид сравнения «В списке» (нам ведь нужны две организации) , в поле значения нажимаем кнопку выбора и подбираем в список 2 нужных организации. Нажимаем ОК, и видим в списке то, что хотели увидеть. Нажимаем вывести список. Оставляем только колонки Номер, Дата, Сумма, Организация, контрагент и нажимаем вывести. Список готов. Если мы хотим поменять местами колонки («Сумма» сделать последней) , открываем форму настройки списка и «двигаем» нужную колонку вниз или вверх с помощью стрелок сортировки.

2. Удалим из списка товаров в документе поступления все товары, кроме трех нужных.

Допустим, мы скопировали какой-либо документ. И нам надо оставить из всего списка только несколько позиций. Практически в каждой табличной части есть отбор, вызываемый по правой кнопке мыши.

Открываем диалог, выбираем «номенклатура» НЕ в списке и далее подбираем в список товары, которые нужно оставить. Нажимаем ОК и видим список, который состоит из полностью ненужных нам товаром. Нажимаем и удерживаем кнопку «DEL», до тех пор пока список полностью не очистится. Потом правой кнопкой мыши по списку - отключить обор. В списке видим только нужные товары.

В новой версии 1С 8.3.5 улучшена работа с настройками списков.

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

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

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

Как было сказано выше, все настройки списков (отборы, сортировка, группировка и условное оформление) теперь сохраняются автоматически. Но кроме этого настройки теперь можно сохранить и вручную , задав для них какое-нибудь понятное имя. В результате для одного и того же списка пользователь может хранить несколько вариантов его настройки. Такая возможность будет весьма полезной для сложных списков, в которых используются различные варианты условного оформления.

Поиск в списках.

Был переработан механизм поиска в списках. Поиск стал более удобным и понятным .

Первое внешнее отличие заключается в том, что теперь в командной панели формы присутствуют два новых элемента : «Строка поиска» и «Управление поиском».

Как и раньше, чтобы найти что-то, достаточно просто начать набирать на клавиатуре искомые слова. Курсор автоматически перейдет в строку поиска, и в ней будут отображаться набираемые символы. При этом платформа будет искать во всех колонках списка одновременно по нескольким значениям (фрагментам строк). Для того чтобы было проще ориентироваться в результатах поиска, платформа подсвечивает найденные фрагменты строк.

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

В платформу возвращена команда «Поиск по текущему значению» . Теперь возможно легко найти все строки таблицы, в которых содержится то же значение, что и в выделенной ячейке. А над таблицей отображаются те значения, по которым найдены строки таблицы. Стало наглядно видно , что таблица показывает не все данные, а только некоторую часть. И значения, по которым выполнен поиск, вы теперь можете легко удалить или изменить на другие значения.

Также удобным моментом является то, что платформа запоминает текущие значения, по которым выполнялся поиск. Эти значения сохраняются в истории поиска , которая доступна через кнопку управления поиском. Поэтому в любой момент возможно вернуться обратно к тем значениям поиска, которые использовались раньше.

Расширенный поиск.

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

Для вызова расширенного поиска есть отдельная команда и, кроме этого, платформа использует его тогда, когда меняются значения, по которым уже выполнен поиск.

Выбор периода.

Переработан диалог выбора периода. Этот диалог используется в отчётах, для задания периода, за который должны быть показаны данные. А также этот же диалог используется в списках документов для поиска документов, относящихся к определенному периоду.

Отбор списка документов по периоду можно считать одним из способов их поиска — поиск по дате. Поэтому команду установки периода размещена в управлении поиском.

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

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

Начиная с версии программы 1С:Бухгалтерия 3.0.43.162, изменился интерфейс настройки параметров учета. Так же некоторые параметры стали настраиваться отдельно.

Перейдите в меню «Администрирование» и выберите пункт «Параметры учета».

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

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

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

Здесь происходит управление субконто 41.12 и 42.02 счетов. По умолчанию был установлен только учет по складам. Он является предопределенным, и отредактировать мы его не сможем. Кроме этого данный вид учета можно вести по номенклатуре и ставкам НДС.

Учет движения денежных средств

Данный вид учета обязательно будет вестись по р/с. Так же рекомендовано дополнительно учитывать в 1С 8.3 движения ДС по их статьям для дополнительной аналитики по управленческому учету.

Вести учет такого вида расчетов можно как по сотрудникам в целом, так и по каждому отдельно. Эти настройки оказывают непосредственное влияние на субконто 70, 76.04 и 97.01 счетов.

Учет расходов обязательно будет вестись по номенклатурным группам. Если у вас есть необходимость готовить аудируемую отчетность в МСФО, желательно так же вести учет по элементам и статьям затрат.

Настройки зарплаты

Для перехода к данному пакету настроек, необходимо перейти по одноименной гиперссылке в форме параметров учета. Многие настройки здесь следует оставить по умолчанию, но все равно у вас есть обширное поле для действий.

Общие настройки

Для полноты примера отметим, что учет зарплаты и кадровый учет будут вестись в данной программе. Конечно же здесь есть свои ограничения, но если в штате вашей организации работает не много сотрудников, то функционала 1С:Бухгалтерия будет вполне достаточно.

Перед вами откроется список настроек для каждой организации, учет которой ведется в программе. Откроем настройку для ООО «Конфетпром».

Здесь вы можете указать, как будет отражаться заработная плата в БУ, сроки ее выплаты, резервы отпусков и какие-либо особенные территориальные условия.

Вернемся назад и перейдем по другой гиперссылке.

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

Позволяет настроить списки видов начислений и удержаний. Изначально они уже заполнены некоторыми данными.

Так же, в данном разделе 1С можно включить доступность функционала больничных, отпусков и исполнительных документов. Настройка доступна только если в базе отсутствуют организации, где работает больше 60 человек.

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

Данный раздел необходим для того, чтобы указать способы разнесения затрат на оплату труда и обязательных страховых взносов с ФОТ по счетам БУ. Изначально эти настройки уже заполнены, но, конечно же, вы можете их откорректировать.

Кадровый учет и Классификаторы

Эти два последних раздела нет смысла подробно описывать, так как тут все интуитивно понятно. Классификаторы уже заполнены и зачастую оставляют данные настройки не тронутыми.

Прочие настройки

Вернемся обратно в форму параметров учета и рассмотрим кратко оставшиеся пункты настроек.

  • Сроки оплаты поставщиками и покупателями определяют, через сколько дней долг покупателя перед нами станет считаться просроченным.
  • Печать атрикулов – настройка их представления в печатных формах.
  • Заполнение цен продажи позволяет установить, откуда будет подставляться цена в соответствующие документы.
  • Тип плановых цен влияет на подстановку цен в документы, относящиеся к производству.

Некоторые из этих настроек 1С 8.3 ранее производились в параметрах учета. Теперь они вынесены в отдельный интерфейс. Найти его вы можете так же в меню «Главное».

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



mob_info