ДляВсех(Лиц) |
Перебирает все аналитики, имеющие ненулевые рублевые или валютные сальдо или обороты по указанному счету.
ДляВсех(Лиц(НомерСчета))
ДляВсех(Лиц(НомерСчета[, Группировка[, Лицо1[, Лицо2[, Лицо3[,
Лицо4]]]][, Флаги][, Дата1, Дата2]]))
НомерСчета (текст) – номер счёта, по которому будут перебираться аналитики. Если у указанного счёта есть субсчета, то аналитики будут перебираться и по его субсчетам. Можно перебрать аналитики сразу для нескольких счетов. В этом случае, счета указываются через "+", например, "60+76".
Группировка (текст) – порядок группировки перебираемых аналитик. Задаётся строкой, состоящей из цифр 1, 2,3 или букв С или Д. Каждая цифра определяет номер группируемой аналитики. Например, строка 23 означает, что лица будут перебираться сначала сгруппировано по второй аналитике, а потом по третьей. Если указан символ "С", тогда записи будут сгруппированы по субсчетам; если "Д" - то по документам.
Если указан один символ и никакое лицо не указано, то перебирается только аналитика указанного номера или субсчета.
Лицо1,Лицо2,Лицо3,Лицо4 (объект) – соответственно первая, вторая и третья аналитики. Если указаны, то перебираются только указанные аналитики. Аналитика может быть определена через функцию "Лицо". Допускается указывать аналитику просто текстовой строкой – кодом аналитики, т.е. соответствующее поле в справочнике, по которому будет производиться поиск этой аналитики. Таблицу с кодами можно посмотреть в описании функции "Лицо". Так, например, чтобы подсчитать обороты по счетам и статье затрат по ремонту ОС аналитику у функции можно определить как Лицо("РМОС", "Статьи затрат"), так и текстовой строкой "РМОС".
Если в качестве одного из параметров стоит "Нет", функция не делает фильтрации по этому параметру. Например, чтобы указать "Лицо2", не указывая "Лицо1", можно в качестве параметра "Лицо1" указать идентификатор "Нет".
Флаги (текст) – строка, определяющая, как трактовать аналитики, если они являются папками справочников. Аналитике каждого уровня в строке "Флаги" соответствует один символ (то есть первый символ строки соответствует первой аналитике, второй – второй, третий – третьей).
Если параметр "Флаги" не указан, то перебираются все аналитики, входящие в аналитику-папку.
Дата1,Дата2 (дата) – даты начала и конца периода, за который перебираются лица. Функция перебирает только те лица, по которым за указанный период было ненулевое сальдо или обороты. Если даты не указаны, то берутся переменные "ДатНач" и "ДатКнц" соответственно, если же и их нет, то берётся рабочий период из конфигурации системы.
Работа функции аналогична работе отчёта "Развёрнутое сальдо и обороты".
Внутри цикла создаётся контекстный объект с именем "Лица", содержащий в случае простого перебора по одной аналитике запись о текущей аналитике. Если же идёт перебор нескольких аналитик, то у объекта "Лица" есть два поля: "Лицо1" – основная аналитика (та, по которой идёт группировка – первая цифра в параметре "Группировка"), "Лицо2" – перебираемая аналитика (вторая цифра в параметре "Группировка").
Функция сразу рассчитывает дополнительные переменные – "СНД", "СНК", "ОД", "ОК", "СКД", "СКК", "ВСНД", "ВСНК", "ВОД", "ВОК", "ВСКД", "ВСКК" содержащих, соответственно, начальное сальдо, обороты и конечное сальдо по указанному счёту и текущей аналитике в рублях и в валюте. Для ускорения расчётов можно использовать уже готовые значения.
Поскольку функция создаёт контекстный объект "Лица", значения псевдопеременных, рассчитывающих сальдо и обороты по счетам, вычисляются в разрезе данного лица. Для получения общих оборотов и сальдо по счетам укажите точку перед именем переменной.
Ничего не возвращает.
Закрыть 44-ый счет, на котором ведётся аналитический учёт по темам затрат:
ДляВсех(Лиц("44-2", 12))
Проводка(Д90_6, К44_2, Лицо1, Лицо2, СКД);
Вывести затраты по статьям:
ДляВсех(Лиц("23"))
Сообщить("Вид затрат: " + Лицо1.Название +
"<br>"
+ "Сумма затрат: " + СКД);
Вывести затраты по объектам строительства:
ДляВсех(Лиц("23", 2))
Сообщить("Объект: " + Лицо2.Название + "<br>" +
"Сумма затрат: " + СКД);
Развернуть каждую статью затрат по объектам строительства:
ДляВсех(Лиц("23", 12))
Сообщить("Вид затрат: " + Лицо1.Название +
"<br>"
+ "Объект: " + Лицо2.Название + "<br>" +
"Сумма затрат: " + СКД);
Развернуть каждый объект строительства по статьям затрат:
ДляВсех(Лиц("23", 21))
Сообщить("Объект: " + Лицо1.Название + "<br>"
+
"Вид затрат: " + Лицо2.Название +
"<br>" + "Сумма затрат: " + СКД);
Предположим, были сделаны две проводки Д19_ОПТ и Д19_МАТ. Тогда:
ДляВсех(Лиц("19","С"))
Сообщить(Лицо.Название);
покажет каждое лицо два раза: первый - по 19_ОПТ, второй - по 19_МАТ.
• Лицо