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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.06.2017, 13:34   #41  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,903 / 2027 (75) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Моя категоричность она для чистоты лечения
Вы думаете, что лечение происходит в AxForum? Я бы посоветовал нести боль в Яммер - там гораздо больше шансов быть услышанным принимающими решение.


Цитата:
Неужели инструментарий 3.0 не позволил бы программисту решить проблему разноски больших журналов? Те же хранимые процедуры это стандартное и приемлимое
решение.
Мне кажется инструментарий, который не заставляет прикладного программиста переписывать код для достижения того же быстродействия лучше в этом аспекте чем тот, который заставляет.

Перечислите, пожалуйста достоинства и недостатки использования TSQL для обработки данных в AX.
Старый 16.06.2017, 13:36   #42  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Most Valuable Professional
 
28,363 / 3324 (167) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Цитата:
Сообщение от belugin Посмотреть сообщение
Перечислите, пожалуйста достоинства и недостатки использования TSQL для обработки данных в AX.
ax_mct, в отдельной ветке, пожалуйста.
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 16.06.2017, 13:40   #43  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,903 / 2027 (75) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Цитата:
Сообщение от Logger Посмотреть сообщение
Интересно. Но если я не ошибаюсь, в аксапте такое не прокатывает. По ссылке речь об отладке в VS в специальном режиме.
Есть галка HotSwapping, тут вопрос, насколько медленнее работа с ней чем без нее - я не тестил.
За это сообщение автора поблагодарили: mazzy (2).
Старый 16.06.2017, 13:52   #44  
fed is offline
fed
Moderator
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
Ex AND Project
Соотечественники
 
2,120 / 3877 (134) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen
Цитата:
Сообщение от belugin Посмотреть сообщение
Есть галка HotSwapping, тут вопрос, насколько медленнее работа с ней чем без нее - я не тестил.
Не знаю как в последних CU, но по крайней мере до CU9 включительно, она намертво ломала сводное планирование и ресурсное планирование производственных заказов. В общем - в production ее точно лучше не включать....
За это сообщение автора поблагодарили: mazzy (2), belugin (2), Logger (3).
Старый 16.06.2017, 14:01   #45  
ax_mct is offline
ax_mct
Участник
Аватар для ax_mct
 
1,573 / 507 (20) +++++++
Регистрация: 10.10.2005
Адрес: PHP
Цитата:
Сообщение от belugin Посмотреть сообщение
Вы думаете, что лечение происходит в AxForum? Я бы посоветовал нести боль в Яммер - там гораздо больше шансов быть услышанным принимающими решение.

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

Перечислите, пожалуйста достоинства и недостатки использования TSQL для обработки данных в AX.
Речь не о лечении Аксапты, с ней все ясно на самом деле, а о лечении наших больных голов.
Очень вероятно что Аксапту похоронили не злобный и циничный Майкрософт, а романтики программирования с горящими глазами верящие в светлое будущее программизма.

Инструментарий для кодирования лучше/хуже, способ программирования лучше/хуже - это диагноз.
Аксапта это продукт для кого?
Я не ностальгирую по Аксапте, я сожалею о безумстве которое в головах.
За это сообщение автора поблагодарили: mazzy (2), Pustik (5).
Старый 16.06.2017, 15:36   #46  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
688 / 521 (19) +++++++
Регистрация: 14.10.2004
Правильно ли я понимаю, что чтобы решить эту задачу, надо просто скопировать имеющуюся форму в новую, и в новой форме начинать колбасить?
добавить readonly датасорс на форму, для фильтрования
Если я понимаю правильно, то это тоже подход. Тогда АХ7 еще можно переварить. Главное, наработать последовательность рутинных операций, с помощью которых можно быстро удовлетворять клиента.
Тогда АХ7 уже не такая непонятная становится. Просто внешние обработки в ней хранятся не в файлах, как в 1С, а в AOT, вперемешку со стандартными объектами.
__________________
Мои утилиты для Аксапты версий 3.0-2012: http://aceofdatabase.blogspot.com/

Последний раз редактировалось Ace of Database; 16.06.2017 в 15:38.
Старый 16.06.2017, 15:42   #47  
Logger is offline
Logger
Участник
Лучший по профессии 2014
 
2,884 / 1500 (56) ++++++++
Регистрация: 12.10.2004
Баааалин.
Докатились.
Теперь злостный копипаст у нас признается нормальным способом.
За это сообщение автора поблагодарили: mazzy (2), Ace of Database (2).
Старый 16.06.2017, 15:49   #48  
trud is offline
trud
Участник
 
418 / 288 (10) ++++++
Регистрация: 07.06.2003
Цитата:
Сообщение от Ace of Database Посмотреть сообщение
Правильно ли я понимаю, что чтобы решить эту задачу, надо просто скопировать имеющуюся форму в новую, и в новой форме начинать колбасить?
Автоматом получив при этом практическую невозможность установки дальнейших обновлений и фиксов. форма SalesTable довольно огромная форма, которая часто меняется
Старый 16.06.2017, 15:58   #49  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,903 / 2027 (75) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Инструментарий для кодирования лучше/хуже, способ программирования лучше/хуже - это диагноз.
Вы же сами рассуждаете о том, что способ программирования худше или лучше
Старый 16.06.2017, 15:59   #50  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
688 / 521 (19) +++++++
Регистрация: 14.10.2004
Цитата:
Сообщение от trud Посмотреть сообщение
Автоматом получив при этом практическую невозможность установки дальнейших обновлений и фиксов. форма SalesTable довольно огромная форма, которая часто меняется
Это все понятно. Но как клиента-то удовлетворить? Все равно надо какой-то паттерн действий придумать. Как правильно сделать?
Я обычно ищу примеры в Аксапте или в интернете и копирую их.
Судя по всему, для того, чтобы экстендить форму, надо написать кучу служебного кода. Вы что, каждый раз этот код будете вручную писать?
Я, например, когда создаю класс-наследник от RunBase копирую методы из RunBase в новый класс и правлю их. А при экстендинге придется еще больше повторяющегося служебного кода копировать.
__________________
Мои утилиты для Аксапты версий 3.0-2012: http://aceofdatabase.blogspot.com/
Старый 16.06.2017, 16:04   #51  
trud is offline
trud
Участник
 
418 / 288 (10) ++++++
Регистрация: 07.06.2003
Сделать как раньше, кастомизацией - закроют то только через год, да и то это только в планах
опционально написать о проблеме в микрософт
За это сообщение автора поблагодарили: mazzy (2), Ace of Database (2).
Старый 16.06.2017, 16:10   #52  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
688 / 521 (19) +++++++
Регистрация: 14.10.2004
Спасибо, trud!
Я просто пытаюсь разобраться. Обычно у любого продукта есть нить, ухватившись за которую можно начать работать. В любом продукте есть какой-то свой шаблон действий, главное его понять. Еще ни разу не встречал "Сферического коня".
__________________
Мои утилиты для Аксапты версий 3.0-2012: http://aceofdatabase.blogspot.com/
Старый 16.06.2017, 17:19   #53  
ax_mct is offline
ax_mct
Участник
Аватар для ax_mct
 
1,573 / 507 (20) +++++++
Регистрация: 10.10.2005
Адрес: PHP
Цитата:
Сообщение от mazzy Посмотреть сообщение
Ритейл в акс7 построен на хранимых процедурах.
Не приведи господь.
Это понятно что хранимые процедуры сложно/непривычно поддерживать.
Но парадокс то и в том что шли, шли и пришли к тому же решению которого могло быть достаточно и в 3.0.

Цитата:
Сообщение от belugin Посмотреть сообщение
Вы же сами рассуждаете о том, что способ программирования худше или лучше
Есть такое. Я тоже ведь больной. Но в принципе я оцениваю эффективность и достаточность, а не "правильность". C точки зрения поддержки и изменений те же хранимые процедуры не хуже и не лучше, нужно просто правильно их готовить.

Цитата:
Сообщение от Logger Посмотреть сообщение
Баааалин.
Докатились.
Теперь злостный копипаст у нас признается нормальным способом.
Злостный копипаст может быть и достаточно часто уместным.
Но это оффтоп если за/против, тут интересно то что как и с хранимыми процедурами, пришли к тому же, только уже в менее удобной форме.

Цитата:
Сообщение от mazzy Посмотреть сообщение
не надо, пожалуйста.
открывайте балаган в курилке в новой ветке.
Да какой там балаган. Это о вполне реальной нашей болезни. Жертвой который и пала Аксапта.
Старый 16.06.2017, 19:16   #54  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,903 / 2027 (75) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Это понятно что хранимые процедуры сложно/непривычно поддерживать.
Но парадокс то и в том что шли, шли и пришли к тому же решению которого могло быть достаточно и в 3.0.
Что? Журналы ГК до сих пор разносятся через LedgerVoucher.

Цитата:
Есть такое. Я тоже ведь больной. Но в принципе я оцениваю эффективность и достаточность, а не "правильность". C точки зрения поддержки и изменений те же хранимые процедуры не хуже и не лучше, нужно просто правильно их готовить.
"правильность" это идентификатор уже проделанных рассуждений на тему того, что и зачем делается и почему. Чтобы с ней дискутировать надо понимать откуда она взялась и почему применима где-то еще а в данном случае неприменима.
Старый 16.06.2017, 19:20   #55  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,903 / 2027 (75) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Цитата:
Сообщение от fed Посмотреть сообщение
Не знаю как в последних CU, но по крайней мере до CU9 включительно, она намертво ломала сводное планирование и ресурсное планирование производственных заказов. В общем - в production ее точно лучше не включать....
Вообще, интересно, это свойство конерктной реализации или хотсваппинга в дотнете в вообще, как это делают в других продуктах на дотнете и нет ли проблем со стабильностью у хотсваппинга на оришинальной X++ машине.

(Как не смутно помнится, надо было очень аккуратно перекомпилировать наследников, если как-то не до конца это сделаешь, то будут странные ошибки или тихо данные возьмутся из другого поля)
Старый 16.06.2017, 23:21   #56  
ax_mct is offline
ax_mct
Участник
Аватар для ax_mct
 
1,573 / 507 (20) +++++++
Регистрация: 10.10.2005
Адрес: PHP
Цитата:
Сообщение от belugin Посмотреть сообщение
Что? Журналы ГК до сих пор разносятся через LedgerVoucher.
Да, журналы ГК не разносятся через хранимые процедуры. Но я о жизни программиста когда все с той же лопатой в руках но уже крутясь между дорогой и сверкающей техникой.

Как должна решаться недостаточно быстрая разноска? Через хранимые процедуры.
Правильно через неплохое ОOП, LedgerVoucher* ? Да, правильно. Потому и медленно.

Цитата:
Сообщение от skuull Посмотреть сообщение
...люди читают поперек и уходят с мыслью "АХ неоч, ничо низя сделать, го в PHP" и несут ее гордо по всему форуму.
Выдернул из контекста с соседней темы чтобы ответить здесь по теме. Сделать можно что-угодно так или иначе. Вопрос то в том "зачем так сложно?". Это не уникальные грабли развития AX, все те же проблемы во всем программистском мире включая PHP.

Цитата:
Сообщение от belugin Посмотреть сообщение
"правильность" это идентификатор уже проделанных рассуждений на тему того, что и зачем делается и почему. Чтобы с ней дискутировать надо понимать откуда она взялась и почему применима где-то еще а в данном случае неприменима.
В том то и беда что у типичного программиста шизофрения. Вторая личность - "правильность", c которой он постоянно дискутирует. Здравый смысл при этом молчит. А вот откуда этот программизм берется и в нас живет - вопрос интересный.

Проблема в том что большинство в упор не видит программизма и что есть оverengineering.
LedgerVoucher* - вполне может быть тем самым оverengineering.
А нежелание писать с использованием хранимых процедур - программизмом.
Старый 17.06.2017, 00:04   #57  
belugin is offline
belugin
Участник
Аватар для belugin
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
Сотрудники Microsoft Dynamics
 
3,903 / 2027 (75) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Да, журналы ГК не разносятся через хранимые процедуры. Но я о жизни программиста когда все с той же лопатой в руках но уже крутясь между дорогой и сверкающей техникой.
С какой с той же лопатой в руках? Вы вообще про что? Как можно это назвать "Но парадокс то и в том что шли, шли и пришли к тому же решению которого могло быть достаточно и в 3.0."

К решению чего?
Старый 17.06.2017, 01:11   #58  
Pustik is offline
Pustik
Участник
 
769 / 329 (12) ++++++
Регистрация: 04.06.2004
Цитата:
Сообщение от Logger Посмотреть сообщение
Баааалин.
Докатились.
Теперь злостный копипаст у нас признается нормальным способом.
Люди, никогда не признаю правильной стратегию копипастить. Честно , зло берет.
__________________
-Ты в гномиков веришь?
-Нет.
-А они в тебя верят, смотри, не подведи их.
Старый 17.06.2017, 01:55   #59  
ax_mct is offline
ax_mct
Участник
Аватар для ax_mct
 
1,573 / 507 (20) +++++++
Регистрация: 10.10.2005
Адрес: PHP
Цитата:
Сообщение от belugin Посмотреть сообщение
С какой с той же лопатой в руках? Вы вообще про что? Как можно это назвать "Но парадокс то и в том что шли, шли и пришли к тому же решению которого могло быть достаточно и в 3.0."

К решению чего?
Прошу прощения, действительно мысль статически не типизирована

Парадокс в том что
идя по пути совершенствования средств программирования и инструментария в AX
(по крайней мере течение вещей именно так представляется собирательному образу большинства программистов AX),
программисту AX легче не стало.

Конкретно по хранимым процедурам - они как были так и остались одним из самых эффективных способов повышения производительности. Не знаю как насчет роли сборщика мусора, но нормализацию LedgerTrans в 4 кажется таблицы сделанную в AX2012 можно было сделать и в "3.0".

А если таки про сборщик мусора в 3.0 и устарелость виртуальной машины X++ - то при наличии таких проблем надо решать именно и только их. Все лишнее - программизм
Старый 17.06.2017, 02:20   #60  
ax_mct is offline
ax_mct
Участник
Аватар для ax_mct
 
1,573 / 507 (20) +++++++
Регистрация: 10.10.2005
Адрес: PHP
Цитата:
Сообщение от Pustik Посмотреть сообщение
Люди, никогда не признаю правильной стратегию копипастить. Честно , зло берет.
Если это не от безвыходности как workaround, когда ты вынужден,
а для реального облегчения жизни как hint, когда это твой выстраданный выбор,
то достаточно часто имеет смысл.

Если есть нетронутая SYS форма и твои изменения существенны то сдублировать ее - на мой взгляд разумно.
Так же при перегрузке методов - иногда здравый смысл говорит что лучше менять копию если это упростит жизнь тебе и программисту после тебя.
Часто соображения безопасности твоего решения - чем больше сбоку тем меньше претензий к тебе как к подрядчику. Как бы это не противоречило Искусству.

Но вот если от самого такого решения физически плохо и мутит, несмотря на его здравость - это программизм
Теги
sysoperation framework

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: The INSERT statement conflicted with the FOREIGN KEY constraint "FK_ModelElementData_HasModelId_LayerId". The conflict occurred in database "YourDataBaseName_model", table "dbo.Model" Blog bot DAX Blogs 0 23.05.2014 13:11
Dynamics AX Sustained Engineering: Performance issue in "Open Transaction Edit" form Blog bot DAX Blogs 0 26.10.2009 20:05
Зачем нужны "Параметры кодов аналитики"? Кирилл DAX: Программирование 2 16.04.2004 14:22
Зачем нужна "Потребность в номенклатуре" Tony Green DAX: Функционал 4 02.02.2004 00:24
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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