Get the folder path of a file in Dynamics NAV without using FileManagement.OpenFolderDialog

I am trying to get the folder path of a file (e.g. "C:\folder\file.exe") in Dynamics NAV/CAL. It is trivial to do by using the standard Microsoft Codeunit 419 - File Management, as OpenFolderDialog does exactly that.

Unfortunately this uses DotNet which does not work in the Webclient (specifically System.Windows.Forms.OpenFileDialog). Any ideas how that functionality can be implemented in a way that works in the Webclient (preferably without a Javascript Addin, but if there is nothing else, I would consider that, too.)

Best Answer


  • ftorneroftornero Member Posts: 522
    If you only need to get 'C:\folder', you can use this:
    Path(Filename : Text[1024]) Path : Text[1024]
    Filename := DELCHR(Filename,'<');
    Path := Filename;
    WHILE STRPOS(Filename,'\')<>0 DO BEGIN
      Filename := COPYSTR(Filename, STRPOS(Filename,'\')+1);
    IF STRLEN(Path) > STRLEN(Filename) THEN
  • JuhlJuhl Member Posts: 724
    Are we talking client side or server.
    Dotnet does work server side!
    Follow me on my blog
  • holgerbaehrenholgerbaehren Member Posts: 4
    I probably didn't state the original question clear enough. I want the customer to select the file via an open file dialog and then write the path of the file into the database. Not a problem with OpenFolderDialog, but that does not work on the web client.
  • ftorneroftornero Member Posts: 522
    Then you can use something like that
    IF FileMgt.CanRunDotNetOnClient THEN
      FileName := FileMgt.OpenFileDialog('Choose file:', '','CSV files (*.csv)|*.csv|All files (*.*)|*.*')
      FileName := FileMgt.UploadFile('Choose file:', FileName);
Sign In or Register to comment.