|
Помогите плиз с запросом | ☑ | ||
---|---|---|---|---|
0
zhenka
21.07.11
✎
18:18
|
Буха 8-ка
Нужно получить обороты по счету 90.09 в разрезе 1-го субконто Делаю запрос Счет90=ПланыСчетов.Хозрасчетный.ПрибыльУбытокОтПродаж; ТекстЗапроса="ВЫБРАТЬ РАЗРЕШЕННЫЕ | ХозрасчетныйОстаткиИОбороты.Счет, | ХозрасчетныйОстаткиИОбороты.Субконто1, | СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт) КАК СуммаОборотКт, | СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт) КАК СуммаОборотДт |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатН, &ДатК, , , , , ) КАК ХозрасчетныйОстаткиИОбороты |ГДЕ | ХозрасчетныйОстаткиИОбороты.Счет = &Счет90 | И ХозрасчетныйОстаткиИОбороты.Организация = &Организация | |СГРУППИРОВАТЬ ПО | ХозрасчетныйОстаткиИОбороты.Счет, | ХозрасчетныйОстаткиИОбороты.Субконто1"; Запрос=Новый Запрос(ТекстЗапроса); Запрос.УстановитьПараметр("Счет90",Счет90); Запрос.УстановитьПараметр("Организация",Организация); Запрос.УстановитьПараметр("ДатН",ДатН); Запрос.УстановитьПараметр("ДатК",ДатК); ТЗ=Новый ТаблицаЗначений; ТЗ=Запрос.Выполнить().Выгрузить(); В результате ТЗ.Количество() выдает 0. Обороты в заданом периоде есть, вставлял этот запрос в консоль запросов в бухе, выдает все верно. В чем косяк может быть? |
|||
1
Fragster
гуру
21.07.11
✎
18:31
|
для начала можно поучится пользоваться параметрами виртуальных таблиц
|
|||
2
zhenka
21.07.11
✎
18:32
|
Что не так? подскажите
|
|||
3
SaM58
21.07.11
✎
18:36
|
что есть "Счет90"?
|
|||
4
zhenka
21.07.11
✎
18:37
|
Счет90=ПланыСчетов.Хозрасчетный.ПрибыльУбытокОтПродаж; 90.09
|
|||
5
SaM58
21.07.11
✎
18:38
|
(4) тьфу, не заметил
|
|||
6
qeos
21.07.11
✎
18:38
|
ВЫБРАТЬ РАЗРЕШЕННЫЕ
ХозрасчетныйОстаткиИОбороты.Счет, ХозрасчетныйОстаткиИОбороты.Субконто1, ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК СуммаОборотКт, ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаОборотДт ИЗ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатН, &ДатК, , , Счет в иерархии( &Счет90), , Организация = &Организация) КАК ХозрасчетныйОстаткиИОбороты |
|||
7
unregistered
21.07.11
✎
18:38
|
(2) Скорее всего период (ДатаН и ДатаК) неправильно установлены. Или какие-либо другие параметры запроса. Смотри отладчиком что ты туда передаешь.
А по сути всё неправильно! Во-первых, нафига брать таблицу ОстаткиИОбороты, когда тебе нужны только Обороты. На экзамене на спеца за это сразу два балла ставят. Во-вторых, условия отбора по измерениям (Организация) и счетам должны находиться в параметрах виртуальной таблицы (там же где указано ДатаН и ДатаК), а не в разделе "ГДЕ". В-третьих, группировка тут нафиг не нужна, т.к. виртуальные таблицы выдают результат уже сгруппированный по всем счетам, измерениям и значениям субконто. |
|||
8
qeos
21.07.11
✎
18:39
|
(0) Счет в иерархии( &Счет90)
|
|||
9
unregistered
21.07.11
✎
18:41
|
(8) С чего ты взял, что 90.09 - группа? Разве в типовой это не обычный счет?
|
|||
10
zhenka
21.07.11
✎
18:43
|
90.09 это не группа, обычный счет
|
|||
11
unregistered
21.07.11
✎
18:44
|
(10) Если так, то "В ИЕРАРХИИ" не надо. Оставь условие на равенство "Счет=&Счет90".
|
|||
12
qeos
21.07.11
✎
18:45
|
(9) в любом случае это правильней ))
|
|||
13
zhenka
21.07.11
✎
18:46
|
Счет90=ПланыСчетов.Хозрасчетный.ПрибыльУбытокОтПродаж;
ТекстЗапроса="ВЫБРАТЬ РАЗРЕШЕННЫЕ | ХозрасчетныйОстаткиИОбороты.Счет, | ХозрасчетныйОстаткиИОбороты.Субконто1, | СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт) КАК СуммаОборотКт, | СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт) КАК СуммаОборотДт |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатН, &ДатК, , , Счет = &Счет90, ,Организация = &Организация) КАК ХозрасчетныйОстаткиИОбороты |СГРУППИРОВАТЬ ПО | ХозрасчетныйОстаткиИОбороты.Счет, | ХозрасчетныйОстаткиИОбороты.Субконто1"; Запрос=Новый Запрос(ТекстЗапроса); Запрос.УстановитьПараметр("Счет90",Счет90); Запрос.УстановитьПараметр("Организация",Организация); Запрос.УстановитьПараметр("ДатН",ДатН); Запрос.УстановитьПараметр("ДатК",ДатК); Все равно 0 |
|||
14
qeos
21.07.11
✎
18:47
|
(13) а там есть ченить-то?
|
|||
15
unregistered
21.07.11
✎
18:47
|
(12) В любом случае это тормознее работать будет.
А более правильным это считается только лишь с той точки зрения, что в дальнейшем когда-нибудь теоретически возможно, что счет 90.09 сделают группой и налепяп ему кучу субсчетов. В таком случае запрос будет работать по-прежнему правильно и включать еще и данные по субсчетам 90.09. |
|||
16
SaM58
21.07.11
✎
18:47
|
"ВЫБРАТЬ РАЗРЕШЕННЫЕ" - может прав нет?
|
|||
17
unregistered
21.07.11
✎
18:48
|
(13) Чудес не бывает. Выкладывай картинку с отладчиком, где указаны значения всех параметров передаваемых в запрос.
|
|||
18
v8Newbie
21.07.11
✎
18:49
|
"Разрешенные". И консоль запросов может лучше использовать?
|
|||
19
qeos
21.07.11
✎
18:49
|
пусть построит запрос в консоле для начала.. и посмотрит ОСВ, что там есть хоть чтото.. причем с остатком..
|
|||
20
unregistered
21.07.11
✎
18:49
|
(13) И чо ты нам текст запроса сюда пихаешь. Он у тебя хоть и кривельческий (методически неправильный), но работать должен.
|
|||
21
qeos
21.07.11
✎
18:49
|
(18) ыгы
|
|||
22
Fragster
гуру
21.07.11
✎
18:50
|
распространенная ошибка - перепутать местами даты
|
|||
23
unregistered
21.07.11
✎
18:50
|
(18) (19) Внимательней ветку читайте:
(0) >> Обороты в заданом периоде есть, вставлял этот запрос в консоль запросов в бухе, выдает все верно |
|||
24
unregistered
21.07.11
✎
18:51
|
(22) +100
Уже говорил об этом в (7) |
|||
25
zhenka
21.07.11
✎
18:52
|
||||
26
zhenka
21.07.11
✎
18:54
|
ну вот как-то так
|
|||
27
qeos
21.07.11
✎
18:56
|
1. точно 90.09 не имеет подгрупп? "в иерархии" также показывает?
2. организация та? и из того справочника? |
|||
28
qeos
21.07.11
✎
18:56
|
что такое СуммаПо90091 ??
|
|||
29
qeos
21.07.11
✎
18:57
|
какой смысл от ТЗ=Новый ТаблицаЗапросов?
|
|||
30
qeos
21.07.11
✎
18:57
|
итог: чудес не бывает
|
|||
31
zhenka
21.07.11
✎
18:58
|
ТЗ= Новый таблица значений
СуммаПо90091 эта сумма в следующем цикле считается |
|||
32
zhenka
21.07.11
✎
18:59
|
Организация та, 90.09 подгрупп не имеет в иерархии тоже 0 показывает
|
|||
33
qeos
21.07.11
✎
19:00
|
(31) ну да "таблицаЗначений".. это лишнее.
покаж запрос в консоле с параметрами |
|||
34
unregistered
21.07.11
✎
19:00
|
(31) qeos хотел сказать, ТЗ= Новый таблица значений - совершенно бессмысленная строка. Она здесь не нада. Ну да к твоей беде это отношение не имеет.
|
|||
35
zhenka
21.07.11
✎
19:01
|
Не пойму, в консоле запросов все работает, почему тут нет
|
|||
36
unregistered
21.07.11
✎
19:01
|
(32) Значит оборотов там нет.
Показывай картинку с аналогичным запросом, который ты сделал в консоли с теми же самыми параметрами, но где есть результат. |
|||
37
qeos
21.07.11
✎
19:02
|
(35) покажи ))
|
|||
38
unregistered
21.07.11
✎
19:02
|
(35) Может проблема в Организации? У вас там случайно нет в справочнике организаций с одинаковыми наименованиями?
|
|||
39
zhenka
21.07.11
✎
19:04
|
||||
40
unregistered
21.07.11
✎
19:08
|
Последний тупой вопрос.
А не делаются ли эти обороты, которые ты видишь в консоли самим этим документом ЗакрытиеМесяца? Может в обработке проведения документа этих оборотов еще нет? |
|||
41
unregistered
21.07.11
✎
19:09
|
+ к (40) Покажи результат запроса из консоли с периодичностью "Регистратор".
|
|||
42
zhenka
21.07.11
✎
19:12
|
||||
43
unregistered
21.07.11
✎
19:14
|
(42) Круто конечно, но поле Регистратор в выборку запроса добавь, пожалуйста :)
|
|||
44
zhenka
21.07.11
✎
19:22
|
||||
45
SaM58
21.07.11
✎
19:23
|
(44)ну что и требовалось доказать :))
|
|||
46
zhenka
21.07.11
✎
19:27
|
как можно обойти?
|
|||
47
unregistered
21.07.11
✎
19:45
|
(46) Что обойти?
Ты хочешь увидеть результаты проведения еще до окончания обработки проведения. Сделать это возможно только принудительно выполнив запись проводок. типа Движения.Записать(); // Запись всех наборов или Движения.Хозрасчетный.Записать(); // запись только набора записей регистра Хозрасчетный |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |