
Coralie
Forum Replies Created
-
Hi Gav,
None of the methods from the log come from my library. I have no idea either where they come from but after multiples attempts, those lines never showed up again so I don’t think it is related.
After a closer look, I noticed that I did not used the jsNavMenu sample but more the “myapplication.lbs” used during the Omnis formation. So I have tried to refresh a page with this library, it also does work properly.
We spent a few hours with Alain Teboul trying to figure out the issue, using the log of my library and the one of “myapplication” and it has led us to the track of the rtTask. In “myapplication.lbs”, the rtTask constructs itself, then when the page gets refreshed, it destructs itself and then reconstructs :
myapplication.jscountriesForm/$event End If
0: myapplication.jsMenuNavMenu/$destruct # Enter your termination code here
0: myapplication.jsMenuNavMenu/$destruct Calculate ltest as ‘ok’
0: myapplication.rtMyTask/$destruct # Enter your termination code here
0: myapplication.rtMyTask/$construct # Enter your initialization code here
0: myapplication.jsMenuNavMenu/$construct # Enter your initialization code here
0: myapplication.jsMenuNavMenu/$construct Calculate iRow as pRow
However, for some reason that we have not yet resolved, my library seems to be unable to reach it once constructed. It constructs itself at the beginning and then it disappears from the log:
non.Startup_Task/$construct Calculate lTest as sys(3000)
0: non.Startup_Task/$construct # Do $clib.$remoteforms.jsMenuNavMenu.$open()
0: non.rtTask/$construct Breakpoint
0: non.rtTask/$construct Calculate lTest as ‘ok’
0: non.jsMenuNavMenu/$construct Breakpoint
0: non.jsMenuNavMenu/$construct Do $cinst.$objs.SubWindow.$classname.$assign(‘jsHome’)
So I must have done something, at some point that cause the rtTask to become unreachable. Both of the rtTask (mine and the working library) are exactly the same.
Regards,
Coralie. -
Hi Andreas,
I am using the Startup_Task just so I can have the page launched when opening the library on development. I only have Do $clib.$remoteforms.jsMenuNavMenu.$open() written in it.
However, with the use of sys(3000), I got this log below just after my last method (it is quite long sorry) :
SQL.Startup_Task/$resume Calculate tSystemCall as tInSystemCall ## ensure tSystemCall is still correctly set, as omnis events elsewhere could have triggered a $suspend
0: SQL.Startup_Task/$i_nv_logged_off # called by the core when a session using a new non-visual dam is closed outside the sql object browser
0: SQL.Startup_Task/$i_nv_logged_off Do method $i_deleted_session_or_cursor (pSessName)
0: SQL.Startup_Task/$i_deleted_session_or_cursor # called by the core when either a session or cursor is closed outside the sql object browser
0: SQL.Startup_Task/$i_deleted_session_or_cursor Calculate tSystemCall as kTrue ## do not revert the current session to OMNIS_DEFAULT when $suspend is executed
0: SQL.Startup_Task/$i_deleted_session_or_cursor Calculate tInSystemCall as kTrue ## currently processing call from outside of the sql browser
0: SQL.Startup_Task/$i_deleted_session_or_cursor If mid(pCursorName,1,6)<>’OMNIS_’&mid(pCursorName,1,6)<>’BLYTH_’
0: SQL.Startup_Task/$i_deleted_session_or_cursor # session is not an internal session
0: SQL.Startup_Task/$i_deleted_session_or_cursor Do gSessionList.$search(gSessionName=pCursorName,kTrue,kFalse,kTrue,kTrue)
0: SQL.Startup_Task/$i_deleted_session_or_cursor Set reference lSearchRef to gSessionList.$first(kTrue,kFalse)
0: SQL.Startup_Task/$i_deleted_session_or_cursor If lSearchRef
0: SQL.Startup_Task/$i_deleted_session_or_cursor Do method close_session_windows
0: SQL.Startup_Task/close_session_windows # called by the methods ‘$i_deleted_session_or_cursor’ and ‘$i_logged_on’ to close all the windows associated with the session ‘pCursorName’
0: SQL.Startup_Task/close_session_windows Do gSessionList.$loadcols() ## current line already set in calling method
0: SQL.Startup_Task/close_session_windows # Do code method STARTUP/get_session_details (gv_ToolsLib_name,gSessionDBVer,lSessUser,lSessHasSubs,lSessHasUsers,lObjTypesList,gSessionConnect)
0: SQL.Startup_Task/close_session_windows # Do lObjTypesList.$redefine(lObjType)
0: SQL.Startup_Task/close_session_windows #
0: SQL.Startup_Task/close_session_windows # For lLineInList from lObjTypesList.$linecount to 1 step -1
0: SQL.Startup_Task/close_session_windows # Do lObjTypesList.$line.$assign(lLineInList)
0: SQL.Startup_Task/close_session_windows # Do lObjTypesList.$loadcols()
0: SQL.Startup_Task/close_session_windows # Calculate lWinInstName as con(gSessionName,’_’,lObjType)
0: SQL.Startup_Task/close_session_windows # Close window instance [lWinInstName] ;; close object browser windows (3rd Level)
0: SQL.Startup_Task/close_session_windows # End For
0: SQL.Startup_Task/close_session_windows Do $iwindows.$sendall($ref.$close(),pos(con(gSessionName,’_’),$ref().$name)&$ref.$lib().$name=’SQL’) Returns #F ## 14/03/02 – replaces the above code
0: SQL.Startup_Task/close_session_windows Calculate lWinInstName as gSessionName
0: SQL.Startup_Task/close_session_windows Close window instance [lWinInstName] ## close object types browser window (2nd Level)
Since it does mention a Startup_Task, the problem could be the fact that I am launching the page through the task ? Or is this log normal and I should be looking elsewhere in the log?
Regarding the sample Gav, I have also tried with Applets and Samples and it’s working fine. That’s why I said that it’s clearly me who has done something I really shouldn’t have. My guess is that it is related to the login/logoff because on my homePage, before I logged myself onto my account, I can refresh the page as many time as I want to.
Thank you very much for helping me,
Coralie -
Hi Gav,
As for the browser, the same thing happens regardless of which one I am using.
The methods used for the navigation basically come from the “jsnavmenu sample” of Omnis’s hub, so I have an object oNavMenu, with an iNavObj that $construct, $buildmenu, $getMenu, defineMenuList, and $getJsFormName throughout the site.
Thanks,
Coralie. -
Hi Gav,
Many thanks for this !
Happy holidays,
Regards,
Coralie. -
Hi again,
small update, I’ve changed my NavBar to a MenuList so I can handle the destruct of the SFS. But when I execute the $RemoveSFS method, I get ” E101697: Notation not supported “. I’ve tried your code, I’ve tried the
Do $cinst.$clientcommand(“subformset_remove”,lSetRow).
If anyone has any idea on what I am doing wrong…
Thanks everyone!
Regards,
Coralie. -
Hi Paul,
Thanks for your answer. The thing is, I’m using the subform as a kind of CRUD so I can’t use a “done” button. I only have the “back” button in the NavBar, which is implemented in the very first form so I’m not sure on how/where to handle the destruct of the SFS. -
Hi Klaus,
I had tried the task type variable but it didn’t work (I don’t how I failed that…). But your solution went great.
Thank you very much once again Klaus,
Regards,
Coralie. -
Hi everyone,
I did it with the JsClient, just the way Klaus explained, and it works perfectly.
In case someone needs it:
-Change the $userdefined property to kTrue
-Change the $columnType property to kJSDataGridModeDropList
-For each column of the data grid, set the $columndatacol property to the number corresponding to your datalist’s columns.
-Set a variable(list type) to the $columnpicklist property (for instance iDropList)
-Then in the construct of the class method:
Do iDropList.$add(‘Ok’;1)
Do iDropList.$add(‘it’;2)
Do iDropList.$add(‘works’;2)
Thanks again,
Regards,
Coralie -
Hi again,
Never mind the question, I did it 🙂 !
For those who would end up on this thread, searching for a solution, I managed to do it, doing this:
Do $cinst.$objs.EnterableGrid.$selectedlinetextcolor.$assign(rgb(255;0;0))
Regards,
Coralie. -
Hi Klaus,
Thank you for the reply. I’m deeply sorry for forgetting to say that I am actually using a Js Remote Form but I’m hoping it doesn’t change much what you (very well as a matter of fact) explained…
Regards,
Coralie. -
I spent several hours trying to figure out how to set up correctly the WAL mode. I have tried some different PRAGMA set ups, as explained in the doc.
From what I understood and tried without success, there is no way to have multiple writers and readers concurrently, without having to filter user’s authorizations throughout the code.
I am therefore going to switch my database system to PostgreSQL.
Thank you very much Alex!
Regards,
Coralie. -
Thank you Alex,
It seems to have done something but it made me lost the connection to the database.
Technically, when there are two users and one of them wants to update/insert something, I get the $nativeerrortext as “database is locked” and if one of them is not logged in, the transaction does work. From there and what I have read, the WAL should indeed fix that.
Coralie.