Текущее время: Ср, сен 10 2025, 03:49

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




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: BPS - конфликт ограничений на пакете и в функции
СообщениеДобавлено: Вт, июл 17 2007, 09:44 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, май 26 2005, 07:55
Сообщения: 85
Откуда: от туда
Суть проблемы заключается в следующем:
Есть очень много пакетов планирования и есть также достаточно много функций (групп параметров).
В каждом пакете настроено ограничение на определенную группу МВЗ.
В функциях же я не стал ограничивать конкретными МВЗ, а тупо прописал диапазон с первого до последнего (т.е. все МВЗ)
Замысел был таков - универсальная группа параметров работая в паре с опредеелнным пакетом должна была отработать только для тех МВЗ, которые прописаны в пакете планирования.

Но не тут-то было, т.к. в функции нет ограничения по МВЗ она начинает колбасить по всем МВЗ (несмотря на то, что существует ограничение на пакете) и в момент когда расчет закончен и она пытается сохранить сгенеренные данные обратно в куб тут выдается ошибка - сгенеренные данные не могут быть сохранены, т.к. они не попадают в условия выбора на пакете. (This error message can appear when you use a planning function to generate data that is outside the data range specified by the selection conditions of the planning package)

Я думал, что функция BPS берет для обработки данные из BW в соответствии с условиями выбора (фильтром) обозначенными в пакете планирования и уже работает строго с этими данными. А тут выясняется, что функция берет данные минуя пакет, обрабатывает их, а при сохранении пропускает их через фильтр на пакете планирования.

Что делать?
Есть ли какой-нибудь способ заставить его выбирать данные в соответсвии с фильтром на пакете???


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июл 17 2007, 10:57 
Специалист
Специалист

Зарегистрирован:
Ср, дек 22 2004, 09:55
Сообщения: 210
Система вообще-то выбирает данные, соответствующие ограничениям на пакете/уровне плюс ссылочные данные, соответствующие ограничениям в правой части операторов присваивания FOX, либо ограничениям в группах параметров функция.
Данные, сгенерированные функцией должны лежать в пределах ограничений уровня/пакета.
Так что набор данных для чтения зачастую шире чем для записи.

Исходя из этого пересмотрите вашу модель.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июл 17 2007, 11:23 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, май 26 2005, 07:55
Сообщения: 85
Откуда: от туда
Crimson написал(а):
Система вообще-то выбирает данные, соответствующие ограничениям на пакете/уровне плюс ссылочные данные, соответствующие ограничениям в правой части операторов присваивания FOX, либо ограничениям в группах параметров функция.
Данные, сгенерированные функцией должны лежать в пределах ограничений уровня/пакета.
Так что набор данных для чтения зачастую шире чем для записи.
Исходя из этого пересмотрите вашу модель.

В моем случае как раз и происходит конфликт между ограничениям на пакете/уровне и ограничениями в функции (поля для условий).
Какое из этих ограничений в какой момент срабатывает?

В теории данные для функции выбираются из BW и помещаются во временную таблицу (буфер), затем функция начинает работать (все крутится в буфере), после отработки функции данные сохраняются в BW, буфер очищается.


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

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
Простите: вы перебираете МВЗ в цикле DO...ENDDO по фиксированному диапазону значений (из переменной)??
Или все-таки через FOREACH?
Поясните эту фразу:
VladimirK написал(а):
В функциях же я не стал ограничивать конкретными МВЗ, а тупо прописал диапазон с первого до последнего (т.е. все МВЗ)

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июл 17 2007, 12:45 
Специалист
Специалист

Зарегистрирован:
Ср, дек 22 2004, 09:55
Сообщения: 210
Цитата:
Какое из этих ограничений в какой момент срабатывает?


Ну я же все написал выше :oops:
При выборке данных - ограничения уровня/пакета плюс ограничения группы параметров. При записи (для сформированных данных)- ограничения только уровня/пакета.
Не знаю как еще объяснить :roll:

Отсюда у вас и конфликт. Разрулить - откорректировать ограничения на уровне/пакете так, чтобы созданные/измененные данные удовлетворяли им.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июл 17 2007, 12:59 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, май 26 2005, 07:55
Сообщения: 85
Откуда: от туда
Crimson написал(а):
Цитата:
Какое из этих ограничений в какой момент срабатывает?


Ну я же все написал выше :oops:
При выборке данных - ограничения уровня/пакета плюс ограничения группы параметров. При записи (для сформированных данных)- ограничения только уровня/пакета.
Не знаю как еще объяснить :roll:

Отсюда у вас и конфликт. Разрулить - откорректировать ограничения на уровне/пакете так, чтобы созданные/измененные данные удовлетворяли им.

А что из них имеет больший приоритет - "ограничения уровня/пакета" или "ограничения группы параметров" при выборке данных.
На запись и так понятно, что действуют ограничения пакета.

В моем случае получается что выборка осуществляется в соответсвии с фильтром, установленным на функции (группа параметров)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: BPS - конфликт ограничений на пакете и в функции
СообщениеДобавлено: Вт, июл 17 2007, 13:09 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, май 26 2005, 07:55
Сообщения: 85
Откуда: от туда
Soulsurfer написал(а):
Простите: вы перебираете МВЗ в цикле DO...ENDDO по фиксированному диапазону значений (из переменной)??
Или все-таки через FOREACH?
Поясните эту фразу:
VladimirK написал(а):
В функциях же я не стал ограничивать конкретными МВЗ, а тупо прописал диапазон с первого до последнего (т.е. все МВЗ)

Это не цикл,
функция осуществляет распределение с определенных МВЗ на другие МВЗ в паре с дополнительными признаками по ссылочным данным.


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

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
Т.е. вы используете стандартную функцию распределения по ссылочным данным. Если так, то вам придется переписывать функцию распределения на фоксе.
У меня была схожая проблема: нужно было распределить по долям некую сумму с # на несколько месяцев (0Calmonth). Но часть месяцев уже была блокирована срезом данных и выдавалась схожая ошибка (или эта же - не помню). Пришлось писать функцию распределения на фоксе с учетом этих заблокированных месяцев - стандартные функции, увы, не учитывают возможность возникновения таких проблем.

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, июл 17 2007, 15:23 
Специалист
Специалист

Зарегистрирован:
Ср, дек 22 2004, 09:55
Сообщения: 210
Уберите вообще ограничение по МВЗ с группы параметров функции.


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

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


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

Сейчас этот форум просматривают: Ahrefs [Bot]


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

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