jbante

Members
  • Content count

    585
  • Joined

  • Last visited

  • Days Won

    30

jbante last won the day on November 2 2016

jbante had the most liked content!

Community Reputation

136 Excellent

About jbante

  • Rank
    member

Profile Information

  • Gender
    Not Telling
  • Location
    CA, USA

Contact Methods

  • Website URL
    fugue.bz

FIleMaker Profile

  • FM Application
    15 Advanced
  • Platform
    Cross Platform
  • Skill Level
    Expert
  • Certification
    7
    9
    10
    11
    12
    13
    14
  • Membership
    TechNet
  1. TriggersDisable is designed to be called by a script. It won't disable triggers without a script running to help developers avoid shooting themselves in the foot. What you're seeing in the Data Viewer is how it's designed to work.
  2. Others have commented on the usage of the functions, so I won't repeat that. The behavior of the Triggers* functions you describe sounds like a bug, but I can't reproduce it. Can you post the script where you saw that behavior?
  3. How different is the export process for each layout? In other words, how much of the single-long-script version would live inside the If...Else If...Else branches vs. how much would be the same steps (configured the same way) running outside the If[] block? The more steps in common, the more sense it makes to have the one long script. The more different steps there are, the more it makes sense to have separate smaller scripts. There's also another option for how to break up the logic which might be worth considering: one script for each layout, and each of those scripts calls common sub-scripts for substantial chunks of steps that are exactly the same. I lean towards this approach when there are both large chunks of logic different between contexts, AND large chunks of logic in common.
  4. See https://san-diego-workforce-partnership-1.workable.com/jobs/431628.
  5. If you're driver is already looking at the information on a smart phone, it's better to hand-off each destination to a navigation app than to generate the directions in FileMaker. This blog post describes how (at least on an iOS device). FileMaker can still maintain the order of destinations, and the Google and MapQuest APIs both include solutions to the traveling salesman problem that you can use in FileMaker to determine what the order of destinations should be.
  6. A solution to the original problem! Huzzah! And I really like a more thorough enumeration of the difficulties getting FileMaker to work with the null character. However, null-terminated strings are generally avoided whenever possible these days. Despite the other awkward handling of the null character, FileMaker is probably not using null-terminated strings under the hood, either in the calculation engine or in field storage: Let ( [ _null = Base64Decode ( "AA==" ) ; _string = "a" & _null & "a" ] ; Position ( _string ; _null ; 1 ; 1 ) // = 2 )
  7. You do not need a computer science degree to be hired as a FileMaker developer. Most FileMaker developers don't have any computer science training, in fact, so having one is a competitive advantage for an entry-level position. Be aware, though, that knowledge and skills unique to computer science (as distinct from general computer programming and IT) are often not what makes the biggest difference between a good and a great FileMaker application. A lot of computer science doesn't go as far as a little computer science combined with a little design.
  8. I'm way late to the thread here, but another way to make a (perfectly valid!) null character in FileMaker is Base64Decode ( "AA==" ). While this is a perfectly valid character both in UTF-8 and in Unicode more generally, it is disappointing that it doesn't get escaped in export formats like XML where it is not.
  9. Let ( [ #error = Get ( LastError ) ; #newError = If ( #error ≠ 0 ; Trim ( #error & " " & scriptStep ) ) ; It sure looks to me like the function is trying to ignore error code 0, even if there are previously recorded errors. It looks like FileMaker 15 is successfully setting $Error to empty until the first error, and successfully not appending new lines for error code 0. So FileMaker 15 isn't crashing. Great!
  10. I just tested this, and FileMaker 15 custom functions were happy to set local variables that persist outside the function for me. It looks like the ErrorList function in your demo file isn't setting the $Error variable because the custom function chooses not to save error code 0, and the script doesn't trigger any other errors for it to save.
  11. Since your result from step 1 is sorted, you can get your result from step 3 without making another ExecuteSQL call. You could do a binary search on the result from step 1 to find the last value within your upper limit, and use LeftValues ( $step1Result ; $positionOfLastValueToInclude ). This may or may not be faster; try it, measure the time, and use the faster approach.
  12. When working in FileMaker, you should usually presume that ExecuteSQL is one of the slower links in the chain, not the calculation engine. You may have a point in this case, but only because naïve parsing of return-delimited lists with calculations is a quadratic-time operation — not that it makes much difference up to a couple hundred rows or so.
  13. What is the reason you would prefer to do this with SQL instead of a function in FileMaker's calculation engine? You could easily use a (non-SQL) custom function to calculate an average from the return-delimited list result of your first query.
  14. For even the simplest of the calculation options, some historical data is necessary to fit the harmonic series. However, as long as you don't need the accuracy provided by local current and topography details, you shouldn't need that reference data after you've fit your coefficients.
  15. Judging from a quick Google search, tide calculations can range from moderately complicated to you-can-get-a-masters-degree-in-it complicated. How accurate do you need it to be, and how much detail do you need? Do you just want high and low times, or do you want to calculate height for a given time? I suppose you could do a simple calculation taking into account only the angles of the sun and moon relative to a position in a 2D model of the solar system. You could get a little more complicated by taking into account the declination of the sun (season) and moon, i.e. 3D model of the solar system. I understand that local currents and topography can also have a big effect, but then you're getting into needing to feed-in lots more location-specific data to the calculation. Mathematically, we're talking about a harmonic series for the more basic versions, i.e., a sum of sin functions representing the different periodic cycles and with different coefficients representing the relative strengths of their effects. You could pick out which effects you want to take into account (sun and moon phase at minimum, seasons and ellipsoidal orbit effects if you want to get fancier, latitude of the location if you want to show off), and fit a harmonic series with those components to a data set of actual tides.