Jump to content

JF Fortier

  • Posts

  • Joined

  • Last visited

  • Days Won


JF Fortier last won the day on October 9 2019

JF Fortier had the most liked content!

About JF Fortier

  • Birthday February 25

Profile Information

  • Slogan
    Jedi Apprentice
  • Industry
  • Gender
  • Location

FileMaker Experience

  • Skill Level
  • FM Application

Platform Environment

  • OS Platform
  • OS Version

FileMaker Partner

  • Certification
    Not Certified

JF Fortier's Achievements


Apprentice (3/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges



  1. Thank you it work Latest version was installed, set a variable calculation to TRUE and now it doesn't display the error message.
  2. Hi, I use the native default script to erase a file. When it fail to erase the file (and in some case, it's OK) I have an error dialog that popup ... bla bla bla "OK" Win10, FMS16, FMA17 #1- How can I disable that error message, can't delete the file, no worry, that's ok. #2- For some unknown reason, when it's called with a card window, it might go background.... and I'm stuck, I can't press "OK", can't bring it back to front. If I kill FM process, the record is now lock on the server, disconnect the user doesn't release the record I'm in the process of switching to FM19, that as the native delete file, but for now, I'm not Thanks
  3. Using this will only bring the process name in a list, no more useless data TaskList = '' Process p = Runtime.getRuntime().exec (System.getenv('windir') +'\\system32\\' + 'tasklist.exe /nh /fo csv' ) BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream())); while ((line = input.readLine()) != null) { line = Eval.me('[' + line + ']') TaskList += line.get(0) + '\n' } return TaskList
  4. By reversing engineering many script and code on the web, I wrote the script like this and it return what I need to have, so for anyone looking to get the list of all running process on windows, use it freely 😁 TaskList = '' Process p = Runtime.getRuntime().exec (System.getenv("windir") +"\\system32\\"+"tasklist.exe /nh " ) BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream())); while ((line = input.readLine()) != null) { TaskList = TaskList + line + '\n' } return TaskList
  5. Hi, Going to FM19, I'm updating some old plugin and I need to know if an application is running or not on the client PC. I used Moo Plug for years and it work https://mooplug.com/docs/functions/moo_processrunning ** Edit: A new x64 version is on the way, Adam send me a beta version ** I'm trying this code try { String line; Process p = Runtime.getRuntime().exec (System.getenv("windir") +"\\system32\\"+"tasklist.exe"); BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream())); while ((line = input.readLine()) != null) { System.out.println(line); //<-- Parse data here. } input.close(); } catch (Exception err) { err.printStackTrace(); } I know nothing about Java or Groovy, but it look like it's sending data in the "while" one by one and at the end the input.close flush the result and I get nothing ?!?! So from the return value I could test if my process is running or not. If someone could shed some light, it will be appreciated. Thanks
  6. Yep! I just did some research, as I was saying, not a Java or JS person...Thanks Google I now know the difference ! Thanks
  7. Hi, Maybe a stupid question, I have no clue, not really a JS guy. With the new FM19, can we run Javascript natively in FM without the use of the plugin ? I run Win10/Server2012 and in the process of updating from FM17, I need to get rid of some old 32 bits plugins first. I created some on the function that I wanted with SMaster into a custom plugin.... but now FMS required a signed plugin, on Windows 🙄 not an easy task, for a newbie like me. So can we run some basic JS code in FM19 directly and get the result ? Or we still need to run them with SMaster. Thanks JF
  8. I need to add, sometime the item in the list is populated by a list of value based on multiple fields. I have a function that returns all the emails a customer may have in his file (multiple work location, commercial customer with a list of multiple employees) So when we need to send a quotation, this dialog open and let the user choose the email from the list of all email that customer as in file. That one I have no idea how, since it can't be a portal or list view. Maybe if I export all that info to a global table and then link and empty the table after ? Seems a lot of work and data manipulation for a single task ?! Thanks,
  9. Hi, I've been using the Kargas Dialog plugin for years, event if it's no longer supported, it's still working in FMA17, I'm planning to move to FM19 this year and I need to get rid of old 32 bits plugins. It's a lot of work since I use it in so many places. I already replaced large dialog and custom dialog with card windows (Technic by Matt at Filemaker Magazine). Mainly it is used to allow the user to select related information about something. The items in the list are not fixed. For example, we sell an item and we prepare a list of parts the installer will need to go with that item. So I have a table relation from item.id <----> multiple parts available for that item and I need to list all parts for the user to select. In some item I will allow only one selection and in some case, I will allow multiple selection. Now before I go into finding a way to replace this type of dialog, a picker, maybe there's someone that already made a solution for this ? I know it will be with a portal (or maybe with a layout in list view?) I can filter relationship so I know how to populate the portal or list view. I'm looking for a way to have a checkbox and select line, import those into a new portal (The import loop is already existing, as the Dialog return that info). Thanks, JF
  10. This is really an old post, but I love the look, we dispatch technician and that time picker will be very neat and easy to set time. We only schedule to 1/4 of an hour, I just remove the unwanted item and Voilà ! Thanks
  11. I found the code that I had that only return the coordinates and screen size. I just add the "import" section, that is what was missing from my previous attempt. import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.Rectangle; GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); String boundsString = ""; for (GraphicsDevice gd : ge.getScreenDevices()) { Rectangle bounds = gd.getDefaultConfiguration().getBounds(); boundsString += bounds.x.intValue() + " " + bounds.y.intValue() + " " + bounds.width.intValue() + " " + bounds.height.intValue() + "\n" } return boundsString; and it return plain data 0 0 1920 1080 -1680 0 1680 1050 Maybe this will help someone else in the future, you have 2 options, you just have to extract the data you want from the result. JF
  12. @john renfrew This is going in the right direction! In your case the retina display, I may be wrong put it's not something like @2x in the Apple docs? so the pixel is 1/2 of the resolution so your 5120 x 2880 return in fact 2560x1440 My Monitor #1 is 1920 x 1080 Monitor #2 (left) is 1680 x 1050 The result is gs[0] = java.awt.Rectangle[x=0,y=0,width=1920,height=1080] gs[1] = java.awt.Rectangle[x=-1680,y=0,width=1680,height=1050] So monitor 1 sets at 0,0 1920x1080 and monitor 2 (left) is the screen resolution 1680 x 1050, since it's on the left side is -1680,0 On the right I get gs[1] = java.awt.Rectangle[x=1920,y=0,width=1680,height=1050] So for me, this code is working, if I try with gs[2] and I don't have a 3rd monitor I get Groovy Script failed:2 I added a variable to set the monitor number "ScreenNo" and the Groovy now look like this import java.awt.GraphicsConfiguration import java.awt.GraphicsEnvironment int x = Integer.parseInt(ScreenNo); ge = GraphicsEnvironment.getLocalGraphicsEnvironment() gs = ge.getScreenDevices() gd = gs[x] gc = gd.getConfigurations() return gc[0].getBounds() and after some cleaning, the code requires is import java.awt.GraphicsEnvironment int x = Integer.parseInt(ScreenNo); return GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices()[x].getConfigurations()[0].getBounds() I can now run a script with a loop that will go from 0 until the plugin return ERROR and get into variables the info and with a custom function get this the data out of this result "java.awt.Rectangle[x=0,y=0,width=1920,height=1080]" Thanks John, you just made my day
  13. @Josh Ormond The command line is not working, it's telling me that I have only one monitor connected. I played around that command line tool, but I only get one monitor, one set of resolution ?!? I have tried other way, I might investigate that path and find another command line tool, but if not Win standard, I will have the install that tool in every PC... not the best practice in deploying a solution. @john renfrew The Groovy part is to set up a ScriptMaster plugin that will return the information into a variable and with that info I will script conditions to do what I need. So if I have 2 monitors, the solution will open the second window. If the 2nd monitor is L or R I will get the current FM function to send the new window in the right location. I once found a Groovy code that was supposed to do that (didn't save the URL !) but I recall copy/past in the demo file of scriptmaster but the script was not working, error running/compiling... Thanks,
  14. I appreciate your help! The best way to learn is by searching and finding it when someone point you in the right direction. But sometimes people say use the Groovy function get(monitor.xyz){};HelloWorld,zulu... as it may be useful for someone that already knows Groovy, this is not helping me to get a full function that works! I'm trying to achieve a plugin that will return the number of monitors 1 or 2, is the 2nd monitor located to the right or left and maybe the resolution (for future use) for now I don't need it. I want to build my start-up script so that a user with 2 monitors will have 2 windows open. We use an integration of SeedCode Calender in our solution and I want to have the calendar open full screen on the 2nd monitor and always stay open in that one, and the rest of the solution is within the main monitor, so ; If (PlugIn.results = 2 monitor) New Window ( x,y,z. Top:0 (if Plugin.results = MonitorLeft ; -300; get(WindowDesktopWidth) +300) // the new windows will then be in the 2nd monitor Adjust Window [Maximize] Else ... End Unless you have a way of doing this native in FM... as of today, I haven't found it. Thanks
  15. Hi, I know nothing about Java or Groovy etc! I want to deploy my solution and take advantage of dual screen. So I need to have information, if a 2nd screen is installed, is it to the left or right of the main screen. I have found many script exemples, but every time I copy them in the ScriptMaster file and run them, I get a compilation error. So if you want to help, please just don't say, use this command, or x,y,z... I would need to full script from A to Z, as I know nothing how to write a Groovy script, debug or else ! Thank you for your help. JF
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.