|  27.04.2005, 12:32 | #1 | 
| Участник | FlowField, в TableFilter 
			
			Подскажите, можно ли при создании поля FlowField, в TableFilter использовать использовать выражения типа ..TODAY-1 А то нужно сделать Флоуфилд который бы показывал сумму по операциям за определенные даты. | 
|  | 
|  27.04.2005, 12:46 | #2 | 
| NavAx | 
			
			Можно использовать DateFilter типа FlowFilter, в который класть TODAY - 1    | 
|  | 
|  27.04.2005, 13:05 | #3 | 
| Участник | 
			
			не понял, поподробнее plz. | 
|  | 
|  27.04.2005, 14:01 | #4 | 
| NavAx | 
			
			Сразу оговорюсь: я про 3.6. Что в 2.6 - не в курсе, к сожалению. Дык вот, посмотрим для примера на таблицу Customer, на поле Sales (LCY) Это FlowField. Расчитывается, как сумма по полю Sales (LCY) таблицы Cust. Ledger Entry. Смотрим фильтры: Customer No. No. Global Dimension 1 Code Global Dimension 1 Filter Global Dimension 2 Code Global Dimension 2 Filter Posting Date Date Filter Currency Code Currency Filter Agreement No. Agreement Filter Последние 5 фильтров выстроены не по обычным полям таблицы Customer, а по полям типа FlowFilter. Что это означает: если Вы просто откроете табличку Customer, то увидите в этом поле значения, не завязанные на измерения, дату, валюту и договора. Если же Вы установите значения для, например, Date Filter, то в сумму будут входить уже только те клиентские операции из 21-й таблицы, в которых Posting Date попадает в диапазон, заданный в Date Filter. Т.е., например, если Вам нужно посмотреть сумму только по вчерашним операциям - вводите в Date Filter значение (TODAY - 1). Если по всем операциям до вчерашнего дня включительно - вводите '..TODAY - 1' и т.п. Соответственно, если, например, нужно в какой-то форме выводить суммы только по вчерашнему дню, то достаточно на OnOpenForm написать SETFILTER("Date Filter", TODAY - 1); Если в отчете - опять же просто положите фильтр на датаайтем и т.п. На всякий случай, для более конструктивной беседы, опишите более подробно свою задачу  З.Ы. Флоуфильтры выставляются по нажатию кнопочки Shift + F7 | 
|  | 
|  27.04.2005, 15:43 | #5 | 
| Участник | 
			
			задача такова: нужно показать сумму всех заявок на оплату (это бюджетирование) которые были неоплачены и были подписаны более двух дней назад. для этого создал FlowField поле с такими TableFilter: | 
|  | 
|  27.04.2005, 16:02 | #6 | 
| Участник | 
			
			Если бы в значении фильтра в Navision можно было использовать функции (или сложные выражения), то ваша задумка может быть удалась.
		 | 
|  | 
|  27.04.2005, 16:07 | #7 | 
| Участник | 
			
			это понятно, а можно ли как-то исхитриться и обойти эти ограничения. или сделать по-другому?
		 | 
|  | 
|  27.04.2005, 16:13 | #8 | 
| NavAx | 
			
			Ну я же все написал. Создайте там, где нужна эта сумма, поле Date Filter типа Flow Filter. В фильтрах FlowFiled'а напишите не Дата Подп. Фин. Дир. FILTER TODAY - 2, а напишите Дата Подп. Фин. Дир. FILTER Date Filter Задайте значение Date Filter = '..TODAY-2' и будет щастье. | 
|  | 
|  27.04.2005, 16:21 | #9 | 
| Участник | 
			
			да, действительно... торможжжу... Спасибо ОГРОМНОЕ ! | 
|  | 
|  27.04.2005, 16:32 | #10 | 
| Участник | Цитата: 
		
			Изначально опубликовано Yoil  Задайте значение Date Filter = '..TODAY-2' и будет щастье. Не, не будет. | 
|  | 
|  27.04.2005, 16:47 | #11 | 
| NavAx | 
			
			Да, Шрэк, тут для ЩАСТЬЯ нужно сделать больше - написать на OnOpenForm SETFILTER("Date Filter", '..' + FORMAT(TODAY - 2)); Действительно, ручками оно выражение TODAT-2 не разберет, т.к. FlowFilter - это совсем не тип Date, прошу прощения, если ввел в заблуждение. | 
|  | 
|  27.04.2005, 16:51 | #12 | 
| Участник | 
			
			нет, имелось в виду поставить фильтр на "Дата Фильтр" при открытии формы:  Код: SETFILTER("Дата Фильтр", '..%1', TODAY-1) Yoil, спасибо ещё раз! | 
|  | 
|  27.04.2005, 16:53 | #13 | 
| Участник | 
			
			Пардон, теперь понял, что разговор шел о SETFILTER.
		 | 
|  | 
|  27.04.2005, 17:27 | #14 | 
| Участник | 
			
			Господа, хочу ещё спросить. А есть ли возможность изменить сумму, которая появляется в созданном поле FlowField. Поясню: в заявках на оплату есть поля "Код оригинальной валюты", "Валюта платежа" и "Тип оплаты". Например заявка оформлена на $1000, а оплатить нужно в рублях: "Код оригинальной валюты" USD "Валюта платежа" RUR "Тип оплаты" "Из кассы" Создал флоуфилд-поля (вопросы по ним, я собственно и задавал в этом треде) : "Касса РУБ" "Касса USD" "РасСчет РУБ" "РасСчет USD" В созданных полях показываются суммы, отфильтрованные по простому принципу, если "Код оригинальной валюты" = RUR и "Валюта платежа" = RUR и "Тип оплаты" = "Из кассы", то данная сумма полюсуется к сумме поля "Касса РУБ". По аналогии фильтруются и остальные поля. Это была преамбула. А теперь вопрос знатокам (с) "Что? Где? Когда?" нужно заявки которые: "Код оригинальной валюты" USD "Валюта платежа" RUR "Тип оплаты" "Из кассы" плюсовать к рублёвой кассе (созданное флоуфилд-поле"Касса РУБ") по текущему курсу. Да и вообще возможно ли это? | 
|  | 
|  28.04.2005, 08:24 | #15 | 
| NavAx | 
			
			Гм. Плюсовать по текущему курсу (т.е. если RUR, то складывать во флоуфилд просто значение поля, а если USD, то значение поля, умноженное на курс) нельзя. Придется писать функцию ручками. Но, например, если у Вас RUR - локальная валюта, то обычно в "родных" табличках Навыжна бывают поля типа Amount (LCY), где будет храниться сумма в рублях и считать можно на их основе либо вообще не учитываю валюту Код оригинальной валюты, либо задав связку Код оригинальной валюты = Currency Filter (тип - флоуфильтер). Но здесь получится не сумма в USD, умноженная на конкретно текущий курс, а именно сумма, умноженная на курс, соответствующий дате заявки. | 
|  | 
|  28.04.2005, 09:18 | #16 | 
| Участник | 
			
			да, по курсу соответствующему дате заявки поле есть. но нужно по текущему курсу. если не особо затруднит можно привести общую идеологию этой функции. Заранее благодарен. | 
|  | 
|  28.04.2005, 09:46 | #17 | 
| NavAx | 
			
			Ну вместо флоуфилда будет считать что-нибудь типа PHP код: 
			PHP код: 
			 | 
|  | 
|  28.04.2005, 11:36 | #18 | 
| Участник | 
			
			угу, благодарен. реализовал алгоритм по второму варианту. | 
|  | 
|  | 
|  Похожие темы | ||||
| Тема | Ответов | |||
| Можно ли сортировать по FlowField??? | 3 | |||
| Вычисление FlowField в отчете | 3 | |||
| Дублирование FlowField | 7 | |||
| SIFT over FlowField | 1 | |||
| Фильтры в CalcFormula у FlowField | 2 | |||
| 
 |