you could try this:
OnRun()
//loc. var.
//ile Record Item Ledger Entry
ConvertFilters('Marked: Yes, Item No.: 1000, Entry Type: Purchase',ile);
MESSAGE(ile.GETFILTERS);
PAGE.RUN(0,ile);
LOCAL ConvertFilters(savedFilters : Text;VAR ile : Record "Item Ledger Entry")
// loc. vars
//recref RecordRef
//recid RecordID
//i Integer
//filter Text
//fieldName Text
//value Text
//fieldNo Integer
//fref FieldRef
//filterMarked Boolean
recid := ile.RECORDID;
recref := recid.GETRECORD;
i := 1;
WHILE i < 4 DO BEGIN
filter := SELECTSTR(i,savedFilters);
filter := CONVERTSTR(filter,':',',');
fieldName := SELECTSTR(1,filter);
fieldName := DELCHR(fieldName,'<>',' ');
value := SELECTSTR(2,filter);
value := DELCHR(value,'<>',' ');
IF fieldName = 'Marked' THEN
filterMarked := TRUE
ELSE BEGIN
fieldNo := GetFieldNo(fieldName,recref);
fref := recref.FIELD(fieldNo);
fref.SETFILTER(value);
END;
i += 1;
END;
// copy filters from recref to table ILE (won't work without that line)
ile.SETVIEW(recref.GETVIEW);
IF filterMarked THEN
ile.MARKEDONLY := TRUE;
LOCAL GetFieldNo(fieldName : Text;recref : RecordRef) fieldNo : Integer
FOR fieldNo := 1 TO recref.FIELDCOUNT DO BEGIN
IF recref.FIELDEXIST(fieldNo) THEN
IF recref.FIELD(fieldNo).NAME = fieldName THEN
EXIT;
END;
EXIT(0);