Öne çıkan

D365 ısınma turları – Canlıda geliştirme yapabilecek miyiz?

Bir süredir en son kabul edilen resmi ismi “Microsoft Dynamics 365 for Finance and Operations, Enterprise edition” olan ancak bizim tabirimizle AX’ın son sürümünü inceliyorum. Bu kadar uzun ürün ismi herkese nasip olmaz, Arjantinli futbolcu ismi gibi mübarek.

İlk izlenimlerim olumlu, genel hatları ile AX’ın genleri korunurken bulut teknolojisi ve .Net geliştirme ortamı sisteme güzel adapte edilmiş.

Overlayering ve extension kavrmlarını sıkça kullanacağız ama şimdilik bu konuya girmeyeceğim.

Live ya da test ortamlarında development yapma şansınız yok, çünkü bu ortamlarda sourceCode yok. Bunun yerine derlenmiş kodar (dll) ler var ve kodun stabilitesi bu şekilde sağlanmış. Gayet mantıklı. Canlı ortamda kod yazıldığında hem hatalara yol açıyor, hem de AOS ciddi şekilde yavaşlıyordu.

“D365 ısınma turları – Canlıda geliştirme yapabilecek miyiz?” öğesini okumaya devam et

Reklamlar

D365 FO, Etiket dosyası oluşturma, yavru vatan eklentisi ve etiketlerin kullanımı

Merhaba.
D365 ile geliştirme yaparken aynen eskiden olduğu gibi etiket dosyalarının kullanılması gerekiyor ve öneriliyor.
Genellikle geliştirme yapılırken bu husus atlanmaya müsaittir ama doğrusu her türlü sabit metin, açıklama, başlık, uyarı, hata metni vb ifadelerin etiket dosyalarına koyularak buradan kullanılmasıdır.

D365 FO (yeni ax versiyonu artık buna alışmamız gerekiyor) için de durum epeyce aynı ama biraz iyileştirilmiş.
Birincisi dosya ekleme işi proje üzerinden yapılıyor ve karmaşa engelleniyor. Büyük etiket dosyaları yerine amaca uygun küçük dosyalar olması mantıklı.
Klasik bir .net yaklaşımı ile Add -> New Item altından ekleme yapılabiliyor.
etiket1

“D365 FO, Etiket dosyası oluşturma, yavru vatan eklentisi ve etiketlerin kullanımı” öğesini okumaya devam et

Robotik uygulamalar, yapay zeka, Drone vb için gerçek bir iş fırsatı

Dün izlediğim bir videoda benim de daha önceden dikkatimi çeken bir nokta işlenmiş;
Gökdelenlerin camlarını neden hala insanlar siliyor?

Bu iş gerçekten tehlikeli, zor ve bir o kadar da ilkel görünüyor.
Sadece Çinde 400.000 (Dört yüz bin) kişi gökdelen camı silerek hayatlarını kazanıyormuş.

Eğer stabil, düzgün temizleyen, uygun fiyatlı, farklı binalara uygulanabilir çözümler üretilebilirse bu konuda ciddi bir gelir elde edilebilir.

Zaten sorun da tam burada, mevcut çözümler ya stabil değil, ya düzgün temizlemiyor, ya çok pahalı, ya da binalara uyum sağlayamıyor.

 

Bu arada Barış Özcan’ın kanalını takip etmeyi herkese tavsiye ederim.

Emre TÜFEKÇİ

InventOnHand formundan rapor almak – InventSum ve InventDim’in raporda gösterilmesi

Bir önceki yazıda formda gösterilen  değerleri aynen rapora göndermek ile ilgili yapıları izah etmeye çalışmıştım. Tabi tek yöntem bu değil ama ideal bir yöntem olduğunu söyleyebilirim. Okumak için burayı tıklayınız.

Önceki yazıda bahsettiğim üzere, Dynamics Ax’taki önemli frameworklerden biri olan InventOnHand yapısında InventSum ile InventDim arasında esnek bir joinSum ilişkisi mevcuttur. Bu sayede Ambar detayı, parti no vb InventDim detayı gösterilebilir ya da gizlenebilir. Ama toplam alanları uygun şekilde joinSum edilerek her durumda doğru görüntülenir.

Peki bu durumda raporda ilgili InventDim alanları nasıl gösterilebilir?
Aslında yazmamız gereken kod çok kısa ve anlamlı, ben yöntemi çok beğendim.
Burada InventSum tablosu args.record() metodu ile alınıyor.
JoinChild Metodu ile bu tablo ile join edilmiş tablo ya da tablolara ulaşılabiliyor.


public boolean fetch()
{
    FormDataSource          callerDataSource;
    ;

    if (element.args() && element.args().caller())
        callerDataSource = element.args().record().dataSource();



    for (inventSum = callerdatasource.getfirst() ?
                                callerdatasource.getfirst() :
                                callerdatasource.cursor();
            inventSum;
            inventSum = callerdatasource.getnext())
    {
        //Bu satıra dikkat ediniz -->
        inventDim.data(inventSum.joinChild());
        //Bu satıra dikkat ediniz <--
        element.send(inventSum);
    }

    return true;
}

Raporda kullanmak için InventDim alanlarını döndüren display metodlar yazılabilir.
Ya da başka yöntemler bulunabilir.

Emre TÜFEKÇİ

Formda gösterilen değerleri aynen rapora göndermek

Merhaba.

Aslında yazmayı planladığım konu farklıydı ama onu yazmadan önce bunu yazmak ve sorunu anlatmak gerekiyor.

Daha önceden yazdığımı sanıyordum ama yazmamışım, enteresan. İşte bunlar hep yaşlanmaktan. Neyse, konuya geçelim.

Dynamics 365’e (yani mevcut son versiyona) kadar olan tüm versiyonlarda -bence- en zayıf halka hep raporlama olmuştur. Bahsettiğim Ax versiyonlarının tamamında çıktı (Print-out) ile rapor kavramları birbirinin yerine kullanılmış ama her ikisi de amaca tam uygun şekilde yapılamamakta.

Raporlama için SSRS entegrasyonu, Management Reporter vs sunuldu ama açıkçası ikisi de vaziyeti idare etmek üzere yapılmış gibi duruyor. Pratik değil, esnek değil, hızlı değil. Bu konuda bana itiraz edenler olacaktır, saygı duyarım tabi bunlar benim şahsi fikirlerim.

Daha eskiden FRx ve adını bile hatırlayamadığım toollar eklendi, çıkarıldı ama sonuç maalesef değişmedi. Ayrıca üçüncü parti yazılımlar da mevcut tabi ama onlar sonuçta paketin dışındalar ve ilave çalışma, lisans, masraf vb gerektiriyor.
“Formda gösterilen değerleri aynen rapora göndermek” öğesini okumaya devam et

Ax2009 ve Ax2012 R2 desteği Eylül 2018’de sona erecek

Merhaba.

CustomerSource’da okuduğum habere göre Ax2009 SP1 ve Ax2012 ve Ax2012 R2 desteği Eylül 2018’de sona erecek.

axSupport.png

Haberin veriliş şekli 2009’un destek süresinin uzatıldığı şeklinde olsa da bu sizi yanıltmasın, metnin devamında asıl bitiş tarihi var.

Eğer Ax2012 R3’ten eski bir versiyonu kullanıyorsanız süreniz oldukça kısalmış demektir. Muhtemelen anılan tarihte ya da birkaç gün öncesinde nihai bir hotfix yayınlanacak ve defterler kapatılacak.

Peki desteğin sona ermesi ne demektir?

Desteğin sona ermesi en başta yeni service packler yayınlanmayacak demektir. Bununla birlikte hotfixler de çıkmayacaktır. Ayrıca bir sorun yaşamanız halinde Microsoft’tan bu konu ile ilgili destek alamazsınız, case açamazsınız.

Bunlara ek olarak yeni çıkacak bir Microsoft ürünü ile desteği sona ermiş olan bir ürünün uyumlu çalışmaması olasıdır. Örneğin Windows, Windows Server, SQL server, Domain Controller, Office programları vs ile ilgili gelen güncellemeler veya yeni versiyonlar kullanmakta olduğunuz Ax versiyonu ile uyumlu olmayabilir.

Ax2012 R2 için ise 2021 tarihine kadar süre mevcut, dolayısı ile R3 kullananlar sorunsuz devam edebilecekler.

axSupport2.PNG

Hayırlı upgradeler.

Emre TÜFEKÇİ

Tüm AUC dosyalarını tek seferde silmek veya PowerShell ile belli patterndeki tüm dosyaları silmek

Merhaba.

Microsoft Dynamics AX kullanıcılarının başının tatsız belası olan *.AUC ve *.KTI dosyalarını özellikle geliştirmeler devam ederken ara ara silmek gerekebilir. Tüm kullanıcıların AUC dosyalarını silmek ise bir miktar efor gerektiren, sıkıcı bir iştir.

Ve bildiğiniz gibi tüm dahiler tembeldir. Ama tersi doğru değildir. Neyse, felsefeyi bırakalım.

Ben de bunun daha kolay bir yöntemi olmalı diye düşünürken aklıma önce command prompt (cmd) kullanarak bir batch dosyası yazmak geldi. Evet yazdım ama biraz karışık oldu, sevmedim. Üzgünüm kara ekran, bu sefer olmadı.

Yine de kara ekran candır derseniz kod aşağıda. Command Prompt’u yönetici olarak çalıştırmayı unutmayın.

for /f “delims=|” %f in (‘dir /B /A:D-H-R c:\users’) do del “C:\Users\%f\AppData\Local\*.auc”

cmd1

Ama ben bunun daha da kolay bir yolu olmalı diye düşünürken aklıma PowerShell geldi. Daha kullanışlı ve anlaşılır olduğundan PowerShell daha iyi bir alternatif olarak görünüyor.

İşlemi yapabilmek için silme işlemini çalıştıracağınız sunucuda PowerShell uygulamasını Yönetici olarak çalıştır (Run as administrator) seçeneği ile çalıştırmanız gerekiyor.

PS1.PNG

PS2.PNG

Ardından aşağıdaki kodu çalıştırırsanız tüm user profilelarda yer alan *.auc dosyaları göz açıp kapayıncaya kadar silinecektir. Gözünü sevdiğim mavi ekran, nelere kadirsin.

Remove-Item “C:\users\*\Appdata\Local\*.auc” -Force

Aynı yapıyı değiştirerek başka işler için de kullanabilirsiniz.

Emre TÜFEKÇİ