Yunus Emre
Software Engineer
Microsoft PowerApps Çok Dilli Uygulama Nasıl Yapılır?
Powerapps çok dilli uygulama için birçok farklı yöntem bulunmaktadır. Ancak bugün tüm kontrolün bizde olduğu ve benim tercih ettiğim bir yöntemi yazacağım.
PowerApps Çok Dilli Uygulama
Öncelikle PowerApps içerisinde açtığımız uygulamanın düzenleme ekranına gelelim. Ağaç görünümü alanında ekranlar ve bileşenler göreceksiniz. Bileşenlere girerek yeni bir bileşen ekliyoruz. Ben ekledim ve ismini “MultiLanguage” yaptım. Daha sonra eklemiş olduğumuz bileşenin özelliklerine gelerek yeni özel mülk ekliyoruz. Bu alan tıpkı hard kodlama dillerindeki bir fonksiyonun parametreleri gibi. Biz bu alan sayesinde bileşene gelen parametreleri ve bileşenin return edeceği verileri seçebiliyoruz.
Aşağıdaki görselde “SelectLanguage” isminde bir parametre ekledim. Bizim bileşenimiz kullanıcıdan bir dil seçimi alacak. Bu dil seçimine göre de veri gönderecek.
Şimdi bileşenimizin ne veri göndereceğini ayarlayalım. “Datas” isminde return edeceğimiz bir veri oluşturuyoruz.
Bileşenimiz neredeyse hazır. Artık kodlama tarafına geçelim. Daha önce eklediğimiz “MultiLanguage” ismindeki bileşenin “OnReset” alanına aşağıdaki kodu yazıyoruz.
Set(
varTranslations,
Table(
{
SelectLanguage: "tr-tr",
Datas: {
UserName: "İsim",
UserLastName: "Soyisim",
Company: "Şirket"
}
},
{
SelectLanguage: "en-us",
Datas: {
UserName: "Name",
UserLastName: "Surname",
Company: "Company"
}
}
)
)
Bu kod kullanıcıdan gelen değişkenin “tr-tr” mi yoksa “en-us” mi olduğuna bakarak işlem yapacak. Benim UserName, UserLastName ve Company olmak üzere 3 farklı verim var. Siz bunu artırabilirsiniz. Ayrıca farklı bir dil eklemek isterseniz aynı şekilde ekleyebilirsiniz.
Şimdi yine eklediğimiz bileşenin “SelectLanguage” isminde bir fonksiyonu olacak. Ona da aşağıdaki kodu yazıyoruz. Bu yazdığımız “varLanguage” bizim kullanıcımızın değiştireceği değişken olacak.
varLanguage
Son olarak bileşenimin “Datas” fonksiyonuna aşağıdaki kodu yazıyoruz.
LookUp(
varTranslations,
SelectLanguage = Self.SelectLanguage
).Datas
Artık bileşen kısmı tamam. Uygulamamızın ekranına geçebiliriz.
Ben kullanıcının dil seçimi yapacağı bir “toggle” ekledim. Siz bir buton veya dropdown ile de bu işlemi yapabilirsiniz. Kullanıcı eğer toggle’ı aktif ederse “tr-tr” olacak. Eğer aktif etmezse “en-us” olacak.
Set(varLanguage,"tr-tr")
Set(varLanguage,"en-us")
Daha sonra yukarıdaki ekleme alanından oluşturmuş olduğumuz bileşenimizi (MultiLanguage) sayfaya ekliyoruz. Artık 3 adet text alanı ekleyerek verilerimizi çekebiliriz.
Videoda da görüldüğü üzere text alanlarımız seçime göre değişiyor. Text alanlarımıza sırası ile aşağıdaki kodları yazdım.
MultiLanguage_1.Datas.UserName
MultiLanguage_1.Datas.UserLastName
MultiLanguage_1.Datas.Company
Artık uygulamamız hazır. Bu yöntem haricinde API ile otomatik olarak çeviri yapabileceğiniz yöntemlerde bulunmakta. Ancak bu yöntemde tüm kontrol bende olduğu için ben genel olarak bu yöntemi tercih ediyorum.
Bir sonraki yazıda görüşmek üzere…
Harika bir çözüm. Teşekkürler