Jump to content
uniGUI Discussion Forums


uniGUI Subscriber
  • Content Count

  • Joined

  • Last visited

  • Days Won


Posts posted by alfr

  1. Sure. during/before first use - FlexCelDllInit 

    when done/to release - FlexCelDllShutdown

    FlexCelDllInit Method

    Use this method to initialize FlexCel when encapsulating it in a dll.

    Note that you don't normally need to call this method, as FlexCel is initialized automatically. But when you are hosting FlexCel inside a dll instead of the main application you need to call this method before calling the methods in the dll. Currently, this method will just initialize GDI+ when running in Windows, because GDI+ can't be initialized from the dll itself. When you use this method, always call FlexCelDllShutdown before closing your app.

    • Like 1

  2. Hi, 

    We use week numbers a lot. Our users/clients use them in the dialog with their customers.

    How can the uniDateTimePicker and unidbDateTimePicker be reconfigured to also show the week number (iso8601 week number) on the left side when the monthly calender is shown?

    Left - date picker calendar unigui - right other example from Outlook - with the week numbers marked with yellow.

    image.png.24cb8557b910387ee5a56fa7688af544.png     image.png.6048647879c9bf568d97adac37724589.png

    Below sample js script for calculating the week number.

    Would appreciate if someone with good knowledge in UniGui how to reconfigure the calender...

    function ISO8601_week_no(dt) 
         var tdt = new Date(dt.valueOf());
         var dayn = (dt.getDay() + 6) % 7;
         tdt.setDate(tdt.getDate() - dayn + 3);
         var firstThursday = tdt.valueOf();
         tdt.setMonth(0, 1);
         if (tdt.getDay() !== 4) 
          tdt.setMonth(0, 1 + ((4 - tdt.getDay()) + 7) % 7);
         return 1 + Math.ceil((firstThursday - tdt) / 604800000);

  3. Hi, 

    For system reasons the time value when change a ttime field by using the TUniDbDateTimePicker need to be hh:59 instead of the default values in the listbox hh:00, hh:15, hh:30, hh:45. How is it possible with js-code to replace the default listvalues with i . e "00:59","01:59","02:59"......"23:59"?



    UniGui Professional version

  4. Hi, 

    Still a newbie when it comes to javascript and ClientEvents... (Would appreciate some help from Serzod/DD or somebody else)

    I've a form with a lot of TUniPanels (created dynamically with InsertControl. Layout=Table). On the panels are many tUniCheckboxes placed. As there are so many checkboxes I would like to change the background color on the parent TD when the checkbox is checked and cleared when the checkbox is not checked. See example where I've manually set one TD to background-color lightskyblue.

    How can this be done with javascript and ClientEvents? (I suppose I need to add a javascript function that is called onchange or onchangevalue, but I'm not able to get the parentNode correctly etc..) There are also other functions that dynamically checks/unchecks the checkboxes, so important that the ClientEvent not only responds on onclick, but also when the other functions checks/unchecks.



    Unigui version uni- (desktop).


  5. Hi

    when running flexcel from a dll there is a procedure you first need to load. Don’t remember the name and is away from computer but ive Done a post here some time ago so you should be able to find it here or also more info at flexcel website

  6. Found the solution - so post it here as well if somebody else is getting the same problem.... A special init is necessary if calling the 3rd part from a dll. Simplest is just to call the DllInit before using it and DllShutDown whe done. 


    procedure CreateReport;
          //Code that uses FlexCel

  7. Hi, 


    I use a 3rd part tool from TMS Software - called Flexcel for creating excel files. It in general works well.


    However a part of it is also for creating a pdf-file out of the excel-file. This works well as long as I run the application as an exe-file on my development pc, but when instead run it as an dll on iis, I get an access violation in ntdll.dll.


    Anybody having any clue what might causing this kind of exception in IIS/ntdll.dll but not as an exe? 


    Access violation at address 77EADE33 in module 'ntdll.dll'. Write of address 00000014

  8. If possible I'd try to get user to open browser developer tools and view the network part there for getting more information what is loaded and possible errors. 


    Ask the user to try if it works with another browser to see if it's related to the user's browser.


    Agree with above that it can be related to spyware/other plug in or browser problem - or perhaps some firewall content inspection restricting traffic.

  9. Hi, 


    Just create a private variable in the form i.e





    To record the current position you just assign the bookmark from the TADOQuery linked to the Tdatasource / Datasource for the unidbgrid. i.e




    To set the correct cursor position afterwards is then just the opposite - below also with an additional validation.


    if rst.BookmarkValid(bm) then rst.Bookmark:=bm;

  10. post-5530-0-06656800-1518109365_thumb.jpg




    I also get a similar error - "Ajax Error - autNumber is not a function". This happens as soon as I add a a TUniDBFormattedNumberEdit component to the form (design time) and runs the application and .showmodal on the form.


    I can see the file autoNumeric-1.9.35.js being loaded from the server, so this is not the problem. 


    Does anybody have any advise how this can be fixed?


    Regards Alf


    Ps. UniGui is Fantastic!!



  11. Hi, 


    I hope somebody can help me with a problem when running the UniGui Wizards in Delphi 10.1 Berlin Update 2.


    In general everything seems to work well regarding UniGui. I've been able to run many of the various examples locally. But now when I myself would like to start a new UniGui Project and therefore selects New -> Other -> UniGui for Delphi -> Application Wizard, and selects Standalone Server, I first get an info message saying:


    Unit "ServerModule.pas" references the "Visual Component Library" framework, but the project currently has no framework assigned. Do you want to enable the "Visual Component Library" framework for this project?
    (Not enabling the proper framework may require unit scoping, ambiguities, and linkage to framework binaries to be handled manually)
    Yes   No   Cancel   
    If I selects Yes or No, I then get an error message saying:
    Access violation at address 501578DC in module 'rtl240.bpl'. Read of address 00000000.
    OK   Details <<   
    [501578DC]{rtl240.bpl  } System.Classes.TStrings.GetValue (Line 6437, "System.Classes.pas" + 1) + $5
    [5015CA41]{rtl240.bpl  } System.Classes.TResourceStream.Initialize (Line 9152, "System.Classes.pas" + 5) + $F
    [5005FF2D]{rtl240.bpl  } System.@AfterConstruction (Line 17839, "System.pas" + 2) + $5
    [500601B8]{rtl240.bpl  } System.TMonitor.Destroy (Line 18102, "System.pas" + 0) + $0
    [5005F839]{rtl240.bpl  } System.TObject.CleanupInstance (Line 16698, "System.pas" + 37) + $0
    [5005A1A8]{rtl240.bpl  } System.@FreeMem (Line 4662, "System.pas" + 20) + $0
    [5005F618]{rtl240.bpl  } System.TObject.FreeInstance (Line 16461, "System.pas" + 2) + $2
    [5005FF0A]{rtl240.bpl  } System.@ClassDestroy (Line 17833, "System.pas" + 0) + $2
    [5015CA7D]{rtl240.bpl  } System.Classes.TResourceStream.Destroy (Line 9160, "System.Classes.pas" + 4) + $6
    [5005F79C]{rtl240.bpl  } System.TObject.Free (Line 16529, "System.pas" + 1) + $4
    [2EAA3630]{uniGUI24dcl.bpl} Uniguiexpertsrc.GetExpertSource + $A8
    [5005FF2D]{rtl240.bpl  } System.@AfterConstruction (Line 17839, "System.pas" + 2) + $5
    [2EAA438B]{uniGUI24dcl.bpl} Uniguiformfile.TFormCreatorFile + $2CF
    [2EAA47D5]{uniGUI24dcl.bpl} Uniguiformfile.TFormCreatorFile.GetSource + $4D
    [208D3530]{coreide240.bpl} IDEServices.TModuleCreator.GetSource (Line 1562, "IDEServices.pas" + 1) + $4
    [20712984]{coreide240.bpl} SourceModule.TSourceModule.Create (Line 398, "SourceModule.pas" + 2) + $4
    [208D50B3]{coreide240.bpl} IDEServices.TIDEServices.DoCreateModule (Line 2116, "IDEServices.pas" + 21) + $15
    [208D754B]{coreide240.bpl} IDEServices.TIDEServices.CreateModule (Line 2849, "IDEServices.pas" + 5) + $3
    [2EAAB55B]{uniGUI24dcl.bpl} Uniguiprojectexpert.TUniGUIProjectWizard.Execute + $2FF
    [206B7A4B]{coreide240.bpl} Gallery.TGalleryExpert.SetIDString (Line 826, "Gallery.pas" + 14) + $44
    [20525942]{coreide240.bpl} GalleryTypes.TGalleryItem.DoSelect (Line 188, "GalleryTypes.pas" + 5) + $6
    [206B2BE0]{coreide240.bpl} GalBrow.BrowseNewDialog (Line 344, "GalBrow.pas" + 23) + $4
    [206B2AE6]{coreide240.bpl} GalBrow.AddIcons (Line 304, "GalBrow.pas" + 55) + $8D
    [206B77F8]{coreide240.bpl} Gallery.LoadGallery (Line 727, "Gallery.pas" + 33) + $32
    [0041F10B]{bds.exe     } AppMain.TAppBuilder.FileNew (Line 2634, "AppMain.pas" + 1) + $2
    [5017009F]{rtl240.bpl  } System.Classes.TBasicAction.Execute (Line 16683, "System.Classes.pas" + 3) + $7
    [50A8CD86]{vcl240.bpl  } Vcl.ActnList.TCustomAction.Execute (Line 260, "Vcl.ActnList.pas" + 19) + $35
    [5016FF0B]{rtl240.bpl  } System.Classes.TBasicActionLink.Execute (Line 16594, "System.Classes.pas" + 2) + $7
    [21AC5815]{vclactnband240.bpl} Vcl.ActnMenus.TCustomActionMenuBar.ExecAction (Line 1078, "Vcl.ActnMenus.pas" + 6) + $D
    [21AC70C0]{vclactnband240.bpl} Vcl.ActnMenus.TCustomActionMenuBar.TrackMenu (Line 1844, "Vcl.ActnMenus.pas" + 19) + $15
    [21ACAAE6]{vclactnband240.bpl} Vcl.ActnMenus.TCustomActionMainMenuBar.TrackMenu (Line 3638, "Vcl.ActnMenus.pas" + 5) + $3
    [21AC53C0]{vclactnband240.bpl} Vcl.ActnMenus.TCustomActionMenuBar.CMItemClicked (Line 956, "Vcl.ActnMenus.pas" + 2) + $11
    [21AC53C9]{vclactnband240.bpl} Vcl.ActnMenus.TCustomActionMenuBar.CMItemClicked (Line 957, "Vcl.ActnMenus.pas" + 3) + $4
    [50AA3B32]{vcl240.bpl  } Vcl.Controls.TControl.WndProc (Line 7313, "Vcl.Controls.pas" + 91) + $6
    [50AA867D]{vcl240.bpl  } Vcl.Controls.TWinControl.WndProc (Line 10143, "Vcl.Controls.pas" + 158) + $6
    [21AC71D6]{vclactnband240.bpl} Vcl.ActnMenus.TCustomActionMenuBar.WndProc (Line 1883, "Vcl.ActnMenus.pas" + 25) + $4
    [50AA7C9C]{vcl240.bpl  } Vcl.Controls.TWinControl.MainWndProc (Line 9850, "Vcl.Controls.pas" + 3) + $6
    [50170DFC]{rtl240.bpl  } System.Classes.StdWndProc (Line 17187, "System.Classes.pas" + 8) + $0
    [2150942B]{vclide240.bpl} IDEVirtualTrees.TVirtualTreeHintWindow.IsHintMsg (Line 7067, "IDEVirtualTrees.pas" + 7) + $13
    [50BEEDE7]{vcl240.bpl  } Vcl.Forms.TApplication.ProcessMessage (Line 10534, "Vcl.Forms.pas" + 23) + $1
    [50BEEE2A]{vcl240.bpl  } Vcl.Forms.TApplication.HandleMessage (Line 10564, "Vcl.Forms.pas" + 1) + $4
    [50BEF15D]{vcl240.bpl  } Vcl.Forms.TApplication.Run (Line 10702, "Vcl.Forms.pas" + 26) + $3
    I'm then able to compile and run the project, but when starting a websession I of course get the message that "Application.Mainform" not found.
    I get a similar error message when trying to add a mainform or a "free form" through the Wizard. (However am I able to use the Wizard to add a frame.)
    What can cause this error? I've already uninstalled and re-installed UniGui with the same results. I've also checked the library path links for UniGui files and they also are ok.
    Can there be some kind of error in the UniGui Wizard for 10.1 Berlin version?
    Regards Alf