this works:

    grid=SQLFORM.smartgrid(db.purchase_order, details=False, 
links_in_grid=True,
                        maxtextlengths={'purchase_order.po_number':15,},
                        maxtextlength=30,
                        paginate=20,
                        sortable=True,
                        
orderby=dict(purchase_order=[~db.purchase_order.modified_on], ),
                        oncreate = dict(purchase_order=[po_oncreation]),
                        csv=False,
                        ui='jquery-ui',
                        links=dict(purchase_order=[lambda row: 
A('Duplicate',
                            _class='button', 
_href=URL('duplicate_purchase_order',args=[row.id])), lambda row: A('Print',
                            _class='button', 
_href=URL('print_all',args=[row.id]))]),
                        user_signature=False, onupdate=auth.archive,
                        )


def po_oncreation(form1):
    
    auth.archive
    
    last_id = form1.vars.id
    
    row = db(db.purchase_order.id==last_id).select().first()

    str_po_number = row.po_number + str(row.id)
    row.po_number = str_po_number
    row.update_record()
    
    #response.flash = 'Added a Purchase Order'

    session.flash = 'Added a Purchase Order'
    return



Reply via email to