13.06.2007, 10:09 | #1 |
Участник
|
А реально ли задать фильтр, чтобы по нему выбрались все записи у которых в дате скажем месяц май?
Или придется перебирать все записи и самому просматривать месяц используя DATE2DMY? |
|
13.06.2007, 10:16 | #2 |
Участник
|
А если сделать так: 01.05.07..31.05.07
|
|
13.06.2007, 10:34 | #3 |
Участник
|
Так надо то по всем годам
|
|
13.06.2007, 10:46 | #4 |
Участник
|
|
|
13.06.2007, 11:07 | #5 |
Участник
|
Ну чтото типа этого
|
|
13.06.2007, 11:18 | #6 |
Участник
|
Ну если записей очень много, можно создать дополнительное поле заполнив его номером месяца.
|
|
13.06.2007, 15:23 | #7 |
Участник
|
Цитата:
И на основе этого можно сделать свои Гриды и Отчеты. |
|
14.06.2007, 11:03 | #8 |
Участник
|
2 RedFox
Ты ничего не перепутал? у меня форма 12498 называется "Таможенная Декларация Связь". |
|
14.06.2007, 17:28 | #9 |
Участник
|
|
|
18.06.2007, 09:26 | #10 |
Участник
|
Так в этой форме же вроде фильтруются записи по периоду тоже, а не как мне надо - допустим по конкретному месяцу всех лет.
И еще я что-то не понял там смысла конструкции: Код: SETRANGE("Date Filter",Calendar."Period Start",Calendar."Period End"); IF GETRANGEMIN("Date Filter") = GETRANGEMAX("Date Filter") THEN SETRANGE("Date Filter",GETRANGEMIN("Date Filter")); |
|
18.06.2007, 11:02 | #11 |
Участник
|
Попробуйте так, я тут быстро накидал, мож. поможет.
//date тип Option ( ,январь,февраль и т.д. все месяцы) //Далее создали функцию в функции пишем IF date = date::январь THEN DateInt:='01'; IF date = date::февраль THEN DateInt:='02'; IF date = date::март THEN DateInt:='03'; IF date = date::апрель THEN DateInt:='04'; IF date = date::май THEN DateInt:='05'; IF date = date::июнь THEN DateInt:='06'; //и тд. по всем месяцам RESET; IF FIND('-') THEN REPEAT IF (FORMAT(DATE2DMY("From Date",2)) = DateInt) THEN //Маркеруем записи попадающие под наше условие MARK(TRUE); UNTIL NEXT =0; //Отображаем промаркерованные записи MARKEDONLY(TRUE); Вот такая задумка, попробуйте |
|
18.06.2007, 11:34 | #12 |
Участник
|
Что-то мне подсказывает, что в таблице с датой пользоваться "марком" будет накладно (как правило это таблицы с историей какой-нибудь.... Entry, Log и т.п.).
Тут надо плясать от самой задачи... Принцип - разделяй и властвуй был бы быстрее... например, взять в таблице минимальный год и максимальный. Написать цикл по годам и работать внутри одной порции (одного года).. |
|
18.06.2007, 12:22 | #13 |
Участник
|
Я за дополнительное поле в таблице, в котором будет храниться номер месяца. Кто-то впереди это написал. Заполнять на инсерте и никаких гвоздей. Если есть потребность в подобном срезе данных.
|
|
18.06.2007, 12:37 | #14 |
Участник
|
Про дополнительное поле - это конечно первая мысль, которая сразу в голову лезет.
Я сейчас сделал фильтр + перебор отфильтрованых записей. Попробую как время будет с марком, проверю быстрее ли работать станет. |
|
18.06.2007, 13:05 | #15 |
Участник
|
Опять же - смотря какая задача
Я согласен, что, если часто запускают отчет и очень это надо, то можно добавлять поле (а к нему и ключ)... Но, если отчет запускают изредка, а таблица, например "Value Entry", то тут еще вопрос... стоит ли плодить ключи в такой таблице... В общем, разумный выбор должен сделать тот, кто решает задачу Методов тут множество - надо выбрать оптимальный... |
|
18.06.2007, 13:40 | #16 |
Участник
|
|
|
18.06.2007, 14:02 | #17 |
Участник
|
Сделать цикл по диапазону годов по кторым нужно сомтреть. Ставить фильтр на конкретные месяцы года, обрабатывать записи и переходить к следующему. Хотя тут тоже - смотря как и что нужно обрабатывать.
Хотя в любом случае можно выгрузить во временную таблицу, а лишь потом обрабатывать. Будет в разы быстрее марка и не надо никаких ключей добавлять. |
|
18.06.2007, 14:10 | #18 |
Участник
|
Вижу что сбоянил - уже тут такое предлагали
|
|
18.06.2007, 15:27 | #19 |
Участник
|
Цитата:
На мой взгялд, "Группа ключей БД" вообще-то для девелоперов больше... Просто интересно - хоть кто-нибудь пользовался Группой Ключей? У меня такое ощущение, что все знают, что она есть, но на практике отчетов, котрые строились бы раз в год нет.... |
|
19.06.2007, 15:42 | #20 |
Участник
|
Присоединяюсь к randrews в этом.
Кто-нибудь может поделиться опытом использования "Группы ключей БД"? Хотя бы и на примере данной задачи |
|