By Ocean WestThis sample file was designed to generate a Table of Contents from a sub summarized report.
In FileMaker there is no inherent way of knowing what sub summary part exists on which page as this information is only displayed when in preview mode.
There are two versions of this solution one with JSON and one without - I over engineered the first one with JSON - and then revised it to remove JSON - as it wasn't necessary.
How this technique works.
On the report layout in the header and footer there are some button objects each has a Hide object when calculation that declares a $variable by use of the Let function that evaluates when a script is running.
Once setup the script uses the $hState, $hPage, and $hRec and compares them to the same variables in the footer - to determine if a summary part spans multiple pages.
In order for this to work you have to be in preview mode and the script must pause for the at most a second i enter .001 but its somewhere between that and a full second.
This gives the script enough time to evaluate the variables, and then it loops thru testing each record it finds on the page by comparing the $hRec and the $fRec which are the starting record number and ending record number on that page and then loops thru each page.
After a bit of transformation of the data it generate a table of contents by use of a Virtual List. Then it computes the how many pages the Table of Contents there are and offsets this value for every page of the report then it will output a PDF to the desktop firstly the Table of Contents then append to that PDF the report itself.
Since this technique relies on preview mode - it can't be used on server (server can create pdfs but doesn't have preview mode so can't get the page number.)
Because it also pauses for each record it would not be ideal for super large report.
By ToniI created this solution because I wanted to have each day as a record.
The purpose of it, is assigning working days (business days) an incremental number so that number can be used in other related tables on which is required to calculate working days.
It has two main scripts, the firsts populates the year. After year is populated, than holiday days are assigned manually but you can add script at your needs. I left it manually so you can be flexible with it. Where I live is not uncommon to have to work even if it might be a holiday, so every company has different needs.
After holidays have been assigned, there is a second script which will define the incremental number of working days. On the holidays this number is equal to the number the nearest next working day has. For example, if 28 and 29 of November are holidays the working day for those will be 282 the same as that on 30 November. This helps in cases someone assigns a job that starts on holiday and calculate the end date of that job.
Any idea or contribution to make it better is welcomed.
Thank you, Toni
By Ocean WestThis 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
By macjosBeing unsatisfied with solutions I found on the internet and wanting a solution without plugin I created a set of custom functions that can read a path out of a json-string.
json_path ( json-string ; path )
json_path( $user_prefs ; "Privileges/Modules" )
json_path( $json_data ; "Menus/Menu/MenuItem/Label" )
By Ocean Westvirtual list from value list using button bars to display data not portal and paginates thru the values.
By RaybaudiSomeone asked if it is possible to count the pages of a PDF...
The attached file contains a tail recursive custom function that can do the work for the most common cases.
By Ocean WestConcept uses a large text block for data entry, the script will parse for paragraph returns and then uses the Virtual List technique to print the multi page letter.
Also will allow for a scanned image of a signature to be appended and will slide up to the bottom of the body copy.
Also allows for manually inserting a page break by using <break> in body of text.
A very simple example of a progress bar that updates itself without any field, plug-in, custom function. Just copy the object on your window and it works!
By LaRettaA single table might have up to four layouts to present its data:
List view (for quick reviewing of records) Print view ( a black & white view for printing) Search form ( holding all the fields in the table Users can search) Detail view (form layout used for editing a record) We've all known for years that we can hide things in sub-summary parts and only display them if properly sorted but now in 14, you can potentially use a single layout for list , searching and editing. In 14, navigation bars allow scrolling in form view and we can take advantage of this by using the Title Footer (or Title Header) to hold our 'form'.
A simple switch from list view to form view can provide Users all the fields they need. The title footer can hold portals, tab controls and anything else you would place on an editing or find layout. Related records placed in the Title Footer are not fetched until switching to form view so they have no weight until displayed (just like popovers, tab controls and sliders).
In the attached sample, layout triggers assist by switching to form view if in find mode and switching back to list view after a find. I have hidden the list view fields and labels when in form view to simplify the view.
Less layouts in a solution Light weight No need to switch layouts (which might fire triggers) Endlessly scrollable form view (not limited like popovers and sliders) Potential issues? Yes.
The header is only one line tall in my sample (holding the list's labels). If you need a vertically-tall header for the list view then this approach might provide too much 'unavailable' space at the top. And switching the process later would not be simple task. I hid the header labels and fields in the list which makes it a bit more work to design (although minimal). You might wish to let them display and only provide additional fields below. This is just another useful, simple tool for our toolkits. BTW, I have specified 'not applicable' on the FM version because 14 hadn't been added as an option yet.
Also, this new forum software doesn't allow a title or subject - only accepts a valid file name.
Here is a file that allows
- To have a foot in the final page, the very end of the last page.
- To manage page breaks and reorganize its document
the version fp7 it is the "ligth" version, the version fmp12 ( you will find here ) adds the ability to make pdf via a "robot filemaker" with WebDirect and go
one can easily transpose it into any database.
Do not hesitate to create records, test and tell me any bugs or curiosity. The file is opened 100%
and any feedback is welcome!
v9 - v14 Compatible.
By Ocean WestThis solution is designed to allow you to use a third party service called http://www.dialmycalls.com using their API and using BaseElements Plugin.
Once implemented you will be able to move/update data to the service directly from FileMaker.
DialMyCalls service is known as a Voice Broadcasting Service that allows you to send a recorded audio message or text to speech message to a known list of recipients.
Other features allows you to send text messages - even interactive response text messages.
Based on your business logic you can keep the service up to date with changes in your database in the background ready to broadcast out campaign to your distribution list knowing your data is up to date.
This is essential when you are using it for an emergency notification - when you may not have power/or internet on a computer. With their IPhone App you can create, record and broadcast out an announcement to your distribution list.
Their pricing plans are affordable and offer subscriptions and pay-as-you-go credit packages. - Depending on your packages each call is pennies a connection.
There is also a trial plan that you can test it out - they add a little advert attached to your recording.
By LaRettaYour current data exists in different programs and spreadsheets and you've decided that you want to move it into FileMaker. How do you move that data into a normalized FileMaker solution which uses FileMaker primary keys?
When new to FileMaker, you used self-made primary keys (with meaning) or customer name for your relationships. You now realise that was not a good idea (and it isn't) but how to change them without breaking all your relationships?
Primary keys should be meaningless and they are critical in a sound relational structure. However changing out primary and foreign keys in a relational structure can be unnerving unless you can clearly see the process. The attached file presents a simple method of switching out relational keys which will work in all versions of FileMaker (at least back through 7).
I cannot complete your migration for you nor re-serialise your table/s but I can (hopefully) show the principle behind reinitializing your relational keys in a way which is simple to implement even if new to FileMaker.
This file is presented in fp7 format to allow access to those with version 7 or greater.
By LaRettaHere is an example of a modal transactional popover on *list view that I created when 13 first came out. It uses Get ( RecordOpenState ) to lock the popover in place if a change is being made, eliminating the need to set global variables or fields. I'm including a screen shot so those with older versions can see what is possible in 13.
It can come in handy if on ipad since we can't open modal windows. You can provide this popover with more details but allow User to scroll the list. If they DO change data, only then does the popover freeze which then requires button to exit. And since there is transparent button over the popover, the user cannot commit the record until time to exit, which provides transactional control and revert for portals - all only when finished and a save is requested.
* The number of records in list view should always be kept at minimum in any technique.
If nothing else, and if you wish for a good laugh, go through the people in the list. They were people who applied for the 'ugliest person in the world' contest. The data is dummy data. I enjoyed putting it together and I hope others find it worthwhile and humorous as well. :-)
By Martin@T43Hi guys, this is a sample to show how to make a notification system in FileMaker 13 using a Slider.
By Ocean WestAs a consultant I strongly discourage to clients NEVER to print partial sheets of labels for the sake of saving the few pennies on leftover labels, when it could end up costing hundred or thousands of dollars fixing a printer should the label decide to affix itself to the inter workings during printing.
However with all caveats in place here is a technique to print the found set or current record and account for the 'missing' labels so that the labels will shift to accommodate them.
This technique utilized the Virtual List concept to generated the output.
The animations introduced in FM13 are great, but they still don’t let us animate the transition from one layout to another. This is something we’re looking for as it’s often used in iOS apps to move from list to detail and back again.
However, using full-layout slide panels, we can animate layout transitions as long as we’re careful to get the timings right. Our unlocked example file demonstrates how to do this in your own solutions and introduces using OnTimer triggers to queue animations that might otherwise be invisible within a single script.
Details and a movie of this in action are one our blog.
FileMaker Templates, Calendars, & Cool Stuff
Demonstrates a Filemaker 12-native (no plugin) technique for copying a dragged file into a Managed Storage Container with an arbitrary *new file name*.
(FM 12 supports easy customization of directory names within Managed Storage, but not file names.)
A couple of weeks ago, we posted our solution to cross-platform Skype calling from within a Filemaker database. We were pretty pleased with it for our database solution as it allowed us to utilize our Skype subscriptions directly no matter whether we were using a Mac, PC or iPhone. But it wasn't quite perfect.
So, we've worked on it some more and now it will send a SMS from Skype, and if you're on an iPhone it will send a SMS using the Message app and make a call using the Phone app.
Check out the solution attached, and a PDF of the script as well as the attached demo file are available here: http://www.soundsessential.com/blog/42-information-technology/filemaker/72-filemaker-pro-cross-platform-skype-part-2-sms-iphone-calling
Again, hope this helps with your solutions.
By HALBURNWith this sample file you can copy the style from my portal with no scroll bars and then apply this appearance to the portals in your own solution.
In FM12 you can set the width of the portal scroll bar to be zero pixels wide, making it invisible but still scrollable. This is a great technique for making a clean iOS interface. (In FMGO12 the iOS temporarily displays it's own thin scroll bars as you are scrolling.)
TIP: FileMaker does not let you manipulate the scroll bar's appearance within FileMaker Pro but you can edit a theme's CSS file or you can use a program such as Clip Manager 4 to alter the how a portal looks.
By Ben FeingoldThis is the result of applying the stylesheet I created to the XML from EVE. I am able to import it from the File menu.
By Ben FeingoldThe XSL I created so FileMaker will be able to read the XML data from EVE Online's Asset API. Just remove the ".txt" once you've downloaded it.
By Ben FeingoldStraight dump of the EVE Online API for assets.
By LaRettaHave you ever wanted to add a record into two different tables at once?
It is very easy to do:
Without leaving your current layout
Without additional fields
Without additional table occurrences
Taking advantage of your existing setup
All it takes is a single one-row filtered portal (please see attached)
By Ocean WestFileMaker requires you to be on a layout or use the relationship to establish context in order to create a record in a given table.
You could us a plugin that uses SQL to create a record in a table or you can use this technique.
It's very simple.
From the Source table you export field context the primary ID field to a text file. I choose to export it to the temporary directory path.
Then you immediately import that same file in to the target table --- That is right you do not need to be on a layout that tied to the base table occurrence -- you could be on any unrelated table.
On import you adjust the field map to import the value of the text file into the foreign key field of the target table.
In this example it is a different take on a Note Log. You can type into a global field and on exit it will trigger the script to export and import that one record then clears the global field. Data entry options in the note field in the target table is defined to use the value stored in the global field.
you could choose to do things more elaborate like either exporting more columns of data by building a tab separated values to a global field and export that and import it into any table matching field names (provided your first row includes field names - and you omit them on data entry )
OR you can set variables to the desired values and then on the target table set the data entry options to the corresponding variables.
And if you choose to include data other then the ID fields you may wish to also delete the file you can do this by un checking the Specify Field checkbox on the Export Field Contents script step.
Now with all this established I realized that this technique will not work on FMGo because the exporting of the file.
So there is also another script layout and table that will in essence do the same thing and it only needs to IMPORT one
record from a temp table and doesn't need to export. I actually like this method better; but kept both concepts in the
sample file for you to explore.
By dansmith65This is a modification of comment's sample file found here: http://fmforums.com/forum/topic/71867-getting-more-out-of-filtered-portals-2view-selected-child/
This version uses custom functions to manage the selected values in a single global variable, and a calculated field/relationship instead of a filtered portal.
The goal was to provide access to the selected child via a relationship, and to define a default selection, if no child has been selected.
This should work with versions older than 11, but I didn't bother to test with any older versions of FileMaker.
Recently Browsing 0 members
No registered users viewing this page.