![]() |
#1 |
Участник
|
Здравствуйте Коллеги,
помогите разобраться, какую формулу надо поставить в ДатаФильтр2 в строках внешнего отчета чтоб сравнить два месяца? сейчас первый фильтр стоит ср а второй ср-1м, так вот результат при расчете феврала ДатаФильтр1 010209..280209 Датафильтр2 010109..280109 НАВ-5 сп-1 |
|
![]() |
#2 |
Участник
|
CM и CM-1M пробовали?
|
|
![]() |
#3 |
Участник
|
Если проблема в том, что январь обрезался 28 числом, то в формуле -1М надо написать вначале, а потом уже +СМ.
|
|
![]() |
#4 |
Участник
|
при таких значениях получаем 01.01.09..01.01.09
вот код который отвечает за расчет в кю 12405 IF NOT (Period."Period Start" = 0D) AND NOT (Period."Period End" = 0D) THEN EXIT(STRSUBSTNO('%1..%2', CALCDATE('<' + COPYSTR(DateFilter,3) + '>',Period."Period Start"), CALCDATE('<' + COPYSTR(DateFilter,3) + '>',Period."Period End"))) |
|
![]() |
#5 |
Участник
|
|
|
![]() |
#6 |
Участник
|
Да, я не сразу осознал проблему. Надо придумать формулу, чтобы она из первого числа месяца делала первое число предыдущего месяца, а из последнего - поледнюю. Пока мне кажется, это невозможно.
Так что, чтобы отображать некую сумму за предыдущий месяц наверное, надо создать две невидимые строки: одну с диапазоном ..ED, другую - с диапазоном ..ED-1M+СM, и видимую - их разность. |
|
![]() |
#7 |
Участник
|
Цитата:
Сообщение от Milk
![]() Да, я не сразу осознал проблему. Надо придумать формулу, чтобы она из первого числа месяца делала первое число предыдущего месяца, а из последнего - поледнюю. Пока мне кажется, это невозможно.
Так что, чтобы отображать некую сумму за предыдущий месяц наверное, надо создать две невидимые строки: одну с диапазоном ..ED, другую - с диапазоном ..ED-1M+СM, и видимую - их разность. ![]() |
|
![]() |
#8 |
Участник
|
Arshak, а вы разве не со внешними отчетами работаете? Я-то предложил решение, конечно же, для них
![]() |
|
![]() |
#9 |
Участник
|
-CM - Это первое число месяца.
Соответсвенно, можно попробовать <-CM-1D> - Это будет последнее число предыдущего месяца. |
|
![]() |
#10 |
Участник
|
Цитата:
хотя если строк будет много то будет не весело, а про сравнение 3 периодов я вообще боюсь думать ![]() Спасибо я высказал мысли в слух про изменения в коде ![]() |
|
![]() |
#11 |
Участник
|
|
|
![]() |
#12 |
Участник
|
А попоробуйте +1D-1M-1D.
CM то дату начала и окончания к одной дате приведет... |
|
![]() |
#13 |
Участник
|
|
|
![]() |
#14 |
Участник
|
Никогда не мог разобраться с этими формулами...
![]() ![]() ![]() |
|