0

I am trying to filter this subgrid ShipmentReportsInformation by the end customer field to show only the end customer records of the account that I'm currently viewing. Right now it's showing all of them (can't use the "show only related records" in the form because it's just text).

I'm using Microsoft Dynamics 2016 on-premesis.

So I made a web resource (onload event) and this is what I have put together so far:

function Filter(){

  var str = Xrm.Page.getAttribute('name').getValue(); //this contains the correct text
  //alert(str); 

  var AllRows = Xrm.Page.getControl("ShipmentReportsInformation").getGrid().getRows(); //all rows inserted in AllRows
  var FilteredRows = AllRows.forEach(function (AllRows, i) {
  if(Xrm.Page.getAttribute('new_endcustomer').getValue() == str){
    FilteredRows.push(AllRows.getData().getEntity().getEntityReference());
  }
//Now I think I should only have the lines added to the FilteredRows variable that match the if condition
  });

  Xrm.Page.getControl("ShipmentReportsInformation").setData(FilteredRows); //putting the data from the var in the subgrid

}

I'm pretty new at coding, so please, if I do something ridiculous there, you know. Sadly, it's not working and the log/error report I get isn't any help at all. The error and the form, to illustrate: http://prntscr.com/cwowlf

Can anyone help me spot the issues in the code please?

I even think it's loading the code before the subgrid is loaded but I don't know how to properly delay it. I tried .getreadystate != complete but it's never complete according to that.

Just to help out with what I found so far: here is where I got most of my information from: -https://msdn.microsoft.com/en-us/library/dn932126.aspx#BKMK_GridRowData

Kind regards

Stijndw
  • 1
  • 3

1 Answers1

0

Although the question is old, I was trying to find a way to filter a subgrid and stumbled upon this post. According to the SDK, this is what is mentioned for the setData method:

Web resources have a special query string parameter named data to pass custom data. The getData and setData methods only work for Silverlight web resources added to a form

Cheers

FlorinSander
  • 1
  • 1
  • 4