Тема старая но отпишу здесь, так как было обсуждение проблемы с коллегами по работе.
Предлагаемые здесь решения - антипаттерн. Нужно избегать модификации кода с добавлением методов на лету.
Лучше уж в executeQuery датасорса достать query перед super() и явно выставить сортировки какие нам надо, например так:
X++:
public void executeQuery()
{
Query query;
;
query = this.queryRun() ? this.queryRun().query() : this.query(); // при первом запуске this.queryRun() равен null
// прибиваем гвоздями сортировку как нам надо:
query.dataSourceTable(TableNum(...)).sortClear();
query.dataSourceTable(TableNum(...)).addSortField(fieldNum(..., ...));
// или можно как-то иначе поработать с query - убрав из сортировки запрещенные поля
super();
}
А в общем случае, SysTableLookup можно модифицировать подставив туда форму пустышку с датасорсом, но common табличкой как в SysTableBrowser