Uniface on GitHub
Fixes and Updates
If I execute a couple of different options from a menu system based on the web framework, I get an error
RIA Error Instance XXXXXX included multiple times with different input scope.
What diagnostics can I play with to see if I can determine what operations I need to change to get rid of the error?
I am running the web environment debuggable, but it doesn't appear to fire any server side proc when this is happening.
What (if anything) can I look at in the browser debugger to get the stack of inclusions? The scenario which casuses this in the web page is a fairly likely one to be used in production, and once the error starts I get a cascade of them which only goes away when the entire site is reloaded. So I can't release this code until I have worked out how to prevent it.
So I found the actual problem ( a scope declaration in an operation on DSP A referencing DSP B) which failed because DSP B had already been instanciated with a different scope.
Not sure I understand scope, and it's implications. Anyone got a pointer to a short course/manual on where and how to use it, or is it best to declare input/output on EVRYTHING?
The help topic Input and Output Scope describes scope, and we are actively working on a new DSP development web course for https://learn.uniface.com that will cover this topic. In the mean-time, I've sent you some of my notes which will hopefully give you a better understanding of use cases.
David AkermanSubject Matter Expert, Uniface (UK)
Yes it's based on the one we were playing with last year. I believe the component activation is indeed done in NAV or MAIN, it's when the error is coming up there is no server interaction. As it happens, the mentioned instance is not the one I believe has focus in the MAIN container(s), so I don't know why it chooses then to complain about it. I'd love to discuss and will pm you about times.
Hmm, we appear to no longer have a PM style messaging on the new forum. Tuesday later in the afternoon is good (15:30?)
As far as I am aware there's only one instance of the relevant DSP, generated from the menu code in NAVSVC, those options are indeed there.
I suspect the issue is because several operations on this DSP have been called with different scope entries, but I do not understand scope and its requirements/limitations enough to work them through.
I was hoping there was some way of unpacking the information held in the uniface data on the browser, to see what scope(s) were in effect, from which I could track the operations and ensure their scopes were in sync.
As I say, at the time the error is being displayed, NO proc is being fired at all, and the most recent DSP to be used in the HOME container is not the one complaining about scope. It fires on running the B_CLOSE code, so it may well be trying to go back to the screen about which it is complaining, but that is conjecture, as I can't track or debug what it is doing.
© 2020 Uniface Privacy & Cookies | Privacy Statement | Legal