Dynamics AX’ ta Bir Nesneye Yetkili Olan Rolleri Bulma

Dynamics AX’ ta Bir Nesneye Yetkili Olan Rolleri Bulma

Dynamics AX projelerinde yetkilendirme süreçlerinde çoğu zaman bir nesneye hangi güvenlik nesnelerinin yetkili olduğu bilgisine ihtiyaç duyulur. Buradaki gereksinim, yetki vermek ya da belirli bir nesneye yetkili olan kullanıcıları sınırlandırmak olabilir. Her iki gereksinime de karşılık veren basit bir özellik AOT üzerinde bulunmaktadır. Her ne kadar işlem basit olsa da projelerden tecrübe ettiğim kadarıyla birçok kişi tarafından bu özellik bilinmemektedir.

Herhangi bir nesneye yetkili olan rolleri, görev ve ayrıcalık detayında görüntülemek için AOT üzerinde ilgili nesne üzerine sağ tıklanarak Add-Ins > Güvenlik Araçları > İlgili güvenlik rollerini görüntüleme tıklanır.

view-related-security-role

Açılan formda sorgulanan menu itema hangi yetki nesnelerinin erişebildiği rol, alt rol, görev, ayrıcalık ve erişim tipi detayında listelenir.

roller-related-to-menu-item

Bu sorgulama formu sayesinde kullanıcılardan gelen yetki taleplerinde ilgili nesneye yetkili olan roller görüntülenerek uygun olan bir rol seçip ataması yapılabilir. Aynı şekilde herhangi bir form ya da fonksiyon özellikle bazı kullanıcılar haricinde kısıtlanmak istendiğinde yine bu sorgulama formundan faydalanılarak hangi rollerin erişim yetkisine sahip olduğu görüntülenir ve olmaması gereken bir erişim yetkisi tespit edilirse ilgili güvenlik nesnesi güncellenerek istenen kısıtlama yapılabilir.

 

 

 

 

Reklamlar
Sistem Kullanıcısı Rolü Yetki Problemi

Sistem Kullanıcısı Rolü Yetki Problemi

Dynamics AX projelerinde kullanıcıların bazı temel işlevleri yerine getirebilmeleri için tüm kullanıcılara Sistem kullanıcısı ve Şirketiçi çalışan rollerinin verilmesi tavsiye edilir. Bu sayede yetki çalışmalarında kolaylık sağlanmış olur. Ancak projemizde karşılaşmış olduğumuz bir sorun bu yetkilerin de canlıya geçmeden önce tekrar kontrol edilmesi gerektiğini ortaya çıkardı.

Projemizde yetkilendirme çalışması yaparken bir genel muhasebe rolüne Finansal boyutlar ve Boyut değerleri formlarına sadece okuma yetkisi vermemize rağmen ilgili role atanan kullanıcının silme yetkisine sahip olduğunu gördük. Detaylı olarak analiz ettik, tüm menü itemları, tablo yetkilerini inceledik. Tüm yetkiler doğru tanımlanmış gözüküyordu. Daha sonra kullanıcıdan Sistem kullanıcısı ve Şirketiçi çalışan yetkilerini kaldırarak denediğimizde boyut formlarında sadece okuma yetkisiyle yani istediğimiz şekilde çalıştığını gördük. İki rolü detaylı inceleyince sorunun Sistem kullanıcısının altında yer alan DimensionEssentials privilege inden kaynaklandığını gördük. DimensionEssentials privilege ini AOT den açıp Permission > Tables nodunun altına bakılırsa birçok tabloya yetki verildiği görülüyor.

sis-1

Bunların birçoğu Read yetkisinde ama aralarında finansal boyutlar ve hesap tablosu gibi bazı önemli tablolarda Create ya da Delete yetkisi verilmiş.

sis-2

Finansal boyut tablolarınının sadece görecek şekilde kısıtlanması için aşağıdaki tablolarda erişim seviyesininin Create den Read e getirilmesi gerekiyor:

  • DimensionAlias
  • DimensionAttribute
  • DimensionAttributeLevelValue
  • DimensionAttributeSet
  • DimensionAttributeSetItem
  • DimensionAttributeValue
  • DimensionAttributeValueCombination
  • DimensionAttributeValueCombinationStatus
  • DimensionAttributeValueConsolidation
  • DimensionAttributeValueCostAccounting
  • DimensionAttributeValueFinancialStmt
  • DimensionAttributeValueGroup
  • DimensionAttributeValueGroupCombination
  • DimensionAttributeValueGroupStatus
  • DimensionAttributeValueSet
  • DimensionAttributeValueSetItem
  • DimensionAttributeValueTotallingCriteria
  • DimensionFinancialTag
  • DimensionAttributeValueConsolidation

Aslında sadece DimensionAttributeValue ve DimensionFinancialTag tablolarını kısıtlayınca sorun çözülüyor. Tedbir amaçlı diğer tabloları da read seviyesine çektim. İhtiyaç duyulursa değiştirilebilir. Ancak bu tabloların yetkilerinin Sistem kullanıcısı yerine spesifik bir rol üzerinden verilmesi gerektiğini düşünüyorum.

Hesap tablolarınının sadece görecek şekilde kısıtlanması için aşağıdaki tablolarda erişim seviyesininin Create den Read e getirilmesi gerekiyor:

  • MainAccount
  • MainAccountControlPosting

Bunların haricinde diğer tablolar da kontrol edilip ihtiyaca göre erişim seviyesi düzenlenebilir.

Task Recorder AX 2012- Doküman ve Video Oluşturma

Task Recorder AX 2012- Doküman ve Video Oluşturma

Bir önceki yazımızda Task recorderın kurulumu ve konfigürasyonunu anlatmıştık. Parametreleri yapılandırıp, Framework, Industry ve hiearchy levels tanımlarını da oluşturduktan sonra Task recorder ile kayıt oluşturmaya başlayabiliriz.

Temel Modda Görev Kaydı

Temel modda görev kaydetmek için öncelikle kaydedilecek olan görevin Task recorder formu üzerinde Framework ve Industry si seçilmelidir.

tr-8

Seçilen Framework ve Industry değerine göre en üst node oluşturulur. Verilen örnekte Duman_Retail olarak oluşturmuştur. Görev kaydedebilmek için öncelikle Hiearchy levels formunda tanımladığımız detaya göre alt nodelar oluşturmalıyız. Biz örneğimizde ilk nodu process grubu tanımlayacak şekilde oluşturmuştuk. Öncelikle bir process grup nodu oluşturalım.

tr-9

Yeni bir node oluşturmak için altına oluşturmak istediğimiz node seçili iken New node butonuna tıklıyoruz.

tr-10

Node name alanına bir isim ve Node description alanına bir açıklama giriyoruz. Module alanında tanımlanan nodeun ilgili olduğu modülü seçiyoruz. Operation group alanında da tanımlanan nodeun Core process mi ya da Support process olduğunu seçiyoruz. İkisine de uymuyorsa None seçilebilir.

Purchasing grubunun altına bir task nodeu eklemek için Purchasing seçili iken New node butonuna tıklanır.

tr-11.jpg

Bir üst nodda olduğu gibi tanımlanan nodeun detay bilgileri girilir.

tr-12

Task nodeu da tanımlandıktan sonra oluşan hiyerarşik görüntü şu şekildedir.

tr-13

Kayıt yapılmak istenen görev seçil iken Start butonuna tıklanarak kayıt başlatılır. Butona tıklanınca Task recorder formu simge durumuna küçültülüp alta alınır. AX’ ta kaydedilmek istenen görev gerçekleştirilir. Video kaydı için bu süre 10 dakikayı aşmamalıdır. Kaydedilecek olan işlem tamamlandıktan sonra simge durumuna küçültülmüş olan Task recorder formu tekrar açılır.

tr-14

Stop butonuna tıklanarak kayıt durdurulur ve kaydedilir.

tr-15

Kayıt işleminden sonra ilgili görevin solunda yer alan ok işaretinin mavi renge dönüştüğü görülür. Kayıt yapmadan önceki ekran görüntüsüne dikkat ederseniz bu renk gri idi. Hiyerarşideki bir görevin kaydının yapılıp yapılmadığını ilk bakışta bu şekilde ayırt edebilirsiniz.

Parametrelerde belirttiğiniz klasöre baktığınızda oluşturulan dosyayı görebilirsiniz.

tr-16

Yapılan kaydı silip tekrar oluşturmak isterseniz ilgili node seçili iken Clear node butonuna tıklayarak dosyaları silebilirsiniz. Nodu tamamen silmek için de Delete node butonunu kullanabilirsiniz.

Advanced Modda Görev Kaydı

Advanced modda görev kaydı büyük ölçüde temel mode ile aynıdır. Farklı olan noktalara değinmek gerekirse öncelikle AOS’ un yüklü olduğu makinede AX’ı açıyor olmanız gerekmektedir. AX uygulamasını ilk açarken normal olarak değil uygulamanın simgesine sağ tıklayıp Run as Administrator’ e tıklayarak admin olarak açmanız gerekmektedir.

Temel modda olduğu gibi File > Tools > Task recorder yolu izlenerek Task recorder formu açılır. Hierarchy levels formunda advanced mode olarak tanımlanmış bir süreç seçilir ve New node butonuna tıklayarak kayıt yapılır. Kayıt süreci üstte anlatılan temel mod ile aynıdır.

Kayıt yapılan klasöre baktığımızda temel moddan farklı olarak 2 dosyanın daha eklendiğini görürüz. Bunlar daha sonra anlatacağımız build package fonksiyonunda kullanılır.

tr-18.jpg

Buraya kadar genel olarak task recorderın yapısını ve kullanımını anlatmaya çalıştık. Temel mode ve advanced mode kullanımı ile ilgili örnekler verdik. Bundan sonraki yazımızda package oluşturma ve LCS üzerinde kullanımından bahsedeceğiz.

Task Recorder AX 2012- Kurulum ve Konfigürasyon

Task Recorder AX 2012- Kurulum ve Konfigürasyon

ERP projelerinde analiz, tasarım, geliştirme ve test süreçleri tamamlandıktan sonra en önemli aşama son kullanıcı eğitimleridir. Son kullanıcıların yeni sistemi iyi anlayıp benimsemeleri ERP projesinin başarısı için büyük önem arz eder. Ne kadar güzel analiz edilmiş olursa olsun, ne kadar iyi bir çözüm geliştirilmiş olursa olsun kullanıcılar tarafından benimsenip kullanılmadıktan sonra yeni sistemin şirkete bir faydası olmaz.

Microsoft, Dynamics AX projelerinde danışmanların daha hızlı, daha anlaşılır ve daha kaliteli eğitim dokümanları hazırlayabilmeleri amacıyla Görev Kaydedici ismini verdiği bir uygulamayı kullanıma sunmuştur. Görev kaydediciyi kullanarak son kullanıcılara AX’ ta bir işi nasıl yapacaklarını anlatan Microsoft Word dokümanı ve videolar oluşturabilirsiniz. Aynı zamanda dokümanlar için şablonlar oluşturarak Görev kaydedici aracılığıyla ürettiğiniz dokümanların aynı formatta olmasını sağlayabilirsiniz.

Görev kaydedicinin ilk sürümünde sadece tek bir mod yer alırken Haziran 2013’ te yayınlanan güncellenmiş versiyonunda temel ve gelişmiş olmak üzere iki mod kullanıma sunulmuştur. Gelişmiş modda sadece Word dokümanı ve video değil süreci anlatan akış şemalarını da içeren ek materyaller sunmaktadır. Oluşturulan süreç akış diyagramları Lifecycle Services’ ta yer alan Business process modeler uygulamasına yüklenebilir.

Task Recorer İndirilmesi ve Kurulumu

Microsoft Dynamics AX 2012 R3 versiyonunda güncellenmiş versiyon halihazırda kurulu olarak gelmektedir. R2 ve öncesi versiyonlar için bir hotfix olarak indirilmeli ve yüklenmelidir. İlgili versiyonlar için linkler:

Basic ve Advanced Mod

Görev kaydedicinin güncellenmiş versiyonu iki mod içerir:

Basic mod: Tanımlanan süreç için bir Word dokümanı ve video dosyası oluşturur.

Advanced mod: Word dokümanı ve videonun yanında Lifecycle Services’ e yüklenebilecek bir paket oluşturur. Oluşturulan pakette hiyerarşi, proses, AOT metadatası, Word dokümanı ve video yer alır. Bu paketteki en önemli detay Business process modeler’ a yüklenebilen süreç akış diyagramıdır.

Ön Koşullar

Görev kaydedicinin güncel versiyonunu kullanabilmek için çalıştığınız makinede aşağıdaki uygulamaların yüklü olması gerekir:

  • Windows Media Player
  • Word
  • Microsoft Dynamics AX Client ve Application Object Server (AOS):
    • Temel modda: AX client ve AOS server farklı makinelerde yüklü olabilir.
    • Gelişmiş modda: AX client ve AOS server aynı makinede yüklü olmalıdır. Yani AOS’un yüklü olduğu makinede çalışıyor olmanız gerekir.

Ek olarak, task recorder kullanan kullanıcıların oluşturulan dosyaların kaydedildiği klasöre yazma yetkisinin olması gerekmektedir. Yine advanced modda bunlara ek olarak Microsoft Office yüklü olmalı ve AOS servis hesabı ilgili klasöre yazma yetkisine sahip olmalıdır.

Task Recorder Basic Mod Konfigürasyonu

Task recorderı temel modda kullanabilmek için öncelikle aşağıdaki adımları izleyerek parametreleri ayarlamanız gerekiyor.

Ana ekranın sol üst kısmında yer alan File menüsü açılarak Tools > Task recorder tıklanır.

tr-1

Task recorder formu açılır. Bu form task recorderın ana formudur. Çoğu işlem bu form üzerinden yapılır. İki sekmesi bulunan formun Record sekmesinde seçilen Framework ve Industry için tanımlanan süreçler listelenir. ActionPane kısmında da bu süreçler ile ilgili işlem yapmak için kullanılan butonlar bulunur.

tr-2

Task recorderı kullanmadan önce parametreler tanımlanmalı ve gerekli diğer tanımlamalar yapılmalıdır. Bunun için Task recorder formunun Settings sekmesine geçmeliyiz.

tr-3

Parametreleri tanımlamak için Settings sekmesinde Setup alan grubunda yer alan Parameters butonuna tıklanır.

tr-4

Task recorder parametrelerinde öncelikle kaydedilen Word ve video dosyalarının yazılacağı klasör belirlenmelidir. Bunun için Recording file path alanında dosyaların kaydedileceği dizin seçilir.

Oluşturulan Word dokümanlarının belirli bir formatta olması isteniyorsa şablon olarak kullanılacak bir doküman Template file path alanında belirtilen dizine yüklenir.

Task recorder formunda süreçler bir Framework-Industry kombinasyonunda oluşturulur. Ve bu kombinasyonların parametreleri Hierarchy levels detayında ayarlanır. Framework’ ü herhangi bir alanda bir kurum standartları gibi düşünebiliriz. Industry ise sektörü temsil etmektedir. Bunlar tamamen mantıksal sınıflandırmalardır. Siz belli bir sektör standartları kullanmak istemiyorsanız tek bir Framework-Industry yapısı tanımlayabilirsiniz. Şimdi Industry, Framework ve Hierarchy Levels kavramlarını açıklayalım.

Industry

Task recorderı kullanabilmek için öncelikle en az bir Industry tanımlamalısınız. Ya da daha önce oluşturulmuş olan packagelardan veya  Lifecycle Services’teki Business process modeler toolunda yer alan hazır packagelerdan import edebilirsiniz.

Industry tanımlamak için Task recorder formunun Settings sekmesinde Setup alan grubunda yer alan Industry butonuna tıklanarak Industry parameters formu açılır.

tr-5

Industry parameters formunda Task recorder industry code alanında bir kod ve Name alanında bir isim girilerek Industry tanımlanmış olur.

Framework

Task recorderı kullanabilmek için öncelikle en az bir Framework tanımlamalısınız. Ya da daha önce oluşturulmuş olan packagelardan veya  Lifecycle Services’teki Business process modeler toolunda yer alan hazır packagelerdan import edebilirsiniz.

Framework tanımlamak için Task recorder formunun Settings sekmesinde Setup alan grubunda yer alan Framework butonuna tıklanarak Framework parameters formu açılır.

tr-6

Framework parameters formunda Framework alanına tanımlayıcı bir kod, Framework name alanına bir isim, Publisher alanına bu frameworku resmi olarak yayınlayan kuruluş ve Release date alanına da frameworkün yayınlanış tarihi girilerek Framework tanımlanmış olur.

Hierarchy Levels

Industry ve Framework tanımladıktan sonra bunların kombinasyonları ile yönetilen parametreler tanımlanmalıdır. Birçok özellik Industry-Framework kombinasyonuyla tanımlanan hiearchy levels detayında belirlenir.

tr-7

Hierarchy levels formunda tanımlamalar Framework-Industry kombinasyonuyla yapılır. Örneğin yukarıdaki ekran görüntüsünde APQC – Cross-Industry eşleşmesinin tanımları görüntülenmektedir.

Recording mode alanında bu hiearchy level tanımında kaydedilecek görevlerin Basic ya da Advanced modda olacağı belirtilir.

Hierarchy level alanında bir ağaç kırılımı şeklinde tanımlanan süreç ve alt süreçlerin seviye bazlı isimleri belirlenir. Seviyeler Sequence alanında belirtilir. En düşük numaralı seviye en üstte yer alandır.

Task Recorder Advanced Mode Konfigürasyonu

Advanced mode konfigürasyonu büyük ölçüde temel mode ile aynıdır. Yine aynı şekilde Framework ve Industry tanımlamaları yapılmalıdır. Aynı tanımlar advanced mode için de kullanılabilir. Farklı olarak Hierarchy levels formunda tanımlama yaparken Framework-Industry kombinasyonu tanımı için Recording Mode alanında Advanced seçilmelidir.

tr-17

Buraya kadar Task recorerın kurulumunu ve konfigürasyonunu anlatmaya çalıştık. Bir sonraki yazımızda Task recorder kullanarak temel ve gelişmiş modda kayıt yapılışını anlatacağız.

SQL Server Reporting Services Kurulumu

SQL Server Reporting Services Kurulumu

SQL Server Reporting Services’ e bir önceki yazımızda giriş yapmış ve temel özellikleri ile genel mimarisini anlatmıştık. Bu yazımızda da SSRS’ in 2016 versiyonunun kurulumunu anlatacağız. İşletmelerin ihtiyaçlarına ve donanım kapasitelerine göre birçok farklı konfigürasyonlar verilerek kurulum yapılabilir. Biz eğitim amaçlı kullanacağımız için temel bir kurulum gerçekleştireceğiz.
Continue reading “SQL Server Reporting Services Kurulumu”

SQL Server Reporting Services’ e Giriş

SQL Server Reporting Services’ e Giriş

İşletmelerde yazılım sistemlerinin kullanılmasının en temelde iki nedeni vardır. Birincisi yapılan işlerin sistematik bir hale getirilerek kişilere bağımlı olmaktan kurtarılıp standart hale getirilmesi. İkincisi ise tüm iş süreçleri ile ilgili aktivitelerin ve gerçekleşen tüm aksiyonların verilere dönüştürülüp kayıt altına alınarak raporlanması.

Continue reading “SQL Server Reporting Services’ e Giriş”

Tedarikçi Değerlendirme Süreci

Tedarikçi Değerlendirme Süreci

Günümüzde teknolojik imkanların artmasıyla ticaret ortamı sınırları aşarak global bir yapıya ulaşmıştır. İş dünyasındaki bu global yapı sayesinde yurt içinde ve yurt dışında birçok firma ile iş yapma olanağı bulmaktayız. Satınalma tarafından bakacak olursak bir ürün tedarik etmek istediğimizde karşımıza birçok tedarikçi seçeneği çıkmaktadır. Tedarikçiler ile alış-veriş yaptıkça çalışma şekilleri ve hizmet düzeyleri hakkında zamanla fikir sahibi oluruz. Hizmetinden memnunsak çalışmaya devam ederiz; ancak bir memnuniyetsizlik durumunda doğal olarak o tedarikçiyle tekrar iş yapmak istemeyiz. Çok fazla tedarikçi ile birçok sipariş süreci yürütüldüğünde hizmet kalitesini denetlemek ve akılda tutmak zor hale gelir. Bu yüzden tedarikçilerin belirlenen kriterlere göre değerlendirilmesi ve bu bilgilerin bir sistemde tutularak gerektiğinde rapor alınabilmesi ve bu rapora istinaden gerekli aksiyonların alınabilmesi gerekir. AX 2012 bu ihtiyaca Tedarikçi değerlendirme fonksiyonları ile çözüm sunmaktadır. İhale ve tedarik modülünde tedarikçiler belirlenen kriterlere göre puanlandırılarak değerlendirilebilmektedir. Şimdi AX 2012’ de tedarikçi değerlendirme sürecini nasıl işlediğini inceleyelim. Continue reading “Tedarikçi Değerlendirme Süreci”

Dynamics AX Satınalma Katalogları

ERP kullanılan firmalarda çalışanlar, eski sistemlerde yazılı formlar üzerinden yaptıkları satınalma taleplerini artık ERP üzerinden oluşturmaya başlarlar. Satınalma taleplerinin yazılı evrak yerine dijital ortam üzerinden gelmesi Satınalma ve Muhasebe departmanları çalışanlarına sürecin yönetilmesi açısından önemli kolaylıklar sağlamaktadır. Bunun yanında talepleri açan diğer departmanlar için bazı zorluklar ortaya çıkabilmektedir. Bu zorlukların en önemlisi taleplerin stok kodu üzerinden açılacak olmasıdır. Satınalma talebi oluştururken ERP’ de tanımlı olan stok kartları üzerinden seçim yapılması gerektiği için çalışanlar talep açacağı ürünlerin kodlarını bilmeli ve talebi bu kodlar üzerinden açmalıdırlar. Çok fazla stok kaleminin bulunduğu firmalarda ilgili stok kodunu bulmak için harcanan çaba ve zaman kaybı ciddi verimsizliklere neden olur. Çalışanlar istedikleri madde ya da ürüne zamanında ulaşamazlar.

Continue reading “Dynamics AX Satınalma Katalogları”

Başkasının Adına Satınalma Talebi Açma

Microsoft Dynamics AX 2012 projelerinde satınalma süreçlerinin de devreye alınmasıyla her çalışanın talebini sistem üzerinden girmesi beklenir. Bu amaçla İhale ve tedarik modülünde yer alan Satınalma talepleri formu kullanılır. Bir kişinin AX üzerinde satınalma talebi açabilmesi için kullanıcısının bir çalışan kaydına bağlı olması gerekir. Varsayılan olarak her çalışan kendi adına talep açabilir. Ancak bazı durumlarda bir kişinin başkasının adına talep açması gerekebilir. Örneğin her departmanda satınalma talebi açmak için bir temsilci seçilip ilgili departmandaki bütün çalışanlar adına tek bir kişinin talep açması istenebilir. Bu gibi ihtiyaçlara cevap verebilmek için AX Satınalma talep izinleri işlevini kullanır. Satınalma talep izinleri formunda bir çalışanın kimler adına Satınalma talebi girebileceği bilgisi tanımlanır.

Continue reading “Başkasının Adına Satınalma Talebi Açma”

X++’ ta IBAN Format Kontrolü

Herhangi bir tablomuzda IBAN hesap numarası bilgisini tuttuğumuz bir alan varsa kullanıcılar tarafından çoğu zaman bir kontrol koyulması istenir. IBAN formatı uzun olduğu için dikkat eksikliği sonucu hatalı veri girişleri olabilir. Ödeme ile ilgili olduğu için de bu verinin hatalı olması kabul edilemez. Geliştirilecek bir kontrolle veri girişi yapıldığı anda hataları önlemek en doğru yaklaşımdır. AX 2012’ de IBAN doğrulama için Bank sınıfında checkBankIBAN () metodu IBAN doğrulama için kullanılabilir. Bu metot aşağıdaki gibidir:

Continue reading “X++’ ta IBAN Format Kontrolü”