AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Администрирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.05.2008, 13:00   #1  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
2 vc

ну да, где-то решение хорошее...
жалко вот только в случае этого конкретного клиента не выполняется второе условие

но зато уже знаю другого, кому это может пригодиться.

спасибо!
__________________
Zhirenkov Vitaly
Старый 15.05.2008, 17:12   #2  
Vladyslav is offline
Vladyslav
Участник
Аватар для Vladyslav
 
14 / 20 (1) +++
Регистрация: 11.01.2008
Если грозит исчерпанием в будующем RecID можно воспользоваться следующим:
1) выделить наиболее прожорливые таблицы (обычно это какой-нибудь прожорливый протокол) в табличную коллекцию
2) колекцию в вируальную компанию
3) в виртуальную компанию включить вашу компанию (если компаний несколько, то создать для каждой по одной компании, или создавать для каждой таблицы... или выбирайте любую из допустимых комбинаций).

Для виртуальной компании генерится свой собственный RecId

Кстати, перекопав за долгие годы Аксапту вдоль и поперек, ни разу не встретил, чтобы RecId считалось где-то уникальным для всей системы (и сам такого никогда не писал, разумеется, и не давал так делать другим). Так что с этим проблем нет.
Механизм с виртуальными компаниями и коллекциями прекрасно работал в 3-ке. В 4-ке это оказалось уже не нужным - переимеовал значения в dataareaId обратно и удалил настройки компаний и коллекций (чтоб не вспомниать года через два зачем это нужно).
За это сообщение автора поблагодарили: mazzy (2), ZVV (1), Ace of Database (4), Kabardian (3).
Старый 15.05.2008, 17:19   #3  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Да, хорошее предложение - сам как-то не подумал про такой вариант...
__________________
Zhirenkov Vitaly
Старый 15.05.2008, 17:26   #4  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Владислав, а Вы не можете сказать, раз у Вас есть такой опят, как такое решение сказывается на производительности системы?
Если оно как-то сказывается?

PS Например если "выкинуть" таким образом InventTrans.
__________________
Zhirenkov Vitaly

Последний раз редактировалось ZVV; 15.05.2008 в 17:28.
Старый 15.05.2008, 19:15   #5  
Vladyslav is offline
Vladyslav
Участник
Аватар для Vladyslav
 
14 / 20 (1) +++
Регистрация: 11.01.2008
Опыт есть, но не InventTrans
Как я уже упоминал: был заказ протоколировать всякую хрень, и объем этого протоколирования угрожал за впрочем довольно долгое время, но все же "съесть" весь ресурс идентификаторов записей.
Может если "выкинуть" подобное, то и для InventTrans хватит оставшихся двух миллиардов (это не считая отрицательных значений)?
Падения производительности не заметил (да и к чему бы). Будет ли падение при обращении к InventTrans? Вряд ли. Аксапта ведь в SQL запрос с объединением передает не как a.dataareaId = 'my1' and a.dataareaId = b.dataareaId, а как a.dataareaId = 'my1' and b.dataareaId = 'my1'
Нет, ну разумеется она там где-то внутри себя потратит время на "подстановку", но столь малой (надеюсь на это) величиной можно пренебречь
Старый 16.05.2008, 07:57   #6  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Кстати, если поискать, то можно найти что подобная тема обсуждалась уже пару лет назад:
Проблема производительности при использовании виртуальных компаний.

Резюме: Пользуйтесь поиском, не изобретайте велики!
__________________
Zhirenkov Vitaly
За это сообщение автора поблагодарили: mazzy (2).
Старый 16.05.2008, 18:53   #7  
Vladyslav is offline
Vladyslav
Участник
Аватар для Vladyslav
 
14 / 20 (1) +++
Регистрация: 11.01.2008
Ну вот "наобещал" и сегодня же (впервые) нарвался на место, где 3-ка предполагает уникальность RecId в пределах всей базы: таблица SpecTrans
Поле RefId было заменено в четверке на RefTableId и RefRecId
Просто если пометить открытые проводки для сопоставления клиентские (CustTransOpen), то можно при наличии "своих" RecId в открытых проводках поставщика (VendTransOpen) доооолго размышлять, чего это она считает, что проводка еще где-то помечена.
Теги
ax3.0, faq, recid

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
if (record) vs if (record.RecId) kashperuk DAX: Программирование 18 27.11.2008 18:53
поля, содержащие RecId somebody DAX: Программирование 15 16.05.2008 17:50
aEremenko: Дефрагментация RecID Blog bot DAX Blogs 2 06.03.2007 22:25
Два RecId у одной записи таблицы sparur DAX: Программирование 33 18.12.2006 15:56
Форма InventOnhandItem, Почему RecID у InventSum в этой форме всегда 0? Кирилл DAX: Программирование 2 25.05.2004 18:15

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 08:08.