Seb,
The issue was caused by using an explicit field name in the NEXT FIELD clause. IE I used the below:
DIALOG sd_displayDetArray()
CONSTANT lc_tBType STRING = 'displayDetArray',
lc_acceptType STRING = 'input',
lc_cancelType STRING = 'input'
DISPLAY ARRAY m_detArr1 TO detArr.*
BEFORE DISPLAY
-- Set the cancel and accept toolbar entries
CALL ext_om_toolbar('Maint','accept',lc_acceptType)
CALL ext_om_toolbar('Maint','cancel',lc_cancelType)
CALL toolBarItems(lc_tBType,'0')
BEFORE ROW
LET m_detArrI = ARR_CURR()
CALL det_toRec(m_detArr2[m_verArrI,m_detArrI].*)
RETURNING m_det.*
DISPLAY m_det.* TO det.*
ON ACTION add
LET m_detArrI = 0
CALL default_detail(m_detArrI)
--RE-- NEXT FIELD det.filescontaining
NEXT FIELD filescontaining
ON ACTION delete
LET m_detArr1[m_detArrI].deleted = TRUE
END DISPLAY
END DIALOG
...and from the form:
LABEL laj:labelaj,TEXT=%'Files Containing',JUSTIFY=RIGHT,
STYLE='Label01';
EDIT aj = det.filesContaining,SCROLL,
STYLE='Edit01';
.....
...which I thought was valid in DIALOG/SUB DIALOG - as soon as I commented out that line and replaced it with the unqualified name, the error stopped.
Irrespective though, it would have helped if the debug-tree had shown the active dialogue and fields then active acroos the sub dialogs.