I have a problem using SQLFORM.grid and a query from a FORM:
Here is my controller

def synthese():
    ListeFamille=db(db.ATPOSTE.id>0).select(orderby=db.ATPOSTE.PS_FAMI)
    selection=FORM(TABLE(TR(
                TD('Début',INPUT(_name='Deb',id="1",_class="date", requires 
= IS_DATE(error_message=T('Doit être de la forme AAAA-MM-JJ !')))),
                TD('Fin',INPUT(_name='Fin',id="2",_class="date", requires = 
IS_DATE(error_message=T('Doit être de la forme AAAA-MM-JJ !')))),
                
TD('Famille',SELECT('Frappe','Reprise','Tri',_name='Famille')),
                TD(INPUT(_type='submit',_value='Sélectionner'))
                )))
    Deb=request.vars.Deb
    Fin=request.vars.Fin
    Famille=request.vars.Famille

    if Deb:
        query1=db.Rebuts.Date>=Deb
    else: query1=db.Rebuts.id>0
    if Fin:
        query2=db.Rebuts.Date<=Fin
    else: query2=db.Rebuts.id>0
    query3=db.Rebuts.Famille==Famille
    if Famille=='Tri' : 
query3=(db.Rebuts.Machine=='TRI')&(db.Rebuts.Famille=='NQ')
    if Famille=='Reprise' : 
query3=(db.Rebuts.Famille!='NQ')&(db.Rebuts.Famille!='Frappe')
    query=query1&query2&query3
    records=db(query).select()
    if selection.accepts(request.vars,keepvalues=True):
        pass
    
form=SQLFORM.grid(query=query,user_signature=False,searchable=True,paginate=True)

And the return dict (form=form)

The query works well and the grid also when I fill Selection and validate. 
Yet when I paginate, sort or query inside teh grid I lost every my grid 
data (empty grid).
Does somebody knows what's wrong with my controller ?

Thanks a lot to web2py fantastic community


JmiXIII

Reply via email to