1件のコメント

fmOAuth(0.0.2)に、GmailのAPI(ダウンロードと送信)を実装しています

こんにちは。
株式会社フルーデンスの小巻旭洋です。

久しぶりのブログです。みなさまご無沙汰しております。

去年(2017年)の年末に fmOAuth というサービスのベータバージョン(0.0.1)をリリースしました。

リリースした後、しばらく開発することができなかったのですが、少し時間ができたので継続して開発を進めています。

今回のリリース(0.0.2)では Gmail のAPIにアクセスできるようにスクリプトを追加しました。

そのため、Gmailをダウンロードできるようになり、API経由でのメール送信ができるようになりました。

メール送信については、ファイルメーカーのスクリプトステップでメール送信できるので不要かと思いましたが、せっかくですので実装しました。
(ちなみに、現在のところはプレーンテキストの送信になります。)

Gmail API

fmoauth-002-gmail-api-download-send1

Gmail API レスポンスデータ(画像)

fmoauth-002-gmail-api-download-send2

Gmail API レスポンスデータ(JSON)

{
	"messages" : 
	[
		{
			"id" : "1617d8aa4f69f846",
			"threadId" : "1617d8aa4f69f846"
		},
		{
			"id" : "1617d87efe69da91",
			"threadId" : "1617d87efe69da91"
		},
		{
			"id" : "1617d3c7d8bba069",
			"threadId" : "1617d3c7d8bba069"
		},
		{
			"id" : "1602efb1eafc3062",
			"threadId" : "1602efb1eafc3062"
		},
		{
			"id" : "1602edd4d91518e5",
			"threadId" : "1602edd4d91518e5"
		}
	],
	"resultSizeEstimate" : 5
}
fmperception-diff-viewer

FMPerception の diff を見やすくするためのファイルを作ってみた

fmperception-diff-viewer3

こんにちは。
株式会社フルーデンスの小巻旭洋です。

FMPerception の diff を見やすくするためのファイルを作成しました。

FileMakerの開発者であれば、FMPerceptionBaseElementsInspectorPro、などを使っている人が多いと思います。

私は、以前は BaseElements を利用していましたが FMPerception がリリースされてからは BaseElements をほとんど利用していません。

ということで、普段は FMPerception を利用しているのですが FMPerception の diff のレポートが、少し分かりづらいなと感じています。
(もしかしたら私のやり方が悪いのかもしれませんので、認識が間違っていたらご指摘ください。)

そこで、diffを見やすくしたいなと思いささっと作成しました。

GitHubにて公開していますので、宜しければ見てみてください。

fmperception-diff-viewer

https://github.com/teruhirokomaki/fmperception-diff-viewer

まだ分析ツールを購入していない開発者の方

因みに、分析ツールを利用せずに「データベースデザインレポート(DDR)をHTMLでエクスポートしてブラウザで見てる。」なんて人は今すぐに分析ツールを買いましょう。
開発者や開発会社であれば、買わない理由がないですし、積極的にサードパーティのツールを導入して自分の時間を効率よく使いましょう。

FMPerception や BaseElements のレビューは、追って記事にしたいと思います。

setsumeikai_seminar
1件のコメント

9月12日のWebセミナーで利用したデモファイルのダウンロードについて

こんにちは。
株式会社フルーデンスの小巻旭洋です。

Webセミナーにご参加頂きまして、ありがとうございます。

以下のフォームに入力して頂けますと、Webセミナーで利用したデモファイルをダウンロードできます。

GitHubで公開しましたので、ご自由にダウンロードして頂ければと思います。

ダウンロード

https://github.com/teruhirokomaki/filemaker-webseminar-curloption

デモファイルのイメージ

cURLオプションを使ってDropboxを操作しよう

バージョン16で改良された「URLから挿入」と「cURLのオプション」を活用し、Dropboxを操作するデモをご紹介します。外部サービスと連携し、カスタム Appをより便利に活用しましょう。
– Dropboxにある各種データの情報を取得する
– FileMakerからDropboxに各種データをアップロードする
– Dropboxにある各種データのテンポラリーなURLを取得し閲覧する
– その他活用方法など

※メールが届くまで少し時間がかかるかもしれませんので、ご了承ください。

setsumeikai_seminar
2件のコメント

9月5日のWebセミナーで利用したデモファイルのダウンロードについて

こんにちは。
株式会社フルーデンスの小巻旭洋です。

Webセミナーにご参加頂きまして、ありがとうございます。

以下のフォームに入力して頂けますと、Webセミナーで利用したデモファイルをダウンロードできます。

GitHubで公開しましたので、ご自由にダウンロードして頂ければと思います。

ダウンロード

https://github.com/teruhirokomaki/filemaker-webseminar-json

JSON関数を使って外部サービスの情報を取得しよう

バージョン16で登場した新しいJSON関数について、どのような使い方が出来るかデモを通してご紹介します。外部サービスと連携し、カスタム Appをより便利に活用しましょう。
– 住所から緯度経度を取得する
– 2つの緯度経度から距離を取得する
– 外部サービスからJSONデータを取得する方法
– 取得したJSONデータをフィールドに設定する
– 取得したJSONデータからレコードを作成する
– その他活用方法など

※メールが届くまで少し時間がかかるかもしれませんので、ご了承ください。

addfmcal-google-calendar
2件のコメント

FileMakerのカレンダーとGoogleカレンダーの同期を試みる

addfmcal-google-calendar

こんにちは。
株式会社フルーデンスの小巻旭洋です。


追記:2017-12-25
2017/12/23のFM-Tokyoにて発表した内容の一部を記事にしました。

Integromatを使いFileMakerとGoogleカレンダーを簡単に連携する
https://frudens.jp/filemaker-google-integration-integromat/


追記:2017-12-13
FileMakerからGoogleやMicrosoftなどのAPIに簡単に連携できる “fmOAuth” というファイルをリリースしました。
ベータバージョンですが、宜しければ以下のURLよりダウンロードしてご利用頂ければと思います。
https://frudens.jp/fmoauth/


以前 FileMaker Go でカレンダー機能を実装してみた という記事をかきました。

カレンダーを表示するロジックが形になってきたので、今回はGoogleカレンダーとの同期にチャレンジしてみようと思います。

Googleカレンダーのデータを参照するためにググってみると「カレンダーを公開設定」にして。。。というブログが多いです。

しかし、Googleカレンダーを公開することは考えていないので、今回は OAuth でアクセスすることにしました。

GoogleのAPIにアクセスできるので、色々なことができるようになります。

あまり認知されていないかもしれませんが Google Fusion Tables というデータベースにも、アクセスできます。

続きを読む →

filemaker-google-integration
2件のコメント

ModularFileMaker の #Parameters の使い方と活用方法について

こんにちは。
株式会社フルーデンスの小巻旭洋です。

FileMaker開発者がスクリプト引数を使う場合、多くの方が Goya社の SetProperty ( Name ; Value ), GetScriptProperty ( propertyName ) を使っていると思います。

https://www.goya.com.au/category/blogtags/script-parameters

今回は SetProperty ( Name ; Value ) と同じように使えるカスタム関数 #Parameters の紹介です。
多少の違いはありますが、どちらを使っても同じことが実現できますので、お好みで使って頂ければと思います。
私は #Parameters を利用しています。

#Parametersとは

ModularFileMaker にあるモジュールのひとつです。
ダウンロードは FileMakerStandards.orgGitHub からダウンロードできます。

カスタム関数の Created を確認すると Jeremy Bante さんの名前があるので、おそらく Jeremy Bante さんが最初に作られたのだと思います。


追記:2017/03/28
尊敬する Jeremy さんよりコメントを頂きました。
英語が苦手なため少し心配ですが追記致しました。

#Parameters の開発には Jeremy Bante さんは、もちろんのこと Dan Smith さん Matt Petrowsky さんも、関数の設計と実装に大きく関わっているとのことです。
尊敬する開発者の皆様に心から感謝致します。

Jeremy Bante

Dan Smith

Matt Petrowsky

Six Fried Rice
http://sixfriedrice.com/wp/

大変ありがたく使わせて頂いております。
感謝の気持ちでいっぱいです。
海外の開発者のかたは、オープンなのでいつもいつも勉強させて頂いております。

上記のURLを見て頂き、実際のファイルを確認するのが一番早いですが、英語に抵抗がある方もいると思うので、簡単に使い方を紹介できればと思い記事にしました。

続きを読む →

shortcuts-filemaker-1

FileMakerの任意のメニューをショートカットに登録する

こんにちは。
フルーデンスの小巻です。

皆さんは普段からショートカットを使っていますか。
できる限りキーボード操作で開発ができると生産性は高まりますよね。

今回は、FileMakerの “スクリプトデバッガ” をショートカットに登録したいと思います。

macユーザーのほとんどの方が、BetterTouchToolを使っていると思いますので「ショートカットはBetterTouchToolで登録してるので。」という方には不要かもしれません。

今回はOSのショートカットに登録します。

続きを読む →

sublime-text-filemaker-syntax
1件のコメント

FileMaker のコードを Sublime Text 3 で シンタックスハイライトする

今年の「FileMaker カンファレンス 2017」の開催要項が発表されました。
10月23日(月)から3日間、パシフィコ横浜で開催されます。

インハウス開発者の皆様はスキルアップや情報収集のために、ぜひご参加をご予定ください。

http://www.filemaker.com/jp/conference/2017/

こんにちは。
フルーデンスの小巻です。

FileMakerのバージョン14から、コードを書くときに補完してくれるようになったので、以前に比べてかなり開発しやすくなってきました。
ただ、カスタム関数やデータビューア、複雑な計算式を書く際には、FileMakerの “式の編集” ではコードの見通しが悪くなります。

そもそも「複雑な計算式を書かないようにする」という点を意識すべきではありますが・・・

皆さんは、エディターとか使うのでしょうか?

私は好きなエディターでコードを書きたいので、色々なエディターを試してきました。

IntelliJ IDEA、Sublime Text、CotEditor、TextMate、Brackets、Atom、Vim・・・
色々と使いましたが、いまは Sublime Text の使用頻度が高いです。

ということで、自分のために Sublime Text で、FileMakerのコードをハイライトするようにしました。

しいてあげれば

  • エディターで書くことで検索できる
  • 他の開発者と共有しやすい
  • FileMakerがクラッシュしても大丈夫
  • 誤ってエスケープしても大丈夫

とかがメリットでしょうかね。早速、設定してみます。

続きを読む →

filemaker-pro-fmaddcal-eye-catch
2件のコメント

FileMaker Go でカレンダー機能を実装してみた

こんにちは。
株式会社フルーデンスの小巻旭洋です。


追記:2017-12-25
2017/12/23のFM-Tokyoにて発表した内容の一部を記事にしました。

Integromatを使いFileMakerとGoogleカレンダーを簡単に連携する
https://frudens.jp/filemaker-google-integration-integromat/


追記:2017-12-13
FileMakerからGoogleやMicrosoftなどのAPIに簡単に連携できる “fmOAuth” というファイルをリリースしました。
ベータバージョンですが、宜しければ以下のURLよりダウンロードしてご利用頂ければと思います。
https://frudens.jp/fmoauth/


最近では、様々なところでiOSなどのモバイルを有効活用したシステムが増えてきました。
FileMakerの事例でいえば、製造業や倉庫内での管理業務にモバイルを活用するケースが多いようです。

弊社も今まで以上に、FileMaker GoをメインにしたカスタムAppを開発して行ければと考えております。

話は変わりますが、FileMakerで受託開発をしていると、御客様から「Googleカレンダーのような機能を実装して欲しいんだけども」という要望を多く頂きます。

おそらく、多くの開発者は「やろうと思えばできますが、Googleカレンダーのような使い勝手にはならないかもしれません。」っという感じの返事をしているかと思います。

そこで「FileMakerでGoogoleカレンダーにどこまで近づけるか」ということをやってみようと思い制作しました。
リリースできるレベルになったら、FileMaker社のサンプルをダウンロードできるページに掲載して、皆様に気軽に試せるようにしてみようと考えています。
将来的には、インハウス開発者の皆様が作ったカスタムAppに “コピペで簡単に実装できる” ようにしたいと考えています。

まだ完成はしておりませんが、少しずつ形になってきましたので、どんな感じか公開してみようと思います。

OAuthを使ってGoogleカレンダーとの連携を試みましたので、宜しければご覧ください。

FileMakerのカレンダーとGoogleカレンダーの同期を試みる

続きを読む →

FileMakerのスクリプトワークスペースのフォルダ名や構成についてのメモ

こんにちは。
株式会社フルーデンスの小巻旭洋です。

“2016年をふりかえって” という記事も下書きにあるのですが、今日はスクリプトワークスペースのフォルダ名や構成について書いてみます。

私は、スクリプト名、スクリプトワークスペースのフォルダ名や構成、レイアウト名やレイアウトのフォルダ構成など、かなり気になる性格です。

世界のみなさんは、いったいどのような構成にしているのか気になったので調べてみました。

世界的に有名な方が公開されているファイルのスクリプトワークスペースを調べました。

SeedCode(SQL Explorer)

SQL Explorer

script-workspace-sqlexplorer

SeedCode SQL Explorer
	Housekeeping
	Web Viewer Management
	General
	Queries
		SQL Wizard
			Naming
			Tables
			TablesRelationships
			Fields
			Criteria
			Sorting
			Review

SeedCode(DayBack Calendar)

Reporting with DayBack Calendar

script-workspace-daybackfinds

SeedCode Calendar
	Housekeeping
	Calendar
		-
		Settings & Sources
		Custom Action Examples
		-
		Navigation
		Resources
		Populate Calendar
		Filters
		Edit Event
		To-Do List
		Repeating Events
		Email Notifications
	Calendar Utility
	Webviewer
		-
		Configure Webviewer
		API In - Scripts executed from inside the WebViewer
		API Out - Scripts that talk to the WebViewer
		Update And Restore
		Utilities

Todd Geist(Selector Connector)

FileMaker Selector Connector Video

script-workspace-selectorconnector

File Module
	File Public
		File Triggers
Application Modules
	Ultility Modules
		BackNForth
			backnforth Public
		Session
			Session PUBLIC
			Session Private
		Navigation
			navigation Public
			navigation Private
	Domain Modules
		Home
			Public
		Items
			Items Public
				Buttons
				Triggers
		Customers
			Public
			Private
		Orders
			Public
				Buttons
				API
				Triggers
			Private
gi Modules
	gi Virtual Lists
		Virtual Lists Public
	gi Error Handler
	gi Selector Connector
		Selector Connector Public
		Selector Connector Private
	gi MasterDetail2.0
		MasterDetail Configuration And Settings
		MasterDetail Public
			API
			Triggers
		MasterDetail Private
Modules
	HyperList
		HyperList Public
	#Parameters
		#Parameters: Configuration
		#Parameters: Public

Richard Carlton Consulting(FM Starting Point)

http://fmstartingpoint.com/

script-workspace-fmstartingpoint

no	value
Preferences (1-49)
Dashboard (50-99)
Script Triggers - Data Entry On Load (100-150)
	Data Entry On Load
	Popup Screen On Load
Navigation (Across Top and Home Screen) (200-250)
Relating Records (Popup List View Search Processes) (300-319)
Go To Related Record (GTRR) (320-400)
ACCOUNTS (400-459)
	ACC_Processes
	ACC_Secondary_Tab_Processes
	ACC_Reporting
	ACC_Sort_Columns
ASSETS (500-529)
	AST_Processes
	AST_Secondary_Tab_Processes
	AST_Reporting
	AST_Sort_Columns
	AST_Popovers
	Triggers
Audit Trail (580-599)
CONTACTS (600-849)
	CON_Processes
	CON_Secondary_Tab_Processes
	Followup System
	CON_Email Menu
	CON_Navigation
	CON_Reporting
	CON_Sort_Columns
	GPS Directions Scripts
	Time Zone Services
CALENDAR (850-899)
ESTIMATES (900-999)
	EST_Processes
	EST_Reporting
	EST_Sort_Columns
	EST_Charts
	EST_Bar_Code_add_Line_items
EXPENSES (1000-1099)
	EXS_Processes
	EXS_Sort_Columns
	EXS_Reporting
	EXS_Charts
INVOICES (1100-1199)
	INV_processes
	INV_Reporting
	INV_Sort_Order
	INV_Charts
	INV_Bar_Code_add_Line_items
PROJECTS (1200-1299)
	PRJ_Processes
	PRJ_Secondary_Tab_Processes
	PRJ_Navigation
	PRJ_Reporting
	PRJ_Sort_Records
PRODUCTS (1300-1399)
	PRO_Processes
	PRO_Reporting
	PRO_Sort_Columns
DOCUMENTS (1400-1499)
	DOC_Processes
	DOC_Sort_Columns
INFO (1500-1599)
NOTES LOG (1600-1699)
	CMN_Processes
	CMN_Navigation
	CMN_Reporting
	CMN_Sort_Columns
STAFF (1700-1799)
	STA_Processes
	STA_Reporting
	STA_Sort_Columns
TIMESHEETS (1800-1899)
	TIM_Processes
	TIM_Reporting
	TIM_Sort_Columns
TO_DO_LIST (1900-1999)
	TDL_Reporting
	TDL_Processes
	TDL_Navigation
Developer (2200-2299)
Containers (2300-2399)
Touch Device Layouts (2400-2499)
Barcode Creator

Matt Petrowsky(DevCon 2016 Session Materials)

https://community.filemaker.com/docs/DOC-7370

script-workspace-des001

Navigation Menu
Preserving state
Toggle Layout Parts
Offscreen Tabs
Orientation Change
Infinite Sliders

frudens

script-workspace-frudensmaijn

Document
Chane Log
Developer
	Initial
	Release
Modules
Application
	Startup
	Shutdown
	Global
	Menu
	Shared
	Server
	Mobile
	Error Handling
User Interface
	System
		Entity 1
	Resource
		Customer
		User
	Event
		Entity 3
	Summary
		Entity 4
	Other
		Entity 5

さいごに

とくに正解はないと思うので、どんな名前でもフォルダ構成でもよいと思います。
私は、普段なにげなくやっている開発作業の中で、テーブル名、フィールド名、レイアウト名、スクリプト名、変数名、などに対して、常に「なんで?」と考えながら開発をしていますし、他の人のファイルを見ています。
おそらく一般的な開発者であれば、考えていない人はいないと思います。
常に自分の開発プロセスを振り返り、生産性や品質を高める努力をしていきたいですね。

正解はないにしても、未来の自分のためにも他の人のためにも “分かりやすさ” は考えるべきかと思います。

小さなことでも構いませんので、お困りのことがありましたら、お電話やお問い合わせフォームからご連絡頂ければと思います。

最後まで見て頂き、ありがとうございました。

リストダウンローダーのベータ版(1.0.3)をリリースしました

こんにちは。
株式会社フルーデンスの小巻旭洋です。

タイトルの通りですが、複数の方からお問い合わせがあったのでバグを修正しました。

今回は「住所部分に郵便番号の下3桁の数字が入るバグ」のみを修正しました。

今後のメンテナンスをしやすくするために、処理を大きく書き換えましたが、利用者として見ると特に変化はありません。

実装を予定している機能

以下のような機能を予定しています。
なにかご要望があれば、コメントに記入して頂ければと思います。

  • 顧客リスト
  • 市区町村を全て選択する機能
  • ダウンロードリストの中で重複を省く機能
  • 特定の条件(URLがある、フリーダイヤルではない、など)のリストのみダウンロードする機能

clip4d(FileMakerのクリップボードを活用するツール)を作ってみた

こんにちは。
株式会社フルーデンスの小巻旭洋です。

かなり前から「作ってみたいな〜」って思っていたツールをやっと形にできました。
難しい技術ってこともなく、すごく簡単なファイルですが、もしかしたらお役に立てるツールかもしれません。

タイトルの通り、FileMakerのクリップボードを活用するツールってことなんですが、分からない人もいるかもしれませんので簡単に紹介です。
(開発者の方には、有名な Clip Manager for Mac のすごい簡易版と思って頂ければと思います。)

clip4d(FileMaker開発者向けクリップボード活用ツール)のデモ

実際の動きを見て頂いたほうが早いと思います。どうぞ。

FileMakerのデータ

みなさまご存知の通りですが、FileMakerのオブジェクトをコピーするとxmlとして保存されます。

たとえば、下記のレイアウトにある “テキストラベルです” というテキストをコピーしてみます。

そうすると、下記のようなデータでクリップボードに保存されます。

このxmlの “テキストラベルです” の部分を変更し、変更後のxmlをクリップボードに設定すれば、FileMakerのレイアウトに変更後のテキストを貼り付けることができます。

clip4dの使いどころ

話を戻しまして clip4d というツールは、クリップボードのxmlをテキスト化します。
テキスト化された文字情報を置換してもよいですし、ハウスキーピング用として管理してもよいかもです。

あるかどうかは別として、レイアウトのTOを変更する場合に、レイアウトに配置されているオブジェクトや計算式をいちいち直すのは手間ですので、こういう場合は置換すると便利かと思います。

下記のページに、簡単な使い方の動画やダウンロードURLを乗せていますので、宜しければ使ってみてください。

https://frudens.jp/about-clip4d-filemaker/