Текущее время: Пт, авг 22 2025, 02:35

Часовой пояс: 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 часа


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

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


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

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