Текущее время: Чт, ноя 06 2025, 17:24

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




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Вт, окт 23 2012, 15:53 
Специалист
Специалист

Зарегистрирован:
Пн, дек 12 2011, 08:57
Сообщения: 128
Откуда: Самара
Пол: Мужской
Добрый день! Подскажите, пожалуйста, каким образом лучше реализовать следующий функционал по копированию данных из одного куба в другой с помощью FOX.
Есть куб реального времени 1 с набором признаков "Склад", "Продукт", "Состояние", и показатель "Количество".
Есть куб реального времени 2 с признаком "Продукт" и показателем "Количество".
Построен уровень агрегации с набором признаков "Склад", "Продукт", "Состояние", и показатель "Количество".
Необходимо скопировать из куба 1 в куб 2, но с условием по признакам "Продукт", "Состояние" при помощи FOX (условия зависят от сочетания признаков). В функции продукт и склад используются как ссылочные признаки. Однако при записи данных в куб 2 система выдает сообщение "Невозможно присвоить комбинацию признаков провайдеру".


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Вт, окт 23 2012, 16:42 
Почетный гуру
Почетный гуру

Зарегистрирован:
Чт, фев 03 2005, 10:18
Сообщения: 503
А Вы указываете # "Склада" и "Состояния" в целевой записи или значения из справочников?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Ср, окт 24 2012, 08:45 
Специалист
Специалист

Зарегистрирован:
Пн, дек 12 2011, 08:57
Сообщения: 128
Откуда: Самара
Пол: Мужской
Air_demon написал(а):
А Вы указываете # "Склада" и "Состояния" в целевой записи или значения из справочников?

я хочу написать такой код:
{сумма, куб2, продукт } = { сумма, куб1, продукт | склад = значение1, состояние = значение2 }.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.  Тема решена
СообщениеДобавлено: Ср, окт 24 2012, 09:15 
Почетный гуру
Почетный гуру

Зарегистрирован:
Чт, фев 03 2005, 10:18
Сообщения: 503
ski написал:
я хочу написать такой код:
{сумма, куб2, продукт } = { сумма, куб1, продукт | склад = значение1, состояние = значение2 }.

Так Вы пытаетесь сохранить данные в куб2 на какие-то значения из признаков Склад и Состояние, но их нет (признаков) в кубе2.

Включите признаки Склад и Состояние в операнд (т.е. в признаки для изменения) и задайте им в целевом наборе значение #.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Чт, окт 25 2012, 07:20 
Специалист
Специалист

Зарегистрирован:
Пн, дек 12 2011, 08:57
Сообщения: 128
Откуда: Самара
Пол: Мужской
Air_demon написал(а):
Включите признаки Склад и Состояние в операнд (т.е. в признаки для изменения) и задайте им в целевом наборе значение #.

Air_demon, спасибо! Действительно работает.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Вс, ноя 04 2012, 20:25 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
Air_demon написал(а):
ski написал:
я хочу написать такой код:
{сумма, куб2, продукт } = { сумма, куб1, продукт | склад = значение1, состояние = значение2 }.

Так Вы пытаетесь сохранить данные в куб2 на какие-то значения из признаков Склад и Состояние, но их нет (признаков) в кубе2.

Включите признаки Склад и Состояние в операнд (т.е. в признаки для изменения) и задайте им в целевом наборе значение #.

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

У топик-стартера изначальная мысль была правильная, но нужно было эту операцию обернуть в конструкцию типа FOREACH продукт, куб IN REFDATA. Именно REFDATA сгенерит правильный, рабочий датасет и позволит сделать как задумал топикстартер.

Включение каких-то признаков в поля для изменения, только для того, чтобы считать с них референс данные - это скажем bad style, и косяки этого решения начнут вылезать в перед сдачей проекта, когда начнется полноценное тестирование. Обращаться к референс данным лучше всего используя перечисление признаков после вертикальной черты, т.к. при этом не происходит блокирования данных.

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Вт, ноя 06 2012, 08:46 
Почетный гуру
Почетный гуру

Зарегистрирован:
Чт, фев 03 2005, 10:18
Сообщения: 503
Soulsurfer написал(а):
Включение каких-то признаков в поля для изменения, только для того, чтобы считать с них референс данные - это скажем bad style, и косяки этого решения начнут вылезать в перед сдачей проекта, когда начнется полноценное тестирование. Обращаться к референс данным лучше всего используя перечисление признаков после вертикальной черты, т.к. при этом не происходит блокирования данных.


В данном конкретном случае обращение к референс данным после вертикальной черты не поможет. Блокирование данных происходит на основе фильтра. Лучше по-максимуму ограничивать целевой набор в фильтре не допуская туда без лишней надобности значений ссылочных данных, а в формуле можно использовать конструкцию FOREACH IN REFDATA.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Вт, ноя 06 2012, 13:17 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, мар 01 2012, 15:22
Сообщения: 154
объясните,пожалуйста,значение вертикальной линии.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: FOX. Ошибка при копировании данных.
СообщениеДобавлено: Ср, ноя 07 2012, 08:49 
Почетный гуру
Почетный гуру

Зарегистрирован:
Чт, фев 03 2005, 10:18
Сообщения: 503
Pavlik написал(а):
объясните,пожалуйста,значение вертикальной линии.

http://sapboard.ru/forum/viewtopic.php?p=456626#p456626


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

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


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

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


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

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