On grid view, if a record is created, and a table/tabledir (initlially empty) field is changed to the same value as the previous row in the grid, the callouts does not trigger. The attached screenshot shows the problem (the case come from test.idempiere.org, it can be checked): on the second rma line i have selected the same receipt line as the first line, and the product is not populated. To reproduce the isse just create a new rma line, and select the receipt line of the first rma line.
The issue triggers if:
the column is a table/tabledir (didnt check search)
no default value
no callout that fills the value when the record is created
no dynamic validation rule (not sure if a dynamic validation rule without context variable has the some effect)
I have tracked the problem down to WTableEditor, it looks like no event gets fired when the value is changed (but apparently is set to null, and the selected index reset to -1)
Note: for the test we changed the configuration on the M_RMALine table, removing the dynamic validation "M_InOutShipment/Receipt (RMA)" from the M_InOutLine_ID column on test.idempiere.org