Aracılığıyla paylaş


Power Apps'te görünür olması gerektiğinde komut çubuğundaki bir düğme gizlenir

Şunlar için geçerlidir: Power Apps
Özgün KB numarası: 4552163

Düğmenin neden gizlendiğini belirleme

Düğmenin false olarak değerlendirilmesi ile ilişkili komuttabir etkinleştirme kuralı veya görüntüleme kuralı nedeniyle bir düğme gizlenebilir. İlişkili komutun Birleşik Arabirim uygulamalarında düğmeyi gizleyen bir Mscrm.HideOnModern görüntüleme kuralı olabilir. Düğmeyi gizlenmeye zorlayacak bir HideCustomAction da oluşturulmuş olabilir. Kullanıcı çevrimdışıysa, özel komutlar ve etkinleştirme kuralı olmayan Mscrm.IsEntityAvailableForUserInMocaOffline varsayılan komutlar görüntülenmez.

Uyarı

  • EntityPrivilegeRule türünün aşağıdakilerden birinin PrivilegeType değerine sahip herhangi bir görüntüleme kuralı (Oluşturma, Yazma, Silme, Atama, Paylaşma) varlığın Mobile'da Salt Okunur seçeneği etkinse false olarak değerlendirilir ve bu da varlığın yalnızca Okuma ayrıcalığına izin vermesine neden olur. Varlıkta Salt Okunur bayrağı etkinleştirildiğinde false olarak değerlendirilecek en yaygın varsayılan sistem kurallarından bazıları aşağıda verilmiştir, ancak yalnızca bu listeyle (Mscrm.CreateSelectedEntityPermission, Mscrm.CanSavePrimary, Mscrm.CanWritePrimary, , Mscrm.CanWriteSelected, , Mscrm.WritePrimaryEntityPermission, Mscrm.WriteSelectedEntityPermission, Mscrm.DeleteSelectedEntityPermissionMscrm.DeletePrimaryEntityPermissionMscrm.AssignSelectedEntityPermissionMscrm.CanDeletePrimaryMscrm.SharePrimaryPermission) Mscrm.ShareSelectedEntityPermissionsınırlı değildir. Kural tarafından test edilen ayrıcalık kullanıcıya da verildiğinde, varlığı düzenleyebilir ve bu kuralların true olarak değerlendirilmesine izin vermek için Mobil'de Salt Okunur seçeneğinin işaretini kaldırabilirsiniz.
  • Bir düğmeyi Birleşik Arabirimde Mscrm.HideOnModern görünmeye zorlamak için komuttan görüntüleme kuralını kaldırmayın. Görüntüleme kuralına Mscrm.HideOnModern sahip komutlar eski Web İstemcisi arabirimine yöneliktir ve Birleşik Arabirimde desteklenmez ve düzgün çalışmayabilir.
  1. Komut denetleyicisini etkinleştirin ve incelemek için komut düğmesini seçin.

  2. Aşağıdaki örnekte, kişi varlığının kılavuz sayfasındaki Yeni düğmesi görünür değildir ve Yeni (gizli) etiketli bir öğeyle gösterilir.

    Not

    Düğmeniz listelenmiyorsa, bunun nedeni yüklenmiş olabilecek HideCustomAction özelleştirmesi veya ilişkili komutun bir Mscrm.HideOnModern görüntüleme kuralı olması olabilir. Bu kılavuzu yazarken, Komut Denetleyicisi aracı veya HideCustomActionMscrm.HideOnModern görüntüleme kuralı tarafından gizlenmiş düğmeleri listelemez. Şu anda bu dökümü gelecekteki bir güncelleştirmede bu bilgileri içerecek şekilde artırmaya çalışıyoruz.

    Kişi varlığının kılavuz sayfasındaki Yeni düğmesinin görünür olmadığını ve Yeni (gizli) etiketli bir öğeyle gösterildiğini gösteren ekran görüntüsü.

    Not

    Tüm kurallar True olarak değerlendirildiğinde düğme hala gizliyse, bunun nedeni kılavuzlardaki bağlama duyarlı komutlar olabilir. Kılavuzda kayıtlar seçildiğinde, öğesi olmayan SelectionCountRule tüm düğmeler seçili kayıtlara uygun olarak kabul edilmez. Kural değerlendirmeleri Doğru olsa bile gizlenirler. Açılır alt öğeler kayıt tabanlı komutlara sahip olabileceğinden, açılır ögelerin etkilenmediğini unutmayın.

  3. Bu düğmenin komutunun ayrıntılarını görüntülemek için Komut Özellikleri sekmesini seçin. Bu, her kural değerlendirmesinin sonucuyla (Doğru, Yanlış, Atlandı) birlikte etkinleştirme kurallarını ve görüntüleme kurallarını gösterir. Aşağıdaki örnekte Yeni (gizli) düğmesinin komutu gösterilir Mscrm.NewRecordFromGrid ve bunun sonucunda düğme gizleneceği için False olarak değerlendirilen adlı new.contact.EnableRule.EntityRule bir etkinleştirme kuralı vardır.

    Yeni (gizli) düğmesi için komutun Komut özellikleri ayrıntılarını gösteren ekran görüntüsü.

  4. Kuralın new.contact.EnableRule.EntityRule ayrıntılarını görüntülemek için köşeli çift ayraç simgesini seçerek etkinleştirme kuralını genişletin. Bir kuralın neden Doğru veya Yanlış olarak değerlendirileceklerini anlamak için kural türünün biraz anlaşılması gerekir. Her kural türünün ayrıntıları için bkz. Şerit etkinleştirme kurallarını tanımlama ve Şerit görüntüleme kurallarını tanımlama. Aşağıdaki örnekte kural türünün Varlık ve varlık mantıksal adının hesap olduğu gösterilmektedir. Geçerli varlık hesaba eşit olmayan kişi olduğundan, bu kural False döndürür.

    Kuralın ayrıntılarını görüntülemek için bir örnek gösteren ekran görüntüsü.

  5. Bir düğmenin görünürlüğünü düzeltmek için gereken yaklaşım, özel senaryonuzdaki çeşitli özelleştirmelere bağlıdır. Örneğimizi göz önünde bulundurarak:

    • Bu kural hatalı bir şekilde oluşturulduysa, kuralda bildirilen varlığın iletişim kurması amaçlandı ancak hesaba ayarlandıysa, etkinleştirme kuralını düzenleyebilir new.contact.EnableRule.EntityRule ve kuralın true olarak değerlendirilmesine izin verecek değişiklikler yapabilirsiniz.
    • Bu kural komuta istemeden eklendiyse, komutu değiştirebilir Mscrm.NewRecordFromGrid ve etkinleştirme kuralını komut tanımından kaldırabilirsiniz new.contact.EnableRule.EntityRule .
    • Komut, Microsoft tarafından yayımlanan bir tanımın geçersiz kılmasıysa, varsayılan işlevselliği geri yüklemek için komutun bu özel sürümü silinebilir.

Onarım Seçenekleri

Aşağıdaki sekmelerden birinden bir onarım seçeneği belirleyin. İlk sekme varsayılan olarak seçilidir.

Komut silme

Komutun çalışma tanımını içeren başka bir çözüm katmanı varsa, etkin olmayan çalışma tanımını geri yüklemek için tanımı silebilirsiniz.

Tek katman buysa ve artık komuta ihtiyacınız yoksa, komuta başvuran başka bir düğme yoksa bunu çözümünüzden kaldırabilirsiniz.

Bir komutu silmek için özelleştirmeyi hangi çözümün yüklediğini belirlememiz gerekir:

  1. Komutun tanımını yükleyen çözümleri görüntülemek için komut adının altındaki Komut tanımı çözüm katmanlarını görüntüle bağlantısını seçin.

    Komut adının altındaki Komut tanımı çözüm katmanlarını görüntüle bağlantısının ekran görüntüsü.

  2. Çözüm Katmanları bölmesi, belirli bir çözümün yüklediği her şerit bileşeni tanımının katmanlamasını görüntüler. Listenin en üstündeki katman, uygulama tarafından kullanılan geçerli tanımdır, diğer katmanlar etkin değildir ve şu anda uygulama tarafından kullanılmaz. En üstteki çözüm kaldırılırsa veya tanımı kaldıran güncelleştirilmiş bir sürüm yüklenirse, sonraki katman uygulama tarafından kullanılan geçerli etkin tanım olur. Yönetilmeyen bir Etkin çözüm katmanı mevcut olduğunda, her zaman uygulamanın kullandığı tanım olacaktır. Listede Etkin çözüm yoksa, listenin en üstünde listelenen çözüm, uygulama tarafından kullanılan tanım olacaktır. Microsoft tarafından yayımlanmayan tüm özel yönetilen çözümler, Microsoft tarafından yayımlanan çözüm katmanlarında da önceliklidir.

    Varlık bağlamı, şerit özelleştirmesinin açık olduğu nesneyi gösterir; "Tüm Varlıklar" listeleniyorsa, katman varlığa özgü değil Uygulama Şeridi istemci uzantılarından gelir, aksi takdirde varlığın mantıksal adı listelenir.

    İki veya daha fazla katman olduğunda, her çözüm tarafından getirilen tanımların karşılaştırmasını görüntülemek için iki satır seçebilir ve Karşılaştır'ı seçebilirsiniz.

    Geri seçildiğinde önceki Komut Denetleyicisi penceresine döner.

    Aşağıdaki görüntüde, örneğimizdeki komutun çözüm katmanları gösterilmektedir ve kişi varlığı için etkin başlıklı çözüm tarafından belirtildiği gibi yönetilmeyen bir özelleştirme olduğu bir çözüm katmanı olduğunu gösterir. Gerçek senaryonuz farklı olabilir, Etkin çözüm katmanınız olmayabilir, yönetilen bir çözümünüz olabilir ve bu çözümün adı burada listelenir.

    Çözüm katmanının bir örneğini gösteren ekran görüntüsü.

  3. Çözüm katmanlarını gözden geçirip özelleştirmeyi yükleyen çözümü belirlediğimize göre, tanımı uygun çözümde düzeltmemiz gerekir.

Belirli senaryonuzla eşleşen aşağıdaki seçeneklerden birini belirleyin:

Komut yönetilmeyen Etkin çözümdedir

Etkin yönetilmeyen çözüm katmanındaki bir komutu silmek için, varlığı veya Uygulama Şeridi'ni içeren yönetilmeyen bir çözümü dışarı aktaracak ve düğümücustomizations.xml dosyasında düzenleyeceğiz <RibbonDiffXml> ve ardından bileşeni silmek için bu komutun kaldırıldığı bu çözümün yeni bir sürümünü içeri aktaracağız. Bkz. Şeridi dışarı aktarma, düzenlemeye hazırlama ve içeri aktarma.

Komut varlığa özgüdür

Örnek senaryomuza dayanarak varlığın kişi olduğunu ve silinmesi gereken komutun olduğunu Mscrm.NewRecordFromGrid ve DefaultPublisherCITTest adlı bir yayımcıdan Etkin yönetilmeyen çözüm katmanında bildirildiğini belirledik.

  1. Gelişmiş Ayarlar'ı açın.

  2. Ayarlar>Çözümleri'ne gidin.

  3. Yeni bir çözüm oluşturmak için Yeni'yi seçin, Publisher'ı komut ve Etkin çözüm katmanı için Komut Denetleyicisi'nin çözüm katmanları listesinde gösterilen değere ayarlayın. (Örneğimizde, bu DefaultPublisherCITTest'tir)

  4. Varlıklar>Var Olanı Ekle'yi seçin.

  5. Komutunuzun tanımlandığı varlığı seçin (Örneğimizde bu kişidir) ve Tamam'ı seçin.

  6. Son'u seçmeden önce Varlık meta verilerini ekle ve Tüm varlıkları ekle seçeneklerinin işaretini kaldırdığınızdan emin olun.

  7. Kaydet'i seçin.

  8. Çözümü Dışarı Aktar'ı seçin ve yönetilmeyen çözümü dışarı aktarın.

  9. .zip dosyasını ayıklayın.

  10. customizations.xml dosyasını açın.

  11. <Entity> Düzenlemek istediğiniz varlık düğümünün alt düğümünü bulun ve alt <RibbonDiffXml> düğümünü bulun.

  12. <CommandDefinition> Düğümü bulun. (Örneğimizde düğümün <CommandDefinition> kimliği şeklindedir Mscrm.NewRecordFromGrid, bu nedenle aşağıdaki düğümü buluyoruz)

    CommandDefinition düğümünün konumunu gösteren ekran görüntüsü.

  13. <RibbonDiffXml> Düğümü düzenleyin ve silmek istediğiniz komutun kimliğine sahip olan düğümü <CommandDefinition> kaldırın. Mevcut olabilecek diğer <CommandDefinition> düğümleri istemeden silmediğinizden emin olun. (Örneğimize bağlı olarak kimliğin <CommandDefinition>Mscrm.NewRecordFromGridbulunduğu düğümü sileriz.)

    CommandDefinition düğümünü silme ekran görüntüsü.

  14. customizations.xml dosyasını kaydedin.

  15. Değiştirilen customizations.xml dosyasını çözüm .zip dosyasına geri ekleyin.

  16. Çözüm dosyasını içeri aktarın.

  17. Tüm Özelleştirmeleri Yayımla'yı seçin.

Komut Uygulama Şeridindedir ("Tüm varlıklar" için geçerlidir)

Komut varlığa özgü değilse, bunun yerine Uygulama Şeridi'nde bildirilen "Tüm Varlıklar" için geçerliyse, adımlar aşağıdaki gibi biraz farklı olacaktır:

  1. Gelişmiş Ayarlar'ı açın.
  2. Ayarlar>Çözümleri'ne gidin.
  3. Yeni bir çözüm oluşturmak için Yeni'yi seçin, Publisher'ı komut ve Etkin çözüm katmanı için Komut Denetleyicisi'nin çözüm katmanları listesinde gösterilen değere ayarlayın.
  4. İstemci UzantılarıVarolan >Uygulama Şeritlerini>Ekle'yiseçin.
  5. Kaydet'i seçin.
  6. Çözümü Dışarı Aktar'ı seçin ve yönetilmeyen çözümü dışarı aktarın.
  7. .zip dosyasını ayıklayın.
  8. customizations.xml dosyasını açın.
  9. Kök <RibbonDiffXml> düğümü bulun.
  10. <CommandDefinition> Düğümü bulun.
  11. <RibbonDiffXml> Düğümü düzenleyin ve silmek istediğiniz komutun kimliğine sahip düğümü kaldırın<CommandDefinition>. Mevcut olabilecek diğer <CommandDefinitions> düğümleri istemeden silmediğinizden emin olun.
  12. customizations.xml dosyasını kaydedin.
  13. Değiştirilen customizations.xml dosyasını sıkıştırılmış çözüm .zip dosyasına geri ekleyin.
  14. Çözüm dosyasını içeri aktarın.
  15. Tüm Özelleştirmeleri Yayımla'yı seçin.
Komut, şirketimin yazdığını özel olarak yönetilen bir çözümden geliyor

Oluşturduğunuz özel yönetilen bir çözüm tarafından yüklenen bir komutu silmek için şu adımları izleyin:

  1. Özel çözümünüzün yönetilmeyen kaynak sürümüne sahip ayrı geliştirme kuruluşunuzda, Komut yönetilmeyen Etkin çözüm seçeneğindedir için yukarıda listelenen adımları tamamlayın.
  2. Özel çözümünüzün Sürümünü artırma.
  3. Çözümü yönetilen olarak dışarı aktarın.
  4. Etkilenen ayrı kuruluşunuzda, özel yönetilen çözümünüzün bu yeni sürümünü içeri aktarın.
Komut, şirketimin yazmadığı özel yönetilen bir çözümden geliyor (üçüncü taraf/ISV'den)

Üçüncü taraf/ISV tarafından oluşturulan özel yönetilen bir çözüm tarafından yüklenen bir komutu silmek için çözümün yazarına başvurmanız ve çözümün belirli komut tanımını kaldıran yeni bir sürümünü istemeniz ve ardından bu yeni çözümü etkilenen kuruluşunuza yüklemeniz gerekir.