anchor.diff:  ----
   grid.addColumn("Name",
       person -> person.getFirstName() + " " + person.getLastName())
  -  .setSortBuilder(
  +  .setSortOrderProvider(
       // Sort according to last name, then first name
       direction -> Stream.of(
         new SortOrder("lastName", direction),
  
positive.code: 
      personToChange.setName("Changed person");
  
      dataProvider.refresh(0);
  });
  ----
  
  [TIP]
  There might be situations where we cannot tell exactly how the data has changed, but only that some parts might have been modified. We can then use the [methodname]#refreshAll()# method, which will make the components reload all the data.
  
  == Lazy Loading Data to a Listing
  
  
negative.code: // Will be sortable by the user
  // When sorting by this column, the query will have a SortOrder
  // where getSorted() returns "name"
  grid.addColumn(Person::getName)
    .setCaption("Name")
    .setSortProperty("name");
  
  // Will not be sortable since no sorting info is given
  grid.addColumn(Person::getYearOfBirth)
    .setCaption("Year of birth");
  ----
  
  There might also be cases where a single property name is not enough for sorting.
  