![]() |
![]() |
![]() |
|
Проверка заполнения колонки в ТЧ | ☑ | ||
---|---|---|---|---|
0
mzelensky
01.12.11
✎
14:52
|
Доброго времени суток!
Допустим имеется ТЧ с 10 колонками и 50 строками. Колонки могут быть заполнены, а могут быть пустыми. Подскажите плиз, как БЫСТРО/ОПТИМАЛЬНО определить какие из колонок пустые (т.е. не имею значения ни в одной из строк) ?! |
|||
1
Buster007
01.12.11
✎
14:54
|
НайтиСтроки()?
|
|||
2
чувак
01.12.11
✎
14:55
|
А значения в колонках какого типа?
|
|||
3
Defender aka LINN
01.12.11
✎
14:56
|
Запросом, например.
|
|||
4
mzelensky
01.12.11
✎
14:57
|
(1) Типа:
ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("Колонка1", 0); НайденныеСтроки = Состав.НайтиСтроки(ПараметрыОтбора); а потом на количество проверять?! А еще быстрее? |
|||
5
mzelensky
01.12.11
✎
14:57
|
(2) число
|
|||
6
Defender aka LINN
01.12.11
✎
14:58
|
(5) ТЗ.Итог("Колонка") = 0.
Ну, если не может быть ситуации, что в одной строке 1, а в другой -1 :) |
|||
7
DrShad
01.12.11
✎
14:58
|
Итог() если нет отрицательных
|
|||
8
чувак
01.12.11
✎
14:59
|
(5) А так?
ТЧ.Итог(ИмяКолонки) = 0 |
|||
9
mzelensky
01.12.11
✎
14:59
|
(5) точнее не так - колонки идет парами. Т.е. Колонка1_1, Колонка1_2, Колонка2_1, Колонка2_2.
У первой тип сторока у второй число |
|||
10
Buster007
01.12.11
✎
15:00
|
а я думал что в одной колонке может быть как заполнены, так и не заполнены и надо показать в каких строках не заполнено )
|
|||
11
mzelensky
01.12.11
✎
15:00
|
(8) а если проверять с типом "строка" ?
|
|||
12
mzelensky
01.12.11
✎
15:01
|
(10) не, меня интересуют не строки ,а колонки. Мне нужно выяснить каки колонки ПУСТЫЕ и просто скрыть их.
|
|||
13
Buster007
01.12.11
✎
15:05
|
да проверяй тогда первую строку на пустые значения и всё.
|
|||
14
Buster007
01.12.11
✎
15:06
|
да 1 строка будет летать, хоть как сделай. Не заметишь.
|
|||
15
DrShad
01.12.11
✎
15:12
|
(12) делай копию таблицы, сортируй, получай последнюю/первую строку (в зависимости от сортировки) и заполненности ячейки узнаешь какая колонка пустая, потом опять сортировка но по другой колонке - получив ИМЯ колонки в базовой таблице скрывай
|
|||
16
vmv
01.12.11
✎
15:14
|
к 100-му сообщению тут будет запрос с вложенными или временными таблицами и будет утверждено, что это супер.
старайтесь - вы уже приближаеетесь к оптиме) |
|||
17
vmv
01.12.11
✎
15:16
|
(15) аццке ресурсно затратно, как-то лет 10 назаз на Т1С була тема про оптимальное удаление строк строк ТЗ в 7.7.
Там было доказано, что использовение сортировок и сверток - ппц накладно, в 8.1, 8.2 думаю тоже самое |
|||
18
DrShad
01.12.11
✎
15:18
|
(17) есть лучше вариант? слушаем
|
|||
19
DrShad
01.12.11
✎
15:18
|
(17) по-крайней мере сортировке пофигу на тип колонки
|
|||
20
mzelensky
01.12.11
✎
15:19
|
Я думаю все-таки запросом (примерно так, доводить потом буду). Обработать нужно итоговую строчку:
ВЫБРАТЬ ТСДТабличнаяТСД.Ссылка КАК Ссылка, ВЫБОР КОГДА ТСДТабличнаяТСД.Эл1Наимен = "" ТОГДА 0 ИНАЧЕ 1 КОНЕЦ КАК Эл1, ВЫБОР КОГДА ТСДТабличнаяТСД.Эл2Наимен = "" ТОГДА 0 ИНАЧЕ 1 КОНЕЦ КАК Эл2, ВЫБОР КОГДА ТСДТабличнаяТСД.Эл3Наимен = "" ТОГДА 0 ИНАЧЕ 1 КОНЕЦ КАК Эл3, ВЫБОР КОГДА ТСДТабличнаяТСД.Эл4Наимен = "" ТОГДА 0 ИНАЧЕ 1 КОНЕЦ КАК Эл4, ВЫБОР КОГДА ТСДТабличнаяТСД.Эл5Наимен = "" ТОГДА 0 ИНАЧЕ 1 КОНЕЦ КАК Эл5 ИЗ Документ.ТСД.ТабличнаяТСД КАК ТСДТабличнаяТСД ГДЕ ТСДТабличнаяТСД.Ссылка = &Док ИТОГИ СУММА(Эл1), СУММА(Эл2), СУММА(Эл3), СУММА(Эл4), СУММА(Эл5) ПО Ссылка |
|||
21
чувак
01.12.11
✎
15:20
|
(20) А как быть с числами?
|
|||
22
mzelensky
01.12.11
✎
15:21
|
(20) колонка в ТЧ тоже называется "Эл1", "эл2" и т.д. ... так что обращаться удобно будет!
|
|||
23
mzelensky
01.12.11
✎
15:22
|
(21) я этот момент уточню у заказчика. Там проверка будет ток по одной из колонки (либо по колонки с числом, либо по колонки со строкой). В зависимости от типа и буду проверять.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |