I seem to remember being annoyed when the tabs were not "remembered".
if i understand you, the sessionvalue you need to set is 'showtab_yourupdateform' - if you can find the right embeded to set it to 1 or whatever value you prefer -
bruce will have it set to loc:tabnumber (the current value) or loc:invalidtab when there is an error.
one place i might do this would be at the bottom of the proceduresetup
IF p_web.getPageName(p_web.RequestReferer) = 'formIcamefrom'
... override some tab/focus session values fields.
end