You are on page 1of 36

FileMaker Clipboard

Pause[X]London Peter Wagemans - Koen Van Hulle

Peter Wagemans

Claris Technical Support FileMaker Developer for SHpartners Developer of DoScript, DoSQL and Clip Manager (myFMbutler) Clarify.net FileMaker Forum (Dutch)

Koen Van Hulle



FileMaker 7...11 Certi ed Developer SHpartners - myFMbutler Clarify.net myFMbutler Clip Manager 4 koen@shpartners.com http://twitter.com/koenvanhulle

Lets talk about ...



FileMaker Clipboard Tools and what you can do with it.

What is the clipboard?



a place on the computer where we copy to, and paste from we can copy data in 1 application, and paste in another application but sometimes we cant

Clipboard Flavours

dierent types of data

text picture data types ...

multiple avours of the same data can be simultaneously put on the clipboard

Hello
TEXT UTF-8 UTF-16 RTF
{\rtf1\ansi \ansicpg1252\cocoartf1038 \cocoasubrtf360 {\fonttbl\f0\fnil\fcharset0 MyriadPro-Regular;} {\colortbl; \red255\green255\blue255 ;\red61\green94\blue118;} \deftab920 \pard \tx560\tx1120\tx1680\tx22 40\tx2800\tx3360\tx3920\t x4480\tx5040\tx5600\tx61 60\tx6720\pardeftab920\q c\pardirnatural

Hello

Hello

Hello

48 65 6c 6c 6f 20 82 48 65 6c 6c 6f 20 e3 fe 48 00 65 00 6c a8 82 cd 82 e6 82 a4 81 8a e3 81 af e3 82 00 6c 00 6f 00 20 00 88 e3 81 86 4a 30 6f 30 88 30 46 30

7b 5c 72 74 66 31 5c \f0\fs168 \cf2 61 6e 73 69 5c 61 6e \expnd0\expndtw0\kernin 73 69 63 70 67 31 32 g0 35 32 5c 63 6f 63 6f \up0 \nosupersub \ulnone \outl0\strokewidth030 33 61 72 74 66 31


\strokec2 Hello

Clipboard Flavors

When passing clip avours between applications, the receiving application picks from the list of oered avours, depending on the context. Sometimes unexpected behavior

An example

Copy an image from a website in Safari


public.ti public.url Apple URL pastboard type
http://evbdn.eventbrite.com/s3-s3/ eventlogos/17816677/1961223071-3.png
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http:// www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <string>http://evbdn.eventbrite.com/s3-s3/eventlogos/ 17816677/1961223071-3.png</string> <string></string> </array> </plist> ...

...

FileMaker Clipboard

XML UTF-8 Similar to DDR (UTF-16)

FileMakers clipboard avours



layout objects tables elds scripts script steps custom functions

Layout objects

technical term for the avour: XMLO the XMLO avour is not the only one on MacOS, there are extra PDF avours on Windows, there is an extra BMP avour this explains why you can copy a layout and paste it as a picture somewhere else

Fields and Tables



XMFD and XMTB Only base table info No relationships

Scripts and Script Steps



XMSC and XMSS Language is important!

FileMaker doesnt look to the IDs when pasting, but to the strings.

Custom Functions

XMFN Since FileMaker Pro 11 Advanced One or more custom functions

Tools

360Works ScriptMaster plug-in 2Empower Clipboard Explorer Camp Software - FMClips TWDesigns - FileMaker Clipboard reader Work ow Data Systems - fmXRaySpecs myFMbutler Clip Manager

360Works ScriptMaster

FileMaker Plug-in Read/write FileMaker clipboard Groovy, build your own plug-ins $95 http://www.360works.com/scriptmaster/

2Empower Clipboard Explorer



FileMaker Plug-in Read/Write FileMaker clipboard Free http://www.dracoventions.com/products/ 2empowerFM/family/clipboard.php

Camp Software FMClips


FileMaker database with 2Empower Clipboard explorer plug-in Read/Write FileMaker clipboard Store FileMaker Clips $19 http://campsoftware.com/products/ fmclips/

TWDesigns
FileMaker Clipboard reader

AppleScript Read/Write FileMaker clipboard $19 http://www.twdesigns.com/products/ FileMakerClipboardReader.php

Workflow Data Systems fmXRaySpecs



Stand-alone app Inspects current Layout Info pallet $79 http://www.work owdata.com/ fmxrayspecs.html

myFMbutler Clip Manager



Stand-alone app Read/Write FileMaker Clipboard Visualizes and analyzes Clips Store FileMaker Clips EUR 59 ($80) http://www.myfmbutler.com/clipmanager

Why?

How much time do you spend ...

In a typical mid-size development

de ning elds? writing scripts? making layouts? Layouts and reports

Scripts

Schema

Bene ts

Speed up your development time

Bene ts

Speed up your development time Code sharing Version Control (custom functions) Help my solution is damaged! (and the backup plan failed ...)

Hopefully you have a DDR (XML)

DDR to the rescue

Layout Objects
XMLO DDR
<?xml version="1.0" encoding="UTF-8"?> <LayoutCatalog> <fmxmlsnippet type="LayoutObjectList"> <Layout> <Layout> <Table/> <ObjectStyle> <CustomMenuSet/> </ObjectStyle> <Options/> <Object> <ObjectStyle> </Object> </ObjectStyle> ... <Object> </Layout> </Object> </fmxmlsnippet> ... </Layout> </LayoutCatalog>

Fields and Tables


XMTB DDR
<?xml version="1.0" encoding="UTF-8"?> <BaseTableCatalog> <fmxmlsnippet type="FMObjectList"> <BaseTable> <BaseTable> <FieldCatalog> <Field/> <Field/> ... </FieldCatalog> </BaseTable> </BaseTable> </fmxmlsnippet> </BaseTableCatalog>

Scripts and Script Steps

XMSS and XMSS XML = DDR XML

Custom Functions
XMFN DDR
<?xml version="1.0" encoding="UTF-8"?> <CustomFunctionCatalog> <fmxmlsnippet type="FMObjectList"> <CustomFunction> <CustomFunction> <Calculation> <Calculation> </Calculation> </Calculation> <DisplayCalculation> </CustomFunction> <Chunk> </fmxmlsnippet> </Chunk> </DisplayCalculation> </CustomFunction> </CustomFunctionCatalog>

Which order

Custom Functions (if not eld based) Tables with key elds only (if not calc based) Create all TO and relationships use fake relationships if required Create value lists if used in validations Leave data empty if based on elds Paste other elds Check relationships

Which order

Create all other value lists or correct them Create all layouts, but leave the empty Create all scripts Paste all layout content

Dont forget

Custom Menus Custom Extended privileges Security File Options Layout options and Layout Script Triggers Test, test, test ...

Discussion

You might also like