Power Apps'ten Azure DevOps'a bağlanma

Azure DevOps için Power Apps bağlayıcısı, Azure DevOps kurulumuyla çalışmanıza olanak sağlar. Azure DevOps'a bağlanan bir tuval uygulamasından Azure DevOps sorgularını görüntüleyebilir, farklı iş öğesi türlerine göre iş öğelerini seçebilir ve ayrıntıları görüntüleyebilir veya düzenleyebilirsiniz.

İpucu

Tüm eylemlerin tam listesi için bkz. Azure DevOps bağlayıcısı eylemleri.

Bu makalenin amacı, bir sorgu listesi toplamak ve projedeki iş öğeleriyle etkileşim kurmak için Azure DevOps ile bağlantı kurabilen bir tuval uygulaması oluşturmada size yol göstermektir.

Önkoşullar

Aşağıdaki unsurlar gereklidir:

1. Adım: Azure DevOps veri kaynağını ekleyin

Azure DevOps'a bağlanmak için boş tuval uygulamasını düzenleyin ve Azure DevOps veri kaynağını ekleyin.

Azure DevOps'a bağlanma.

Henüz bir Azure DevOps bağlantınız yoksa, Bağlan'ı seçin ve ardından istemleri izleyerek ayrıntıları sağlayın ve uygulamanın bağlanmasına izin verin.

2. Adım: Paylaşılan sorguları listeleyin

Bu bölümde, kullanılabilir sorguları listelemek için Azure DevOps bağlayıcısı için ListQueriesInFolder eylemini kullanacağız.

  1. Sol bölmeden Ekle > Düzen > Boş dikey galeri'yi seçin.

  2. Galerinin Items özelliği için aşağıdaki formülü girerek örnek parametre değerlerini gereken şekilde değiştirin.

    AzureDevOps.ListQueriesInFolder("Project","Organization","Folder").value
    

Dikey galerinin Items özelliğine eklenen formülü kullanarak klasördeki sorguları listeleyin.

Örnekte "Proje", "Organizasyon" ve "Klasör" değişkenleri kullanılıyorsa ve gerçek değerler formül çubuğunun altındaki metin kutularında (vurgulanmış olarak) bulunuyorsa. Proje ve Kuruluş değerlerinizi Azure Dev Ops'a bağlanmak için kullanılan URL'den bulabilirsiniz. Klasör genellikle "Paylaşılan Sorgular" veya "Sorgularım" olarak adlandırılır.

Azure Dev Ops kurulumunuz için proje ve kuruluş adını bulun.

Yukarıdaki formülde aşağıdaki hatayı alırsanız, OAuth kullanarak üçüncü taraf uygulama erişimini Azure DevOps kuruluşunuzda etkinleştirin ve tekrar deneyin.
"AzureDevOps.ListQueriesInFolder failed:{"status":401,"message":"TF400813:The user 'GUID' isn't authorized to access this resource."}

  1. Galerinin Düzeni için Başlık ve alt başlık seçenğini belirleyin.

  2. Başlık ve altyazılar için Ad ve FolderOptions olarak Azure Dev Ops için uygun alanları seçin.

Sorguları listelemek için Galeri alanları.

3. Adım: İş öğelerini listeleyin

Şimdi, seçilen sorguya yönelik tüm iş öğelerini listelemek üzere GetQueryResultsV2 eylemini Azure DevOps bağlayıcısı için kullanıyoruz. Bu işlem galeriyi veri kaynağına bağlar.

  1. Başka bir boş dikey galeri ekleyip varolan galerinin sağ tarafına yerleştirin.

  2. Galerinin Items özelliği için aşağıdaki formülü girerek örnek parametre değerlerini gereken şekilde değiştirin. Proje ve Kuruluş adlarınızı uygun şekilde ikame edin.

    AzureDevOps.GetQueryResultsV2("Project", Text(Gallery1.Selected.Id),"Organization").value
    

Seçilen sorguya göre var olan galeriden sorgu sonuçlarını alın.

Bu formül proje adı, sorgu kimliği ve kuruluş adıyla birlikte GetQueryResultsV2 eylemini kullanır. Bu örnekteki sorgu kimliği (Gallery2.Selected.Id) daha önce eklenen galeri aracılığıyla kullanılabilir olan sorgu listesinden seçilen sorguya başvurur. Galeri adını uygun şekilde değiştirin.

GetQueryResultsV2 öğesinin döndürülen sonucu dinamiktir. Bu nedenle değerlerin de türü belirtilmemiştir.

Başlık ve iş öğesi türünün iş öğesi alanlarını göster.

Ancak bazı değerlere erişebilirsiniz. Azure Dev Ops, türü belirtilmiş tüm öğeler için temel bir değer kümesi döndürür. Galeride veri kartını seçin ve iki metin etiketi ekleyin. Etiketlerin metin özelliğini aşağıdaki gibi ayarlayın:

    ThisItem.Value.'System.WorkItemType'
    ThisItem.Value.'System.Title'

4. Adım: İş öğelerini görüntüleyin

Uygulama, tüm sorguların bir listesini ve seçilen sorgu için iş öğelerinin listesini gösterir. Artık verileri görüntülemek için kullanacağımız bir düzenleme formu ekleyebiliriz.

  1. Her iki galeriyi de ekranın soluna taşıyarak eklediğimiz düzenleme formuna yer açmak için ekrandaki iki galeriyi düzenleyin.

  2. Ekrana Formu düzenle'yi ekleyin ve galerinin sağ tarafına taşıyın.

Formu düzenle denetimi ekleme.

  1. Formu düzenle denetiminin DataSource özelliğini AzureDevOps.GetQueryResultsV2("Project", Text(Gallery1.Selected.Id),"Organization").value olarak ayarlayın. Proje ve Kuruluş adlarınızı uygun şekilde ikame edin.

  2. Formu düzenle denetiminin Item özelliğini Gallery2.Selected olarak ayarlayın.

    Bu formül, düzenleme formunun Item özelliğini iş öğeleri listesinde seçilen iş öğesi olarak ayarlar.

  3. Ekranın sağ tarafındaki özellikler bölmesinden Alanları düzenle'yi seçin.

  4. ... (üç nokta) > Özel kart ekleme seçeneğini belirleyin.

    Özel kart ekleme.

  5. Üstteki düzenleme formunda veri kartını yeniden düzenleyin.

    Özel kart, düzenleme formunun içindeki üst bölüme taşındı.

  6. Özel kartı seçili durumda tutarak bir Metin girişi denetimi ekleyin. Seçildiğinde, denetim özel kartın içine eklenir.

  7. Metin girişi denetiminin boyutunu artırın.

Özel kartın içinde Metin girişi denetimi.

  1. Metin girişi denetiminin Default özelliğini Text(ThisItem.Value.'System.Title') olarak ayarlayın. Metin işlevi, dönüşün "türünü" Metin olarak belirler.

Bu, iş öğesinin başlığına başvuran metin girişi denetimidir.

Bu formül Metin girişi denetiminin içindeki varsayılan metni seçilen Azure DevOps iş öğesinin başlık Başlık alanı olarak ayarlar.

İpucu

Azure DevOps projeniz Açıklama alanını HTML veya zengin metinle kullanıyorsa Metin girişi veya etiket denetimleri yerine Zengin metin düzenleyici giriş denetimini kullanabilirsiniz. Bu durumda Zengin metin düzenleyicisi denetimini kullanmak düz veya zengin metın yerine HTML kodu ile görüntülenen açıklama gibi sorunların giderilmesine yardımcı olur.

  1. Default özelliği Text(ThisItem.Value.'System.State') olarak ayarlanmış Metin girişi denetimi bulunan başka bir özel kart eklemek için önceki adımları tekrarlayın.

    Bu formül, metin giriş denetiminin içindeki varsayılan metni seçili Azure DevOps iş öğesinden Durum alanına ayarlar.

  2. Kaydet simgesini ekleyeceğimiz alanı oluşturmak için düzenleme formundaki veri kartlarını yeniden düzenleyin.

Formlarınıza türü belirtilmemiş ve dinamik dönüş değerleri ekleme

Şu ana kadar, formdaki tüm veri kartlarıyla çalışabilen ortak bir DataSource ve Öğe özelliği sunarak veri erişim hikâyesini sadeleştiren Düzenleme formunu kullandık. Türü belirtilmemiş değerlere erişmek için Düzenleme formunu kullanırsanız veri kaynağı ve öğe özelliklerinin şu şekilde ayarladığınızdan emin olun: (Organizasyon ve Proje için değerlerinizi ikame edin.)

   AzureDevOps.GetWorkItemDetails(Gallery2.Selected.Value.'System.Id',Organization, Project, Gallery2.Selected.Value.'System.WorkItemType')

"WorkItemType" metin özelliğini, örneğin "Özellik" olarak geçirdiğinizde, Özellikler ve İş Öğeleri gibi öğelerden geçiş yapmanıza olanak tanır. Bu öğeler için alan kümeleri birbirinden farklı olduğundan, bu çağrıdan dönüş türü dinamiktir.

Text(ThisItem.Value.'System.Id') yaygın yöntemini kullanarak belirli değerlere erişebilirsiniz. Alternatif olarak, Text(ThisItem.fields.System_Id) kullanarak daha genel bir dinamik yanıt yoluyla bunlara erişebilirsiniz. Bu dinamik değer adları genellikle belgelenmez. Standart dışı alanlar da dahil olmak üzere bu alanlar için doğru adları bulmak üzere izleme aracını açın ve GetWorkItemDetails çağrısına ilişkin veri yanıtını inceleyin. Daha fazla yönerge için aşağıdaki görüntüye başvurun.

Düzenleme formu yerine bir kapsayıcıyı kullanıyorsanız, özel takım alanından bilgi alan aşağıdaki gibi bir formül kullanarak bu değerleri alabilirsiniz.

Text(AzureDevOps.GetWorkItemDetails(Gallery2.Selected.Value.'System.Id',Organization, Project, Gallery2.Selected.Value.'System.WorkItemType').fields.One_custom_CustomField1)

İş öğesinin başlığına başvuran metin girişi denetimi.

Azure DevOps'ta değerlerin güncelleştirilmesi

Azure Dev ops'taki bir değeri güncelleştirmek için bir düğmenin OnSelect bölümündeki UpdateWorkItem öğesini kullanın.

AzureDevOps.UpdateWorkItem(
    Gallery2.Selected.Value.'System.Id', 
    Organization, 
    {   description: "This is a new description", 
        dynamicFields: ParseJSON(JSON({'Custom Field 1': "This is new custom text" })) 
    }
);

Formül yeni örnek metin ekler ancak PowerFx ifadesi de kullanabilirsiniz.

Formülün özel olmayan veya yerleşik alan adları için küçük harf kullandığından emin olun. Örneğin, "Açıklama" alanına başvurulduğunda, Description:"This is a new description" yerine description: "This is a new description" kullanın. Yanlış büyük/küçük harf kullanımı "400 İstenen işlem için gereken parametreler eksik: 'UpdateWorkItem'" hatasına neden olabilir. Özel /dinamik değerler için görüntüleme alanının normal büyük/küçük harf düzenini kullanabilirsiniz. Örneğin, özel alan için alan adı yalnızca "Özel Alan 1" görünen adıdır. Dönüş değerlerinin bu adlandırma kuralı, Azure DevOps'a özeldir ve diğer servislerden farklı olabilir.

Sonraki adımlar

Uygulamayı yürütün. Sorgu listesinden bir sorgu seçin. Ardından, başlığını veya açıklamasını güncelleştirmek istediğiniz bir iş öğesi seçin. Değişiklik yapın ve ardından Kaydet düğmesini seçin. Değişiklikler Azure DevOps iş öğesine kaydedilir. Başka bir sorguya geçiş yapın ve uygulamanın içinde gösterilecek değişiklikleri görmek üzere yeniden geçiş yapın.

Benzer şekilde, uygulamayı daha ayrıntılı şekilde özelleştirin veya formlarında ek veri kartlarıyla birlikte bir uygulama oluşturun. Farklı veri kartları içinde veri göstermek için, formu düzenle yerine formu görüntüle de kullanabilirsiniz. Formu görüntüle kullanırken, metni görüntülemek için Metin etiketi denetimini kullandığınızdan emin olun. Zengin metin veya HTML biçimi kullanırken (Azure DevOps'taki Açıklama alanı gibi), HTML metin denetimini kullanın. Bu uygulamayı özelleştirme hakkında daha fazla bilgi için bkz. denetimler, galeri, formlar ve kartlar.

Ayrıca bkz.

Power Apps'te dinamik şema veri kaynaklarıyla çalışma (deneysel)

Not

Belge dili tercihlerinizi bizimle paylaşabilir misiniz? Kısa bir ankete katılın. (lütfen bu anketin İngilizce olduğunu unutmayın)

Anket yaklaşık yedi dakika sürecektir. Kişisel veri toplanmaz (gizlilik bildirimi).