Jump to content


Popular Content

Showing most liked content since 05/15/2017 in all areas

  1. 3 points
    May I suggest that you work with this version going forward. It clarifies key field names, reorganizes the graph, and eliminates "portal" from any table or relationship names. The TO may be used in a portal. But labeling the TO as someThing_someThingPortal hides actual relational concepts. Test File DemoJOBR.fmp12
  2. 3 points
    Not sure in what form you need the results. Here's your file back with two global fields that contain a list of unique skus and the count of that field (set by script). DEMOv2.fmp12
  3. 3 points
    Let's all get along? It's been rare for our forums, but on occasions I have had to step in to keep the peace and harmony of the site. At times personalities clash - and the typed repsonses are often done in haste - and the sort of thing that wouldn't be said if we were all in same room together. I am encouraging everyone to re-read https://fmforums.com/guidelines/ our guidelines. Let's please keep threads on topic. - and not abuse the "reporting" system. Please be courteous of others and if you have offended someone please extend a sincere apology. The least thing I enjoy doing is to put people in 'timeout' or ban them from the site. Thank you.
  4. 3 points
    Aleesha, another thing which fits for you right now is making it easy on yourself in future to know specifically which table occurrences have Allow Creation turned on. It looks obvious here but as your solution grows, it won't always be obvious and we can forget as well. What many developers do is use the text tool to create reminders such as the A or a - if 'deletion' or S for sort.
  5. 3 points

    Version 1.0.0


    This technique was inspired by @Claus Lavendt in a tweet. Now with offset new card style mode you can now create a tool pallet to interact with a document in preview mode


  6. 2 points
    Hi Gilbert, There's a tiny box when you double-click the script step (Perform Script on Server) called "optional script parameters": That is where you need to enter your parameter. It could be a variable ($variable) or just text in quotes. Don't forget that you can't debug on the server, so you'll want to add error trapping very often and send yourself a mail if something can fail. Also, you might want to Exit the server script with a parameter, if you need to pass it back to your original script: Exit Script (parameter). And in your original script then you'll have to get that parameter back by: Get (ScriptResult). Hope this helps, Agi
  7. 2 points
    You took the words right out of my mouth, Tom. Unfortunately, I hadn't had the time to follow this thread as I'd liked. Wim explains it very well below, link here https://community.filemaker.com/thread/149215?start=0&tstart=0 (although the entire thread is well worth the study). OneStop, you're lucky to have such great assistance. This is why I still ask questions here as well. :-) My apology for not reading the entire thread so I'll only suggest that using Perform Script on Server is lightening fast if you can use it. I'm still blown away at the speed differences. Agnes, you've been quite helpful and respectful throughout. This forum is lucky to have you assisting.
  8. 2 points
    With the advent of a new Fiscal Year for the FileMaker Developer Community, we will experience five emerging trends in FileMaker Information Security. Each of these will likely have specific impact on developers, on our clients, on the Platform, and on the larger business environment in which we operate. Cumulatively and symbiotically, the magnified impact of the five will have the potential to alter many long-standing practices and conventions. What are these five trends? How will they impact the developer community? Read more and download article here: https://fmforums.com/files/file/94-five-emerging-trends-to-impact-filemaker-platform-security/ Steven H. Blackwell
  9. 2 points
    I'm not sure which topic this belongs in but... I really just wanted to let everyone on these forums know how thankful I am for your support, advice and guidance. Over the past few years as my small business has grown into a bigger business I've needed filemaker to do more advanced things and as I am not a developer and simply a business owner, I've turned to these forums and to you all and I couldn't have built my database without your help. From the bottom of my heart thank you so much!! Matt
  10. 2 points
    Not quite. OneStop, you'll need to search for *-
  11. 2 points
    I don't understand the question. It seems to me like you've already identified what needs to be done. I would recommend breaking it down and getting one portion working at a time, doing whatever research/experimenting you need to figure out each step. If you searched through the help file, I think you'd find you can piece this together. For your first step "Open Find" for example, you might want to read this: https://fmhelp.filemaker.com/help/16/fmp/en/#page/FMP_Help%2Ffind-request.html. The reference section of the help is useful for exploring what script steps are available: https://fmhelp.filemaker.com/help/16/fmp/en/#page/FMP_Help%2Fscript-steps-category.html%23 Here is some more general help on writing a script: https://fmhelp.filemaker.com/help/16/fmp/en/#page/FMP_Help%2Fscripts.html%23
  12. 2 points
    I think you want to use a Loop Script. http://www.filemaker.com/help/15/fmp/en/#page/FMP_Help%2Floop.html%23wwconnect_header # Do a find to Isolate Records to be changed # This will replace field contents with nothing. # Go to Record/Request/Page [ First ] # Loop # Set Field [zz_DeleteWarning__lxn ; "" ] Go to Record/Request/Page [ Next ; Exit after last: On ] # End Loop Lee
  13. 2 points
    Hi riadh2002 Thanks fo posting this mod. I love it, when someone can extend on what I start. Really glad that my tool seems to have been helpful to you and others. In case someone has only had their hands on the first version, I released, the most recent version of the tool, let's you both import, "make FM ready" SVG - but the most useful feature of the newest version, is that you can take a found set, press the button to "copy" all found icons and paste them into your solution all at once. So say you have a standard collection of SVG icons, that you normally want to use. Find these icons in the tool. Copy them. And then you use the paste shortcut, which will insert a button bar object, that you can delete immediately after you pasted it. Now, all your icons appear in the tools palette of your file. Newest version can be found here: http://thebrainbasket.com/?p=404 (completely free and open)
  14. 2 points
    For anyone who have pale icons in filemaker after importing here is how to change the colour to red Many thanks to Claus Lavendt, of DataMani for providing the tool for free Using SVG icon Helper, can be downloaded here for free: http://www.filemakervideos.com/filemaker-14-svg-icon-helper-tool-filemaker-14-training/ And this code takes into account all shape elements of SVG such as circle, rectangle, polygon,,,etc. and Works Great with IonIcons.com Library It removes existing fills and fm_fill class and substitutes with new values so it works with SVG with or without fill attribute. You can also change the color at the top of the code 1. Open SVG icon Helper FM database and open Script Workspace 2. Go to Script “Edit SVG files - mini icons….” 3. Go to the comment “#make changes” 4. Open the Set variable script step just below 5. replace the existing code by the following: 6. save and go back to the main layout and click the button with the blue pen, select folder and validate You’re done :-), now you can re import the icons into filemaker Let ( [ ~content = $content; ~color = "#FF0000"; // We need to search for all existing fills and remove them ~content=If ( PatternCount ( ~content ; "fill=\"" ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "fill=\"" ; 1 ; 1 ) ; 14 ) ; "" ) ; ~content ); // We need to search for all existing fm_fill and remove them class=\"fm_fill\" ~content=If ( PatternCount ( ~content ; "class=\"fm_fill\"" ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "class=\"fm_fill\"" ; 1 ; 1 ) ; 15 ) ; "" ) ; ~content ); // Then add the fills in the appropriate positions covering all possible SVG elements //<path ~content=If (PatternCount ( ~content ; "<path " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<path " ; 1 ; 1 ) ; 6 ) ; "<path fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ); //<rect ~content=If (PatternCount ( ~content ; "<rect " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<rect " ; 1 ; 1 ) ; 6 ) ; "<rect fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ); //<circle ~content=If (PatternCount ( ~content ; "<circle " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<circle " ; 1 ; 1 ) ; 8 ) ; "<circle fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ); //<ellipse ~content=If (PatternCount ( ~content ; "<ellipse " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<ellipse " ; 1 ; 1 ) ; 9 ) ; "<ellipse fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ); //<line ~content=If (PatternCount ( ~content ; "<line " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<line " ; 1 ; 1 ) ; 6 ) ; "<line fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ); //<polygon ~content=If (PatternCount ( ~content ; "<polygon " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<polygon " ; 1 ; 1 ) ; 9 ) ; "<polygon fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ); //<polyline ~content=If (PatternCount ( ~content ; "<polyline " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<polyline " ; 1 ; 1 ) ; 10 ) ; "<polyline fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ); //<text ~content=If (PatternCount ( ~content ; "<text " ) > 0 ; Substitute ( ~content ; Middle ( ~content ; Position ( ~content ; "<text " ; 1 ; 1 ) ; 6 ) ; "<text fill=\""&~color&"\" class=\"fm_fill\" " ) ; ~content ) ]; ~content )
  15. 2 points
    There is a file called permittedlist.txt. It is located in the /Users/{username}/Library/Application Support/FileMaker/Shared folder. This Library folder is normally hidden. To view it, go to Finder and open the Go menu while holding down the option key. The option key allows you to select the Library folder. Drill down to this file, permittedlist.txt and delete it. Or, to be ultra-cautious, just rename it. Now, when you try to upload a database to FM Server, it will alert you to any SSL certificate issues. When you choose to connect anyway, it will generate a new permittedlist.txt and it will allow you to freshly enter your FM Server admin name and password and upload the file.
  16. 2 points
    I'll counter that. One of our standards is to always an explicit "Exit Script" and to explicitly pass an empty string "" when no real value needs to be passed out of the script. The main reason is that the Get(ScriptResult) will remember the last explicit returned result. If you don't use Exit Script in the sub script but expect Get(ScriptResult) to be empty because you didn't pass anything back then you may be surprised to see a value if a previous script did use Exist Script with a return.
  17. 2 points
    Just to let anyone know that may have the same issue, I have submitted this to 360works support and they replied that this is a confirmed bug and recommend to go back to ver 1.67 until a fix has been issued. -Sydney
  18. 2 points
    Come to think of it, that's not entirely true. Suppose you add a field that cannot be empty (such as ClientID) into the portal and give it an object name. You could then use the GetLayoutObjectAttribute() function to get the object's content - and hide the portal when it's empty.
  19. 2 points
    I don't think playing 20 questions is a good method to get to the bottom of this. No one can tell why something fails without being able to reproduce the problem on their own first. The proper way to present this would be to attach the two files - preferably reduced to the absolute minimum that still shows the problem. Without this, all we can do is generalize and/or guess. In general, I can think of two possible reasons why records will not be imported: 1. There are no records to import; 2. There are records to import, but they do not pass validation. Now for the guess part: First, I don't know what you mean by "the autocomplete box on import". I am going to guess it's actually the "Perform auto-enter options while importing" option. And I am going to guess further that one or more of your fields is defined to auto-enter a value and validated as Not empty, Validate always. And I am going to guess that the source file contains no data to import into this field.
  20. 2 points
    Apparently, the issue is fixed in FileMaker 16.0.2!
  21. 2 points
    Extra step: yes. Hassle: after a while it doesn't feel that way because that new Layout Object inspector brings so much goodness that you'll use it all the time anyway and it won' feel like a hassle to have to move over to it. It'll become a very natural flow of your layout design. But it definitely is a change and requires a bit of mental retraining and so there is a bit of 'who moved my cheese'. I certainly scoffed at it in the beginning, now I can think of all the bigger hassles I had to go through before having this.
  22. 2 points
    Not sure if "master list" = client cache. I've not heard that term. However, I've read that some are seeing bad data (outdated) because of cache! Several desperate posts on TechNet. https://community.filemaker.com/thread/168254 But good reviews here: https://blog.beezwax.net/2016/06/15/performance-optimizations-make-compelling-case-for-filemaker-15-upgrade/
  23. 2 points
    I doubt very much you need or want to do that. What would be the purpose of this? You will end up with several numbered Category fields. Numbered fields are a prime example of poor database structure. You won't be able to find a record by its category, unless you search all the fields. You won't be able to define a relationship matching on category. You won't be able to produce a report of records grouped by category. I suggest you either split the field into individual records in a related table or just substitute the > character with a carriage return, so that your field contains a list of the relevant categories (same as a checkbox field would).
  24. 2 points
    Not sure I follow entirely, but in your script, just before the "Show Custom Dialog" just do a Set Field [Examples::MASTER CODE ; "" ]
  25. 2 points
    OK - I did it myself. Over a couple weekends of spare time, I wrote a few dozen scripts that interface between Filemaker and the Amazon Marketplace Web Service API. Sad to say, this is non-trivial. Amazon's documentation is poor: there are a surprising number of mistakes, misspellings, and obsolete/outdated sections. The one bright spot is the Amazon MWS Scratchpad, which provides a direct sandbox to allow testing different calls. Most of the documentation and online help is aimed at PHP & Java & Python developers; it's not too difficult to map this into Filemaker land. I wrote scripts to gather my orders from Amazon Market Place, and to send confirmations to buyers. Like most API's, there are many gotcha's. Here's a few hints, mainly to save time for others in my position. 1) A simple Filemaker WebViewer is *not* going to work, unless you do screen-scrapes from the Amazon MWS Scratchpad. 2) I used cURL to communicate with Amazon Web Service via POST. The information to be POSTed is the Amazon parameter string (which includes the hashed signature). The Monkeybread Software Filemaker functions (www.mbsplugins.eu) are just the ticket. 3) The outgoing information must be signed with a SHA256 hash. Again, this is available in the Monkeybread software functions. Use MBS("Hash.SHA256HMAC"; g_AWS_Secret_Key; g_AWS_Text_to_Sign_With_NewLines_Replaced; 1) 4) Getting the correct SHA256 signature requires very strict observance of line-feeds ... carriage return / linefeeds in OS X and Filemaker will cause a bad signature. Before making the SHA256 hash, do a complete replace so as to generate only Unix-style line-feeds. Within the "canonical parameter list" there aren't any linefeeds (but there are linefeeds before that list) 5) The Amazon API demands ISO-8601 timestamps, based on UTC. Filemaker timestamps are not ISO-8601, but there are several custom functions to generate these. The Filemaker function, get(CurrentTimeUTCMilliseconds), is very useful, but its result must be converted into ISO-8601. Notice that Amazon UTC Timestamps have a trailing "Z" ... when I did not include this, the signatures failed. 6) The Amazon API must have url encoded strings (UTF-8). So the output from the SHA256 hash must be converted to URL encoding -- again, the Monkeybread software comes through (use MBS function Text.EncodeToURL) 7) The Amazon "canonical parameter list" must be in alphabetical order, and must include all of the items listed in the documentation. 8) Errors from Amazon throttling show up in the stock XML return, but check for other errors returned by the cURL debug response. At minimum, search through both responses by doing a filemaker PatternCount (g_returned_data; "ERROR") 9) When you're notified of a new Amazon order, you must make two (or more) cURL calls to Amazon MWS: 1) first, do cURL request to "list orders", which will return all the Amazon Order Numbers (and some other info) for each order since a given date/time. 2) Then, knowing an order number, you do another cURL to get all the details for a given order. Repeat this step for every new Amazon order number. Each of these calls requires your Amazon Seller_ID, Marketplace_ID, Developer_Account_Number,_Access_Key_ID, and your AWS_Secret_Key. Each also requires a SHA-256 hash of all this information along with the "canonical parameter list" If anyone wants my actual scripts, drop a note to me (At this moment, my scripts do the all-important /orders /list orders and /get order. I'm almost finished writing a /feeds filemaker API to send confirmations. I probably won't build scripts to manage inventory or subscriptions, but once you've built a framework for the scripts, it's not difficult to expand to more functionality) Best of luck all around, -Cliff Stoll
  26. 2 points
    For the most part people come to FM Forums seeking advice or assistance. If given a little thought, your topic can really engage the reader to want to assist you in finding the best answer or solution. Step 1: Choose Wisely! By first looking at the topical nature of the forums you can see there are many different forums that cover a wide range of discussions. By way of self-curating the site, try to choose a forum that covers the intent of your topic. We realize that some items cross boundaries and that is ok, just choose a forum that fits the spirit of your topic. If it's wrong a moderator will move it to a forum that best suits the conversation. Step 2: Titles, Names, & Tags Be terse but informative. With your topic title, encourage your reader to want to read your topic. Don't be needy or demanding with "please help" post titles. We realize you've hit a brick wall or may be very frustrated or have a demanding boss. But take a breath - it will be ok. Then compose a topic title that draws them in. Add a tag or two, they will appear next to the topic, it can just be a simple word or phrase that tags the post to some FileMaker-centric topic. Step 3: No Need for Apologies It is not necessary to start your post with an apology to the reader regarding where you are posting or your current understanding of a topic. We are pretty nice here and won't fault you for trying. Step 4: Prerequisite In order for your reader to provide the best response, make sure your profile has been updated with the platform and version of FileMaker that you are using. Otherwise we will assume you are using the most current versions, and the advice given may not work in older versions. If your post is specific to a version / platform / deployment please inform the reader — we don't necessarily need your computer specs, just enough background so that the reader can envision your environment. Step 5: Goals Stating your desired goals, and what you are attempting to achieve in a simple statement will aid the reader as they read further in to the details of your conversation. Step 6: What have you tried? Outline your process and steps you have taken, to get to you the point you are at. It doesn't have to be overly verbose, an essay isn't necessary. Step 7: Format for Emphasis Use the WYSIWYG editor to format text as needed to provide details. You can reference generic terms such as table::field or use your own nomenclature but if the context dictates provide the reader clarity what things may mean if they would not be apparent to someone outside your organization, or industry. this is code from a calculation bullets lists Step 8: Pictures & Sample Files Admit it, you know you miss Show & Tell from kindergarten. Re-live a past life by providing a screen image of your solution. Provide the reader information and context. Use third party tools to draw arrows on your image if needed. Can you send a clone of your solution? - If you do please make sure confidential data is removed, and your boss says it is ok. If you are modifying a commercial version of software that you have purchased — we request that you not do post a clone of these files; as that would be most likely against your terms of service. In that case you can make and post a sample file that recreates the issue you are having. Step 9: Cross Posting There are other venues on the internet that discuss FileMaker and many of our users are active participants of these resources. If you have already posted your question or topic on another site please copy the link and mention that your topic is a cross post this way others will know and may choose to review the threads and offer alternatives or not repeat a reply in both places. If you received your answer please report back here with a link to the response so that we all have a sense of closure. Step 10: A Sense of Humor Keep your sense of humor, and don't forget to smile. The site is visited by members of all skill levels, many are full time developers and consultants and generously volunteer their time and energy to the site. When the occasion calls for it give them your gratitude . A little levity never hurts. Also keep in mind that American English is not everyone's native language -- some things may not translate. If English is not your first language, just do your best. We really appreciate this! It gives us a little spring in our step.
  27. 2 points
    Here's one way. RowCalc.fp7.zip
  28. 1 point
    Hi Christoph, The FM Forums welcomes members of all skill levels. The only requirement being that they have familiarize themselves with the FileMaker basics. I opened your file, and the first thing I did was to organize the Relationship Graph. The Relationship Graph is not a ERD, however, it does give you insight to the file structure. The ERD should be setup when you are starting a new solution. I would recommend that you study what an ERD does, and how it fits into developing a databases. If you are not sure what an Entity Relationship Diagram (ERD) does, do a search for either ERD or Entity Relationship Diagram. This is just one of the hits that a Google Search found. https://www.lucidchart.com/pages/er-diagrams Here is a free ERD tool that is available at https://www.draw.io However, you can do one using a pen and paper. There is a FREE training class being provided by ISO FileMaker Magazine https://www.youtube.com/channel/UC92MpDPgdr-xEn3JRUAmZOQ I wish that someone had provided classes like this when I first started to develop in FileMaker, There are currently 4 Areas being covered by Matt Petrowsky so far, Environment, Fields and Calculations, Data Structures , and Layout Mode and Design, The Data Structure Lessons would help you a lot with Relationship Graph, He has spent a lot of time covering this section. There are other training sites that offer training, I can send you a list of them if you want. HTH Lee
  29. 1 point
    The value list method that @bcooney mentioned is a good one. One I've used often. It relies on something FM is already doing, building an index of values. That index, by it's own nature, is a unique list. I didn't look at her file, but I imagine she is using the function ValueListItems ( ). That would be my route. Another method is simply looping the records and building a list as you go. If the current record value doesn't exist in the list, add it. Here PatternCount ( ) would tell you if the value is in the list. Everyone here is just trying to help. No one means any harm. Even if it reads that way sometimes. Have fun...look forward to helping you with any other questions you may have.
  30. 1 point
    Dear OneStop, glad you know my name, while you didn't disclose yours. I'm sorry if I offended you. I'm glad bcooney could help. Good luck with your work! And Lee just asked you to update your profile, just like he asks everyone else. That's a basic board requirement. Nothing's offensive about that.
  31. 1 point
    In a case like that, make the default access be to nothing. No access to anything. Only allow access to the data, and layouts once the script finishes. That makes it so that when the OnFirstWindowOpen script has not run, they have no access to the data, the scripts, layouts, etc. There is then no benefit to not having that script run.
  32. 1 point
    Hi Rob You need to rethink your tables in my opinion. Normally it would be setup like this :- PRODUCTS (one record per product) id_pk productName cost price etc BUNDLE (one record per bundle, rather than multiple per bundle in your setup) id_pk bundleName BUNDLE_ITEMS (one record for each occurrence of a product in a bundle, it's a JOIN table) id_pk id_product_fk id_bundle_fk qtyInBundle So BUNDLE_ITEMS is a join table between products and bundles. You have one record in the BUNDLE table for each bundle, and then create join table records whenever a product features in a bundle. I've amended your sample file with this setup, you can add products to bundle's just by choosing from the popup list! I also added a qty field so you can have multiple qty's of a product in a bundle, and totals for each bundleItem, and a grand total for each bundle. Enjoy. Bundle.fmp12
  33. 1 point
    The button would perform a script: Duplicate Record Set Field[ fieldwithnumber ; fieldwithnumber - 1 ]
  34. 1 point
    You haven't filled out your profile so we don't know what platform you're on. On Windows there's a long-standing bug/irritation that any layout you select from the layout menu beyond 256 will result in you landing on the last layout in the list. 2748 tables, really? That sounds a little fishy.
  35. 1 point
    How about = MEDIASIZE * If ( PatternCount ( MEDIASIZE ; "GB" ) ; 1024 ; 1 )
  36. 1 point
    And that is a good thing. If you spot and error in the imported records, (missed a field, etc.) you can delete the found records and then reimport the data while correcting the error.
  37. 1 point
    Almost all barcode scanners pass a carriage return at the end of each scanned barcode. Set your barcode field to to go to next object using return and enter. You may do it from inspector window while the barcode field is selected: Now when scanner gun passes the return carriage, the mouse cursor will jump to the next object. This also can trigger a script trigger so you can set your script to trigger on "object save" or "object exit" for the barcode field. This way, when scanner gun passes the return carriage, it forces FileMaker to exit the field and run your script. Then the script trigger can go to next record and then select any field you want.
  38. 1 point
    Well, that is unless you're willing to use a plugin: BE_RegularExpression ( "AlphaBravoCharlie" ; "(\p{Lu})" ; "g" ; " $1" ) will return: " Alpha Bravo Charlie" and will recognize any uppercase characters, in any language.
  39. 1 point
    It may be less than obvious but the FIND requests should be BEFORE the OMIT requests. Each find and omit request is ADDITIVE/DEDUCTIVE, and multiple field entries in the same find request are COMPOUNDED together so that all entries must match. Your search procedure should go: Find Omit (if necessary) Constrain (if necessary) The constrain requirement can be used as part of the find request by specifying the field value, ergo [Type ≠ "Assessment"] In your specific example I don't see a need to use Omit or Constrain as you can get all 3 search criteria in a single find request. Any clearer?
  40. 1 point
    That wouldn't work any way you look at it, because (a) portal sorting is done at the layout level and the chart has no access to the sorted data; and (b) a portal - or the underlying relationship - can sort, but they will not summarize. It's actually very simple. Set your chart to use data from current record (delimited data). Then make sure you have two variables containing, for example: $$labels = Adam Betty Cecil $$data = 350 125 72 and use them as the pie chart's category labels and slice data, respectively.
  41. 1 point
    Doesn't work because of this: Get ( DocumentsPath ) the path you pass to any SM function needs to be a correct O/S path not the FileMaker version of that... The raw path I get back from my Server 16 is: /C:/Program Files/FileMaker/FileMaker Server/Data/Documents/ setVariable $thePath = Substitute ( Middle ( Get ( DocumentsPath ) ; 2; 999 ) ; "/" ; "\\" ) will work, then use it in the function call and you are appending the FILENAME to a new file not it's contents with this - f.append ( container ) try this? // SaveContainerAsFile ( fm_field ; fm_fileOut ) // v1.0 // J Renfrew // fm_field = FQFN of container field // fm_path = fullOS path and filename f = new File( fm_fileOut ) if (f.exists()) { if (!f.delete()) { //throw new IOException('Could not delete ' + f.getAbsolutePath()) return 'Could not delete ' + f.getAbsolutePath() } } try { f.append( fmpro.getContainerStream ( fm_field ) ) } catch (e) { return e.getMessage() } return true
  42. 1 point
    Technically, it could be done. As Wim mentioned, performance is a major constraint. The JSON functions are slow compared to the built-in functions for return-delimited lists, and very slow compared to repeating variables.
  43. 1 point
    You can calculate the date of last Wednesday using = Get ( CurrentDate ) - Mod ( Get ( CurrentDate ) - 3 ; 7 ) Note that this will return the current date when the calculation is performed on a Wednesday. I am afraid I did not get this part: The calculation looks only at the weekly cycle and ignores year boundaries. If you like, you can use = Get ( CurrentDate ) - Mod ( Get ( CurrentDate ) - Weekday + 1 ; 7 ) where Weekday is a number between 1 (Sunday) and 7 (Saturday).
  44. 1 point
    Yes, there is. You have a many-to-many relationship between People and Activities (one person can participate in many activities, one activity can have many participants). This requires a third table to join the two - a table where each record will represent the participation of one specific person in one specific event. You can see a basic demo of a join table here: https://fmforums.com/topic/50942-portal-grouping-problem/?tab=comments#comment-239210 Note that you can add records to the join table from either parent table, and have them show up in the portal from the other parent. You can also have any number of join records and there is no need to predefine numbered fields in any table for this purpose.
  45. 1 point
    Hi guys, We apologize for the lack of response lately in these forums. As you can imagine, we are experiencing an extraordinarily high volume of support issues and have not had as much time to dedicate to the forums as we usually do. As always, if you are not able to get a response here, please send an email to support@360works.com to open an official support case or call our office. We are open Mon-Fri 10AM-6PM EST. We did push an update of our plugins to our website yesterday that addresses the 32-bit issue reported in this thread. Please download this version and if you continue to have issues, please send us an email or call.
  46. 1 point
    You posted this in calculations, yet you ask about script steps. To script this, you could start by doing: Go to Related Record [ From table: “LineItems”; Show only related records; Match found set; New window ] Next, constrain the found set in LineItems to "paper widgets" only and get the summary value from a summary field defined in the LineItems table. Finally, close the current window to return to your original found set in Invoices. This could probably be simpler if the initial search were performed in the Lineitems table to begin with.
  47. 1 point
    If you take that piece of your code and put in the data viewer it will tell you what is wrong. Look at the output and compare it to what is required. Some quick ones: - you don't need the ampersand after the first -H - you don't add spaces between the different sections
  48. 1 point
    FileMaker's 'Open' command will work with Excel and text files -- converting them to FileMaker files in the process -- but not PDF. I believe you can fill in PDF forms using Scribe: 360works.com/filemaker-pdf-plugin/
  49. 1 point
    Hello, I think you just need to use the Get (TemporaryPath) function, see the post at ... This gives you an example of a script that sends a PDF and the resulting PDF does not clutter the iOS, since it is saved in the TemporaryPath location, which is purged by FileMaker Go regularly.
  50. 1 point
    You need a path, and I don't see why you're changing layouts. In fact, that might change your record. User is on Contact form. Clicks "Mail PDF of Record" 1. set var $filename; patients::lastname & ".pdf" ( I might also add id) 2. set var $path ; get (temporarypath) 3. set var $fullpath; $path & $filename 4. Save as PDF; create email, current record only $fullpath
This leaderboard is set to Los Angeles/GMT-08:00

Important Information

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