Jump to content

Abaksoft

uniGUI Subscriber
  • Posts

    1561
  • Joined

  • Last visited

  • Days Won

    87

Posts posted by Abaksoft

  1. 43 minutes ago, mos said:

    Hi,

    We are having an issue where when the application has been running for a while, and we are trying to access it externally via public IP and port, we get the image below

    603364485_Screenshot2021-12-14155624.jpg.f1c0dad76df2f539359c280dd5e5ebac.jpg

    Now we can clear the error by restarting the service.
    This started happening a little while back when some said they could not gain access externally.
    We could on the server but couldn't outside or on a different PC.
    If we restarted everything then all good. We have no idea what is going on.

    We are not sure if this could be a memory usage issue (mem is at 73.2MB)? But would make no sense because, as I've stated, we can access it locally (localhost:8077)

    Thank you

    Hello,

    May be can help :

    http://forums.unigui.com/index.php?/topic/12503-recommendations-for-hosting/&do=findComment&comment=79419

     

    http://forums.unigui.com/index.php?/topic/12503-recommendations-for-hosting/&do=findComment&comment=66579

     

    http://forums.unigui.com/index.php?/topic/14896-a-windows-service-installer/

     

  2. Hello,

    These learned words "Paradigm, MVC PATERN, MVVM, ..."  sound good to the ear, 

    But why doing complex, when things could be done easyer ?

    Delphi is OOP. You can write very clean code with this technic. Just separate your Gui interface from your logic.

    1. Design what you want on your uniFrame.

    2. Use Object on your events

    3. Create a Class on a uniDataModule and describe as well as possible your fields / methods.

    That what i am doing.

    I confirm : this makes things a lot easier, especially when reading code later.

  3. 9 hours ago, Abaksoft said:

     

    4. An other invisible issue :

    Advise

    Update the last hyper_server.exe or hyper_server.dll. On the Server.

    When deploying your app on server with a new fresh unigui Build. You will say : "ok,  i will install, as usually the last Runtime_FMSoft....on the server. "   Humm....not enough i will say you !  

    - Let's say you just installed on your development PC the last build 1555. When compiling your app and testing hyperserver, all is ok.

    - when deploying on server, without updating the last hyper_server.exe or hyper_server.dll you will get some strage behavior.

    This is what happened to me a few weeks before. Without Farshad's help, I would have spent whole days patrolling.

    ______

    BTW :  if otrsys.dll is yours, it should be build with the same 1555 unigui Build.

  4. 8 hours ago, ravedadave said:

    Thanks,

    I don't have any anti-virus loaded on the servers, i'm troubled that I have had no official response to the ticket raised, I was hoping with a framework as great as unigui the official support would be excellent too, i'm a bit dissapointed now.

     

    1. Are you using UnithreadTimer ?

    2. On your PC debuging mode,  is all OK ?

  5. 8 hours ago, ravedadave said:

    Hi,

    Thanks for your reply.

    Deployment is Hyperserver via Isapi on IIS Windows Server 2019.

    UniGuid build is 1.90.0.1555

    DB is postgres via FireDac.

    With SSL (via IIS).

    Windows server host is Windows Server Standard 2019, 8 x cpu 32gb RAM

    Database server is cent os 32GB 8  x cpu

    Server is a dedicated server located in a datacenter with 1GB bandwidth.

    Have 20+ users accessing, issue happens itermittently during the day kicks everyone out and loses their session.

    IIS Pool config attached.

    Hyperserver Config:

    [transport]
    pool_size=0
    command_timeout=20000
    request_timeout=300000
    connect_timeout=20000

    [http_transport]
    start_port=16384

    [hyper_server]
    binary_name=CASystem.exe
    initial_nodes=2
    max_nodes=8
    max_sessions=0
    sessions_per_nodes=0
    prompt_login=1
    persistent_node_zero=0
    detailed_log=0
    port=8077
    url_path=
    url_referer=
    ext_root=[ext]\
    uni_mobile_root=[unim]\
    uni_root=[uni]\
    server_root=
    uni_packages_root=[unipack]\
    max_requests=500
    antiflood_per_ip=0
    server_title=OnTheRoad Server Administration
    server_build=1.90.0.1555
    framework_files_root=
    session_one_per_ip=0
    dont_create_backup=0
    http_max_pool=500
    max_connections=500
    allow_remote_config=1

    [node_recycling]
    enabled=1
    recycle_after_secs=3600
    recycle_after_sessions=0
    recycle_after_idle_secs=0
    recycle_when_empty=1
    recycle_after_idle_seconds=0

    Not sure what else you guys need ?

    Kind Regards,

     

    Dave.

    iis_01.png

    iis_02.png

    Hello,

    Uninstall your servers Anti-virus (server application + server DB).

    That said, your plat-form (Architecture) is wonderfull. 

  6. 12 minutes ago, ravedadave said:

    I've logged this as a support request also, how long does it normally take to even get a response, bit worried now ?

    Hello,

    We (all communauty)  should be glad to help you.

    But without informations ...?

    What are your :

    1. Deployment : Hyperserver ( Service or isapi dll) ?

    2. Unigui Build ?

    3. DB connecting (FireDac, Devart, ...)

    4. Config hyperserver ?

    5. With or without SSL ?

    and more details...

    Let us know your story :)

  7. 1 hour ago, Marlon Nardi said:

    There are several ways, the simplest I use is the following:

    in ServerModule -> OnHTTPCommand

    Sample:

    procedure TUniServerModule.UniGUIServerModuleHTTPCommand(
      ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo;
      var Handled: Boolean);
    var
      vParams: string;
      vI: Integer;
    begin
        for vI := 0 to ARequestInfo.Params.Count - 1 do
        begin
            if vI = 0 then
            vParams := '?' + ARequestInfo.Params[vI]
            else
            vParams := vParams + '&' + ARequestInfo.Params[vI]
        end;
    end;

     

    Thx Marlon

  8. 3 hours ago, AntonioCuomo said:

    when another user connects to the treemenu APP, it blocks and a connection error is reported. if the first user closes the browser, the 2nd app will work again.
    in the log I have messages like this:

    Proj_TimesWork.exe: 00003F78: 14:55:12 [127.0.0.1]:Processing: Id: 26, Evt: itemclick
    Proj_TimesWork.exe: 00003F78: 14:55:12 [127.0.0.1]:Processed: Id: 26, Evt: itemclick, [IuNvg7ulOy10973F6DA]
    Proj_TimesWork.exe: 00003F78: 14:55:12 [127.0.0.1]:FLastSequence set:26
    Proj_TimesWork.exe: 00001010: 14:55:13 [127.0.0.1]:iSeq: Id: 27, Evt: selectionchange, [IuNvg7ulOy10973F6DA]
    Proj_TimesWork.exe: 00001010: 14:55:13 [127.0.0.1]:Failed Sequence Recovery: SeqId: 27, Event: selectionchange, Status: 503, StatusText: "Service Unavailable", TimedOut: false, cQs: f:{}, s:{28,29,30,31,32,33,34}, a:{35,36,37,38,39,39,40,41,42,43,44,45,46,47,48,49,50,51,51}, r:{}
    Proj_TimesWork.exe: 00001010: 14:55:13 [127.0.0.1]:Processing: Id: 27, Evt: selectionchange
    Proj_TimesWork.exe: 00001010: 14:55:13 [127.0.0.1]:Processed: Id: 27, Evt: selectionchange, [IuNvg7ulOy10973F6DA]
    Proj_TimesWork.exe: 00001010: 14:55:13 [127.0.0.1]:FLastSequence set:27
    Proj_TimesWork.exe: 00005170: 14:55:13 [127.0.0.1]:iSeq: Id: 28, Evt: itemclick, [IuNvg7ulOy10973F6DA]
    Proj_TimesWork.exe: 00005170: 14:55:13 [127.0.0.1]:Failed Sequence Recovery: SeqId: 28, Event: itemclick, Status: 503, StatusText: "Service Unavailable", TimedOut: false, cQs: f:{}, s:{29,30,31,32,33,34}, a:{35,36,37,38,39,39,40,41,42,43,44,45,46,47,48,49,50,51,51,51,52,53,54}, r:{}
    Proj_TimesWork.exe: 00005170: 14:55:13 [127.0.0.1]:Processing: Id: 28, Evt: itemclick
    Proj_TimesWork.exe: 00005170: 14:55:13 [127.0.0.1]:Processed: Id: 28, Evt: itemclick, [IuNvg7ulOy10973F6DA]
    Proj_TimesWork.exe: 00005170: 14:55:13 [127.0.0.1]:FLastSequence set:28
    Proj_TimesWork.exe: 00000E70: 14:55:13 [127.0.0.1]:iSeq: Id: 29, Evt: itemclick, [IuNvg7ulOy10973F6DA]
    Proj_TimesWork.exe: 00000E70: 14:55:13 [127.0.0.1]:Failed Sequence Recovery: SeqId: 29, Event: itemclick, Status: 503, StatusText: "Service Unavailable", TimedOut: false, cQs: f:{}, s:{30,31,32,33,34}, a:{35,36,37,38,39,39,40,41,42,43,44,45,46,47,48,49,50,51,51,51,52,53,54}, r:{}
     

    the app has always worked. I rewrote the form that gave an error but nothing has changed.
    It is as if unigui does not allow multiple logins.
    Unfortunately the app is active for customers

    I've been trying to find the problem for a week.
    I apologize for my English and for other messages already posted.

    P.S.: other app run 

    Hello,

    This problem is not related to Unigui. I have never seen this !

    Try to review your code.

  9. 1 hour ago, Trainee said:

    unfortunately I have to use an IBDatabase. There's no other one. The company has 20 year old legacy software.

    Generally, it is not easy to convert an old VCL project to UNIGUI by a magic wand. There are certain rules to be observed in Unigui.
    In my humble opinion, it would be better to develop a new project with unigui and with the right DB components like FireDac or IBDAC (Devart).

    For that, you should practice a little on small projects.

    Good Luck.

  10. On 4/28/2021 at 3:14 PM, wilton_rad said:

    unigui  1.90.0.1547

    delphi 10.4

    sdac

    sql server 2019

    I have a problem that is making me sleepy.
    in a form I display the contents of a varchar (max) sql server field.
    when I run the application locally, the content is displayed correctly, when I run the same application on the server (hyperserver) some data is overlaid.
    I've tried everything and nothing works.

    it is not some hidden character that is causing this behavior.

    the only difference and the place of execution.

    remembering that both on my server and locally, and the exe that is running.

     

    I tried to make a test case to demonstrate this, but locally it works, so there is no way for me to send a sample to demonstrate the problem.

    this did not happen in the old version using sencha 6.7

     

    image.thumb.png.4911f8c340255bb9a8f1cb62aac055eb.png

     

    Running my server

     

    image.thumb.png.2fdf23cce48324bb97de8f0442906184.png

     

     

    text post in database.

    image.thumb.png.054a135ee92cab183c835e5070f10f3a.png

     

    display value in notepad++

    image.thumb.png.1943c4d11774addee3c6c9e964c43255.png

     

     

     

     

    Hello wilton,

    In your Server PC, did you update also your build 1547  :   hyper_service.exe (or hyper_service.dll)   ?

    Or simply deployed your new release app.exe

     

    Solution :

    Try to stop your service (or iis) on your server and copy the new files 1547 :

    hyper_service.exe  (if service)   +    hyper_service.cfg

    or

    hyper_service.dll   (if ISAPII)   +   hyper_service.cfg

     

    Keep in mind that  each new Unigui Build, you have to update theese files  !

     

    From Farshad :

    "The new version is not fully compatible with older HyperServer builds.

    So you need to upgrade Hyperserver too."

  11. On 11/13/2021 at 4:52 PM, Pep said:

    andyhill, thank you for your response, but I don't know, how to use localStorage in MainModule using  BeforeLogin Event, because Mainmodule has not visual elements so I cant' use "edtUserName" (TuniEdit) to load a value from localStorage. Maybe there is a way to do it but I don't know...

    Hello,

    http://forums.unigui.com/index.php?/topic/12306-how-can-i-access-local-storage/&do=findComment&comment=65734

     

    1. Let's say you have an elementary application (app0) with just a mainform and loginform. This mainform contains 2 labels : app1 and app2.

    2. Store a local storage key (login) on the first time when a user open a session on this welcome mainform (app0).

    3. When the same user click on app1, retreive this key on loginform.beforeShow event (app1).

    If the key is OK then app1.loginform.modalReslt:=MrOK

    4. Keep in mind to destroy this key on all sessionOut (app0, app1, app2).

    _______________

    NB : This work without parameters on URL

    lblapp1 : www.localhost:8077

    lblapp2 : www.localhost:8078

    Obeviously, for security, each app1 and app2 has its loginform.

     

    For more training you can see how to bypass loginform here (old sample)

    http://forums.unigui.com/index.php?/topic/9564-soautoplatformswitch-demo/&do=findComment&comment=74590

     

    • Thanks 1
  12. 10 hours ago, erich.wanker said:

    my app has 170 forms .. in 1 i think i have an error..

    if i start my unigui standalone app i become error:

     

    MON.exe: 000004DC: 11:59:23 [TUniServerModule]:HTTP Server Started on Port: 8077
    MON.exe: 00002288: 12:00:15 [127.0.0.1]:EClassNotFound : Class TUniImageList not found : Addr: $004B6082

    i opend all forms in delphi xe4 - no error

    i compiled my app - no error

     

     

    I should search in my forms, wich contains TUnimageList.

    Once founded, i will delete the UniImageList, compile and try...

    If all is OK, put it again on this form and try again.

    If you have 100 forms with uniimagelist, then use EUREKA log for good diagnostic.

  13. 3 hours ago, JhonSina said:

    Using synchronous operations equal to true, we have to be careful with encoding.

    In my application there was a form that was causing the crash.
     
    A specific routine that contained the while clause, session monitoring helped me a lot in discovering the form involved.

    A code from sr.farshad helped a lot, it gets the main module crash error and adds it to the servermodule log.
    the code is attached.

    ErrorCode.txt 3.46 kB · 5 downloads

    Thank you :)

    "It is always preferred to create the web application in asynchronous mode"

    From :  http://www.unigui.com/doc/online_help/synch-and-asynch-operations.htm?zoom_highlightsub=asynchronous

  14. 20 hours ago, edbuescher said:

    I have a secondary (not main) form that contains a UniDBGrid with align=alClient. The form RESIZE only works if the Grid has less than 50 records displaying, or 49 records plus a summary record.

    If 50 or more records are being displayed in the grid, then  I can resize the form ONCE, but the grid inside the form will not resize.  This happens whether or not the grid is "paged." If I then close the form, but don't exit the session, then when I try to open the form again it does not render properly, but just shows a "blue" colored blank form.

    I'm trying to display 350 records, which works fine as long as I don't resize the form. If I filter a column to only show <50 records, the resize works, so the issue has to do with how many records are being displayed, not how many total records there are in the underlying dataset.

    One strange issue is that even though I am not using the "paging" feature of the grid, when I change the PageSize to something greater than 25, then I can resize the form when there are 50 records being displayed, but it still fails when displaying a few more than 50.

    I am on V 1.90.0.1554

    Thanks for any help

    Hello,

    On topics related to alignment, you can find this advice :

    With unigui, don't use the classical VCL Alignment. Use instead the new layout :

    ServerModule: MainFormDisplayMode:= mfPage

    Mainform > ClientAligment

  15. 20 hours ago, 55143681 said:

    Dear:

     I have do this,but still error.

    Have you some other advice?

    Or I will have to reinstll xe10.3.3,

    waiting for you.....

    Hello,

    Did you install Delphi 10.4.2 in japaneese langage ?

    When installing Delphi in a different langage (japan), Delphi use different folders name, instead of original (us). I had some issue in the past with french installalation (not with unigui).  since that day, i decided to install Delphi always in us langage (by default).

  16. 3 hours ago, Marco1979 said:

    Hi,

    can you tell me something about the request I made?

    Thanks.

    Marco

     

    Hello Marco,

    I am sure that you can adapt your case, with what i sent you.

    Just replace DBMyDataSet (on the sample above) by your dataset.

    Regards...

×
×
  • Create New...