Текущее время: Вс, июн 22 2025, 07:51

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: BPS, FOX, филиалы, версии
СообщениеДобавлено: Вт, ноя 06 2007, 12:38 
Начинающий
Начинающий

Зарегистрирован:
Вт, окт 30 2007, 09:06
Сообщения: 19
Приветствую.
Делаю планирование счета в BPS. Эксперимент :)
Итак у меня есть транзакционный куб в котором следующие признаки:
номер счета, филиал, версия. Показатель - остаток на счете. Каждый филиал планирует в соответствии с собственной версионностью. "Наверх" необходимо от каждого филиала только последнюю версию. Для этих целей решил скопировать последнюю версию каждого филиала в новую строку со значением признака версия равную "LV".
Сразу скажу что задачу решил, но мне кажется что "что то здесь не так":lol: .
Итак:
1 Как я полагаю задача должна была бы быть решена(если бы это работало):
В функции планирования выставляю в поля для изменения версию бюджета и филиал.
Код делаю следующий:
DATA VER TYPE 0BUD_VERSN.
DATA MAXVER TYPE 0BUD_VERSN.
DATA FILIAL TYPE R_ZB_FIL.

FOREACH FILIAL.
FOREACH VER.
IF VER > MAXVER AND NOT VER CA "LV".
MAXVER = VER.
ENDIF.
ENDFOR.
{LV,FILIAL}= {MAXVER,FILIAL}.
MAXVER = 001.
ENDFOR.

Работает это дело следующим образом:
Он плюет на филиал а выбирает максимальную версию для каждого счета.

2 Как она была решена(хотя на мой взгляд - какая то ерунда:)) )
Итак в функции планирования открываю на изменение признаки версию и номер счета(вместо филиала).
Код следующий(тупо замещены филиалы на счета).
DATA VER TYPE 0BUD_VERSN.
DATA MAXVER TYPE 0BUD_VERSN.
DATA ACCOUNT TYPE R_ZB_ACC.

FOREACH ACCOUNT.
FOREACH VER.
IF VER > MAXVER AND NOT VER CA "LV".
MAXVER = VER.

ENDIF.
ENDFOR.

{LV,ACCOUNT}= {MAXVER,ACCOUNT}.
MAXVER = 001.
ENDFOR.

То бишь фактически поменял местами филиал и счет, теперь "хожу по счетам" но работает именно как мне надо, то есть для каждого филиала выбирает максимальную версию.

Возникает ощущение что он оставляет "фиксированной" имено тот признак которого нет в перечне полей на изменение.
В общем мне необходимо понять где моя логика несовподает с логикой fox. :roll:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BPS, FOX, филиалы, версии
СообщениеДобавлено: Вт, ноя 06 2007, 12:47 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
ZVI написал(а):
Возникает ощущение что он оставляет "фиксированной" имено тот признак которого нет в перечне полей на изменение.

У вас очень правильное ощущение. Код фокса отрабатывает столько раз, сколько у него ключевых записей, и для каждого прохода у него есть набор записей, ограниченный именно ключом, т.е. набором тех признаков, что не вошли в поля для изменения на данном уровне.

Вы бы еще про MDX почитали - поначалу вывих мозга обеспечен :)

_________________
Карма - это суперпозиция граблей, на которые мы уже успели наступить, но которые еще не долетели...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BPS, FOX, филиалы, версии
СообщениеДобавлено: Вт, ноя 06 2007, 13:36 
Начинающий
Начинающий

Зарегистрирован:
Вт, окт 30 2007, 09:06
Сообщения: 19
Soulsurfer написал(а):
Код фокса отрабатывает столько раз, сколько у него ключевых записей, и для каждого прохода у него есть набор записей, ограниченный именно ключом, т.е. набором тех признаков, что не вошли в поля для изменения на данном уровне...

То есть получается что если у меня будет еще 15 признаков мне их все надо будет перечислять в полях для изменения и прописывать в коде? Грустно


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BPS, FOX, филиалы, версии
СообщениеДобавлено: Вт, ноя 06 2007, 15:02 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
ZVI написал(а):
Soulsurfer написал(а):
Код фокса отрабатывает столько раз, сколько у него ключевых записей, и для каждого прохода у него есть набор записей, ограниченный именно ключом, т.е. набором тех признаков, что не вошли в поля для изменения на данном уровне...

То есть получается что если у меня будет еще 15 признаков мне их все надо будет перечислять в полях для изменения и прописывать в коде? Грустно

Нет. В поля для изменения нужно добавлять только те поля, по которым нужны какие-то расчеты, помимо банального цикла. Цикл вам и так будет по всем ключевым записям, которые не находятся в полях для изменения.

_________________
Карма - это суперпозиция граблей, на которые мы уже успели наступить, но которые еще не долетели...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BPS, FOX, филиалы, версии
СообщениеДобавлено: Ср, ноя 07 2007, 11:01 
Начинающий
Начинающий

Зарегистрирован:
Вт, окт 30 2007, 09:06
Сообщения: 19
Soulsurfer написал(а):
Нет. В поля для изменения нужно добавлять только те поля, по которым нужны какие-то расчеты, помимо банального цикла. Цикл вам и так будет по всем ключевым записям, которые не находятся в полях для изменения.


В моем случае по признаку "счета" мне не нужны никакие расчеты. Но если я исключаю счета из полей для изменения то у меня ищется максимальная версия из связки "филиал, счет"
т.е. на каждый фиксированный "филиал счет", находится максимальная версия и копируется. В случае если у меня будет еще 10 признаков(которые я допустим не включу в поля для изменения), получается что у меня будет найдена максимальная версия для каждого уникального набора признаков, а это не то что мне надо. Меня интересует максимальное только для каждого филиала.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 18:22 
Начинающий
Начинающий

Зарегистрирован:
Пт, ноя 24 2006, 14:28
Сообщения: 18
Не проще ли делать копирование каждой версии при сохранении, например, в какую-нибудь техническую версию X? В этой версии всегда и будет лежать самая последняя версия...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 18:36 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
Почитайте хорошую доку про FOX: Tips and tricks for FOX formulas in BW-BPS.

_________________
Карма - это суперпозиция граблей, на которые мы уже успели наступить, но которые еще не долетели...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 08 2007, 09:13 
Начинающий
Начинающий

Зарегистрирован:
Вт, окт 30 2007, 09:06
Сообщения: 19
Soulsurfer написал(а):
Почитайте хорошую доку про FOX: Tips and tricks for FOX formulas in BW-BPS.

Спасибо. Приступил:)


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB