![]() |
#7 |
Участник
|
Если использовать GETVIEW и SETVIEW, то мы скопируем только "VIEW"(я не силён в терминах в Navision, поэтому может называю вещи не своими именами). Фильтры при этом скопируются, но только для FILTERGROUP(0), а если у нас в RecRef были созданы фильтры в FILTERGROUP(2), то они "пропадут"(в help написано, что FILTERGROUP может использоваться только с SETRANGE и SETFILTER). Так что вопрос осаётся открытым. Привожу код, в котором надо:
- (в идеале)вызвать default Lookup форму для RecRef; - (хотя бы)скопировать фильтр из RecRef в переменную типа Record подтипа "Table No."(назовём её TableRec) Filter - переменная, в которой хранится фильтры для полей таблицы "Table No.". RecRef.OPEN(Rec."Table No.", FALSE); RecRef.RESET; RecRef.FILTERGROUP(2); WHILE Filter.NEXT <> 0 DO BEGIN IF Filter.Filter <> '' THEN BEGIN FieldRef := RecRef.FIELD(Filter."Field No."); FieldRef.SETFILTER(Filter.Filter); END; END; RecRef.FILTERGROUP(0); //1 вызвать default Lookup форму для RecRef; //2 ИЛИ скопировать фильтр из RecRef в TableRec(соответствующего типа) Хотелось бы знать, можно ли это вообще это сделать и если да, то как?? Заранее всем спасибо за все идеи. |
|