2 votes

Microsoft Dynamics CRM 2015 - Nécessité d'avoir un filtre de recherche de sous-grille

Microsoft Dynamics CRM 2015 - Besoin de filtrer le look up sur une sous-grille Code Javascript que j'utilise :

function SetCustomLookUp() {
    debugger;
    lookupFieldObject = Xrm.Page.data.entity.attributes.get('account');
    if (lookupFieldObject.getValue() != null) {
        entityId = lookupFieldObject.getValue()[0].id;
        entityName = lookupFieldObject.getValue()[0].entityType;
        entityLabel = lookupFieldObject.getValue()[0].name;
    }

    var filterXML = [
            '<filter type="and">',
            '<condition attribute="parentcustomerid" value="{54BC1539-C29C-E511-80E9-3863BB2E6258}" operator="eq"/>',
            '</filter>'
        ].join('\n');
var Subgrid = Xrm.Page.getControl("Contacts");
    document.getElementById("Contacts").addEventListener("click", function () {
        setTimeout(function () {
            var gridControl = Xrm.Page.getControl("Contacts");
            var me = gridControl.$c_0.$N_4.$Y_3;
            me.addPreSearch(function () {
                me.addCustomFilter(filterXML);
            });
        }, 2000);
    });
}

Erreur : "Impossible de lire la propriété 'addEventListener' de null"

0voto

Jose Abad Points 1

J'ai utilisé ce code et l'erreur que vous présentez, la raison est la suivante :

la sous-grille est en train de peindre à la fin du formulaire paint all, et ensuite vous devez ajouter ce même de click quand la sous-grille est en train de peindre

J'ai écrit un petit code pour cela :

var objSubGrid = document.getElementById("subgrid_name");

//CRM loads subgrid after form is loaded.. so when we are adding script on form load.. need to wait until sub grid is loaded. 
// that's why we are adding a delay..
if (objSubGrid == null) {
    setTimeout(functionxxx, 2000);
    return;
} else {

0voto

Andrii Butenko Points 4618

L'article suivant contient la réponse - http://www.magnetismsolutions.com/blog/paulnieuwelaar/2016/06/20/filter-n-n-add-existing-lookup-dynamics-crm-2016-turbo-forms

Aux modérateurs - Oui, je sais qu'il est recommandé de retaper tout ce qui est mentionné dans l'article, mais je suis presque sûr que cet article sera disponible en ligne pendant longtemps, alors je ne le retaperai pas, car il n'a aucun sens pour moi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X