|
Как получить значение по Кред. счета со всеми известными субконто? | ☑ | ||
---|---|---|---|---|
0
mdv92
20.09.11
✎
21:26
|
"ВЫБРАТЬ
| ХозрасчетныйОстатки.Субконто1 КАК Субконто1, | ХозрасчетныйОстатки.Субконто2 КАК Субконто2, | ХозрасчетныйОстатки.Субконто3 КАК Субконто3, | ХозрасчетныйОстатки.СуммаОстатокКт КАК СуммаОстатокКт |ИЗ | РегистрБухгалтерии.Хозрасчетный.Остатки(&ГраницаОстатков, Счет = &Счет, , |Субконто1 = &Субконто1 и Субконто2 = &Субконто2 и Субконто3 = &Субконто3) КАК ХозрасчетныйОстатки | |СГРУППИРОВАТЬ ПО | ХозрасчетныйОстатки.СуммаОстатокКт, | ХозрасчетныйОстатки.Субконто1, | ХозрасчетныйОстатки.Субконто2, | ХозрасчетныйОстатки.Субконто3 |ИТОГИ ПО | СуммаОстатокКт"; Почему не получилось? |
|||
1
zak555
20.09.11
✎
21:28
|
типы аналитик не совпадают ?
|
|||
2
mdv92
20.09.11
✎
21:34
|
Да вроде совпадают!
|
|||
3
zak555
20.09.11
✎
21:38
|
может ещё нужно писать : СубконтоКт ?
|
|||
4
mdv92
20.09.11
✎
21:41
|
Конструктор запроса мне предлагает просто субконто1
|
|||
5
mdv92
20.09.11
✎
21:43
|
Запрос86.УстановитьПараметр("Субконто1",НазначениеЦелевыхСредств);
Запрос86.УстановитьПараметр("Субконто2",СтрокаТаблицы.НКО_Проект); //Запрос86.УстановитьПараметр("Субконто3",Перечисления.ДвиженияЦелевыхСредств.ДобровольныеВзносы); Запрос86.УстановитьПараметр("Счет",ПланыСчетов.Хозрасчетный.НайтиПоКоду("86.02")); Запрос86.УстановитьПараметр("ГраницаОстатков", Новый Граница(КонецДня(Дата), ВидГраницы.Включая)); РезультатЗапроса86 = Запрос86.Выполнить().Выбрать(); Ост86=0; Если РезультатЗапроса86.Количество()>0 Тогда Если РезультатЗапроса86.СуммаОстатокКт>0 Тогда Ост86=РезультатЗапроса86.СуммаОстатокКт; И вот что интересно - РезультатЗапроса86.Количество() - равно 2, а все значения - "ошибка чтения" |
|||
6
zak555
20.09.11
✎
21:45
|
НКО -- НеКоммерсчекиеОрганизации ?
|
|||
7
mdv92
20.09.11
✎
21:47
|
(6) Ага!
Запрос86.УстановитьПараметр("Субконто1",НазначениеЦелевыхСредств.Ссылка); - при установке параметров не было .ссылка, наверное, это неправильно. Но не помогло! |
|||
8
zak555
20.09.11
✎
21:48
|
что нужно в конечном итоге д?
|
|||
9
zak555
20.09.11
✎
21:54
|
а так :
"ВЫБРАТЬ | ХозрасчетныйОстатки.Субконто1 КАК Субконто1, | ХозрасчетныйОстатки.Субконто2 КАК Субконто2, | ХозрасчетныйОстатки.Субконто3 КАК Субконто3, | ХозрасчетныйОстатки.СуммаОстатокКт КАК СуммаОстатокКт |ИЗ | РегистрБухгалтерии.Хозрасчетный.Остатки(&ГраницаОстатков, Счет = &Счет, ,) КАК ХозрасчетныйОстатки |ГДЕ | Субконто1 = &Субконто1 и Субконто2 = &Субконто2 и Субконто3 = &Субконто3 | |СГРУППИРОВАТЬ ПО | ХозрасчетныйОстатки.СуммаОстатокКт, | ХозрасчетныйОстатки.Субконто1, | ХозрасчетныйОстатки.Субконто2, | ХозрасчетныйОстатки.Субконто3 |ИТОГИ ПО | СуммаОстатокКт"; |
|||
10
mdv92
20.09.11
✎
22:05
|
(8) Да всего-то надо проверить - сколько там по кредиту осталось.
(9) Сейчас попробую! Но так же говорят - медленнее! |
|||
11
mdv92
20.09.11
✎
22:12
|
Результат-тот же!
Еще вводные - Запрос86.Выполнить().ВЫгрузить()[0] - там какая-то ерунда, а вот Запрос86.Выполнить().ВЫгрузить()[1] - там есть все нужные субконто и сумма! Как мне уцепить нужный элемент? |
|||
12
mdv92
20.09.11
✎
22:48
|
Эх!
|
|||
13
zak555
20.09.11
✎
23:26
|
что за эх ?
|
|||
14
mdv92
21.09.11
✎
11:26
|
Вот так и написала - Запрос86.Выполнить().ВЫгрузить()[1] - оттуда всё беру.
Но так же не делают приличные люди! |
|||
15
mdv92
21.09.11
✎
12:04
|
А, предположим, мне все остатки по счету надо в таблицу загрузить? Это как написать, чтоб там не было лишних строк (не полностью заполненных)?
|
|||
16
unregistered
21.09.11
✎
12:12
|
Убрать ИТОГИ и группировку.
Из виртуальных таблиц данные выдаются уже сгруппированными. ИТОГИ дают то, что первой строкой в таблице идет итоговая запись, а только второй - детальная. "ВЫБРАТЬ | ХозрасчетныйОстатки.Субконто1 КАК Субконто1, | ХозрасчетныйОстатки.Субконто2 КАК Субконто2, | ХозрасчетныйОстатки.Субконто3 КАК Субконто3, | ХозрасчетныйОстатки.СуммаОстатокКт КАК СуммаОстатокКт | ИЗ | РегистрБухгалтерии.Хозрасчетный.Остатки(&ГраницаОстатков, Счет = &Счет, , |Субконто1 = &Субконто1 и Субконто2 = &Субконто2 и Субконто3 = &Субконто3) КАК ХозрасчетныйОстатки"; |
|||
17
unregistered
21.09.11
✎
12:14
|
Кроме того при использовании группировок надо указывать какие поля группируются, а какие суммируются. По идее СуммаОстатокКт должно быть суммируемым полем, а не группировочным.
но повторюсь: виртальнгые таблицы выдают данные уже сгруппированными по измерениям и значениям субконто. |
|||
18
mdv92
21.09.11
✎
12:50
|
(17) Спасибо!
|
|||
19
mdv92
21.09.11
✎
14:03
|
НайденСтроки=Таб86.НайтиСтроки(Отбор);
Нашла я нужные строки! А как теперь в самой таблице сумму-то изменить? Где взять номер найденной строки? |
|||
20
mdv92
21.09.11
✎
14:05
|
Замечание! Массив хранит ссылки на строки таблицы значений, то есть при изменении строки в таблице, значение в массиве тоже будет измененным.- это я в синтаксисе нашла. А мне бы, наоборот, в самой таблице строку изменить!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |