This commit is contained in:
gsinghpal
2026-04-30 00:21:08 -04:00
parent f990f29019
commit c5d21e0519
10 changed files with 105 additions and 44 deletions

View File

@@ -0,0 +1,21 @@
step = env['fp.job.step'].search([('job_id.name', '=', 'WH/JOB/00337')], limit=1, order='sequence')
print('Step:', step.name)
# Simulate the EXACT OWL get_views call for this action
result = step._fp_open_input_wizard(advance_after=True)
print('view_id:', result.get('view_id'))
print('views:', result.get('views'))
# Now invoke get_views with this view_id explicitly
view_id = result.get('view_id')
W = env['fp.job.step.input.wizard']
gv = W.get_views([(view_id, 'form')])
print('models served:')
for mname, minfo in gv['models'].items():
print(' ', mname, '->', list((minfo.get('fields') or {}).keys())[:10])
# Check arch
arch = gv['views']['form']['arch']
print('arch has <list>?', '<list' in arch)
print('arch has <field name="name">?', '<field name="name"' in arch)
print('arch has <field name="line_ids">', '<field name="line_ids"' in arch)

View File

@@ -0,0 +1,12 @@
# Simulate the Finish & Next button to see the exact action returned
step = env['fp.job.step'].search([('job_id.name', '=', 'WH/JOB/00337')], limit=1, order='sequence')
print('Step:', step.name, 'id:', step.id, 'state:', step.state)
result = step._fp_open_input_wizard(advance_after=True)
print('Action returned:')
print(' type:', result.get('type'))
print(' res_model:', result.get('res_model'))
print(' view_mode:', result.get('view_mode'))
print(' view_id:', result.get('view_id'))
print(' views:', result.get('views'))
print(' target:', result.get('target'))
print(' context (keys):', list(result.get('context', {}).keys()))

View File

@@ -0,0 +1,7 @@
import re
v = env['ir.ui.view'].search([('name', '=', 'fp.job.step.input.wizard.form')])
print('view id:', v.id)
print('xml_id:', v.xml_id)
print('arch length:', len(v.arch or ''))
for i, m in enumerate(re.finditer(r'<field\s+name="([^"]+)"', v.arch or '')):
print(' field[%d]: %s' % (i, m.group(1)))

View File

@@ -0,0 +1,15 @@
# Simulate what the server returns to OWL via load_views.
W = env['fp.job.step.input.wizard']
result = W.with_context(default_step_id=1).get_views([(False, 'form')])
print('=== views key ===')
print(' keys:', list(result.get('views', {}).keys()))
print('=== models key ===')
print(' models keys:', list(result.get('models', {}).keys()))
for mname, minfo in (result.get('models') or {}).items():
print(' model:', mname, '-- has name field:', 'name' in (minfo.get('fields') or {}))
fields_keys = list((minfo.get('fields') or {}).keys())
print(' fields:', fields_keys[:30])
print('=== form arch ===')
arch = (result.get('views') or {}).get('form', {}).get('arch', '')
print('FULL ARCH LEN:', len(arch))
print(arch)