|
Обращение к ТЗ | ☑ | ||
---|---|---|---|---|
0
Неженцев Эдуард
12.07.12
✎
15:00
|
Возможно написать?
ТЗОтбор = ТЗОрг.Скопировать(ТЗОрг.НайтиСтроки(Новый Структура("СтрокаБаланса", <=1310))); Приходится делать цикл, чтобы сравнивать с 1310, немного тормозит. |
|||
1
France
12.07.12
✎
15:02
|
через запрос.
|
|||
2
Неженцев Эдуард
12.07.12
✎
15:52
|
(1) Вылетает Тип не может быть выбран в запросе
<<?>>Т.Организация, Запрос=Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Т.Организация, | Т.СуммаОрг |ПОМЕСТИТЬ ВТ |ИЗ | &Таб КАК Т |ГДЕ | Т.СтрокаБаланса <= 1310 | И Т.Организация = &Организация"; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; Запрос.УстановитьПараметр("Таб", ТЗОрг); Запрос.УстановитьПараметр("Организация", ТекОрг.Организация); ТЗЗ = Запрос.Выполнить().Выгрузить(); |
|||
3
rutony
12.07.12
✎
15:57
|
(2) Сначало в виртуальную таблицу со списком полей, потом делаем на нее условие... Запрос не может понять какие поля в ТЗ.
|
|||
4
guitar_player
12.07.12
✎
16:01
|
(2) определи тип колонок в своей таблице
|
|||
5
Неженцев Эдуард
12.07.12
✎
16:47
|
(2) Присвоил типы, теперь не могу запрос ни сгруппировать, ни выгрузить его в тз и написать тз.итог("СуммаОрг"), к примеру.
|
|||
6
LAAry
12.07.12
✎
16:50
|
Покажи код типизации колонок ТЗ и запрос, который выполняешь.
|
|||
7
Неженцев Эдуард
12.07.12
✎
16:56
|
ТЗОрг = новый ТаблицаЗначений;
ТЗОрг.Колонки.Добавить("СтрокаБаланса", Новый ОписаниеТипов("Число")); //число! ТЗОрг.Колонки.Добавить("Счет", Новый ОписаниеТипов("ПланСчетовСсылка.Хозрасчетный")); ТЗОрг.Колонки.Добавить("НаименованиеСчета", Новый ОписаниеТипов("Строка")); ТЗОрг.Колонки.Добавить("СуммаОрг", Новый ОписаниеТипов("Число")); ТЗОрг.Колонки.Добавить("Организация", Новый ОписаниеТипов("СправочникСсылка.Организации")); ... Запрос=Новый Запрос; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; Запрос.УстановитьПараметр("Таб", ТЗОрг); Запрос.УстановитьПараметр("Организация", ТекОрг.Организация); Запрос.Текст = "ВЫБРАТЬ | Т.Организация, | Т.СуммаОрг |ПОМЕСТИТЬ ВТ |ИЗ | &Таб КАК Т |ГДЕ | Т.СтрокаБаланса <= 1310 | И Т.Организация = &Организация"; ТЗЗ = Результат.Выгрузить(); ... ИтогиОрганизация.Параметры.СуммаОрг = ТЗЗ.Итог("СуммаОрг"); Ошибка (Колонка не принадлежит коллекции). Поставил точку останова, посмотрел ТЗЗ - нет толонок Организация и СуммаОрг. |
|||
8
Неженцев Эдуард
12.07.12
✎
16:58
|
(7) Результат = Запрос.Выполнить(); Стерлась строчка
|
|||
9
GLazNik
12.07.12
✎
16:58
|
(7) Тык и результата запроса нет. Результат во временной таблице ВТ.
Нужен еще один запрос к этой виртуальной таблице. |
|||
10
Reset
12.07.12
✎
17:10
|
Вот еще вариант
// ИмяКолонки должно быть типизовано Построитель=Новый ПостроительЗапроса; Построитель.ИсточникДанных=Новый ОписаниеИсточникаДанных(ИсходнаяТаблица); Отбор=Построитель.Отбор.Добавить("ИмяКолонки"); Построитель.Отбор.ИмяКолонки.ВидСравнения=ВидСравнения.МеньшеИлиРавно; Построитель.Отбор.ИмяКолонки.Значение=2; Построитель.Отбор.ИмяКолонки.Использование=Истина; НоваяТаблица=Построитель.Результат.Выгрузить(); |
|||
11
Неженцев Эдуард
12.07.12
✎
17:10
|
(9) Правильно? В отладка --> Вычислить выражение просматриваю, поля Организация и СуммаОрг появились, но вместо значений - ошибка чтения значения.
ВЫБРАТЬ | Т.Организация, | Т.СуммаОрг |ПОМЕСТИТЬ ВТ |ИЗ | &Таб КАК Т |ГДЕ | Т.СтрокаБаланса <= 1310 | И Т.Организация = &Организация |; | |////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ.Организация, | СУММА(ВТ.СуммаОрг) КАК СуммаОрг |ИЗ | ВТ КАК ВТ | |СГРУППИРОВАТЬ ПО | ВТ.Организация |
|||
12
Неженцев Эдуард
12.07.12
✎
17:12
|
(10) Попробую, спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |