Page History
XAF Sürüm Kontrolü
Geliştirilen uyarlamalar CRM XAF sürümü ile uyumlu olması zorunludur. Sürüm uyumunu aşağıdaki ekrandaki verilere göre kontrol edebilirsiniz.
Buradaki örneğe göre geliştirme ortamı ile ürün aynı DevExpress sürümüne sahip olmalı. Buradaki örnekte uygun sürüm 16.2.6
Yeni Proje Oluşturulmalı
Visual Studio dan New Project ile XAF sihirbazı seçilerek proje oluşturulur.
Hedef proje olarak Web seçebilirsiniz.
ORM için XPO kullanılacak.
Buradaki örnekte kullanıcı denetimi olmayacak.
Ekstra modül olarak validation seçilebilir.
Proje oluşturulur : Proje oluşturma
Örnek Business Object Oluşturma
Oluşturulan iş nesnelerinin DevExpress.Persistent.BaseImpl.BaseObject ten türetilmesi gerekir.
İş nesnesi aşağıdaki şekilde BusinessObject dizini altında oluşturulmalıdır.
Warning |
---|
Üretilen uyarlama iş nesnelerinin BaseObject'ten türemiş olması gerekir. Örn : public class BO_Classroom : BaseObject public class BO_Student : BaseObject |
İş Nesnelerinin Tablo Görünümleri
VT görünümünü aşağıdaki görüntüden inceleyebilirsiniz.
Web Uygulaması Olarak Çalıştırma
Uygulamayı Logo CRM e eklemeden önce çalıştırıp CRUD işlemlerini test edebiliriz. Artık Logo CRM'e eklenmeye hazır bir uyarlamamız var.
Warning |
---|
sadece Proje.Module.dll dosyasını logoCRM/bin dizini altına taşıyacağız. |
DB Updater Güncellemesi
Proje oluşturma sırasında seçilen kimlik doğrulama (authentication) mekanizmasına göre burada otomatik kod üretilir.
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
namespace LogoXAFApp2.Module.DatabaseUpdate { // For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppUpdatingModuleUpdatertopic.aspx public class Updater : ModuleUpdater { public Updater(IObjectSpace objectSpace, Version currentDBVersion) : base(objectSpace, currentDBVersion) { } public override void UpdateDatabaseAfterUpdateSchema() { base.UpdateDatabaseAfterUpdateSchema(); } public override void UpdateDatabaseBeforeUpdateSchema() { base.UpdateDatabaseBeforeUpdateSchema(); } } } |
Örnek Business Object Oluşturma
Oluşturulan iş nesnelerinin DevExpress.Persistent.BaseImpl.BaseObject ten türetilmesi gerekir.
İş nesnesi oluştururken aşağıdaki gibi sihirbazlardan faydalanabilirsiniz.
iş nesneleri BusinessObject dizini altında oluşturulmalıdır.
Deploy İşlemi
Database dbUpdater kısmı logo CRM e yüklerken temiz olmalı.
Otomatik Deploy Tanımı
Warning |
---|
Sadece proje.Module çıktısı kullanılacaktır. Üretilen dll elle ya da aşağıdaki gibi otomatik olarak hedef dizine kopyalabilir. |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
xcopy /y $(ProjectDir)bin\release\$(SolutionName).Module.dll dll [Logo CRM Dizini]\bin Örneğin xcopy /y $(ProjectDir)bin\release\$(SolutionName).Module.dll C:\LogoCRM\bin xcopy /y $(ProjectDir)bin\debug\$(SolutionName).Module.dll C:\LogoCRM\bin xcopy /y $(ProjectDir)my_file.ini $(ProjectDir)$(OutDir) |
Logo CRM de Uyarlama Modül Tanımı
dll adını logo crm CRM kök dizini altında web.config içinde appsetting altında Module values olarak kaydedilir.
Warning |
---|
web.config dosyasına uyarlama projesinin adı dll olmadan values alanına yazılmalı. Örn: Proje.Module.dll için Proje.Module yazılmalı <add key="Modules" value="Proje.Module" /> |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<appSettings> <add key="Modules" value="....." /> <add key="ErrorReportEmail" value="" /> <add key="ErrorReportEmailServer" value="" /> <add key="SimpleErrorReportPage" value="" /> <add key="RichErrorReportPage" value="Error.aspx" /> <add key="EnableDiagnosticActions" value="False" /> <add key="Languages" value="en-US;tr-TR" /> </appSettings> |
Proje.Module build alınır LogoCrm\bin dizini altına dll otomatik ya da elle kopyalanır.
Logo CRM Model Editör
Ürün Model Editöründen Uyarlama Ekranları Navigation bölümünde tanımlanmalı.
https://msdn.microsoft.com/en-us/library/c02as0cs.aspx
Code Block |
---|
xcopy /y $(ProjectDir)bin\release\$(SolutionName).Module.dll C:\LogoCRM\bin
xcopy /y $(ProjectDir)my_file.ini $(ProjectDir)$(OutDir) |
ModelEditör klasöründeki ModelEditor.bat dosyası çalıştırılmalı.
ListView ler Logo CRM navigation'a eklenir.
NavigationItems altında Items üzerinde Add/NavigationItem diyerek yeni bir NavigationItem eklenir.
View alanında oluşturduğumuz BusinessObject'in ListView'i seçilir.
IIS Tekrar Başlatma
Uyarlamanın Logo CRM de görebilmeniz için IIS ten restart yapmanız gerekir.
Logo CRM Login
Aşağıdaki gibi ilk uyarlama projemizi Logo CRM uygulaması içerisinde görebiliriz.