вопрос по grid и set filter

Добырй день, передаю параметры в форму и делаю set filter по этим параметрам и вроде бы все работает, НО после окончания init в set filter ничего нет, в init filter() выдает все что нужно в lfilt , но если нажму на самой форме кнопку c messagebox(filter()), то будет пустое сообщение,и вся проблема в том что если нажать на grid то появл еще записи которых не должно быть
сам код в init
[code]PARAMETERS pFn, pKkd, pKks, pKdom, pKsc, pKus, pKpu
select protocol
lFilt = ' UPPER(ALLTRIM(FN)) == UPPER(ALLTRIM(pFn))'
IF pKkd <> 0
lFilt = lFilt + ' and Kkd=pKkd'
ENDIF
IF pKks <> 0
lFilt = lFilt + ' and Kks = pKkd'
ENDIF
IF pKdom <> 0
lFilt = lFilt + ' and Kdom = pKdom'
endif
IF pKsc <> 0
lFilt = lFilt + ' and Ksc = pKsc'
ENDIF
IF pKus <> 0
lFilt = lFilt + ' and Kus = pKus'
ENDIF
IF pKpu <> 0
lFilt = lFilt + ' and Kpu = pKpu'
endif
SET FILTER TO &lFilt
MESSAGEBOX(FILTER())
*!* UPPER(ALLTRIM(FN)) == UPPER(ALLTRIM(pFn)) AND IIF(pKkd=0, .t., Kkd = pKkd);
*!* AND IIF(pKks=0,.t., pKks = Kks) AND IIF(pKdom=0, .t., pKdom = Kdom);
*!* AND IIF(pKsc=0, .t., pKsc = Ksc) and IIF(pKus=0, .t., pKus = Kus) AND IIF(pKpu=0, .t., pKpu = Kpu)
*!* browse
*!* LOCATE FOR UPPER(ALLTRIM(FN)) == UPPER(ALLTRIM(pFn)) AND IIF(pKkd=0, .t., pKkd = Kkd) AND IIF(pKks=0,.t., pKks=Kks) AND IIF(pKdom=0, .t., pKdom = Kdom) AND IIF(pKsc=0, .t., pKsc = Ksc) and IIF(pKus=0, .t., pKus = Kus) AND IIF(pKpu=0, .t., pKpu = Kpu)
*!* IF FOUND()
*!* Thisform.EditMsg.Value = Protocol.MSG
*!* ELSE
*!* Thisform.EditMsg.Value = 'Íåò äàííûõ ...'
*!* ENDIF
Thisform.Refresh
Thisform.Grid1.Edit1.SetFocus[/code]

0

Автор публикации

Пользователи не найдены
Оставить комментарий
Авторизация
*
*
Генерация пароля