Jump to content

Abaksoft

uniGUI Subscriber
  • Posts

    1558
  • Joined

  • Last visited

  • Days Won

    87

Everything posted by Abaksoft

  1. Hello Erich, Also, I have no problem. 1. Windows 10 cmd : WinVer --> 21H1 / Build 19043-1237 2. Unigui 1551 3. Delphi Sydney 10.4.2 - Version 27.0.40680.4203 Sure you are using thirdparty wich is detected as a trojan. Try to buil an empty Unigui project to see...
  2. Thank you IrigSoft, When runing the appli I have an AV on : SessionManager.Sessions.Lock; (on TUniServerModule.UniThreadTimer1Timer) Because of : SessionManager.Sessions.Lock; I remember a few days you solved it (on a precedent topic). Is this sample updated ? Thx.
  3. Very interesting IrigSoft, +1 Can you please send a small sample project with these technics. Thx.
  4. Hello Norm, an old solution is to put an empty Unitimer on loginform. By this way, the session will never come out. But, as you have mentionned, this is a bad practice as it will maintain hundreds sessions live and consume many ressources.
  5. Hi Marco, As you know, debuging a problem is to think atomic. Here, your code is so complex to decrypt. Try to buid a simple report and step by step.... you add your specifications.
  6. Hi Sherzod, The code is OK when Server > MainFormDisplayMode = mfWindow Not for mfPage . is it possible to get it for this mode (mfPage) ? MainForm = uniAlignmentClient Thx TopLine_MainMenu.7z
  7. Thank you Sherzod, As usually you are our Maestro The code works as excpected. However I puted it on UniFormBeforeShow Event (MainForm) to control if fuser (from loginForm is admin then let it visible else hide it Thx again...
  8. Hello Farshad, And how to hide MainMenu ? Example : if myUser = 'admin' then MainMenu.visible:= True else MainMenu.visible:=False (The purpose is to hide the top empty line) Thx
  9. Hello David, This is an important question without a precise answer. And i thanks you to put it here to see ... if you have a look to freelancers prices, they varying between 50€ an 100€ per hour, depending on freelancer experience, development langage and its geographic region. To be honest, i never finished a project in hours !!! So, In case of bespoke web application, it is a good idea to calculate by periode working : day (d), week (w) and month (m). Note : • a week = w = 5 Opened days - R1 • a mounth = m = 20 Opened days = 4 weeks - R2 (R1 and R2 are Discounts : R1 could be one day discount, R2, one week discount). That means if a project will take : • 3 days, then Total =3 x d • 3 weeks, Total = 3 x w • 3 mouths, Totat = 3 x m So, you just have to fix your prices : d, w and m This is a simply way to estimate a bespoke project. Important : as always, it is not obvious to give to the customer an exact periode, (and always i run out of time), it will be secure to extend the estimate periode by : x 2 Regards.
  10. Thank you Stemon, This is the answer i wanted to hear. Unigui is not just a rapid tool for web development, but the right choice we have all made: Stability and Security
  11. Hello, Since I read your topic, I don't feel well. It's time to reveal the truth. See what is saying on TMS Forum (about its Architecture) : "You have security issue: your database user and password will be available in the browser for everyone to see, and all SQL statements would also be available. And you have technical issue: your users will have to have network access to the database, a client installed in each computer, etc.. " https://support.tmssoftware.com/t/direct-database-access/11309/2
  12. Hello, 1. Switch all to client side alignment (form, frame, ...) 2. unicontainer layout Height : auto. you can see : http://forums.unigui.com/index.php?/topic/15007-mobile-centering-text/
  13. IMHO, unigui is a sever side development. Also your TClientDataset is server side. The only way to store data in client side is to use local storage technic (10 Mo). http://forums.unigui.com/index.php?/topic/12306-how-can-i-access-local-storage/&do=findComment&comment=65734 But in your case (supermarket dbgrid), storing a column on local storage has more disadvantages than advantages. Use instead an UniStringGrid and Send one bloc SQL in a transaction when regestring. This is what i have done with my old VCL POS application. Becarefull here : depending on your RDBM the Bloc SQL may have a limitation length string size !
  14. Bravo Farshad ! it will be a big jump. From now on, I will proudly assert to my clients that we can reach 1000 users in real time.
  15. 1. ServerModule.onThreatTimer do'nt like UniMainModule (AV exception) 2. Try S.Release instead of Unlock ???
  16. Hello Gerardo, I have Devart ibdac_7.4.4_d27std (Last update). I Tested as the same protocol you did, with FireBird dataBase. Result You are right, in your test case, i get the same behavior : No row is detected after locate methode. Discussion it's not a good idea, to open the DataSet on DesignTime. When you do it on a conventional opening, as usually we do (Opening the DataSet on Activate Form, or OnCreate Frame) the locate methode find the correct row. Here is in attachment a testCase. Regards. Locate.7z
  17. I can't see MyQuery1.open Where do you open your DataSet ? OnCreate event ?
  18. Dear All Unigueers, There is no need to do all above as FontAwsome is integrated on Unigui since 2020 - 15xx (did'nt remember).
  19. Hello, you can see: http://forums.unigui.com/index.php?/topic/12090-fastreport-6_3/
  20. This is a other story There is no problem in your logic. You can use your global variable, on ServerModule, if you don't need in the futur multiple servers (server farm). What i have notice is about refreshing a grid. So if my bAlert1 is reset to false (because my session has done its refreshing), another user could'nt refresh its grid. That why i suggested to increment a global variable on serverModule.
  21. Just would like to advise: There is a problem here : The boolean global variable bAlert1 is shared for all session. It must not be reset by a session. • One solution here is to increment a global variable and compare it with a local variable (instead if using a boolean). • The best solution, is to store this variable in a table ( as server farm technology is comming soon). • The Best of the best solution, is to use triggers DB, wich incremncrement a generator ID (Sequence in FireBird) combined with an unitimer. see : http://forums.unigui.com/index.php?/topic/14772-how-can-i-receive-database-table-updates-periodically/&do=findComment&comment=81897
  22. If i understand you, you are trying to develop a web application like we did in the past with a classical Client /Server application. Sorry, This is a bad practice. Using All Client PC memory 4Go (as a super market software when you fetch all data (Articles , prices, Qte,...) had no impact. Now, the best practice on a web application is to show only the eyes of Mona Lisa and not the whole portrait. So in your 10 tabs, you can limit max 25 rows, and use SQL classical tables. I can suggest you devart datasets. They are very..very..very fast with low foot print memory. (instead of Ado).
×
×
  • Create New...