Показать сообщение отдельно
Старый 18.11.2008, 15:01   #1  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5788 (200) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
В NAV 2009 код C/AL конвертится в C#, а что же будет в DAX?
Случайно наткнулся на сообщение из чьего-то блога касаемо NAV 2009 и появившегося там (а, может, и не там, а раньше, - я не в теме) некоего аналога сервера приложений Аксапты - Service Tier. В сообщении есть очень интересные моменты (в вольном переводе):
Цитата:
Что такое Service Tier?
Очень кратко - это промежуточный уровень в Microsoft Dynamics NAV 2009. Именно на этом уровне [теперь?] выполняется весь доступ к БД и вся бизнес-логика, что также означает, что именно на этом уровне выполняется код приложения.
...
А этот Service Tier занимается интерпретацией кода C/AL?
Как вы, вероятно, уже знаете, ответ на этот вопрос - нет. В NAV 2009 большая часть этого самого Service Tier написана на C# и выполняется в виде управляемого кода, кроме того, приложение тоже конвертируется в C# и во время работы также выполняется в виде скомпилированного управляемого кода.
Это происходит за счет того, что каждый раз, когда вы компилируете объект в C/SIDE, этот объект "за кулисами" транслируется в C#, и этот исходный код C# сохраняется в таблице Object Metadata в BLOB-поле с названием User Code. Кроме того, в таблице Object Tracking обновляется поле Object Timestamp, что позволяет Service Tier'у увидеть и подхватить эти изменения. Когда ему нужно выполнить код объекта, соответствующий объекту исходный код C# записывается на диск и посредством неких манипуляций компилируется в модуль, который может быть загружен на динамически, что позволяет Service Tier на лету заменять отдельные code unit'ы, страницы, etc.
Вот ведь... конечно, там начинаются всякие веселые вищи с отладкой, когда пишешь код на одном языке, а отлаживаешь на другом. Но в целом занимательно... Кто-нить в курсе, не планируется ли такое в Аксапте?
За это сообщение автора поблагодарили: Lemming (1).