Aracılığıyla paylaş


Power Apps'te komut çubuğundaki bir düğme düzgün çalışmıyor

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

Düğmenin neden düzgün çalışmadığını belirleme

Birkaç faktör düğme eyleminin başarısız olmasına neden olabilir. Bunlar, düğmenin ilişkili komut tanımının yanlış bildirildiği geçersiz şerit özelleştirmelerini içerir.

Uyarı

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 Arabirim'de desteklenmez. Bu nedenle, düzgün çalışmayabilir.

Bir komut doğru bildirmezse, bir düğme seçmek hiçbir şey yapamaz veya bir hata iletisi görüntüleyebilir.

En iyi çözümü sağlamamıza yardımcı olmak için aşağıdaki seçeneklerden birini belirleyin. İlk sekme varsayılan olarak seçilidir.

Seçildiğinde hiçbir şey içermeyen bir düğmeyi düzeltme

Bir düğme seçildiğinde ve hiçbir şey olmadığında, bu durum genellikle düğmeyle ilişkili komutun yanlış yapılandırmasından kaynaklanır.

Aşağıda, eylemin değeri bildirilirken JavaScriptFunction yapılan tipik komut yapılandırma hataları verilmiştir. Bu hatalar bir düğmenin düzgün çalışmamasına neden olabilir ve seçildiğinde hiçbir şey yapmaz gibi görünebilir.

  • Geçersiz functionname: JavaScript işlevinin adı, Library özelliğine atanan JavaScript web kaynağındaki geçerli bir işlev adıyla eşleşmiyor.
  • Geçersiz Kitaplık: Bu yol geçerli bir JavaScript web kaynağına başvurmuyor veya ön ekine sahip $webresource:değil.
  • Eksik parametreler: JavaScript işlevi belirli parametreleri bekliyor ve komut tanımı bunları bildirmiyor.
  • Yanlış parametre türü veya sırası: Parametreler yanlış bir tür kullanılarak bildirilir veya JavaScript işlev bildiriminde listelendiklerinden farklı bir sıradadır.

Daha fazla yapılandırma yardımı için Şerit eylemlerini tanımlama bölümüne bakın.

Bu yapılandırmalar doğruysa, nedeni JavaScript kod hatası olabilir. Özel JavaScript işlevi yanlış kodlanmışsa ve beklenen davranışı çağırmıyorsa, düğme beklendiği gibi çalışmaz. Listelenen yapılandırma hatalarından birini bulursanız sorunu çözmek için komut tanımını düzeltin. Aksi takdirde, düğmenin düzgün çalışması için JavaScript işlev kodunun hatalarını ayıklamanız ve düzeltmeniz gerekebilir.

Düğme komutunun ne olduğunu ve hatalı tanımı hangi çözümün yüklemiş olduğunu belirleyin.

  1. Komut denetleyicisini etkinleştirin ve incelemek için komut düğmesini seçin.

  2. Bu düğmenin komutunun ayrıntılarını görüntülemek için Komut Özellikleri sekmesini seçin.

    Düğmenin Komut Özellikleri sekmesinin ekran görüntüsü.

  3. Komut özellikleri sekmesi eylemleri ve karşılık gelen JavaScriptFunction yapılandırmayı görüntüler. 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ü.

  4. Çözüm Katmanları bölmesi, belirli bir çözümün yüklü olduğu her şerit bileşeni tanımının katmanları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ı varsa, bu 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 sağlanan 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önersiniz.

    Yalnızca bir çözüm katmanı varsa 8. adıma gidin. Aksi takdirde, ilk iki çözüm katmanını seçin. (Etkin çözümde bir katmanınız varsa ancak en üstte listelenmiyorsa Etkin çözüm katmanını ve ardından üst satırı seçin.) Ardından Karşılaştır'ı seçin.

    İlk iki çözüm katmanını ve Karşılaştır seçeneğini belirlemeye ilişkin ekran görüntüsü.

  5. Geçerli etkin tanımın ve önceki etkin olmayan tanımın karşılaştırması görüntülenir ve varsa farkları gösterir. Aşağıdaki örnekte, Yönetilmeyen Etkin tanımın, Microsoft tarafından yayımlanan Sistem çözümü katmanındaki FunctionName diğer etkin olmayan tanımla karşılaştırıldığında değerin yanlış belirtilmesiyle özelleştirildiği gösterilmektedir. Değerinin FunctionName olması XrmCore.Commands.Delete.deletePrimaryRecordbeklenir, ancak özel tanım olarak bildirilmiştir FunctionName="deletePrimaryRecord". Bu durumda, işlev bulunamadığından düğme seçildiğinde hiçbir şey gerçekleşmez.

    Geçerli etkin tanımın ve önceki etkin olmayan tanımın karşılaştırmasını gösteren ekran görüntüsü.

  6. Bir düğmenin eylem işlevselliğini düzeltmek için gereken yaklaşım, belirli senaryonuzdaki çeşitli özelleştirmelere bağlıdır. Örnek göz önünde bulundurularak, komut yanlış FunctionName bir değer belirtilerek özelleştirildi. Komutun özel sürümünü değiştirebilir ve değeri düzeltebilirsiniz FunctionName . Bu, Microsoft tarafından yayımlanan bir tanımın özel bir geçersiz kılması olduğundan ve başka bir kasıtlı değişiklik olmadığından, varsayılan işlevselliği geri yüklemek için komutun bu özel sürümünü silmenizi öneririz.

Aşağıdaki onarım seçeneklerinden birini seçin.

Seçenek 1: Yanlış JavaScriptFunction bildirimine sahip komutu silin
komut yönetilmeyen Etkin çözümündedir.

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üzenleyip <RibbonDiffXml> bileşeni silmek için bu komutun kaldırıldığı bu çözümün yeni bir sürümünü içeri aktaracaksınız. Bkz. Şeridi dışarı aktarma, düzenlemeye hazırlama ve içeri aktarma.

Komut varlığa özgüdür

Örnek senaryoya göre varlığın hesap olduğunu, silinmesi gereken komutun olduğunu Mscrm.DeletePrimaryRecordve DefaultPublisherCITTest adlı bir yayımcının Etkin yönetilmeyen çözüm katmanında bildirildiğini belirlediniz.

  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 ve Publisher'ı komut ve Etkin çözüm katmanı için Komut Denetleyicisi'nin çözüm katmanları listesinde gösterilen değere ayarlayın. (Örnekte, bu DefaultPublisherCITTest'tir.)

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

  5. Komutunuzun tanımlandığı varlığı seçin (örnekte bu "hesap"tır) ve ardından Tamam'ı seçin.

  6. Son'u seçmeden önce Varlık meta verilerini ekle ve Tüm varlıkları ekle seçeneklerini temizlediğinizden 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. (Örnekte düğümün <CommandDefinition> kimliği şeklindedir Mscrm.DeletePrimaryRecord. Bu nedenle, aşağıdaki düğümü bulursunuz.)

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

  13. <RibbonDiffXml> Silmek istediğiniz komutun kimliğine sahip olan düğümü <CommandDefinition> kaldırmak için düğümü düzenleyin. Mevcut olabilecek diğer <CommandDefinition> düğümleri istemeden silmediğinizden emin olun. (Örne bağlı olarak, kimliğin <CommandDefinition>Mscrm.DeletePrimaryRecordbulunduğu düğümü silebilirsiniz.)

    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 yükleyin.

  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 ancak 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 ve 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. öğesini <RibbonDiffXml>düzenleyin ve silmek istediğiniz komutun kimliğine sahip düğümü kaldırın <CommandDefinition> . Mevcut olabilecek diğer <CommandDefinition> 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 yükleyin.
  14. Çözüm dosyasını içeri aktarın.
  15. Tüm Özelleştirmeleri Yayımla'yı seçin.
Komutu, şirketimin yazdığını özel olarak yönetilen bir çözümden alır.

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 (üçüncü bölümden veya ISV'den).

Üçüncü taraf veya 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şvurarak çözümün belirli komut tanımının kaldırıldığı yeni bir sürümünü istemeniz ve ardından bu yeni çözümü etkilenen kuruluşunuza yüklemeniz gerekir.

Seçenek 2: JavaScriptFunction bildirimi komutunu düzeltme
komut yönetilmeyen Etkin çözümündedir.

Etkin yönetilmeyen çözüm katmanındaki bir komutu düzeltmek için, varlığı veya Uygulama şeridini içeren yönetilmeyen bir çözümü dışarı aktaracak, customizations.xml dosyasındaki düğümü düzenleyip <RibbonDiffXml> bu çözümün sabit komut tanımını içeren yeni bir sürümünü içeri aktaracaksınız. Bkz. Şeridi dışarı aktarma, düzenlemeye hazırlama ve içeri aktarma.

Uyarı

Düğmeyi Birleşik Arabirimde görünmeye zorlamak için komuttan görüntüleme kuralını kaldırmayın Mscrm.HideOnModern . 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.

Komut varlığa özgüdür

Örnek senaryoya göre varlığın hesap olduğunu, düzeltilmesi gereken komutun olduğunu Mscrm.DeletePrimaryRecordve DefaultPublisherCITTest adlı bir yayımcıdan Etkin yönetilmeyen çözüm katmanında bildirildiğini belirlediniz.

  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 ve Publisher'ı komut ve Etkin çözüm katmanı için Komut Denetleyicisi'nin çözüm katmanları listesinde gösterilen değere ayarlayın. (Örnekte, bu DefaultPublisherCITTest'tir.)

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

  5. Komutunuzun tanımlandığı varlığı seçin (Örnekte bu hesaptır) ve ardından Tamam'ı seçin.

  6. Son'u seçmeden önce Varlık meta verilerini ekle ve Tüm varlıkları ekle seçeneklerini temizlediğinizden 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. (Örnekte düğümün <CommandDefinition> kimliği şeklindedir Mscrm.DeletePrimaryRecord. Bu nedenle, aşağıdaki düğümü bulursunuz.)

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

  13. <RibbonDiffXml> Düğümü düzenleyin ve düğümü düzeltmek için <CommandDefinition> komutun doğru koşullarda düzgün çalışmasını sağlayacak düğümde gerekli değişiklikleri yapın. Komutları bildirme hakkında daha fazla bilgi için bkz. Şerit komutlarını tanımlama ve Şerit eylemlerini tanımlama. (Örnekten yola çıkarak, değeri XrmCore.Commands.Delete.deletePrimaryRecordolarak ayarlayarak düğümleri FunctionNameJavaScriptFunction değiştirebilirsiniz<CommandDefinition>.)

    FunctionName değerini ayarlayarak CommandDefinition düğümünü JavaScriptFunction değiştirme ekran görüntüsü.

  14. Değiştirilen customizations.xml dosyasını çözüm .zip dosyasına geri yükleyin.

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

  16. 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 ancak 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 ve 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. öğesini <CommandDefinition>bulun.
  11. Düğümde <RibbonDiffXml> , komutu düzeltmek için doğru koşullarda düzgün çalışmasını sağlayacak gerekli değişiklikleri <CommandDefinition> yapmak için düğümü düzenleyin. Komutları bildirme hakkında daha fazla bilgi için bkz. Şerit komutlarını tanımlama ve Şerit eylemlerini tanımlama.
  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 yükleyin.
  14. Çözüm dosyasını içeri aktarın.
  15. Tüm Özelleştirmeleri Yayımla'yı seçin.
Komut, benim yazdığım özel yönetilen bir çözümden geliyor.

Oluşturduğunuz özel yönetilen bir çözüm tarafından yüklenen bir komutu düzeltmek 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, yazmadığım veya kuruluşumun sahip olmadığı (üçüncü taraf/ISV'den) özel yönetilen bir çözümden geliyor.

Üçüncü taraf veya ISV tarafından oluşturulan özel yönetilen bir çözüm tarafından yüklenen bir komutu düzeltmek için çözümün yazarına başvurarak çözümün sabit komut tanımını içeren yeni bir sürümünü istemeniz ve bu yeni çözümü etkilenen kuruluşunuza yüklemeniz gerekir.

Betik hata iletisi alıyorum: "Geçersiz JavaScript Eylem Kitaplığı"](#tab/hata)

Seçildiğinde hata görüntüleyen düğmeyi düzeltme

Şerit komut çubuğu düğmesi seçiliyse ve bir hata oluşursa, hata genellikle yanlış şerit komutu özelleştirmelerinden kaynaklanır.

"Geçersiz JavaScript Eylem Kitaplığı" Betik Hatası Düzeltildi

Aşağıdakine benzer bir betik hata iletisi alabilirsiniz:

Geçersiz JavaScript Eylem Kitaplığı: [betik adı] bir web kaynağı değil ve desteklenmiyor.

Betik hata iletisinin bir örneğini gösteren ekran görüntüsü.

Bunun nedeni, komutun üzerinde yanlış kitaplık bildirmiş geçersiz bir şerit komut özelleştirmesidir JavaScriptFunction.

  1. Komut denetleyicisini etkinleştirin ve incelemek için komut düğmesini seçin.

  2. Aşağıdaki örnekte hesap varlığının form sayfasındaki Yeni düğmesi görünür ve Yeni etiketli bir öğeyle gösterilir.

    Hesap varlığının form sayfasındaki Yeni düğmesini gösteren ekran görüntüsü.

  3. Bu düğmenin komutunun ayrıntılarını görüntülemek için Komut Özellikleri sekmesini seçin. Bu işlem Actions ve JavaScriptFunction bildirimini görüntüler ve her kural değerlendirmesinin sonucuyla (True, False, Skipped) birlikte kuralları etkinleştirir veya görüntüler.

    İşlev bildiriminin ayrıntılarını görüntülemek için "köşeli çift ayraç" simgesini seçerek JavaScriptFunction'ı genişletin. Library özelliği bir JavaScript web kaynağı olmalı ve ön eki eklenmelidir $webresource:. Aşağıdaki örnekte Library özelliğinin _/_static/common/scripts/RibbonActions.jsolduğu gösterilmektedir. Bu, geçerli bir JavaScript web kaynağının yolu değildir. Sorunu düzeltmek için doğru değeri belirlemeye çalışmak için komutun çözüm katmanlarını gözden geçirmeniz gerekir.

    Library özelliğinin bir örneğini gösteren ekran görüntüsü.

  4. 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ü.

  5. Çö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, örnekteki komutun çözüm katmanları gösterilmektedir ve iki çözüm katmanı olduğunu ve biri Etkin başlıklı çözüm tarafından belirtildiği gibi yönetilmeyen bir özelleştirmedir ve diğeri Microsoft tarafından yayımlanan Sistem çözümündendir. 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.

    Her çözüm tarafından getirilen tanımların karşılaştırmasını görüntülemek için ilk iki satırı seçin ve Karşılaştır'ı seçin. Yalnızca bir çözüm katmanınız varsa bu adımı atlayacaksınız.

    Tanımların karşılaştırmasını görüntülemek için ilk iki satırı ve Karşılaştır seçeneğini belirleme ekran görüntüsü.

  6. Komut tanımları arasındaki karşılaştırma, iki katman arasında mevcut olabilecek farkları gösterir. Aşağıdaki örnek, Kitaplık değerinin farklı olduğunu açıkça göstermektedir. Etkin çözümden yönetilmeyen girdi yanlış bir yola ayarlanmış _/_static/common/scripts/RibbonActions.js (belirli yolunuz biraz farklı olabilir) ve Microsoft'un varsayılan tanımı kitaplığı olarak $webresoure:Main_system_library.jsayarlamıştır. Bu, bu belirli komut için desteklenen bir yoldur (bu değer, belirli bir komutunuza bağlı olarak farklı olabilir). Desteklenen tek yol, geçerli bir JavaScript web kaynağı adıyla $webresource: başlayan ve bu kaynakla biten yoldur.

    Kitaplık değerinin farklı olduğu bir örneği gösteren ekran görüntüsü.

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

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

komut yönetilmeyen Etkin çözümündedir.

Komutu düzeltme yaklaşımı, tanımınızın tek olup olmadığına veya başka etkin olmayan tanımlar olup olmadığına ve değişikliklerin kasıtlı olup olmamasına bağlı olarak değişir.

Senaryonuzu yansıtan seçeneği belirleyin:

  • Komutun herhangi bir kasıtlı değişikliği yok ve bu özel katmanı kaldırmak istiyorum.

    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, customizations.xml dosyasındaki düğümü düzenleyip <RibbonDiffXml> bileşeni silmek için bu komutun kaldırıldığı bu çözümün yeni bir sürümünü içeri aktaracaksınız. Bkz. Şeridi dışarı aktarma, düzenlemeye hazırlama ve içeri aktarma.

    Komut varlığa özgüdür

    Örnek senaryoya göre varlığın hesap olduğunu, silinmesi gereken komutun olduğunu Mscrm.NewRecordFromFormve DefaultPublisherCITTest adlı bir yayımcının Etkin yönetilmeyen çözüm katmanında bildirildiğini belirlediniz.

    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 ve Publisher'ı komut ve Etkin çözüm katmanı için Komut Denetleyicisi'nin çözüm katmanları listesinde gösterilen değere ayarlayın. (Örnekte, bu DefaultPublisherCITTest'tir.)

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

    5. Komutunuzun tanımlandığı varlığı seçin. (Örnekte bu hesaptır) ve ardından Tamam'ı seçin.

    6. Son'u seçmeden önce Varlık meta verilerini ekle ve Tüm varlıkları ekle seçeneklerini temizlediğinizden 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 (Örnekte, kimliği <CommandDefinition> şeklindedirMscrm.NewRecordFromForm. Bu nedenle, aşağıdaki düğümü bulursunuz.)

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

    13. <RibbonDiffXml> Belirli <CommandDefinition> bir düğümü kaldırmak için düğümü düzenleyin. Mevcut olabilecek diğer <CommandDefinition> düğümleri istemeden silmediğinizden emin olun. (Örne bağlı olarak, kimliğin <CommandDefinition>Mscrm.NewRecordFromFormbulunduğu düğümü silebilirsiniz.)

      CommandDefinition düğümünü silme örneğini gösteren 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 yükleyin.

    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 ancak 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 ve 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. Silmek istediğiniz komutun <CommandDefinition> eşleşen kimliğine sahip düğümü kaldırmak için düzenleyin<RibbonDiffXml>. Mevcut olabilecek diğer <CommandDefinition> 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 yükleyin.
    14. Çözüm dosyasını içeri aktarın.
    15. Tüm Özelleştirmeleri Yayımla'yı seçin.
  • Komutta tutmak istediğim ek değişiklikler var ve bu çözüm katmanını düzeltmek istiyorum.

    Etkin yönetilmeyen çözüm katmanındaki bir komutu düzeltmek için, varlığı veya Uygulama Şeridi'ni içeren yönetilmeyen bir çözümü dışarı aktaracak, düğümücustomizations.xml dosyasında düzenleyip <RibbonDiffXml> bu çözümün sabit komut tanımını içeren yeni bir sürümünü içeri aktaracaksınız. Bkz. Şeridi dışarı aktarma, düzenlemeye hazırlama ve içeri aktarma.

    Uyarı

    Düğmeyi Birleşik Arabirimde görünmeye zorlamak için komuttan görüntüleme kuralını kaldırmayın Mscrm.HideOnModern . 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.

    Komut varlığa özgüdür

    Örnek senaryoya göre varlığın hesap olduğunu, düzeltilmesi gereken komutun olduğunu Mscrm.NewRecordFromFormve DefaultPublisherCITTest adlı bir yayımcıdan Etkin yönetilmeyen çözüm katmanında bildirildiğini belirlediniz.

    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 ve Publisher'ı komut ve Etkin çözüm katmanı için Komut Denetleyicisi'nin çözüm katmanları listesinde gösterilen değere ayarlayın. (Örnekte, bu DefaultPublisherCITTest'tir.)

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

    5. Komutunuzun tanımlandığı varlığı seçin (Örnekte bu hesaptır) ve ardından Tamam'ı seçin.

    6. Son'u seçmeden önce Varlık meta verilerini ekle ve Tüm varlıkları ekle seçeneklerini temizlediğinizden 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çma

    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. (Örnekte düğümün <CommandDefinition> kimliği şeklindedir Mscrm.NewRecordFromForm. Bu nedenle, aşağıdaki düğümü bulursunuz.)

      Kimliği Mscrm.NewRecordFromForm olan CommandDefinition düğümünün konumunu gösteren ekran görüntüsü.

    13. Komutu düzeltmek için komutun doğru koşullarda düzgün çalışmasını sağlayacak düğümde gerekli değişiklikleri <CommandDefinition> yapmak için düzenleyin<RibbonDiffXml>. Komutları bildirme hakkında daha fazla bilgi için bkz. Şerit komutlarını tanımlama ve Şerit eylemlerini tanımlama. (Örnekte, ayarını yaparak Library="$webresoure:Main_system_library.js"düğümü değiştirebilir <CommandDefinition> ve ardından değerin eşleştiğinden FunctionName emin olursunuz. Örnekte bu FunctionName="XrmCore.Commands.Open.openNewRecord"olacaktır.)

      CommandDefinition düğümünü değiştirmek ve functionName değerinin eşleştiğinden emin olmak için 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 yükleyin.

    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 ve 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. Düğümde <RibbonDiffXml> , komutu düzeltmek için doğru koşullarda düzgün çalışmasını sağlayacak gerekli değişiklikleri <CommandDefinition> yapmak için düğümü düzenleyin. Komutları bildirme hakkında daha fazla bilgi için bkz. Şerit komutlarını tanımlama ve Şerit eylemlerini tanımlama.
    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 yükleyin.
    14. Çözüm dosyasını içeri aktarın.
    15. Tüm Özelleştirmeleri Yayımla'yı seçin.
Komut, benim yazdığım özel yönetilen bir çözümden geliyor.

Oluşturduğunuz özel yönetilen bir çözüm tarafından yüklenen bir komutu düzeltmek 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, yazmadığım veya kuruluşumun sahip olmadığı (üçüncü taraf veya ISV'den) özel yönetilen bir çözümden geliyor.

Üçüncü taraf veya ISV tarafından oluşturulan özel yönetilen bir çözüm tarafından yüklenen bir komutu düzeltmek için çözümün yazarına başvurarak çözümün sabit komut tanımını içeren yeni bir sürümünü istemeniz ve ardından bu yeni çözümü etkilenen kuruluşunuza yüklemeniz gerekir.

Komut, Microsoft tarafından yayımlanan bir yönetilen çözümdedir.

Microsoft tarafından yayımlanan yönetilen bir çözüm tarafından yüklenen bir komutu düzeltmek için çözümün daha yeni bir sürümünün yüklü olması gerekebilir. Bu genellikle bir sürüm güncelleştirmesi sırasında yapılır. Hala düzeltilmesi gereken bir hata tanımlamış olabilirsiniz. Yardım için Müşteri Desteği'ne başvurun.