Filemaker 15 WebDirect Guide File Maker Pro Web Direct Fm15
User Manual: filemaker FileMaker Pro 15 - WebDirect Guide Free User Guide for FileMaker Software, Manual
Open the PDF directly: View PDF .
Page Count: 39
Download | |
Open PDF In Browser | View PDF |
FileMaker 15 ® WebDirect Guide © 2013–2016 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and FileMaker Go are trademarks of FileMaker, Inc. registered in the U.S. and other countries. The file folder logo and FileMaker WebDirect are trademarks of FileMaker, Inc. All other trademarks are the property of their respective owners. FileMaker documentation is copyrighted. You are not authorized to make additional copies or distribute this documentation without written permission from FileMaker. You may use this documentation solely with a valid licensed copy of FileMaker software. All persons, companies, email addresses, and URLs listed in the examples are purely fictitious and any resemblance to existing persons, companies, email addresses, or URLs is purely coincidental. Credits are listed in the Acknowledgments documents provided with this software. Mention of third-party products and URLs is for informational purposes only and constitutes neither an endorsement nor a recommendation. FileMaker, Inc. assumes no responsibility with regard to the performance of these products. For more information, visit our website at http://www.filemaker.com. Edition: 01 Contents Chapter 1 Introducing FileMaker WebDirect About this guide About FileMaker WebDirect How FileMaker WebDirect works FileMaker WebDirect architecture Implicit interaction model How FileMaker WebDirect renders a layout How web technologies affect your solution FileMaker WebDirect requirements Connecting via the Internet or an intranet About accessing databases with FileMaker WebDirect Other ways to publish FileMaker data on the web Chapter 2 Designing a FileMaker WebDirect solution Step 1: Plan your FileMaker WebDirect solution Purpose of the solution Number of web users Devices that access the solution How much of the solution FileMaker WebDirect will access Plug-ins Step 2: Understand the capabilities of FileMaker WebDirect Step 3: Optimize performance Improving HTML performance Improving CSS performance Step 4: Design layouts for mobile browsers Step 5: Set the solution icon and options for layouts, views, and tools Setting the solution icon Setting the initial layout and view Hiding the menu bar and status toolbar Step 6: Set up tasks for web users Specifying the sort order Working with graphics, sounds, and movies Working with virtual windows Importing and exporting data Step 7: Enable users to log out of the solution Step 8: Review the functions, scripts, and script triggers in your solution Functions Scripts Script triggers Step 9: Set up external data sources Setting up external ODBC data sources Setting up external FileMaker data sources Step 10: Document your solution 5 5 6 7 7 8 8 9 10 11 11 11 12 12 12 12 12 13 13 13 14 14 15 15 16 16 16 16 17 17 17 18 18 19 19 19 20 21 21 21 21 21 4 Chapter 3 Publishing a FileMaker WebDirect solution Sharing a FileMaker WebDirect solution Choosing which users can access a solution Uploading a FileMaker WebDirect solution to FileMaker Server Changing FileMaker WebDirect settings in Admin Console Limiting the list of solutions in FileMaker WebDirect Launch Center Choosing a language for FileMaker WebDirect Checking the maximum number of connections Enabling SSL encryption Disconnecting inactive web accounts Accessing a FileMaker WebDirect solution Linking to a database from an HTML page Using a custom homepage Chapter 4 Testing, monitoring, and securing a solution Testing your database with a network connection Testing your database without a network connection Monitoring web activity with log files Securing your data Appendix A Design considerations General considerations Mobile browsers Fields Pop-up menus and drop-down lists Checkbox sets and radio button sets Container fields Panel controls Popovers Button bars Web viewers Borders and padding Hidden conditions Tab order Multifile solutions Index 23 23 23 24 25 25 26 26 26 27 27 28 29 30 30 30 30 31 32 32 33 33 33 33 34 34 34 34 34 35 35 36 36 37 Chapter 1 Introducing FileMaker WebDirect FileMaker WebDirect™ is a FileMaker® client that enables users to interact with your solutions on the web. You create solutions using FileMaker Pro and then host, manage, and configure your solutions on FileMaker Server. Web users don’t need to install additional software—if you give them access privileges, anyone with a compatible web browser and access to the Internet or an intranet can connect to your FileMaker WebDirect solution to view, edit, sort, or search records. With FileMaker WebDirect, edits made in the web browser are automatically saved on the server, and the server automatically pushes updates to the web browser. Important Security is important when you publish data on the web. Review the security guidelines in FileMaker 15 Security Guide and FileMaker Pro Help. About this guide This guide provides the following information: 1 Chapter 1, “Introducing FileMaker WebDirect,” describes FileMaker WebDirect and explains how it works. 1 Chapter 2, “Designing a FileMaker WebDirect solution,” steps through the process of creating or extending a solution for FileMaker WebDirect. 1 Chapter 3, “Publishing a FileMaker WebDirect solution,” explains how to publish a database on the web as a FileMaker WebDirect solution. 1 Chapter 4, “Testing, monitoring, and securing a solution,” summarizes areas of your solution to test and secure. 1 Appendix A, “Design considerations,” lists aspects of FileMaker Pro solutions that behave differently in FileMaker WebDirect. FileMaker documentation uses “publishing on the web” to refer to solutions that users can access on the Internet or on an intranet using a web browser. In this guide, the term “web user” refers to someone accessing a FileMaker Pro database published on the web using FileMaker WebDirect. “Solution” and “database” are terms for what FileMaker Pro creates and what web users access through FileMaker WebDirect. This guide uses “FileMaker Pro” to refer to both FileMaker Pro and FileMaker Pro Advanced. Important You can download FileMaker documentation from http://www.filemaker.com/documentation. Any updates to this document are also available from the website. Chapter 1 | Introducing FileMaker WebDirect 6 About FileMaker WebDirect FileMaker WebDirect combines aspects of a web application and a desktop application, bringing FileMaker Pro features to your solutions on the web. With FileMaker WebDirect, you can: 1 easily and quickly deploy a solution to anyone with a compatible web browser without using web authoring tools or other technologies 1 access data from most modern browsers, whether from a home office or while traveling 1 import or export records and container data 1 deploy a customized web application by hiding and locking the menu bar and status toolbar Built on advances in web technologies (HTML5, CSS3, and JavaScript), FileMaker WebDirect enables your solutions to do much of what FileMaker Pro can do, but within the constraints of modern web browsers. FileMaker WebDirect works best when you are: 1 deploying FileMaker Pro solutions intended primarily for web browsers 1 extending existing solutions to include remote users outside the team or organization For particular groups of users, you can choose to add or modify only the layouts they need. For example, if warehouse workers only need to fulfill orders in your order management solution, then you may only need to add invoice layouts that work well in a browser. If you plan to extend an existing solution for web users, you should expect to make changes to your solution for the best possible user experience. Though you may need to make some changes to your solution using FileMaker Pro, you won’t need to write any PHP, HTML, CSS, or JavaScript code. See chapter 2, “Designing a FileMaker WebDirect solution,” for more information. A FileMaker Pro layout displayed in a web browser with FileMaker WebDirect Chapter 1 | Introducing FileMaker WebDirect 7 How FileMaker WebDirect works FileMaker WebDirect runs in a web browser and uses these standard web technologies: 1 1 1 1 HTML5 to define the structure of the page CSS3 to control the appearance of the page JavaScript to enable interactions (for example, clicking buttons and switching tab panels) HTTP/HTTPS and WebSocket protocols to communicate between the web browser and the web server HTML5 and CSS3 are implemented differently across web browsers. How your FileMaker WebDirect solution works can vary according to how the web browser conforms to these standards, how the browser’s JavaScript engine performs, and how the browser parses and renders CSS. One advantage of using these web standards is that as web browsers become faster and more compliant with the standards, your FileMaker WebDirect solution will benefit from these improvements. FileMaker WebDirect architecture The architecture of FileMaker WebDirect bridges two different environments: the web browser and FileMaker Server. In the web browser, FileMaker WebDirect runs as a client that interacts with a solution hosted on FileMaker Server. FileMaker Server comprises the following components: 1 Database Server: Hosts the solutions you share with all FileMaker clients (FileMaker Pro, FileMaker Go®, and FileMaker WebDirect). As the core component of FileMaker Server, it handles layouts, data, scripts, script triggers, user account authentication, record locking, and communication with all FileMaker clients. 1 Web Publishing Engine: Translates the layouts, interactions, and data defined by your FileMaker Pro solution into HTML5, CSS3, JavaScript, and data for the web browser and processes user interaction. In real time, the Web Publishing Engine (WPE) creates the user interface from your FileMaker Pro layouts to work in the web browser and processes scripts, script triggers, user click, and key presses. 1 Web server: Communicates with web browsers using HTTP/HTTPS and WebSocket protocols to serve your FileMaker Pro solution as a web application. Web browser FileMaker Server HTTP/HTTPS WebSocket Web Server FileMaker WebDirect architecture Web Publishing Engine Database Server Chapter 1 | Introducing FileMaker WebDirect 8 FileMaker Server responds to requests from the web browser as follows: 1. The Database Server sends layout information and data from a hosted solution to the WPE. 2. The WPE translates layouts and data from the solution into HTML5, CSS3, JavaScript code, and data for the browser. 3. The web server sends the translated layouts and data from the WPE to the browser. In the web browser, FileMaker WebDirect renders the HTML5, CSS3, and JavaScript code generated by the WPE; monitors user clicks and key presses; and sends the results of these interactions to the Database Server to be processed. Implicit interaction model To enable your solution to behave more like an application, FileMaker WebDirect implements an implicit interaction model. In FileMaker Pro and FileMaker Go, users are accustomed to committing changes in fields, clicking buttons to show custom dialog boxes, seeing data as it is being updated by other users, and seeing conditional formatting change as conditions change, all without explicitly submitting their changes or refreshing the display. FileMaker WebDirect brings that same level of implicit interaction to users on the web. A connection between a web browser and a server starts when the browser sends a request to the server; the server then sends back data in response. To enable FileMaker Server to push data to the browser when the browser hasn’t requested anything, FileMaker WebDirect employs the WebSocket protocol and a technique called long polling. Once FileMaker WebDirect establishes a connection to FileMaker Server, the web browser and server communicate as needed to update records, change layouts, perform scripts, and more. How FileMaker WebDirect renders a layout For every object on a layout, the WPE generates a unique ID. When a web user interacts with an object, the browser detects the interaction and sends the object ID and interaction to the WPE and then to the Database Server, which controls the entire operation. The Database Server processes the interaction and sends a response; the WPE converts the response to HTML5, CSS3, and JavaScript code and then sends it to the browser. For example, you’ve designed a FileMaker WebDirect solution that has one layout containing a button that’s set up to run the Show Custom Dialog script step. To access the solution, a web user types the URL in a browser or clicks a link. The request to open the solution comes to the web server, which passes the request to the WPE. The WPE tells the Database Server to open the specified database. The WPE authenticates the user with the Database Server, opens a session, and performs other startup activities. If the user is allowed to open the database, the Database Server passes information about the layout and button to the WPE. In real time, the WPE generates the code to represent the layout and the button, including the formatting information for the button’s pressed and hover states and a unique ID for the button. When the user clicks the button on the layout, the browser sends the click along with the button’s ID to the WPE. The WPE tells the Database Server that the button was clicked; the Database Server runs the script step, responds that the script ran successfully, and tells the WPE to display the custom dialog box. The WPE generates the code for the custom dialog box and then sends it to the web browser to display. Chapter 1 | Introducing FileMaker WebDirect 9 How web technologies affect your solution Even though FileMaker WebDirect runs in a web browser, you don’t need to be a web expert to make your solution work well in FileMaker WebDirect. You do need to follow some simple design principles. 1 Layouts should reflect standard best practices on the web. Every object, style, image, and interaction on a layout means more data transferred from the Database Server to the web browser, so make wise decisions about what to include on a layout. Most web applications don’t have hundreds of interactive objects or large, high-resolution images because web browsers cannot render them quickly enough and can be slowed by poor network connections. 1 Keep in mind that your solution is running on the web, so limitations inherent to the web remain. For example, if the CSS standard doesn’t define a property for a particular style, that style won’t be displayed in your FileMaker WebDirect solution. 1 There are some things you can do in FileMaker Pro that you should avoid in your FileMaker WebDirect solution. Some features, like opening multiple windows, don’t translate well to the web. Other features, like rich text, work in limited circumstances or don’t work at all. Consider designing a new solution specifically for FileMaker WebDirect, or extending the portions of your existing solution that make the most sense on the web. See “Step 2: Understand the capabilities of FileMaker WebDirect” on page 13. While designing your solution, keep in mind these important implications of how FileMaker WebDirect works: 1 The FileMaker Server deployment does most of the work for the FileMaker WebDirect client. (By comparison, FileMaker Pro and FileMaker Go clients share the workload with the Database Server when they access hosted solutions.) For example, key presses and mouse clicks that are handled by FileMaker Pro must be sent from FileMaker WebDirect to the server. FileMaker Server also sets record locks, activates script triggers, fetches data, and manages layout and data caches. 1 Clicking through an object stacked in front of another object is not supported on the web. For example, in FileMaker Pro, if a rectangle is in front of an image that is set up to run a script, the click passes through the rectangle to the image behind and runs the script. On the web, clicking stacked objects doesn’t pass the click through to an object behind; therefore in FileMaker WebDirect, clicking these stacked objects doesn’t run the script. An alternative approach is to assign the script to the front-most object. The same limitation applies to placing an object on a tab label; clicking the object doesn’t cause the tab panel to switch. Instead of putting an object (like a field) on a tab label, use a calculation to control the tab name. 1 Script steps that affect windows work differently in FileMaker WebDirect than in FileMaker Pro. FileMaker Pro supports a multiple document interface, so a solution can open multiple windows. Because web browsers employ a single document interface, if your FileMaker WebDirect solution uses the New Window script step, the new window is stacked in front of the current window within the same browser window. In many cases, using popovers or slide controls can provide a better user experience than windows. See “Working with virtual windows” on page 18. Chapter 1 | Introducing FileMaker WebDirect 10 1 For security reasons, browsers run web applications like FileMaker WebDirect with limited access to system resources. (This limited environment is called a sandbox.) For example, FileMaker WebDirect can’t access arbitrary locations in the file system, so the Import Records and Export Records script steps work differently than in FileMaker Pro. 1 Many tasks—such as CSS cascading, determining focus, propagating events, and tabbing—are ultimately controlled by the web browser and behave differently than in FileMaker Pro. For example, FileMaker WebDirect intercepts Tab key presses and sends them to the Database Server to determine the next object in the layout’s tab order. But at some point, pressing the Tab key exits the webpage and enters the web browser’s interface (for example, the address bar). Another example is event propagation: browsers enable web applications to respond to a click only after the click happens, unlike FileMaker Pro, which enables your solution to respond via script triggers before, during, or after a click. 1 Objects in HTML5 observe a true parent-child hierarchy—that is, a child object is always contained within a single parent object. For example, an image that extends across the boundary between the header and body parts of a layout in FileMaker Pro displays exactly as it is placed, spanning both parts. However, in FileMaker WebDirect, the image can be in only one part, so the image is cropped at the boundary between the parts it spans. For detailed information, see chapter 2, “Designing a FileMaker WebDirect solution.” FileMaker WebDirect requirements To publish databases using FileMaker WebDirect, you need: 1 1 1 1 a Windows or OS X computer running FileMaker Server access to the Internet or an intranet one or more FileMaker databases a web browser for accessing your solutions The supported web browsers are: Windows OS X iOS Android Edge Safari Safari Chrome Internet Explorer Chrome Chrome Note On Android, FileMaker WebDirect supports Google and ATOK input method editors (IMEs). For information on the minimum hardware and software requirements, see the FileMaker Server system requirements. Chapter 1 | Introducing FileMaker WebDirect 11 Connecting via the Internet or an intranet When you publish databases on the Internet or an intranet, the host computer must be running FileMaker Server, and the databases you want to share must be open. In addition: 1 It is strongly recommended that you publish your database on a computer with a full-time Internet or intranet connection using TCP/IP. You can publish databases without a full-time connection, but they are only available to users when your computer is connected to the Internet or an intranet. 1 The host computer should have a dedicated static (permanent) Internet Protocol (IP) address or a domain name. If you connect to the Internet with an Internet service provider (ISP), your IP address might be dynamically allocated (it is different each time you connect). A dynamic IP address makes it more difficult for users to locate your databases. If you are not sure of the type of access available to you, consult your ISP or network administrator. 1 While a web user is connected to a FileMaker WebDirect solution, he or she should use a single Ethernet, Wi-Fi, or mobile (4G or LTE) network connection with consistent signal strength and connectivity. Loss of network connectivity—which can be caused by intermittent signal or by switching between networks—can cause FileMaker WebDirect to disconnect from the server. 1 Consider using Secure Sockets Layer (SSL) encryption to secure communication between FileMaker WebDirect and FileMaker Server. See “Enabling SSL encryption” on page 26. About accessing databases with FileMaker WebDirect FileMaker Server comes with one (1) User Connections client connection. Additional connections can be purchased at the FileMaker Store. See http://www.filemaker.com. Other ways to publish FileMaker data on the web In addition to FileMaker WebDirect, there are two other ways to publish your data: Static publishing: If your data rarely changes, or if you don’t want users to have a live connection to your database, you can use static publishing. With static publishing, you export FileMaker Pro data to create a webpage that you can further customize with HTML. The webpage doesn’t change when information in your database changes, and users don’t connect to your database. See FileMaker Pro Help. Custom Web Publishing: To integrate your FileMaker database with a custom website, use the Custom Web Publishing technologies. See FileMaker Server Custom Web Publishing Guide. Chapter 2 Designing a FileMaker WebDirect solution With FileMaker WebDirect, you can host FileMaker solutions for web users and extend existing solutions to the web for occasional or remote users. If you are modifying an existing database for use with FileMaker WebDirect, consider creating new layouts specifically intended for web browsers. If you are designing a solution that will be accessed by both FileMaker WebDirect and FileMaker Pro network clients, design with web users in mind to ensure compatibility across both technologies. Note For a full description of FileMaker Pro features and functionality, see FileMaker Pro Help. Follow the general steps below to design a FileMaker WebDirect solution. For more design tips, see appendix A, “Design considerations.” Step 1: Plan your FileMaker WebDirect solution A well-planned FileMaker WebDirect solution promotes consistent: 1 data entry 1 data retrieval 1 access for multiple concurrent users To ensure that your solution provides a reliable experience for web users, you should identify potential problems and modify your solution accordingly. Purpose of the solution Determine the purpose for your solution, or the problem you want to solve. If the solution solves multiple problems or tracks multiple kinds of data, identify how you will split the solution into several layouts and tasks. Layouts should have unique names, even if they are organized in different folders in the Manage Layouts dialog box. Number of web users The number of connected web users directly affects the performance of all connected web browsers. You may need to evaluate the hardware and network configuration of your FileMaker Server installation if it does not support the number of users you require. For recommended hardware configurations for FileMaker Server, see the FileMaker Knowledge Base at http://help.filemaker.com. Devices that access the solution Devices vary by hardware and network performance, screen size, and resolution. If you identify which devices will access your solution, you can design layouts with the devices’ capabilities in mind. Devices with limited processing capabilities may render layouts and communicate with FileMaker Server more slowly than devices with more robust hardware configurations. Chapter 2 | Designing a FileMaker WebDirect solution 13 How much of the solution FileMaker WebDirect will access Based on the solution’s purpose, the maximum number of simultaneous web users, and the devices that will access the solution, decide which layouts and features will be accessed by FileMaker WebDirect. Plug-ins When using third-party plug-ins with a FileMaker WebDirect solution, only use plug-ins that have been enabled for the WPE. (In general, a plug-in designed for use only with FileMaker Pro will not be compatible with the WPE.) For information on installing plug-ins on FileMaker Server, see FileMaker Server Help. Step 2: Understand the capabilities of FileMaker WebDirect FileMaker WebDirect brings many FileMaker Pro features to your solutions on the web, including: 1 1 1 1 1 1 implicit record commits data entry validation conditional formatting modern layout themes script triggers quick find For information about how web users interact with FileMaker WebDirect solutions, see “Implicit interaction model” on page 8. Although FileMaker WebDirect is very similar to FileMaker Pro, it does not have all the features of a FileMaker Pro network client. 1 Web users can choose layouts and different layout views, but they cannot add, delete, or modify fields, layouts, scripts, relationships, value lists, or other database schema. 1 FileMaker WebDirect does not support Table View. Script steps or script step options that change the view to Table View are not supported. If a layout’s default view is Table View, the layout displays in a different view. If no other views are enabled, the layout displays in List View. 1 FileMaker WebDirect does not allow users to click objects that are located behind other layout objects, even if the front-most objects are transparent or if users click empty space in an object group. Rather than stacking multiple objects: 1 use calculated values for tab labels 1 add icons to buttons instead of stacking images in front of buttons 1 group multiple objects and apply button settings to the group 1 FileMaker WebDirect offers limited text styles. Highlighting, paragraph text styles, and tab stops are not supported. Rich text is supported only when applied to fields, buttons, and layout text. FileMaker WebDirect only supports rich text that is supported by the web browser. 1 FileMaker Pro Advanced custom menus have no effect in FileMaker WebDirect solutions. Chapter 2 | Designing a FileMaker WebDirect solution 14 Step 3: Optimize performance As the host for the solution, FileMaker Server processes data entered through FileMaker WebDirect, performs calculations, runs scripts, and processes script triggers. The web browser renders layouts and communicates the web user’s actions to FileMaker Server. For an example of how FileMaker WebDirect and FileMaker Server communicate, see “FileMaker WebDirect architecture” on page 7. How efficiently FileMaker WebDirect can perform these tasks is affected by: 1 1 1 1 1 the processing capabilities of the web user’s device the number of web users concurrently accessing the solution the quality of the web user’s network connection the amount of data transferred between FileMaker Server and the web browser the frequency with which the web browser communicates with FileMaker Server The web browser communicates with FileMaker Server whenever: 1 1 1 1 1 1 a record is created, opened, committed, or deleted the current record is changed the layout is changed a calculation is evaluated a script is performed a script trigger is activated To improve the overall performance of your FileMaker WebDirect solution, you should minimize the amount of data transferred between FileMaker Server and the browser, the frequency with which the browser communicates with FileMaker Server, and the amount of processing the web browser must perform when rendering each layout. Keep the following best practices in mind: 1 In List View and portals, minimize the number of layout objects displayed simultaneously. 1 Minimize the number of portals and panel controls. 1 Minimize the use of unstored calculations and script triggers. Improving HTML performance Reduce the amount of HTML transferred between FileMaker Server and the web browser to make layouts change faster, records load faster, and script triggers activate faster. To reduce the amount of HTML in your solution: 1 create several layouts with a minimum of objects rather than one layout with many objects 1 reduce the number of tooltips on each layout 1 keep image sizes appropriate for web use Chapter 2 | Designing a FileMaker WebDirect solution 15 Improving CSS performance Reduce the amount of CSS in the solution to improve the web browser’s layout rendering performance. Layouts with large amounts of CSS may load slowly, particularly on devices with limited processing capabilities. To reduce the amount of CSS in your solution: 1 1 1 1 choose or create simple themes, such as themes that do not use gradients or image slices create custom themes and custom styles rather than overriding existing themes and styles reduce the use of object states on each layout object minimize conditional formatting Step 4: Design layouts for mobile browsers Web users access FileMaker WebDirect solutions with mobile devices that have different screen sizes and resolutions. To provide an optimal experience for mobile browsers, identify the target devices for your solution, and design your solution to adapt to each device. Keep these points in mind: 1 Design each layout for the smallest device in a range of devices, and configure the auto-resize options for layout objects to expand based on the web browser’s height and width. 1 In some mobile browsers, users may not be able to view objects near the bottom edge of a layout if the layout is larger than the mobile device’s viewable area. 1 In mobile browsers, layout elements are always fixed in size. Users can’t zoom in or out to enlarge or reduce the image on the screen. 1 Use the OnLayoutSizeChange script trigger to change layouts if the browser dimensions change to be greater or smaller than a certain height or width, such as when a mobile browser changes orientation. 1 To make it easy for web users to read and select the objects on small screens, use one of the Touch themes or increase the size of fonts and layout objects. 1 Make fields large enough to display and print the data contained in the field. In the web browser, fields don’t expand when they are active and field contents are truncated if the contents don’t fit within the field boundaries. 1 To allow users to commit records, design a scripted button or leave enough inactive space on the layout so that web users can click outside fields on small screens. 1 FileMaker WebDirect does not support saving snapshot links, importing records, exporting records, or exporting the contents of container fields from mobile browsers. 1 When a solution launches from the Home screen of an iOS device, the solution opens in a fullscreen web browser window, minimizing the web browser controls and increasing the space available for layouts. If you require mobile web users to launch the solution from the Home screen, add instructions to your solution’s documentation. See “Step 10: Document your solution” on page 21. Chapter 2 | Designing a FileMaker WebDirect solution 16 Step 5: Set the solution icon and options for layouts, views, and tools You should set an identifiable solution icon, direct web users to layouts appropriate for their devices, and display the tools applicable to your FileMaker WebDirect solution. Setting the solution icon The solution icon identifies your solution in FileMaker WebDirect Launch Center and distinguishes it on that server. You can specify a custom icon or choose a pre-designed icon from a list. See FileMaker Pro Help. Setting the initial layout and view When a FileMaker WebDirect solution is set to perform a script at startup, users see the results of that script each time they open the solution. To determine which layout and view web users see when they open the solution, use the OnFirstWindowOpen script trigger with a startup script that includes the following script steps: 1 Go to Layout [ ] 1 Enter Browse Mode [ ] 1 View As [ ] To send web users to layouts appropriate for their devices, identify which devices and web browsers are running your solution. See “Functions” on page 19. You can also specify a starting layout in the FileMaker Pro File Options dialog box. See FileMaker Pro Help. Hiding the menu bar and status toolbar The controls and options in the menu bar and status toolbar allow users to create, edit, delete, import, export, find, and sort records; switch views and modes; open Help; and so on. If you want to present your own interface for performing tasks, you can hide the menu bar and the status toolbar when the file opens. To suppress FileMaker WebDirect controls, set the menu bar and status toolbar to hide by default in the FileMaker Pro File Options dialog box. See FileMaker Pro Help. For multifile solutions, you must suppress FileMaker WebDirect controls in each file. To prevent web users from being able to create new records: 1 hide the menu bar and the status toolbar 1 use the FileMaker Pro Manage Security dialog box to edit record access and creation privileges Important When you suppress the FileMaker WebDirect controls, web users are completely dependent on your scripted buttons. You must include buttons that let web users navigate and log out of the solution as well as perform other tasks. Thoroughly test your solution to make sure you have provided users all required functionality. See “Testing, monitoring, and securing a solution” on page 30. Chapter 2 | Designing a FileMaker WebDirect solution 17 You can include scripted buttons on your layout to: 1 1 1 1 1 1 add, select, navigate, and delete records import and export records specify search criteria and perform find requests sort the records change layouts and layout views continue or cancel scripts that may have paused Provide documentation to help users interact with your solution, as the instructions included in FileMaker WebDirect Help may not apply. See “Step 10: Document your solution” on page 21. Step 6: Set up tasks for web users In addition to entering or modifying data, your solution may require web users to perform other tasks. Specifying the sort order Web users can sort data based on fields on the current layout. To control which fields web users can sort: 1 hide the menu bar and the status toolbar, then create buttons that are scripted to sort the data 1 use the Manage Security dialog box to restrict access to fields with a user’s account Working with graphics, sounds, and movies Container fields store and display pictures, sounds, movies, and files. Container data can be embedded inside the solution itself or stored externally. Note FileMaker WebDirect does not support container data that is linked by reference. Referenced container data displays as a static icon and can’t be exported. You can optimize container fields for static content or for interactive content: 1 By default, container fields are optimized for static content. Web users can’t play video or audio files, or open PDF files. Web users see either a static graphic or a link to the container field object. 1 Container fields optimized for interactive content allow web users to play media files and to interact with PDF files. To optimize the container field as an interactive container, select the Interactive content option in FileMaker Pro using the Inspector. Note In mobile browsers, users can’t insert data by dragging a file into a container field. Consider creating scripts that use the Insert Picture, Insert Audio/Video, or Insert PDF script steps. Web browsers provide inconsistent support for media files, and browser versions may vary on different operating systems. Some browsers may not correctly insert, display, or play certain media files. For example, video files may play as audio files if the video file format is not supported by the browser or operating system. Web users may be prompted to unblock content before it can be played. Web users may be prompted to install browser plug-ins. For example, web users may be prompted to install Windows Media Player or QuickTime Player to play media files. If you know which browser your web users will use, then test your media files with that browser. Chapter 2 | Designing a FileMaker WebDirect solution 18 The recommended file types appear in the table below. For this kind of media Use these recommended file types Video file .mp4 Audio file .mp3 Image file .jpg, .png, .gif Working with virtual windows Web users can navigate between multiple virtual windows in a single web-browser window to view a solution in different layouts, views, modes, and so on. Only one virtual window displays in the browser window at a time, but inactive virtual windows remain open when they are not visible. Virtual windows are opened, closed, and manipulated using script steps. For information about individual script steps, see FileMaker Pro Help. Keep these points in mind: 1 If you open a new virtual window with the New Window script step, provide scripted buttons to navigate and close the virtual windows. 1 Close unused virtual windows with the Close Window script step. 1 If you design a script to perform an external script from a FileMaker data source and you want to return to the original window, add a Select Window [Current Window] script step immediately after the Perform Script step in the original script. 1 If you use the Exit Application script step or close the last virtual window with the Close Window script step, the script ends the user’s session and takes the user back to FileMaker WebDirect Launch Center. Importing and exporting data Web users may need to share data between the solution and another application. In FileMaker WebDirect, web users can import and export the following file formats: File format Import FileMaker Pro X Tab-Separated Text X X Comma-Separated Text X X DBF X X Merge X X Excel X HTML Table Export X Note To import from a FileMaker Pro file, web users must have access to an account in the file, and the account must have the FileMaker WebDirect extended privilege enabled. Exported or saved files are downloaded to the web browser’s default download location. Importing and exporting data is not supported in mobile browsers. Chapter 2 | Designing a FileMaker WebDirect solution 19 Step 7: Enable users to log out of the solution It is important that web users properly close their sessions by opening the menu bar and then clicking Log Out. If they close the browser window or quit the browser before logging out, their sessions may still be open, which might: 1 prevent others from accessing the solution if the User Connections client limit has been reached 1 prevent the solution from running scripts assigned to script triggers (see “Script triggers” on page 21) 1 cause a script to continue running until the specified timeout occurs, which may lead to unexpected results 1 make data vulnerable to hackers until the specified timeout occurs To minimize these situations, set the session timeout to a short amount of time or create a scripted button to safely log out web users. See “Disconnecting inactive web accounts” on page 27 and “Working with virtual windows” on page 18. Note If you hide the menu bar, create a scripted button to log out web users. See “Hiding the menu bar and status toolbar” on page 16. Step 8: Review the functions, scripts, and script triggers in your solution Some functions, scripts, and script triggers are not supported in FileMaker WebDirect or perform differently than in FileMaker Pro. Review all calculations and scripts in your solution to make sure they perform the desired tasks. Functions Functions in FileMaker WebDirect are useful for generating or manipulating data. For information about individual functions, see FileMaker Pro Help. Keep these points in mind: 1 To create conditional behaviors based on the type of client, use the Get(SystemPlatform) function. If the function returns 4, the current user is accessing your solution with FileMaker WebDirect. 1 You can detect the operating system and web browser running your solution by using the Get(SystemVersion) function. If you have difficulty identifying the device, use Get(WindowWidth) and Get(WindowHeight) to identify the appropriate layouts for the device. Chapter 2 | Designing a FileMaker WebDirect solution 20 Scripts FileMaker Pro scripts are useful for automating frequently performed tasks or for combining several tasks. When used in FileMaker WebDirect, scripts can allow web users to perform more tasks, or to easily perform a series of tasks simply by clicking a button. FileMaker WebDirect supports more than 100 script steps. To see which script steps are supported, open the Script Workspace window in FileMaker Pro, click , then choose FileMaker WebDirect. Dimmed script steps are not supported in FileMaker WebDirect. Show script steps that are compatible with FileMaker WebDirect FileMaker Pro Script Workspace window Although many script steps work identically in FileMaker WebDirect, several work differently, such as the Windows script steps. For information about individual script steps, see FileMaker Pro Help. Keep these points in mind: 1 Use accounts and privileges to restrict the set of scripts that a web user can execute. Verify that the scripts only contain script steps compatible with FileMaker WebDirect, and only provide access to scripts that should be used from a web browser. 1 Consider the side effects of scripts that execute a combination of steps that are controlled by access privileges. For example, if a script includes a step to delete records and a web user does not log in with an account that allows record deletion, the script does not execute the Delete Record/Request script step. However, the script might continue to run, which could lead to unexpected results. 1 You can set scripts to run with full access privileges to perform tasks that you would not grant individuals access to. For example, you can prevent users from deleting records with their accounts and privileges, but still allow them to run a script that would delete certain types of records under conditions predefined within a script. 1 If a script encounters an unsupported script step (a step that is not compatible with FileMaker WebDirect) or an unknown script step (a step that is obsolete or unrecognized), the script step is skipped and the script continues to execute. 1 In FileMaker WebDirect, scripts can't access the client's file system. Web users must select files to import or insert, and exported or saved files are downloaded to the web browser's default download location. 1 Script steps can’t enter a field if access to the field is restricted by either the Browse Mode or Find Mode option in the Inspector. Chapter 2 | Designing a FileMaker WebDirect solution 21 Script triggers As in FileMaker Pro, user actions (such as the user clicking a field) and scripts can activate script triggers in FileMaker WebDirect. For example, if a FileMaker WebDirect user clicks a field that has an OnObjectEnter script trigger, the trigger is activated. For information about individual script triggers, see FileMaker Pro Help. Note If a web user closes a browser window or clicks the web browser's Refresh button, FileMaker WebDirect leaves the current session without logging out or activating the OnWindowClose and OnLastWindowClose script triggers. If the web user clicks the Refresh button, FileMaker WebDirect then creates a new connection to FileMaker Server, activating the OnFirstWindowOpen and OnWindowOpen script triggers. Step 9: Set up external data sources In addition to data entered by web users, FileMaker WebDirect solutions can access external ODBC and FileMaker data sources. Setting up external ODBC data sources To support authentication with an external ODBC data source in FileMaker WebDirect, use FileMaker Pro to store the user name and password for the external data source in the solution. See FileMaker Pro Help. If a solution is configured to use ODBC data source single sign-on, users will be prompted to enter authentication information when attempting to access the ODBC data source. For information about external ODBC data sources, see FileMaker Server Help. Setting up external FileMaker data sources To access external FileMaker data sources in FileMaker WebDirect, all referenced database files must be hosted on the same FileMaker Server deployment as the FileMaker WebDirect solution. To support authentication with an external FileMaker data source in FileMaker WebDirect, the FileMaker WebDirect solution and the external data source should have matching account names and passwords assigned to privilege sets with the FileMaker WebDirect extended privilege enabled. If the web user's account name and password in the FileMaker WebDirect solution do not match an account in the external data source, the user will be prompted to sign in to the external data source when the FileMaker WebDirect solution attempts to access it. For information about external FileMaker data sources, see FileMaker Pro Help. Step 10: Document your solution Provide documentation on a separate layout or webpage to explain how web users should interact with your solution, especially if the solution includes many layouts and scripted buttons. You should include the following information in your documentation: 1 Browsing and finding records: Let web users know that they work with data in Browse mode and search for records in Find mode. Instruct users how to create, edit, delete, find, and sort records. 1 Navigating the solution: Tell web users how to view records in appropriate layouts and views. Chapter 2 | Designing a FileMaker WebDirect solution 22 1 Closing the session: Tell web users to open the menu bar and then click Log Out to properly close their connection to FileMaker Server. For more information, see “Step 7: Enable users to log out of the solution” on page 19. 1 Layout objects: Create tooltips for layout objects to help web users understand how to interact with the solution. Tooltip text appears in a web browser’s default text style. 1 Pop-up blockers: Tell web users how to disable their browser’s pop-up blocker. Some pop-up blockers prevent FileMaker WebDirect from sending mail, opening URLs via the Open URL script step, opening FileMaker WebDirect Help, and providing feedback to FileMaker, Inc. Chapter 3 Publishing a FileMaker WebDirect solution You can share layouts from your database on the web dynamically with FileMaker WebDirect and FileMaker Server. If your server computer is connected to a LAN or WAN, you can share your FileMaker WebDirect solution without requiring additional software. Follow these steps to publish and manage a FileMaker WebDirect solution. Sharing a FileMaker WebDirect solution To publish a database on the web as a FileMaker WebDirect solution, use FileMaker Pro to determine which user accounts can access the solution from a web browser and then upload the database to FileMaker Server. Choosing which users can access a solution For web users to access a FileMaker WebDirect solution, each database file must be configured to allow access to one or more privilege sets. 1. Open the database in FileMaker Pro. 2. Choose File menu > Sharing > Configure for FileMaker WebDirect. Choose a file to share on the web Specify which users can access a published solution Suppress the filename in FileMaker WebDirect Launch Center FileMaker WebDirect Settings dialog box in FileMaker Pro 3. Choose the filename to publish on the web from the list of open files. Chapter 3 | Publishing a FileMaker WebDirect solution 24 4. Choose which users can access the file. Users may be asked to enter their account name and password, defined in the Manage Security dialog box, depending on the settings in the File Options dialog box. See FileMaker Pro Help. Note If you change the FileMaker WebDirect access to file setting while users are logged in, those users do not lose their connections and can continue using the solution until they log out or their sessions time out. If you make other changes to FileMaker WebDirect settings while guests are logged in to a solution, guests lose their connections and are returned to FileMaker WebDirect Launch Center. 5. Repeat steps 3 and 4 for each database you want to publish. 6. Click OK or choose additional settings. Tip Select Don’t display in FileMaker WebDirect Launch Center if your solution includes multiple files and you don’t want all the filenames displayed. 7. Close the database. Keep these points in mind: 1 Assigning access to files in the FileMaker WebDirect Settings dialog box changes the extended privilege settings in the associated user’s privilege set. You can review and modify the Extended Privileges settings directly in the Manage Security dialog box. For more information on setting or modifying access privileges, see FileMaker Pro Help. 1 The list of open files and file access options in the FileMaker WebDirect Settings dialog box are dimmed if you don’t have Full Access privileges or the privileges to manage the extended privileges for a file. 1 Web users can open solutions without specifying a password if the Guest account is set up for web access or an account name and password are specified in the File Options dialog box in FileMaker Pro. 1 If a solution developer creates a script that includes the Re-Login script step, web users can change their login accounts without leaving the solution (for example, to switch from the Guest account to an account with more privileges). Uploading a FileMaker WebDirect solution to FileMaker Server To make a FileMaker WebDirect solution available to web users, you must host the database files in the solution on FileMaker Server. You can upload database files to FileMaker Server with FileMaker Pro. Note For information on manually uploading databases to FileMaker Server, see FileMaker Server Help. 1. Choose File menu > Sharing > Upload to FileMaker Server. 2. In the Hosts list, choose the host you want to upload files to. Or, for Host Address, type the host’s IP address or domain name (as subdomain.domain.com). Chapter 3 | Publishing a FileMaker WebDirect solution 25 3. Enter your FileMaker Server Admin Console name and password, then click Next. 4. Click Browse, select the database file that you want to upload, and click Open. 5. Select Automatically open databases (on server) after upload to make your FileMaker WebDirect solution available immediately after the upload. 6. Click Upload. FileMaker Pro updates the status for each file to indicate whether the upload was successful. 7. Click Done. For more information on uploading databases with FileMaker Pro, see FileMaker Pro Help. Changing FileMaker WebDirect settings in Admin Console To change language and connection settings, run FileMaker Server Admin Console on a machine that has network access to the FileMaker Server deployment that is hosting your solution. Note For a full description of Admin Console features and functionality, see FileMaker Server Help. To start Admin Console: 1. Open a web browser and enter: https://:16000/ where is the IP address or domain name of the master machine in your FileMaker Server deployment. Before the FileMaker Server Start Page appears, your web browser may ask you to respond to a security message. This is normal behavior for the self-signed certificate that is included with FileMaker Server. Select the option to continue. For information about using certificates with FileMaker Server, see FileMaker Server Help. 2. Click Start Admin Console. 3. Enter the name and password for the Admin Console account, then click Log In. Admin Console starts and displays the Status pane. Limiting the list of solutions in FileMaker WebDirect Launch Center You can limit the list of hosted solutions displayed in FileMaker WebDirect Launch Center to only those solutions each web user can access. Web users will be prompted for their account information before they view FileMaker WebDirect Launch Center. 1. Open Admin Console. 2. Click the Database Server > Security tab. 3. Select List only the databases each user is authorized to access. 4. Click Save. Chapter 3 | Publishing a FileMaker WebDirect solution 26 Choosing a language for FileMaker WebDirect By default, FileMaker WebDirect displays its interface, tooltips, and onscreen Help in your web browser’s current language. If FileMaker WebDirect can’t detect the web browser’s language or doesn’t support the web browser’s language, it uses the language specified in the Admin Console. Choosing or changing the language has no effect on your actual data. 1. Open Admin Console. 2. Click the Web Publishing > FileMaker WebDirect tab. 3. For Status Area Language, select the language to display. 4. Click Save. Checking the maximum number of connections FileMaker Server comes with one (1) User Connections client connection. Additional connections can be purchased at the FileMaker Store or by clicking Buy More Connections in the General Settings > Connections tab of Admin Console. When the maximum number of connections is reached, additional web users see an error message in the web browser when they try to access the solution. To view the maximum number of connections allowed: 1. Open Admin Console. 2. Click the General Settings > Connections tab. 3. View the Maximum connections number. Keep these points in mind: 1 If you think the server has reached the maximum number of User Connections clients erroneously, it’s possible that a web user has not logged out of the solution properly. You can wait for the sessions to time out, close the file to disconnect all users from the solution, or disconnect specific users via Admin Console. See FileMaker Server Help. 1 Web users should avoid accessing the same solution from multiple browser windows or in multiple tabs of the same browser window. Each browser window or tab uses its own connection to the server, which may cause the server to reach the User Connections client limit quickly. See “Working with virtual windows” on page 18. Enabling SSL encryption Consider using Secure Sockets Layer (SSL) encryption to secure communication between FileMaker WebDirect and FileMaker Server. SSL certificates digitally identify the sender, receiver, or both parties to provide secure connections between FileMaker Server and FileMaker clients. See FileMaker Server Help. Important If you are not the server administrator, contact the server administrator before making changes to FileMaker Server security settings. Chapter 3 | Publishing a FileMaker WebDirect solution 27 Keep these points in mind: 1 The standard FileMaker SSL certificate installed by default with FileMaker Server is available only for test purposes. 1 If you enable SSL encryption, you should import a custom SSL certificate from a Certificate Authority supported by FileMaker. If you enable SSL encryption without importing a custom SSL certificate, FileMaker WebDirect prompts web users with security messages and may not open solutions in some web browsers. 1 If you enable SSL encryption, use the FileMaker Server deployment’s domain name when accessing FileMaker WebDirect Launch Center or a FileMaker WebDirect solution. See “Accessing a FileMaker WebDirect solution” on page 27. 1 If SSL is enabled for database connections but progressive downloading is set to use an unencrypted connection, images on layouts and data in interactive containers may not appear in the web browser. Disconnecting inactive web accounts You can specify the amount of time web users remain connected to the solution when their session, or connection to the web server, is idle. Sessions are considered idle when web users do not submit requests from the web browser, such as finding, creating, or submitting changes, changing layouts, and so on. A session also becomes idle when the web user closes the web browser window, moves to another website, or quits the web browser without opening the menu bar and clicking Log Out. To specify the duration that a session can be idle before it times out: 1. Open Admin Console. 2. Click the Web Publishing > FileMaker WebDirect tab. 3. For Session Timeout (minutes), specify the amount of time before disconnecting idle web users (from 1 to 60 minutes), then click Save. If you are concerned that web users might not log out of the solution properly, specify a short session timeout. You can also create a scripted button to log out web users. See “Working with virtual windows” on page 18. Accessing a FileMaker WebDirect solution Web users access FileMaker WebDirect solutions via FileMaker WebDirect Launch Center. FileMaker WebDirect Launch Center displays icons and names for each FileMaker WebDirect solution hosted on a FileMaker Server installation. To prevent a solution from displaying in FileMaker WebDirect Launch Center, see “Choosing which users can access a solution” on page 23 and “Limiting the list of solutions in FileMaker WebDirect Launch Center” on page 25. Chapter 3 | Publishing a FileMaker WebDirect solution 28 To access FileMaker WebDirect Launch Center: 1. Open the web browser and enter: http:// /fmi/webd where is the IP address or domain name of the machine running the web server component in your FileMaker Server deployment. For a two-machine deployment, the worker machine runs the web server component. Note If SSL is enabled, must be the fully qualified domain name specified in the SSL certificate being used on the web server machine instead of the IP address. 2. Click a solution’s filename to open the solution. Keep the following points in mind: 1 In some cases, web users can type the domain name or subdomain name of the FileMaker Server host rather than the IP address, for example: http://yourcompany.com/fmi/webd or http://accounts.yourcompany.com/fmi/webd. Contact your Internet service provider or network administrator for information about mapping a domain name to an IP address. 1 To access a solution over a connection with SSL encryption, use https:// before the host’s IP address or domain name. See “Enabling SSL encryption” on page 26 and FileMaker Server Help. Linking to a database from an HTML page Rather than having web users type the IP address or domain name to access your solution, you can create an HTML page that specifies a link to your solution. To view Use this link FileMaker WebDirect Launch Center http:// /fmi/webd A particular database http:// /fmi/webd# A particular database and run a script http:// /fmi/webd# [?script=