Posts Tagged ‘ Power Apss

Dynamics 365 Finance and Operations için yeni bir X++ geliştirme sanal makinesi nasıl ayağa kaldırılır?

Bu yazıda yeni bir X++ geliştirmeleri için yeni bir sanal makine nasıl ayağa kaldırılır adım adım anlatmaya çalışacağım. Bu örnekte bir müşteri ortamında bunu asıl yapacağınızı anlatacağım. Partner veya eğitim amaçlı sanal makinelerde benzer bir mantığa sahip.

Öncelikle Lifecycle Services’a giriş yapıyoruz. Projemizi seçip hamburger menüden Cloud-hosted environments’ı seçiyoruz.

Resim-1

Read more

Dynamics 365 Finance and Operations Data Entity nedir ve nasıl oluşturulur?

Bu yazıda X++ ile yeni bir Data Entity nedir ve nasıl oluşturulur anlatmaya çalışacağım. Öncelikle Data Entity nedir ondan bahsedelim.

Data Entity: Manalı veri kümesi diye özetleyebiliriz. Özellikle Ax2012 ile veri yapısı Normalizasyon mantığına uygun olarak çok fazla tabloya bölündü. Bu sebepten belli bir veriyi görmek ve işlem yapmak için birçok tablonun bir araya gelmesi gerekiyor. Data Entity bizim için bu veri kaynaklarını bir araya getirip anlamlı bir veri kümesi üzerinden işlemleri yapabilmemize olanak sağlıyor. Bizim örneğimizde olduğu gibi kitap ile ilgili 3 tablomuz var ve bunlar aslında birbiriyle ilişkili bir Data Entity ile bu tabloları tek yapıda görüp işlem yapabiliyoruz.

Çok fazla kullanım alanı var. Bunları zamanla anlatmaya çalışacağım. Şimdi yeni bir Data Entity Visual Studio üzerinden nasıl oluşturulur onu görelim.  Benim YouTube kanalım için yaptığım örnek bir kütüphane projem var. Onun üzerinden devam edeceğim.

  1. Projeye sağ tıklayıp AddNew item ile yeni Add New Item diyaloğunu açalım.
  2. Data Model > Data Entity, seçip Data Entity adını tanımlayalım.
  3. Add’e tıklayıp Data entity wizard’ı açalım.

Resim-1

Read more

RunBaseBatch Framework İle Toplu İş Nasıl Oluşturulur?

Bu yazıda Dynamics 365 Finance and Operations için yeni bir toplu iş (Batch Job) nasıl oluşturulur anlatmaya çalışacağım. RunBaseBatch kullanarak bir örnek oluşturacağım. İleriki yazılarımda SysOperation ile de örnekler vereceğim. Toplu iş nedir ona bakalım. Bir işi farklı sunucuda ve belli zamanda istersek tekrarlayan şekilde çalıştırmaya yarayan bir alt yapı diyebiliriz. En basit örneği vereyim. Merkez bankası her gün kurları belli saatte açıklıyor. Sizin bu değerleri alıp sisteme kaydetmeniz gerekiyor. Bunun için bir sınıf yazdınız ve bu sınıf servise bağlanıyor ve değerleri alıyor. Ancak bunun her gün aynı saatte tetiklenmesi lazım. İşte burada toplu iş devreye giriyor ve size bu ayarları yapma imkânı veriyor.

Bu örnekte çok basit bir sınıf oluşturup çalıştıracağız. Öncelikle yeni bir proje oluşturuyorum.

Resim-1

Read more

How to Define Authorization from Dynamics 365 Finance and Operations Development Environment?

In this article, I will try to explain how to create authorization objects from Visual Studio through the Dynamics 365 Finance and Operations development environment. In my article named How to Define Authorization from Dynamics 365 Finance and Operations Interface? I explained how the authorization objects are created from the interface. As I said in that article, my preference is to create the authorization from the development environment. There are several reasons. Most importantly, objects created from the development environment can be included in version control. In this way, they will be directly in your package and the transfer to the desired environment will be made with your development. I think it’s easier to manage.

I will now do the same example that I did in my previous article through Visual Studio. My test user only has the System user role.

Image-1

My test user can only see two modules in these roles.

Image-2

I want to authorize the All customers form.

Image-3

I find the relevant MenuItem on VS. This will be my entry point (EntryPoint) and all authorization assignments will be done through this entry point.

Image-4

I go to my project and add a new object.

Image-5

First, we will create a Privilege. I select and name it, and click add.

Image-6

Drag and drop the CustTableListPage MenuItem to the Entry Points tab of the Privilege created. Entry point is created. From its properties, select delete as the Access Level. Delete means full authorization. You can choose the level you want from here. Update and Correct might be confusing for you. Update is the data update authorization. Correct is used in tables with Valid Time State property.  Valid Time State is a mechanism that allows you to perform automatic date checks. I will prepare an article about this later.

Image-7

Now create a Duty.

Image-8

Drag and drop the Privilege to the Duty you created.

Image-9

Next step is creating a role.

Image-10

If you want, you can grant Privilege directly to the role you created, but it’s best to follow the steps. That’s why we used Duty. You can drag and drop it. The new role is created.

Image-11

In some cases, it may be necessary to clear the Caches. You can call the SysFlusData class as shown in Image-12.

Image-12

Objects you create via VS will not appear directly in the application. I’m not so sure why but they are visible after DB sync. This is actually data. I don’t know why it needs that.

Image-13

After these operations, you will see the objects you have created when you open the application.

Image-14

You assign roles to our test user.

Image-15

When you log in to the application, you can see the All Customers form.

Image-16

In this article, I tried to explain how to create security objects via VS. You must take the security and authorization very seriously. If not set up correctly, it can get messy. Try to manage it from the highest level possible. If you go deep into details, it becomes very difficult to manage. Do it if the new role is really required. Use Duty to get things done as much as possible. Do not assign more than 3-5 roles to a user. Too many roles can lead to performance issues.

Regards.

www.fatihdemirci.net

TAGs: Microsoft Life Cycle Services, LCS, Azure, Azure DevOps, Security , Microsoft Dynamics 365, MsDyn365FO, MsDyn365CE, MsDyn365, Dynamics 365 Insights Power BI, Power Automate, Power Apss, Power Virtual Agents, what is Dynamics 365, Dynamics 365 ERP, Dynamics 365 CRM

Yeni bir Dynamics 365 Finance and Operations uygulama projesini Microsoft Life Cycle Services (LCS) üzerinden nasıl ayarlanır.

Bu yazıda size Dynamics 365 Finance, Dynamics 365 Supply Chain Management veya Dynamics 365 Commerce için yeni bir lisans satışından sonra uyarlama projeyi başlatmak için gerekli olan adımları anlatmaya çalışacağım.

Öncelikle firmanın Tenant Administrator hesabıyla Azure Active Directory (Azure AD) de aşağıdaki adımları takip ederek aktivasyon işlemi yapılmalı:

  1. InPrivate/Incognito olarak yeni bir oturum oluşturun ve Microsoft 365 Admin Center’ı açın.
  2. Tenant Administrator hesabıyla giriş yapın.
  3. Billing > Products & services gidin ve orada aldığınız ürünün olduğundan emin olun. Eğer yoksa iş ortağınızla iletişime geçin.
  4. Eğer ürün aboneliği (Subscription)  aktifse uygulama projesi (Implementation Project) oluşturmayı tetiklemek için LCS ye giriş yapın.
  5. Yeni bir sayfada LCS’e Tenant Administrator hesabıyla giriş yapın.
  6. Ekrana çıkan kutucukları onaylayın böylece proje oluşturulmuş olacak.
  7. Tenant Administrator otomatik olarak Project Owner rolüne atanır. Bundan sonra projeyi LCS de görebilirsiniz.

Yukarıdaki adımları tamamladıktan sonra eğer bir sorun yoksa Resim-1 de görünen uyarlama(Implementation) projesi oluşacak.

Resim-1

Read more

Microsoft iş çözümlerini tanıyalım. ERP, CRM, BI, AI, Bulut ve ötesi.

Microsoft iş çözümlerini tanıyalım. ERP, CRM, BI, AI, Bulut ve ötesi.

Bu yazıda size Microsoft iş çözümlerini tanıtacağım. Microsoft iş çözümlerine çok fazla yatırım yapıyor. Bunun sonucu olarak sürekli yeni bir ürün çıkıyor veya olan bir üründe isim ve içerik değişikliği olabiliyor. Bu bazen bizim için bile kafa karıştırıcı oluyor. Çok ayrıntıya girmeden aşağıdaki resimde bulunan her kutucuğu size izah etmeye çalışacağım.


Resim-1

Read more

How to Define Privileges from Dynamics 365 Finance and Operations Interface?

In this article, I will explain how to create privilege objects from Dynamics 365 Finance and Operations interface. In my previous article, I explained how fatih.test user was created. I will show an example based on this user. I deleted all roles of the user except system user. I will define a new role and grant privilege a certain object.

Image-1

You can see the menus in Image-2 only when you enter the application with the System user role.

Image-2

In this example, I will define a role that is authorized only for the All Customers form.

Image-3

First, find the name All Cutomers MenuItem. I looked it up from the development environment. You can also see it on the form. CustTableListPage

Image-4

Open your application with a user that has admin privilege and open the System Administration -> Security Configuration form. Got to the Privileges tab and click Create new. Enter the name from the window that opens and click OK.

Image-5

You must define the privilege for the privilege created. We want to authorize a Display menu Item. While on the Display menu Item record, click Add references. Filter and select CustTableListpage from the window that opens. Select Grant for all of them and click OK. We have defined the authorization.

Image-6

Go to the Duties tab and Click New. Enter a name and create.

Image-7

In order to add Privilege over the resulting Duty, we select the Privilege we created by clicking Add Reference.

Image-8

Go to the role tab and create a new role.

Image-9

Similarly, add the Duty you created previously as a reference.

Image-10

After these processes, the role privilege definition is finished. But first we need to Publish these objects.

Image-11

After publishing the privilge objects, go to your user, click Assign Roles and select the role you created from the screen that opens.

Image-12

When you log back into the system with your test user, you will see the menu you have authorized.

Image-13

In this article, I tried to explain how to create privilege objects in the simplest form through the application. Creating from the screen like this something I am not used to. I prefer to create it from the development environment. Also, objects are not created when you create them from the screen. Therefore you need to use Export-Import to move them to other environments. I will also talk about this feature. In addition, I will explain how to make privilege definitions through the development environment in my next article. Privilege is an extensive topic. I will try to talk about all the details.

Regards.

www.fatihdemirci.net

TAGs: Microsoft Life Cycle Services, LCS, Azure, Azure DevOps, Security, Microsoft Dynamics 365, MsDyn365FO, MsDyn365CE, MsDyn365, Dynamics 365 Insights Power BI, Power Automate, Power Apss, Power Virtual Agents, what is Dynamics 365, Dynamics 365 ERP, Dynamics 365 CRM

Dynamics 365 Finance and Operations Security Infrastructure?

In this article, I will try to explain the Dynamics 365 Finance and Operations security architecture. There is a docs article that I like very much, I will try to recap the topics by referencing it. It is very important to understand the security infrastructure. In today’s projects, managing security and authorization can be a very demanding process. In order to manage the needs correctly, it is necessary to know the infrastructure and the features, capabilities and constraints of security tools. In this article I will address the following topics. I did not translate them into Turkish. Sometimes there is a semantic shift, so I think explaning them is better.

•             Security architecture

•             Role-based security

•             Duties

•             Privileges

•             Permissions

•             Authentication

•             Authorization

•             Auditing

Finance and Operations application uses role-based security structure. Authorizations are given to roles, users are not directly authorized. Users are assigned roles. A user without any role has no authority in the system. The user assigned the admin role has full authorization. More precisely, they are not subject to any restrictions. Role-based security is a hierarchical structure as seen in Image-1.

Image-1

Role-based security

Role-based security has actually been created parallel to the work of business units. Role is the structure in which the necessary authorizations are gathered for a position with certain duties to fulfill those duties. The role is actually parallel to the employee’s actual job in the company. It does not mean that every employee has a role. In some cases, a single person may be managing different business processes. So they must have multiple roles. It is essential to organize roles according to the job, not the person. At least one role is required to log into the system. Generally, everyone is given the role of System User.  You can use the System administration > Users > Assign users to roles form to assign the role.

Role assignment is made by admin accounts. Basically, roles consist of Duties and Privileges.

Image-2

Duties

Duties are where the necessary authorizations are gathered to carry out a certain work process. A task can be assigned to multiple roles. Therefore, a change you make to the duty automatically affects the assigned roles. The role can be assigned directly in Privilege, but for a more manageable infrastructure, it is necessary to create and use the duties.

Image-3

Privileges

It is the structure where the authorizations required to do a certain job are gathered. For example, the payment cancellation privilege only has the authorization required to do this job. You can give this privilege directly to the role, but as I said above, it would be a better approach to collect them in duties and assign them to roles. Security and authorization objects are defined for all objects in the system. You can find and replace the ones you need and add new ones. Especially in new developments, it is absolutely necessary to create Privilege. Duty may not be required for every development. It may be enough to grant this authorization with a specific duty, but not without Privilege.

Image-4

Permissions

Permissions refers to the level of authorization to access a specific object. This can be a MenuItem or any object. Generally, authorization is given through the entry point. And these are usually MenuItems. In some cases we also use it to directly define authorization for an object of the form.

Authentication

This is my favorite feature in the new version. I can use all tools with a single email. One of them, of course, is the Finance and Operations application. To enter the application, your user login must be created. I explained it in my previous article. Usually users are expected to be in Microsoft Azure Active Directory (AAD), but you can also add external users. You can set up 2-step verification.

Authorization

Authorization controls access to the Finance and Operations application. Security permissions are used for this. Security permissions determine how certain objects of the application are accessed. These objects are: menus, menu items, action and command buttons, reports, service operations, web URL menu items, web controls and fields.

Finance and Operations application uses a context-based security, so we define the level of access to a certain object. When you associate a privilege with an entry point, you also define an access level. Such as Read, Delete, update.

Auditing

User login and logout times are recorded. You can access these records from the admin account. (System administration > Inquiries > User log).

In this article, I tried to introduce you to the security infrastructure. It is a very extensive and detailed topic. Generally, projects have a person or team responsible only for these processes. When not designed correctly, maintenance costs and problems can be annoying. It is imperative to place the due importance and test well during the project phase. Generally, since consultants have admin privileges, they can skip tests with the required roles. Here it is recommended that key users do tests with the relevant role, not as an admin. I will continue to address security-related issues.

Regards.

www.fatihdemirci.net

TAGs: Microsoft Life Cycle Services, LCS, Azure, Azure DevOps, security architecture, Microsoft Dynamics 365, MsDyn365FO, MsDyn365CE, MsDyn365, Dynamics 365 Insights Power BI, Power Automate, Power Apss, Power Virtual Agents, what is Dynamics 365, Dynamics 365 ERP, Dynamics 365 CRM

Dynamics 365 Finance and Operations Segregation of Duties Nedir?

Segregation of Duties görev ayrılığı olarak çevriliyor. Şöyle izah etmeye çalışayım. İki kritik görevi(Duty) aynı kişide toplanmasın istiyorsunuz örneğin fatura işleme ve ödeme çıkma gibi iki görevin aynı kişide olmaması gerekiyor. Binlerce kişinin çalıştığı bir firmadasınız ve bunu takip etmek belli bir aşamada mümkün olmuyor işte tam burada SoD devreye giriyor. Duty üzerinden yaptığınız bir tanım size bu tip durumlar için uyarı veriyor ve kontrol etme imkânı sağlıyor.

Önceki yazılarda kullandığımız güvenlik nesnelerini kullanarak bir örnek yapalım. Security Configuration formunu açıyoruz.

Resim-1

Read more

Dynamics 365 Finance and Operations Data Management 2. How to Transfer Data Again Using Old Projects?

Dynamics 365 Finance and Operations Data Management 1. How to Import Data? Dynamics 365 Finance and Operations Data Management 1. How to Import Data? Now I will try to explain how we can transfer data over and over again using the project we created in that article.

We had created a transfer project for VendGroup. Currently, the data is as in Image-1.

Image-1

This is the CSV file I just created. I will use this for import.

Image-2

Open Data managament. In the All projects section, we click on our project and open it.

Image-3

Click Re-import from the Import Options tab.

Image-4

Click Upload file on the page that opens.

Image-5

Select the import file and click Upload. Then click OK.

Image-6

You have uploaded your file. Now you can click Import.

Image-7

The information screen will appear. Close it and wait for a while.

Image-8

If there is no problem, you will see a screen like the one below. If there is an error, you can see its details on this screen as well.

Image-9

I renew my form to see if it really worked and see the data is there.

Image-10

In this article, I tried to show how you can transfer data over and over again through a project that we have created and established before. These very useful features are generally used by consultants, but it is necessary to provide good training to the users and ensure that they benefit from these features.

Regards.

www.fatihdemirci.net

TAGs: Microsoft Life Cycle Services, LCS, Azure, Azure DevOps, Import, DMF, Microsoft Dynamics 365, MsDyn365FO, MsDyn365CE, MsDyn365, Dynamics 365 Insights Power BI, Power Automate, Power Apss, Power Virtual Agents, what is Dynamics 365, Dynamics 365 ERP, Dynamics 365 CRM

Page 7 of 9« First...56789