Имя: Пароль:
1C
1С v8
Бухгалтерский запрос
,
0 programer_
1c_nn15
 
20.09.11
10:01
День добрый нужно сделать отчет чтобы с группировкой по подразделениям и статьям расходов, и колонка где совмещены 2 счета оборотКт 50 посубконто 1, и оборот Кт 51 субконто2, соотвецтвенно субконто 1 50счета и субконто 2 51 совпадают это-статьи расходов .С отбором по подразделениям разобрался не выходит 2 счета загнать в одну колонку.
1 programer_
1c_nn15
 
20.09.11
10:02
Запрос на данный момент такой , получилсятолько по 51 счету


Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |    ПодразделенияОрганизаций.Ссылка КАК Подразделение,
   |    ПодразделенияОрганизаций.Представление,
   |    ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Субконто2,
   |    ПРЕДСТАВЛЕНИЕ(ХозрасчетныйОстаткиИОбороты.Субконто2),
   
   //|   ВЫБОР      

   //|     КОГДА ХозрасчетныйОстаткиИОбороты.счет=&счет

   //|         тогда ХозрасчетныйОстаткиИОбороты.Субконто2

   //|         Конец как субконто2,

   //|   ВЫБОР      

   //|     КОГДА ХозрасчетныйОстаткиИОбороты.счет=&счет2

   //|         тогда ХозрасчетныйОстаткиИОбороты.Субконто1

   //|         Конец как субконто1,

   
   
   |   ВЫБОР      
   |     КОГДА ХозрасчетныйОстаткиИОбороты.счет=&счет
   |         тогда СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт)
   |         иначе 0
   |     Конец как СуммаОборотКт,
       
   |   ВЫБОР      
   |     КОГДА ХозрасчетныйОстаткиИОбороты.счет=&счет2
   |         тогда СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт)
   |         иначе 0
   |     Конец как СуммаОборотКт50,

   
   |    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт) КАК СуммаОборотДт,
   |    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт) КАК СуммаКонечныйОстатокДт,
   |    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт) КАК СуммаКонечныйОстатокКт
   |ИЗ
   |    Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
   |                &ДатаНач,
   |                &ДатаКон,
   |                День,
   |                ,
   |                Счет В (&Счет, &Счет2),
   |                ,
   |                Подразделение В ИЕРАРХИИ (&подротбор)
   |                    И организация = &организация) КАК ХозрасчетныйОстаткиИОбороты
   |        ПО ПодразделенияОрганизаций.Ссылка = ХозрасчетныйОстаткиИОбороты.Подразделение.Ссылка
   |ГДЕ
   |    ПодразделенияОрганизаций.Ссылка В ИЕРАРХИИ(&подротбор)
   |    И (НЕ ПодразделенияОрганизаций.Ссылка В ИЕРАРХИИ (&ПодрИсключение))
   |
   |СГРУППИРОВАТЬ ПО
   |    ПодразделенияОрганизаций.Ссылка,
   |    Субконто2,
   //|    Субконто1,

   |    ПодразделенияОрганизаций.Представление,
   |   ХозрасчетныйОстаткиИОбороты.Счет
   |УПОРЯДОЧИТЬ ПО
   |    Подразделение,
   |    Субконто2
   |ИТОГИ
   |    СУММА(СуммаОборотДт),
   |    СУММА(СуммаОборотКт),
   |    СУММА(СуммаКонечныйОстатокДт),
   |    СУММА(СуммаКонечныйОстатокКт),
   |    СУММА(СуммаОборотКт50)
   |ПО
   |    ОБЩИЕ,
   |    Подразделение ИЕРАРХИЯ,
   |    Субконто2
   |АВТОУПОРЯДОЧИВАНИЕ";
2 vmv
 
20.09.11
10:03
скд, а ручками тут полдня будут ваять
3 Aprobator
 
20.09.11
10:08
объединение тебе поможет. Сначала данные
4 Aprobator
 
20.09.11
10:09
50 счета первым запросом снимешь и объединишься со вторым где 51 счет. Стоп, а что за подразделения? Они там с каких счетов вылезли?
5 programer_
1c_nn15
 
20.09.11
10:16
Я тоже думаю об объединении но ещё этой командой не разу не приходилось пользоваться,изучаю, а подразделения идут в реквизитах счёта так как конфа-Бухгалтерия КОРП и у каждого счета есть реквизит подразделение-доп аналитика
6 programer_
1c_nn15
 
20.09.11
10:17
Вот ещё прикидываю может вместо подразделения справочник статьи расходов поставить, и левое соединение к регистру сделать, вобщем ещё ясной картины нет, если возможно короткий пример
7 programer_
1c_nn15
 
20.09.11
10:19
Делаю через конструктор иногда руками корректирую, и проверяю вход в конструктор
8 unregistered
 
20.09.11
10:27
ВЫБРАТЬ
  ХозрасчетныйОстаткиИОбороты.Период КАК Период,
  ПодразделенияОрганизаций.Ссылка КАК Подразделение,
  ХозрасчетныйОстаткиИОбороты.Субконто1 КАК СтатьяРасходов,
  ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаОборотДт,
  ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК СуммаОборотКт,
  ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СуммаКонечныйОстатокДт,
  ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт КАК СуммаКонечныйОстатокКт
ИЗ
  Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
  &ДатаНачала,
  &ДатаОкончания,
  День,
  ДвиженияИГраницыПериода,
  Счет = &Счет50 ИЛИ Счет = &Счет51,
  ЗНАЧЕНИЕ(ПланВидовХарактеристи.ВидыСубконтоХозрасчетные.СтатьиРасходов),) КАК ХозрасчетныйОстаткиИОбороты
    ПО (ХозрасчетныйОстаткиИОбороты.Подразделение = ПодразделенияОрганизаций.Ссылка)
ИТОГИ
  СУММА(СуммаОборотДт),
  СУММА(СуммаОборотКт),
  СУММА(СуммаКонечныйОстатокДт),
  СУММА(СуммаКонечныйОстатокКт)
ПО
  ОБЩИЕ,
  Подразделение ИЕРАРХИЯ,
  СтатьяРасходов,
  Период ПЕРИОДАМИ(ДЕНЬ, &ДатаНачала, &ДатаОкончания)
9 programer_
1c_nn15
 
20.09.11
10:29
Ага, гляну у меня примерно так получилось, буду проверять

Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |    ПодразделенияОрганизаций.Ссылка КАК Подразделение,
   |    ПодразделенияОрганизаций.Представление,
   |    ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Субконто2,
   |    ПРЕДСТАВЛЕНИЕ(ХозрасчетныйОстаткиИОбороты.Субконто2),
   |    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт) КАК суммаОборотКт,
   |    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт) КАК СуммаОборотДт,
   |    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт) КАК СуммаКонечныйОстатокДт,
   |    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт) КАК СуммаКонечныйОстатокКт,
   |    NULL КАК Субконто1
   |ИЗ
   |    Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
   |                &ДатаНач,
   |                &ДатаКон,
   |                День,
   |                ,
   |                Счет В (&Счет),
   |                ,
   |                Подразделение В ИЕРАРХИИ (&подротбор)
   |                    И организация = &организация) КАК ХозрасчетныйОстаткиИОбороты
   |        ПО ПодразделенияОрганизаций.Ссылка = ХозрасчетныйОстаткиИОбороты.Подразделение.Ссылка
   |ГДЕ
   |    ПодразделенияОрганизаций.Ссылка В ИЕРАРХИИ(&подротбор)
   |    И (НЕ ПодразделенияОрганизаций.Ссылка В ИЕРАРХИИ (&ПодрИсключение))
   |
   |СГРУППИРОВАТЬ ПО
   |    ПодразделенияОрганизаций.Ссылка,
   |    ХозрасчетныйОстаткиИОбороты.Субконто2,
   |    ПодразделенияОрганизаций.Представление,
   |    ХозрасчетныйОстаткиИОбороты.Счет
   |
   |ОБЪЕДИНИТЬ ВСЕ
   |
   |ВЫБРАТЬ
   |    ПодразделенияОрганизаций.Ссылка,
   |    NULL,
   |    NULL,
   |    NULL,
   |    ХозрасчетныйОстаткиИОбороты.СуммаОборотКт,
   |    NULL,
   |    NULL,
   |    NULL,
   |    ХозрасчетныйОстаткиИОбороты.Субконто1
   |ИЗ
   |    Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
   |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
   |                &ДатаНач,
   |                &ДатаКон,
   |                День,
   |                ,
   |                Счет В (&Счет2),
   |                ,
   |                Подразделение В ИЕРАРХИИ (&подротбор)
   |                    И организация = &организация) КАК ХозрасчетныйОстаткиИОбороты
   |        ПО ПодразделенияОрганизаций.Ссылка = ХозрасчетныйОстаткиИОбороты.Субконто1
   |
   |СГРУППИРОВАТЬ ПО
   |    ПодразделенияОрганизаций.Ссылка,
   |    ХозрасчетныйОстаткиИОбороты.Субконто1,
   |    ХозрасчетныйОстаткиИОбороты.СуммаОборотКт
   |
   |УПОРЯДОЧИТЬ ПО
   |    Подразделение,
   |    Субконто2
   |ИТОГИ
   |    СУММА(суммаОборотКт),
   |    СУММА(СуммаОборотДт),
   |    СУММА(СуммаКонечныйОстатокДт),
   |    СУММА(СуммаКонечныйОстатокКт)
   |ПО
   |    ОБЩИЕ,
   |    Подразделение ИЕРАРХИЯ,
   |    Субконто2
   |АВТОУПОРЯДОЧИВАНИЕ";

   Запрос.УстановитьПараметр("ДатаКон", КонецДня(ДатаКон));
   Запрос.УстановитьПараметр("ДатаНач", НачалоДня(ДатаНач));
   Запрос.УстановитьПараметр("организация", организация);
   Запрос.УстановитьПараметр("подротбор", подротбор);
   Запрос.УстановитьПараметр("Счет", Счет);
   Запрос.УстановитьПараметр("ПодрИсключение",ПодрКоллекторы );
   Запрос.установитьПараметр("Счет2",Счет2);
   
   Результат = Запрос.Выполнить();
10 programer_
1c_nn15
 
20.09.11
10:30
(8) это у меня уже есть) с этого и вопрос начал
11 programer_
1c_nn15
 
20.09.11
10:31
Уточню нужен только Ктоборот остальные поля вобщем то уберу из запроса
12 unregistered
 
20.09.11
10:31
(9) Всё делается проще. См (8)

Есть у таблицы ОстаткиИОбоороты параметр ВидСубконто.

Установив это параметр ЗНАЧЕНИЕ(ПланВидовХарактеристи.ВидыСубконтоХозрасчетные.СтатьиРасходов), ты упорядочиваешь субконто на счетах. Т.е. первым субконто будут идти СтатьиРасходов вне зависимости от того, в каком порядке они живут на счете - вторым субконто или хоть третьим.
13 programer_
1c_nn15
 
20.09.11
10:33
(12) ок поразбираюсь
14 programer_
1c_nn15
 
20.09.11
10:35
(9) если укажу учловие для счета счет в (&счет50,&счет51) это равноценно в данном случае счет 50 или счет51
15 unregistered
 
20.09.11
10:36
(14) Равноценно.
16 programer_
1c_nn15
 
20.09.11
10:38
хорошо, позже напишу что получится)
17 unregistered
 
20.09.11
10:39
(16) Кстати. Не понял тебе итог по дням нужен или нет?

В запросе параметрах таблицы выборка с периодичностью "ДЕНЬ", а в итогах периода нет.
18 programer_
1c_nn15
 
20.09.11
10:43
Нужен за месяц но лучше чтобы была возможность и за сроки меньше месяца
19 programer_
1c_nn15
 
20.09.11
10:45
а значение в конструкторе где указать, в параметрах вирт.таблицы есть субконто, это там?
20 programer_
1c_nn15
 
20.09.11
10:49
ещё момент что в 50 счете это субконто 1 а в 51 субконто2
21 programer_
1c_nn15
 
20.09.11
10:52
чёт со значением не получается пишет неверные параметры регистра бухгалтерии
22 luckyluke
 
20.09.11
11:01
Я не совсем понял что тебе надо, мб вот это:
   |   ВЫБОР      
   |     КОГДА ХозрасчетныйОстаткиИОбороты.счет=&счет
   |         тогда ХозрасчетныйОстаткиИОбороты.Субконто2
          КОГДА ХозрасчетныйОстаткиИОбороты.счет=&счет2
   |         тогда ХозрасчетныйОстаткиИОбороты.Субконто1
   |   Конец как СтатьяДДС,
23 unregistered
 
20.09.11
11:02
(20) Читай внимательно (12) до просветления.
24 unregistered
 
20.09.11
11:02
(22) Тоже почитай (12)
25 unregistered
 
20.09.11
11:06
ВЫБРАТЬ
 ХозрасчетныйОстаткиИОбороты.Период КАК Период,
 ПодразделенияОрганизаций.Ссылка КАК Подразделение,
 ХозрасчетныйОстаткиИОбороты.Субконто1 КАК СтатьяРасходов,
 ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК СуммаОборотКт
ИЗ
 Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
   ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
     &ДатаНачала,
     &ДатаОкончания,
     ,
     ,
     Счет = &Счет50 ИЛИ Счет = &Счет51,
     &СубконтоСтатьиРасходов,) КАК ХозрасчетныйОстаткиИОбороты
    ПО (ХозрасчетныйОстаткиИОбороты.Подразделение = ПодразделенияОрганизаций.Ссылка)
ИТОГИ
  СУММА(СуммаОборотКт)
ПО
  ОБЩИЕ,
  Подразделение ИЕРАРХИЯ,
  СтатьяРасходов

МассивСубконто = Новый Массив;
МассивСубконто.Добавить(ПалыВидовХарактеристи.ВидыСубконтоХозрасчетные.СтатьиРасходов);
Запрос.УстановитьПарамтер("СубконтоСтатьиРасходов", МассивСубконто);
26 programer_
1c_nn15
 
20.09.11
11:06
(23) будем просвещаться но такого параметра в таблице пока не нашёл
27 programer_
1c_nn15
 
20.09.11
11:07
(22) посмотрю)
28 unregistered
 
20.09.11
11:09
(26) В конструкторе параметр "Субконто"
29 programer_
1c_nn15
 
20.09.11
11:09
(25) более понятно)
30 unregistered
 
20.09.11
11:09
(27) Из примера в (25) надо убрать поле Период.
31 programer_
1c_nn15
 
20.09.11
11:10
(27)у меня вобщем то этого поля  и нет
32 programer_
1c_nn15
 
20.09.11
11:13
Может я не до конца понимаю в запросе строка
ХозрасчетныйОстаткиИОбороты.Субконто1 КАК СтатьяРасходов
поймёт ли запрос что по 51 нужно субконто 2 брать параметр
СубконтоСтатьиРасходов всё устаканит
33 unregistered
 
20.09.11
11:23
(32) >> поймёт ли запрос что по 51 нужно субконто 2

Перечитай (12) еще 38 раз.:

Установив это параметр ты УПОРЯДОЧИВАЕШЬ СУБКОНТО НА СЧЕТАХ.
Т.е. первым субконто в выборке будут идти СтатьиРасходов ВНЕ ЗАВИСИМОСТИ ОТ ТОГО, В КАКОМ ПОРЯДКЕ ОНИ ЖИВУТ НА СЧЕТЕ - вторым субконто или хоть третьим.
34 unregistered
 
20.09.11
11:25
+ к (33) выдержка из справки:
Параметр
Субконто (необязательный)

Тип параметра: ПланВидовХарактеристикСсылка.; Массив; ФиксированныйМассив. Ссылка, или массив ссылок, или фиксированный массив ссылок на виды субконто.

Задает набор и ПОРЯДОК субконто, которыми можно оперировать в запросе.
35 programer_
1c_nn15
 
20.09.11
12:02
Вобщем всё нормуль спасибо)) проверяю цифры по 2 счетам
36 programer_
1c_nn15
 
20.09.11
12:27
Ну и итоговые цифры тоже сходятся))
37 programer_
1c_nn15
 
20.09.11
12:29
Только одно субконто лишнее в отчет залезло -Банковские счета, ещё буду смотреть кеак избавиться