|
Есть ли универсальная функция получения оборотов по счетам ? | ☑ | ||
---|---|---|---|---|
0
Koliaff
24.02.12
✎
09:13
|
Делаю отчет, в котором надо обращаться к оборотам по счетам. Таких запросов надо сделать около 10-ти. В некоторых указывается только счет кредита, в некоторых только счет дебета, в некоторых и кредита и дебета, в некоторых ко всему ещё надо отбирать по конкретному субконто.
Хотелось бы узнать есть ли универсальная функция получения таких оборотов ? Попробовал вот тако |
|||
1
Koliaff
24.02.12
✎
09:14
|
й функцией воспользоваться :
СтруктураПараметров = Новый Структура("СчетДт, СубконтоДт1, СубконтоДт2, СубконтоДт3, СчетКт, СубконтоКт1, СубконтоКт2, СубконтоКт3"); СтруктураПараметров.Вставить("СчетДт", ПланыСчетов.Хозрасчетный.НайтиПоКоду(СтрДебет)); СтруктураПараметров.Вставить("СчетКт", ПланыСчетов.Хозрасчетный.НайтиПоКоду(СтрКредит)); СтруктураПараметров.Вставить("СубконтоДт1", СубконтоДт1); СтруктураПараметров.Вставить("СубконтоДт2", СубконтоДт2); СтруктураПараметров.Вставить("СубконтоДт3", СубконтоДт3); СтруктураПараметров.Вставить("СубконтоКт1", СубконтоКт1); СтруктураПараметров.Вставить("СубконтоКт2", СубконтоКт2); СтруктураПараметров.Вставить("СубконтоКт3", СубконтоКт3); ТЗ = РегистрыБухгалтерии.Хозрасчетный.ОборотыДтКт(НачДата,КонДата,,,СтруктураПараметров); Если ТЗ.Количество()>0 Тогда Возврат(ТЗ.Итог("Сумма")); Иначе Возврат(0); КонецЕсли; ============================= Что-то не получается ) Помогите пожалуйста знающие люди ... |
|||
2
Koliaff
24.02.12
✎
09:29
|
up
|
|||
3
DrShad
24.02.12
✎
09:34
|
СП что говорит?
|
|||
4
Koliaff
24.02.12
✎
09:39
|
<Отбор> (необязательный)
Тип: Структура. Структура, содержащая набор значений измерений регистра, по которым надо отбирать итоги. Допустимые значения ключа: СчетДт, СубконтоДт<Номер>, СчетКт, СубконтоКт<Номер>, <Имя измерения> или <Имя измерения>Дт и <Имя измерения>Кт. Если параметр не указан, то отбор не используется. <Измерения> (необязательный) |
|||
5
Asmody
24.02.12
✎
09:42
|
(0) есть. Называется "запрос"
|
|||
6
DrShad
24.02.12
✎
09:42
|
и в ТЗ ни одной записи?
|
|||
7
Koliaff
24.02.12
✎
09:46
|
(Asmody) Запрос не хочется использовать, хочу разобраться с функцией РегистраБухгалтерии "ОборотыДтКт".
(DrShad) Да, ни одной записи, хотя за выбранный период по счету 90.01, обороты по кредиту есть. Приведу полный текст функции и её вызов ... Вот сама функция, которую я написал : Функция ПолучитьОбороты(НачДата,КонДата,СтрДебет,СтрКредит,СубконтоДт1,СубконтоДт2,СубконтоДт3,СубконтоКт1,СубконтоКт2,СубконтоКт3) СтруктураПараметров = Новый Структура("СчетДт, СубконтоДт1, СубконтоДт2, СубконтоДт3, СчетКт, СубконтоКт1, СубконтоКт2, СубконтоКт3"); СтруктураПараметров.Вставить("СчетДт", ПланыСчетов.Хозрасчетный.НайтиПоКоду(СтрДебет)); СтруктураПараметров.Вставить("СчетКт", ПланыСчетов.Хозрасчетный.НайтиПоКоду(СтрКредит)); СтруктураПараметров.Вставить("СубконтоДт1", СубконтоДт1); СтруктураПараметров.Вставить("СубконтоДт2", СубконтоДт2); СтруктураПараметров.Вставить("СубконтоДт3", СубконтоДт3); СтруктураПараметров.Вставить("СубконтоКт1", СубконтоКт1); СтруктураПараметров.Вставить("СубконтоКт2", СубконтоКт2); СтруктураПараметров.Вставить("СубконтоКт3", СубконтоКт3); ТЗ = РегистрыБухгалтерии.Хозрасчетный.ОборотыДтКт(НачДата,КонДата,,,СтруктураПараметров); Если ТЗ.Количество()>0 Тогда Возврат(ТЗ.Итог("Сумма")); Иначе Возврат(0); КонецЕсли; КонецФункции |
|||
8
Koliaff
24.02.12
✎
09:46
|
Вот её вызов :
Перем90_01 = ПолучитьОбороты(НачДата,КонДата,,"90.01",,,,,,); |
|||
9
Стальная Крыса
24.02.12
✎
09:53
|
ну значит нету оборотов по неопределенным значениям субконто :)
|
|||
10
Стальная Крыса
24.02.12
✎
09:55
|
на общий случай нужно делать как-то так:
Если СубконтоДт1 <> неопределено Тогда СтруктураПараметров.Вставить("СубконтоДт1", СубконтоДт1); КонецЕсли; |
|||
11
Koliaff
24.02.12
✎
10:01
|
(Стальная Крыса) Спасибо, условия везде подставю ...
Вот ещё зачада : Проблема в том что обороты были по счету 90.01.1, если подставляю его - то результат возвращается правильно, если подставляю 90.01 - то резутат 0. Как быть ? |
|||
12
hhhh
24.02.12
✎
10:04
|
(11) можно посмотреть в БП регламентированные отчеты, БухОтчетность - там вроде есть общая функция.
|
|||
13
Стальная Крыса
24.02.12
✎
10:10
|
(11) скорее всего данный метод не выбирает по иерархии субсчетов, а берет только конкретно указанный счет.
зы. запросом было бы проще |
|||
14
Scooter
24.02.12
✎
10:12
|
>>Делаю отчет
тогда однозначно СКД, Построитель, Запрос |
|||
15
Koliaff
24.02.12
✎
10:30
|
СКД - дело хорошее, только вот когда заказчик начинает какие-нибудь изощрения придумывать, сразу возвращаешься к обычному отчету, т.к. в нем намного все проще ..
ВСЕМ СПАСИБО, ВОПРОС ЗАКРЫТ ! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |