X++ :1- Extended Data Types Nedir?
Bu yazı ile yeni bir seriye başlıyorum. Bu seride X++ dilinin temel özelliklerinden bahsedeceğim. X++ C++ üzerinden geliştirilen bir nesne tabanlı dildir. Yazımı oldukça kolay olan bu dil özellikle veri yönetiminde çok güçlüdür. ERP temelde veriye dayandığı için X++ uygulamada çok kolaylık sağlıyor.
Temel veri tipleri şunlardır.
Anytype | A placeholder for any data type. |
Booleans | Can only contain the values false and true. |
Dates | Contains day, month, and year. |
Enums | An abbreviation for enumerated text—a set of literals. |
GUIDs | A globally unique identifier. |
Integers | A number without a decimal point. To declare an integer, use the keyword int. |
Reals | Numbers with a decimal point; also called decimals. |
Strings | A number of characters. To declare a string, use the keyword str. |
TimeOfDay | Contains hours, minutes, and seconds. To declare a time, use the system type timeOfDay. |
utcdatetime | Contains year, month, day, hour, minute and second. |
Bu tiplerin üzerin formatlı veri tipleri oluşturulur. Bunlara kısaca EDT diyoruz. EDT bize birçok avantaj sağlıyor. Bir örnek ile açıklamaya çalışacağım. AOT üzerinden sistemde olan EDT’lere bakabilir ve kullanabilirsiniz. Bu seride kullanmak üzere bir Kitap yönetimi projesi başlattım. FDBookTable ve ilişkili veri tiplerini oluşturacağım.
Resim-1
Yeni Bir element ekleme ekranını açıp Data Types -> EDT String seçiyoruz.
Resim-2
FDBookId adında bir kitap kodu EDT’si oluşturuyorum. String Size 20 olarak belirledim. Mutlaka Label tanımlamak gerekiyor. Her veri tipine göre EDT özellikleri değişiklik gösteriyor. Table Relations ve Table References EDT üzerinden ana tablo bağlantısı yapmak için kullanılıyor. İlerde örneklerini anlatacağım.
Resim-3
Şimdi bir tane de Integer tipinde bir EDT oluşturalım.
Resim-4
Yine Label tanımlamak lazım. Integer olduğunda birçok ilişkili özellik geliyor.
Resim-5
Bu sadeye iki tane farklı tipte EDT oluşturduk. Artık bu formatlı veri tiplerini kullandığımız tüm yerlerde aynı özellikler geçerli olacak. Örneğin FDBookId kullandığım yer yerde otomatik StringSize 20 olarak gelecek. Formlar dâhil. Ayrıca EDT’leri kodda da direk kullanıyoruz. Örneğin bir str tipinde değişken oluşturmuyoruz BookId için. Direk FDBookId tipinde değişken oluşturuyoruz.
Selamlar.
www.fatihdemirci.net
TAGs: X++, EDT, Microsoft Dynamics 365 Finance and Operation, Dynamics AX, MsDyn365FO, MsDyn365CE, MsDyn365, Power BI, Power Automate, Dynamics 365 ERP, Dynamics 365 CRM