Somar +1 num field do model

15 views
Skip to first unread message

Jose Carlos Vicente Pereira

unread,
Jun 5, 2015, 3:34:35 PM6/5/15
to web2py-us...@googlegroups.com
ola, boa tarde... tenho um tabela, com um campo P_CADPORTARIA

Field("nrport", label="Nº da Portaria"),

ele, apesar de ser sequencia ele é lançado manual... mas gostaria que ele pegasse o ultimo registro e somasse + 1 no default, tipo

no model:
Field("portaria", default=db.p_cadportaria.portaria+ 1, label="Nº da Portaria"),

tentei algo assim com o compute
db.p_cadportaria.portaria.compute = \
    lambda row: float(row.portaria) + 1

mas nao ocorreu nada

Ari Sobel

unread,
Jun 6, 2015, 6:09:34 PM6/6/15
to web2py-us...@googlegroups.com
Ola, Jose, 

Vc está presumindo que row.portaria, estaria lhe retornando o último id de portaria. Por que?

Nesse compute vc precisa chamar uma função que te retorne o ultimo id de portaria, e aí sim, somar 1.

Crie uma def que lhe retorne isso, e aí chame no compute, e aí somar.

Abcs

Enviada do meu iPhone

Em 05/06/2015, às 16:34, Jose Carlos Vicente Pereira <carly...@hotmail.com> escreveu:

row.portaria
Reply all
Reply to author
Forward
0 new messages