Sort order not swapping.

When clicking sort buttons, it does not seem to adjust the direction setting in SortSettings. I think you need something like........
procedure TTIWRGSortSettings.SetColumn(const Value: Integer);
  if FColumn = Value then
     if FDirection = sdAscending then FDirection := sdDescending else FDirection := sdAscending;
{ to here }
  FColumn := Value;

The SortSettings.Direction property value is updated in the TTIWCustomAdvWebGrid.ColumnHeaderClick procedure in IWAdvWebGrid.pas

Sorry - I am using a TTIWDBAdvWebGrid and using the title buttons with the AsyncSort property. This procedure has not been over-ridden in the DBAdvWebGrid object. Perhaps it needs something like the non DB grid??

This behavior is by design.

In the TTIWDBAdvWebGrid is not done automatically, you can use the ColumnHeaderClick event to programmatically change the sort order of your dataset. In this case swapping the SortSettings.Direction property is also left to the responsibility of the programmer to decide if it needs to be changed or not.

Its asynchronous functionality make this? How do I?

You can enable async sorting by setting the AsyncSort property to true.

AsyncSort property is set to true. But the column headers by clicking on the lines is not sorted.

We are not aware of any issues with async sorting in the TIWAdvWebGrid.

Please provide a ready to use sample project that demonstrates the issue so I can further investigate this.

Information about how to send sample projects by email can be found on the following page: 

I'm referring to TTIWDBAdvWebGrid

As noted above, when using the TTIWDBAdvWebGrid sorting will not be done automatically but should be added programmatically using the ColumnHeaderClick event.