Strange. Please open a ticket about this.

On Monday, 9 December 2013 09:25:57 UTC-6, P T wrote:
>
> file attached
>
> On Monday, December 9, 2013 9:17:29 AM UTC-6, P T wrote:
>>
>> That works fine, but I have another problem - the order of columns is 
>> different in View and Edit (see attached screenshots). How can I make the 
>> columns present in "Edit" the same order as the View?
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Monday, December 9, 2013 8:38:11 AM UTC-6, P T wrote:
>>>
>>> Thank you!
>>>
>>> On Monday, December 9, 2013 7:12:32 AM UTC-6, Massimo Di Pierro wrote:
>>>>
>>>> assuming the fields exist:
>>>>
>>>> fields=[db.monthly_projections.employee, db.monthly_projections.id, db.
>>>> monthly_projections.costcode] 
>>>> for row in db(db.months).select():
>>>>    fields.append(db.monthly_projections[row.effort_month.strftime(
>>>> '%b_%Y')])
>>>>
>>>> or
>>>>
>>>> fields=[db.monthly_projections.employee, db.monthly_projections.id, db.
>>>> monthly_projections.costcode] + \
>>>>    [db.monthly_projections[row.effort_month.strftime('%b_%Y')] for row 
>>>> in db(db.months).select()]
>>>>
>>>>
>>>> On Sunday, 8 December 2013 23:40:10 UTC-6, P T wrote:
>>>>>
>>>>> I am dynamically creating the fields in a table from entries in 
>>>>> another table. I am using SQLFORM.grid to view/edit the table. 
>>>>>
>>>>> For the grid, the following field list works fine:
>>>>>    fields=[db.monthly_projections.employee, db.monthly_projections.id,db
>>>>> .monthly_projections.costcode,
>>>>>            db.monthly_projections.Dec_2013, db.monthly_projections.
>>>>> Jan_2014, db.monthly_projections.Feb_2014]
>>>>>
>>>>> But, the problem is I don't know the complete field list ahead of 
>>>>> time. So, I am using this instead:    
>>>>>    fields=[db.monthly_projections.employee, db.monthly_projections.id,db
>>>>> .monthly_projections.costcode] 
>>>>>    for row in  db(db.months).select():
>>>>>    fields.append('db.monthly_projections.'+ row.effort_month.strftime(
>>>>> '%b_%Y'))
>>>>>
>>>>> This is giving an error 
>>>>> <type 'exceptions.AttributeError'> 'str' object has no attribute 
>>>>> 'tablename'
>>>>>
>>>>> On debugging, I see that the fields is created as three 
>>>>> gluon.dal.Fields and three strings
>>>>>
>>>>>  fields
>>>>> [<gluon.dal.Field object at 0x0000000005414470>, 
>>>>> <gluon.dal.Field object at 0x00000000046D7A58>, 
>>>>> <gluon.dal.Field object at 0x0000000009F15D30>, 
>>>>> 'db.monthly_projections.Dec_2013', 
>>>>> 'db.monthly_projections.Jan_2014', 
>>>>> 'db.monthly_projections.Feb_2014']
>>>>>
>>>>> So, I changed the definition of fields to:
>>>>>    fields=[db.monthly_projections.employee, db.monthly_projections.id,db
>>>>> .monthly_projections.costcode] 
>>>>>    for row in  db(db.months).select():
>>>>>    fields.append(Field('db.monthly_projections.'+ row.effort_month.
>>>>> strftime('%b_%Y')))
>>>>>
>>>>> and this gives an error:
>>>>> <type 'exceptions.SyntaxError'> invalid table or field name: 
>>>>> db.monthly_projections.Dec_2013 
>>>>> So, in short, how do I build the field list from string for 
>>>>> SQLFORM.grid?
>>>>>
>>>>> Thanks for your help!
>>>>> PT
>>>>>
>>>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to