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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.12.2014, 22:23   #1  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
856 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
AX2012 Delete partition
есть SQL скриптик у кого-нибудь?
изнутри AX, я так понимаю, это нельзя сделать?
Старый 18.12.2014, 08:50   #2  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от lvan Посмотреть сообщение
есть SQL скриптик у кого-нибудь?
а что там скриптовать-то ?

PHP код:
select 'DELETE FROM ' QUOTENAME(t.NAME) + ' WHERE PARTITION = 123;'
from sys.tables t 
join sys
.columns c on c.object_id t.object_id 
where c
.name 'PARTITION' and t.is_ms_shipped 
__________________
-ТСЯ или -ТЬСЯ ?
За это сообщение автора поблагодарили: trud (3), Logger (3), DSPIC (5).
Старый 18.12.2014, 09:01   #3  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
856 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
DROP TABLE?
Старый 18.12.2014, 09:02   #4  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Уже сам исправил
__________________
-ТСЯ или -ТЬСЯ ?
Старый 18.12.2014, 09:07   #5  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
856 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
ага, ну я думал может уже готовый есть у кого, вот и спросил
и чтобы из Partitions запись удалялась и всё короче, только имя партиции чтобы подставить и нажать кнопку
кстати, изнутри AX такое можно реализовать, интересно?
Старый 18.12.2014, 09:18   #6  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от lvan Посмотреть сообщение
ага, ну я думал может уже готовый есть у кого, вот и спросил
Я точно таким же на коленке нарисованным скриптом чистил данные год назад. Собственно потому и не сохранял что он примитивный

Прошу прощения за DROP TABLE - пропущенная утренняя доза кофеина наложилась на другую задачу которой недавно занимался. Надеюсь никто скрипты из интернета в продуктиве без тестирования не запускает ?
__________________
-ТСЯ или -ТЬСЯ ?
За это сообщение автора поблагодарили: MazZzDaI (1).
Старый 18.12.2014, 09:22   #7  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от lvan Посмотреть сообщение
кстати, изнутри AX такое можно реализовать, интересно?
Из AX текущую партицию не удалить, а доступ к данным из не-текущей ядро не даст, т.е. только через задний проход (T-SQL из X++). Скриптом проще
__________________
-ТСЯ или -ТЬСЯ ?
Старый 18.12.2014, 10:37   #8  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2155 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Просьба уточнить для неграмотных . Правильно я понял, что этот скрипт удалит все данные из указанного партишна? И сам партишн?
__________________
Ivanhoe as is..
Старый 18.12.2014, 10:57   #9  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
Просьба уточнить для неграмотных . Правильно я понял, что этот скрипт удалит все данные из указанного партишна?
не совсем - он создаст скрипт, который надо будет запустить в SSMS

Цитата:
И сам партишн?
нет, но это вроде не самая сложная задача
__________________
-ТСЯ или -ТЬСЯ ?
За это сообщение автора поблагодарили: Ivanhoe (5).
Старый 12.09.2016, 15:21   #10  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,867 / 3123 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Vadik Посмотреть сообщение
нет, но это вроде не самая сложная задача
А зачем сперва грохать данные в партиции, а потом пустую партицию ? Не проще ли сразу партицию удалить? Намного быстрее должно работать.
Старый 14.09.2016, 19:34   #11  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от Logger Посмотреть сообщение
Не проще ли сразу партицию удалить? Намного быстрее должно работать.
А с чего бы оно вдруг стало быстрее работать ? В чем профит ? Можно конечно и не удалять сами данные, а грохнуть partition - вот это да, быстро
Цитата:
А зачем сперва грохать данные в партиции, а потом пустую партицию ?
Потому что по-другому неаккуратно. Сначала чистим все ссылки на partition (данные в нем), и в конце собственно сам partition. Если что-то поломалось по дороге - переполнение логов, блокировки, вышли за границы времени выделенного на обслуживание - не страшно, продолжим в следующий раз, благо сам partition на месте.
__________________
-ТСЯ или -ТЬСЯ ?
Старый 14.09.2016, 20:51   #12  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,867 / 3123 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Vadik Посмотреть сообщение
Можно конечно и не удалять сами данные, а грохнуть partition - вот это да, быстро
Собственно, о том и речь.
Старый 14.09.2016, 21:34   #13  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от Logger Посмотреть сообщение
Собственно, о том и речь.
Чтобы потом эти недоудаленные данные повылазили в каких-нибудь самописных ETL, SSRS отчетах ? По мне так если делать, так делать нормально.Не каждый же день partition удаляем
__________________
-ТСЯ или -ТЬСЯ ?
Старый 15.09.2016, 09:42   #14  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,867 / 3123 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Ну так это смотря что удалять.
Если SysDatabaseLog или какой нить RecordReferenceTable то чего заморачиваться.
Старый 16.09.2016, 00:02   #15  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от Logger Посмотреть сообщение
Ну так это смотря что удалять.
Если SysDatabaseLog или какой нить RecordReferenceTable то чего заморачиваться
Ок. Тем, кто partition создавал только для того чтобы насоздавать записей в SysDatabaseLog (непонятно - как, но допустим) , можно не заморачиваться. Тем, кто все же создавал компании, заводил справочники и разносил документы - заморачиваться необязательно, но раз уж решили эти данные почистить, наверное лучше это сделать аккуратно
__________________
-ТСЯ или -ТЬСЯ ?

Последний раз редактировалось Vadik; 16.09.2016 в 07:10.
Старый 07.02.2017, 12:27   #16  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
Есть еще вариант, который нашел при разборе, как удалить разделы ps и ext из демо:
X++:
exec sp_MSforeachtable 'set quoted_identifier on; delete from ? where ?.partition = RecIdPartition'
exec sp_MSforeachtable 'set quoted_identifier on; delete from ? where ?.datapartition = "PartName"'
exec sp_MSforeachtable 'set quoted_identifier on; delete from ? where ?.partitionkey = "PartName"'
delete PARTITIONS where RECID = RecIdPartition
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
За это сообщение автора поблагодарили: Maxim Gorbunov (2).
Теги
ax2012, partition

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
AX2012 R2: Partition и RecId первой записи в таблице Kabardian DAX: Прочие вопросы 0 15.09.2014 10:49
SSRS report AX2012: Access denied to field Partition (Partition) in table Ganna DAX: Программирование 4 27.04.2014 17:20
Подсчет записей в ax2012 с учетом DataArea и Partition. Как лучше? mazzy DAX: Администрирование 0 20.05.2013 18:02
axaptacorner: Data partition in Ax 2012 R2 Blog bot DAX Blogs 0 21.01.2013 21:11
axzaptech: Delete Action Blog bot DAX Blogs 0 07.02.2011 16:11
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:37.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.