プラグイン:MailMakerPop+
ユーザー様より、メールの本文中に「NULL文字|Code(0)」があった場合、それ以降の文字が除外されるとの連絡。
「NULL文字|Code(0)」!!! 扱いが面倒!
検証するために「NULL文字|Code(0)」が必要になる。
お手軽なVBScriptを利用する。
ファイル名:clipboard.hta
内容:
<script type='text/vbscript'>
clipboardData.setData "Text", "Hello!" + vbNullChar + "かきくけこ"
</script>
clipboard.hta を実行。
これでクリップボードに「"Hello!" + vbNullChar(NULL文字) + "かきくけこ"」が入る。
試しにメモ帳(NotePad)に貼り付け、
ん!?
「Hello!」しか張り付きません。
が、
FileMakerのフィールドにペーストすると、
「Hello!かきくけこ」となります。
表示はされていませんが、"Hello!" と "かきくけこ" の間に NULL文字 が存在します。
この NULL文字 を含んだフィールドの文字列を MailMakerPop+ に送ると、 NULL文字 以降の文字列が除外されてしまいます。
以下のバージョンで修正済です。
MailMakerPopPlus_Ver3.1 dll2.0.1.9
[ダウンロード]|Download Ver.3(32) - MailMakerPopPlus FileMaker Mail Plug-in :
https://sites.google.com/site/mailmakerpopplus/download-ver-3x32bit
※FileMaker Pro 12・13対応
※FileMaker Pro 11 でプラグインに送る文字列中に「NULL文字|Code(0)」があった場合、FileMakerがフリーズします。
FileMaker Pro 11 の場合は、FileMaker側で処理する必要があるのですが、チョット面倒です。
Substitute ( フィールド ; Char(0) ; "" )で置換出来ると思ったのですが、Char(0)は、使えない様です。
以下に情報がありました。
みんなで助け合おう!初心者のFileMaker pro Q&A : http://russ.jp/stepbbs/step.cgi?mode=view&no=86202
NULL文字 をフィールドに入れておけば、置換可能との事。
「NULL文字グローバルフィールド」 を作り NULL文字 を入れておきます。
NULL文字 の取得は、ファイル:clipboard.hta をチョット変更して、
ファイル名:clipboard.hta
内容:
<script type='text/vbscript'>
clipboardData.setData "Text", vbNullChar
</script>
これで、 NULL文字 だけコピー出来ます。これを「NULL文字グローバルフィールド」に貼り付け、
Substitute ( テキストフィールド ; NULL文字グローバルフィールド ; "" )
でOK!
SyntaxHighlighter
2014年9月18日木曜日
2014年9月12日金曜日
FileMakerでメール受信。MailMakerPop+ 文字化け!?
私の規定のメーラーは、FileMakerです。もちろんプラグインは、「MailMakerPop+」!
大体のメーラーは、text/html があれば、HTMLを規定で表示するので問題になりにくいのかな?
TESTも兼ねて使用しています。
テンプレートは、「Mail_template3」。基本的なメーラーの機能は、有しています。
※カスタマイズ向きなのは、Mail_template8[MMPLib2] です。
本日大手メーカーからのメール、本文(text/plain) が「?」になっています。
本文(text/html)は、問題ありません。
メールメッセージの元を確認します。
マルチパートで text/plain と text/html のメールです。
「text/html」のヘッダー情報:
--= Multipart Alternative Boundary 20140911171859.1034948892
Content-Type: text/html; charset="ISO-2022-JP"
Content-Transfer-Encoding: 7bit
いたって普通。文字化けもありません。
「ISO-2022-JP|7bit」のエンコードです。
「text/plain」のヘッダー情報:
--= Multipart Alternative Boundary 20140911171859.1034948892
Content-Type: text/plain; charset="ISO-2022-JP"; format=flowed
Content-Transfer-Encoding: quoted-printable
記述は、普通です。
「ISO-2022-JP|quoted-printable」のエンコードです。
が、しかし!?
本文は、
$B$3$N$?$S$O
※前後、はしょっています。
$B$3$N$?$S$O は、「このたびは」 となるのですが、明らかに「quoted-printable」では、ありません。
これは、「ISO-2022-JP|7bit」のエンコードです。
ヘッダー情報を書き換えると文字化けは治ります。
「text/plain」のヘッダー情報:
--= Multipart Alternative Boundary 20140911171859.1034948892
Content-Type: text/plain; charset="ISO-2022-JP"; format=flowed
Content-Transfer-Encoding: 7bit
大体のメーラーは、text/html があれば、HTMLを規定で表示するので問題になりにくいのかな?
しかし、チョットあせるのでやめて欲しい。
2013年7月30日火曜日
FileMakerで直接メールの受信が出来る「MailMakerPop+」をためしてみよう!
FileMakerで直接メールの受信が出来る「MailMakerPop+」をためしてみよう!
対象:
FileMaker Pro 12 (adv)
Windws 7, 8
「 MailMakerPop+」は、
■Microsoft Visual C++ 2010 SP1 再頒布可能パッケージ (x86) が必要です。
以下よりダウンロードし、インストールして下さい。
既にインストールされている場合は、この作業は、必要ありません。
■Microsoft .NET Framework 4 が必要です。
以下よりダウンロードし、インストールして下さい。
既にインストールされている場合は、この作業は、必要ありません。
※Windows 8 は、.NET Framework 4.5 が、プリインストールされているので、.NET Framework 4 をインストールする必要は、ありません。
■プラグインをダウンロードしFileMakerに設定。
以下よりダウンロード。
ページ下部、
現在の最新は、MailMakerPopPlus_Ver2014_dll2011_0826.zip (2013.7.29)
.png)
「ダウンロード」をクリックし、任意の場所へ保存。
.zipなので適当な場所へ解凍。
解凍?が、不明な方は、ダブルクリックでも中身が見えるのでOK。
.png)
中のファイル。
.png)
[MailMakerPop+.fmx]を Extensionsフォルダへコピー
C:\Program Files\FileMaker\FileMaker Pro 12\Extensions
OSが64bitの場合は、
C:\Program Files (x86)\FileMaker\FileMaker Pro 12\Extensions
2014/09/24追記:
※MailMakerPop+ Ver.3 以降をご利用の場合、「試用シリアルキーファイル」が必要です。ダウンロードは、コチラ
ダウンロードした「MailMakerPop.dat」を[MailMakerPop+.fmx]と同じExtensionsフォルダへコピーして下さい。
2014/09/24追記:
※MailMakerPop+ Ver.3 以降をご利用の場合、「試用シリアルキーファイル」が必要です。ダウンロードは、コチラ
ダウンロードした「MailMakerPop.dat」を[MailMakerPop+.fmx]と同じExtensionsフォルダへコピーして下さい。
.png)
[MailMakerPop3.dll]を FileMaker Pro 12フォルダへコピー。(FileMaker Pro.exe と同じフォルダ)
C:\Program Files\FileMaker\FileMaker Pro 12
OSが64bitの場合は、
C:\Program Files (x86)\FileMaker\FileMaker Pro 12
.png)
FileMakerを起動。
編集(E) -> 環境設定(F) をクリック。
.png)
[プラグイン]タブをクリック。
□MailMakerPopにチェックをし、OKをクリック。
.png)
これで、プラグインの設定は、完了!
■サンプルテンプレートを使ってメールを受信してみましょう!
最新のテンプレート「Mail_template8[MMPLib2]」(2013.7.29現在)
FileMaker Pro 12 用の「Mail_template8[MMPLib2][fmp12].zip」をダウンロード。
.png)
ダウンロードした「Mail_template8[MMPLib2][fmp12].zip」を右クリックし、「すべて展開(T)」を左クリック。
.png)
任意のフォルダを選択し、[展開(E)]をクリック。
.png)
Mail_template8[MMPLib2][fmp12]フォルダ内、
Mail_template8.fmp12 を開いて下さい。
.png)
レイアウト「Account」を開き、「Account」の詳細レイアウトを開きます。
.png)
■メールの受信設定を行います。
ご自身のメールサーバーの情報を設定して下さい。
.png)
設定が完了したら、「ログイン」をクリックし、メールサーバーにログイン出来る事を確認して下さい。
.png)
ログインに成功した場合、「+OK 138 1288703」の様に「+OK メールの数 容量」を返します。
(メールの数 容量)は、メールサーバー上の全メールの数・容量です。
.png)
ログインの成功を確認出来たら「ログアウト」をクリックして下さい。
エラーの場合は、以下を確認して下さい。
以下の様なエラーが出た場合は、一度「ログアウト」をクリックし、再度、「ログイン」をクリクして下さい。
「-ER|ProAdvanced 12.0v3|スクリプト:lib_Test_login...|2013/07/29 16:47:47 から他のスクリプトで「MMP+」が、利用されています。」
.png)
以下のエラーの場合、それぞれの項目を確認して下さい。
エラー:「要求した名前は有効ですが、要求された種類のデータは見つかりませんでした。」
・POP_Server
エラー:「-ERR Login failed.」(メールサーバーによりメッセージが異なります。)
・POP_account
・POP_password
エラー:「予期しないパケット形式のため、ハンドシェイクに失敗しました。」
・POP_SSL
・POP_Port POPサーバーのポートを間違えるとFileMakerごとフリーズする事があるのでご注意下さい。
■メールを受信
[Mail]レイアウトを表示し、[受信]をクリック。
.png)
2012年10月9日火曜日
DM・はがきレイアウト FileMaker
商品購入後、1年目にはがきを出す。
みなさん!どうしてますか?
宛名面:
顧客をエクセルで管理 -> CSV出力 -> はがき作成ソフトで宛名印刷
裏面は?
同一の裏面であれば、Wordかなんかで作って印刷で良いですが、
今回は、お客様が購入したPCの型番やシリアルナンバーを印字します。
FileMakerであれば、ひとつのデータに対して複数のレイアウトが作成せきるのでこういった印刷もカンタンに行えるようになります。
で、
今回は、SYSTEMの話は、おいといて、レイアウトの話!
現在のレイアウト(イメージ)
このレイアウトでは、問題があります!
同時期にPCを購入した場合、PC毎に1枚のはがきが必要になります。
FileMakerなら複数レイアウトが可能なので、2台用、3台用と作れば大丈夫!!!
ですが、
それも面倒なので、
ちょっとレイアウトを考えてみます..........!
本文を左に!、PCの情報を右側に配置!
これでPC1台から5・6台まで1枚のハガキで対応可能です。
真ん中の仕切りもタダの罫線だと味気ないですが、チョット「S字」にしてグラデーションを付けて...!
小おしゃれな感じになったでしょうか!!!???
1台の時でも違和感が無いように右側には、「JOYMATE」のロゴ?を薄くして配置。
来月分は、このデザインで出せるかな?
みなさん!どうしてますか?
宛名面:
顧客をエクセルで管理 -> CSV出力 -> はがき作成ソフトで宛名印刷
裏面は?
同一の裏面であれば、Wordかなんかで作って印刷で良いですが、
今回は、お客様が購入したPCの型番やシリアルナンバーを印字します。
FileMakerであれば、ひとつのデータに対して複数のレイアウトが作成せきるのでこういった印刷もカンタンに行えるようになります。
で、
今回は、SYSTEMの話は、おいといて、レイアウトの話!
現在のレイアウト(イメージ)
このレイアウトでは、問題があります!
同時期にPCを購入した場合、PC毎に1枚のはがきが必要になります。
FileMakerなら複数レイアウトが可能なので、2台用、3台用と作れば大丈夫!!!
ですが、
それも面倒なので、
ちょっとレイアウトを考えてみます..........!
本文を左に!、PCの情報を右側に配置!
これでPC1台から5・6台まで1枚のハガキで対応可能です。
真ん中の仕切りもタダの罫線だと味気ないですが、チョット「S字」にしてグラデーションを付けて...!
小おしゃれな感じになったでしょうか!!!???
1台の時でも違和感が無いように右側には、「JOYMATE」のロゴ?を薄くして配置。
来月分は、このデザインで出せるかな?
2012年10月4日木曜日
FileMaker Go で、できること!
FileMaker Go 12 | iPod touch/iPhone/iPad | QRdeCODE | pic2shop
FileMaker Go で、できること!
App Storeで書籍管理アプリがあるとは思いますが、FileMaker の利点としては、読み込んだデータをPCに持っていって好きに加工できる事!
どう使うかは、アイデア次第!
FileMaker Go 12 for iPhone
http://itunes.apple.com/jp/app/filemaker-go-12-for-iphone/id508238074?mt=8
QRdeCODE
http://itunes.apple.com/jp/app/qrdecode/id365849329
pic2shop - Barcode Scanner and QR Reader
http://itunes.apple.com/jp/app/pic2shop-barcode-scanner-qr/id308740640
FileMaker Go で、できること!
App Storeで書籍管理アプリがあるとは思いますが、FileMaker の利点としては、読み込んだデータをPCに持っていって好きに加工できる事!
どう使うかは、アイデア次第!
FileMaker Go 12 for iPhone
http://itunes.apple.com/jp/app/filemaker-go-12-for-iphone/id508238074?mt=8
QRdeCODE
http://itunes.apple.com/jp/app/qrdecode/id365849329
pic2shop - Barcode Scanner and QR Reader
http://itunes.apple.com/jp/app/pic2shop-barcode-scanner-qr/id308740640
2012年6月28日木曜日
メールヘッダーの日付 | FileMaker
メールヘッダーの日付は、
Thu, 28 Jun 2012 12:42:52 +0900
28 Jun 2012 12:18:36 +0900
Wed, 27 Jun 2012 12:42:52 +0900
Tue, 26 Jun 2012 08:54:11 +0900
Mon, 25 Jun 2012 20:20:12 +0900 (JST)
17 Mar 2012 11:08:50 +0900
こんな感じで記載されている。
これをファイルメーカーのタイムスタンプ形式に変換していたけど、たまにエラーになっていたので修正!
スクリプト例:1
(ファイルメーカーの機能だけで変換)
正規表現を使ったほうが楽かな?と思って...
スクリプト例:2
(メール受信プラグインMailMakerPop+の正規表現を使用)
(メ・ん・)?よけいにに長くなってしまいました!残念!
Thu, 28 Jun 2012 12:42:52 +0900
28 Jun 2012 12:18:36 +0900
Wed, 27 Jun 2012 12:42:52 +0900
Tue, 26 Jun 2012 08:54:11 +0900
Mon, 25 Jun 2012 20:20:12 +0900 (JST)
17 Mar 2012 11:08:50 +0900
こんな感じで記載されている。
これをファイルメーカーのタイムスタンプ形式に変換していたけど、たまにエラーになっていたので修正!
スクリプト例:1
(ファイルメーカーの機能だけで変換)
- 変数を設定 [ $dateValue; 値:Substitute ( MailTemp::Date変換前 ; " "; ¶ ) ]
- If [ IsEmpty ( $dateValue ) ]
- 現在のスクリプト終了 [ ]
- End If
- #
- 変数を設定 [ $n; 値:1 ]
- Loop
- 変数を設定 [ $M; 値:GetValue( $dateValue ; $n ) ]
- 変数を設定 [ $M; 値:Case ( $M= "Jan"; 1 ; $M= "feb"; 2 ; $M= "Mar"; 3 ; $M= "Apr"; 4 ; $M= "May"; 5 ; $M= "Jun"; 6 ; $M= "Jul"; 7 ; $M= "Aug"; 8 ; $M= "Sep"; 9 ; $M= "oct" ; 10 ; $M= "Nov" ; 11 ; $M= "Dec" ; 12 ; "" ) /* 月 英語 略称 1月 January Jan. 2月 February Feb. 3月 March Mar. 4月 April Apr. 5月 May May 6月 June Jun. 7月 July Jul. 8月 August Aug. 9月 September Sep. 10月 October Oct. 11月 November Nov. 12月 December Dec. */ ]
- Exit Loop If [ $M ]
- 変数を設定 [ $n; 値:$n+1 ]
- End Loop
- #
- 変数を設定 [ $D; 値:GetValue( $dateValue ; $n -1) ]
- 変数を設定 [ $Y; 値:GetValue( $dateValue ; $n+1 ) ]
- 変数を設定 [ $date; 値:Date ( $M ; $D ; $Y ) ]
- #
- 変数を設定 [ $time; 値:GetValue( $dateValue ; $n+2 ) ]
- フィールド設定 [ MailTemp::Date変換後; Timestamp ( $date ; $time) ]
正規表現を使ったほうが楽かな?と思って...
スクリプト例:2
(メール受信プラグインMailMakerPop+の正規表現を使用)
- 変数を設定 [ $dateValue; 値:MailTemp::Date変換前 ]
- If [ IsEmpty ( $dateValue ) ]
- 現在のスクリプト終了 [ ]
- End If
- #正規表現OPTIN設定|IgnoreCase:大文字・小文字を区別しない
- 変数を設定 [ $er; 値:iill_rxSetRegexOptions( "IgnoreCase" )/* IgnoreCase | Singleline | Compiled | CultureInvariant | ECMAScript | ExplicitCapture | IgnorePatternWhitespace | Multiline | RightToLeft*/ ]
- 変数を設定 [ $date; 値:iill_rxRegexMatch( "([0-3]?[0-9])\s(Jan|feb|Mar|Apr|May|Jun|Jul|Aug|Sep|oct|Nov|Dec)\s\d{4}" ; $dateValue ) ]
- 変数を設定 [ $date; 値:Substitute ( $date ; " " ; ¶ ) ]
- 変数を設定 [ $D; 値:GetValue( $date ; 1) ]
- 変数を設定 [ $M; 値:GetValue( $date ; 2) ]
- 変数を設定 [ $M; 値:Case ( $M= "Jan"; 1 ; $M= "feb"; 2 ; $M= "Mar"; 3 ; $M= "Apr"; 4 ; $M= "May"; 5 ; $M= "Jun"; 6 ; $M= "Jul"; 7 ; $M= "Aug"; 8 ; $M= "Sep"; 9 ; $M= "oct" ; 10 ; $M= "Nov" ; 11 ; $M= "Dec" ; 12 ; "" ) /* 月 英語 略称 1月 January Jan. 2月 February Feb. 3月 March Mar. 4月 April Apr. 5月 May May 6月 June Jun. 7月 July Jul. 8月 August Aug. 9月 September Sep. 10月 October Oct. 11月 November Nov. 12月 December Dec. */ ]
- 変数を設定 [ $Y; 値:GetValue( $date ; 3) ]
- 変数を設定 [ $date; 値:Date ( $M ; $D ; $Y ) ]
- #
- 変数を設定 [ $time; 値:iill_rxRegexMatch( "(2[0-3]|[01]?[0-9]):[0-5][0-9]:[0-5][0-9]" ; $dateValue ) ]
- フィールド設定 [ MailTemp::Date変換後; Timestamp ( $date ; $time) ]
(メ・ん・)?よけいにに長くなってしまいました!残念!
2012年6月21日木曜日
ヤマトお届け予定日検索をファイルメーカーでカンタンに!
ヤマトお届け予定日検索専用にモジュール化したFilMakerファイルを作成し、
ヤマトお届け予定日検索をカンタンに行います。
WEBビューアでJavaScriptスキームを使用するので、Windowsのみに対応です。
実行方法:
モジュール化した「ヤマトお届け予定日検索.fp7」ファイルの
スクリプト:「GET発送締切日[クール便](sZIP,eZIP,DATE)」を実行し、
「Get(スクリプトの結果)」で結果を取得します。
スクリプト例:
スクリプト実行
[「GET発送締切日[クール便](sZIP,eZIP,DATE)」 , ファイル: 「ヤマトお届け予定日検索」; 引数: YAMATO::発地_郵便番号 & ¶ & YAMATO::着地_郵便番号 & ¶ & YAMATO::日付] |
変数を設定 [$Result; 値:Get(スクリプトの結果)] |
フィールド設定 [YAMATO::お届け予定日|発送締切日; GetValue ( $Result ; 1 )] |
フィールド設定 [YAMATO::お届け時間帯|発送締切日_午前中お届け;
GetValue ( $Result ; 2 )] スクリプト:解説 GET発送締切日[クール便](sZIP,eZIP,DATE)に 引数(改行区切り) 発地_郵便番号 着地_郵便番号 日付 |
をつけて実行。
戻り値は、
1行目:お届け予定日 または、発送締切日
2行目:お届け時間帯
または、 発送締切日_午前中お届け
になるので、
GetValue ( $Result ; 1 )でそれぞれのフィールドへ設定。
モジュール「ヤマトお届け予定日検索.fp7」のスクリプト
GET発送締切日[クール便](sZIP,eZIP,DATE) | ||
GET到着予定日[クール便](sZIP,eZIP,DATE) | ||
GET発送締切日[宅急便](sZIP,eZIP,DATE) | ||
GET到着予定日[宅急便](sZIP,eZIP,DATE) | ||
GET発送締切日[超速宅急便](sZIP,eZIP,DATE) | ||
GET到着予定日[超速宅急便](sZIP,eZIP,DATE) デフォルトは6個ですが、JavaScriptの知識があれば、FileMakerのレコードを増やす事で新たな検索方法を追加できます。 サンプル実行方法: ヤマトお届け予定日検索サンプル.fp7を開き フィールド: 発地_郵便番号 着地_郵便番号 日付 にそれぞれ入力し、 以下のボタンをクリック! ※注意事項 モジュール「ヤマトお届け予定日検索.fp7」を既存のシステムに組み込む場合、 「ヤマトお届け予定日検索.fp7」でFileMakerのスクリプト「スクリプト一時停止/続行」を 使用しなければ行けないのですが、そうすると「スクリプト一時停止/続行」を実行するたびに 「ヤマトお届け予定日検索.fp7」が最前面になってしまいます! これを防ぐ為に既存のファイルに スクリプト:「一時停止(sec)」 内容:
を作成しモジュール「ヤマトお届け予定日検索.fp7」から「一時停止(sec)」を呼び出します。 動作確認: Windows 7, Xp FileMaker Pro 11 モジュールファイル: 「ヤマトお届け予定日検索.fp7」について パスワード:なし 特に何の制限もありません。 ご自由に使って下さい。 再配布も可! 組み込み可! ダウンロード:ヤマトお届け予定日検索.zip |
2012年4月23日月曜日
FileMakerでヤマト運輸「お届け予定日検索」
FileMakerでヤマト運輸「お届け予定日検索」
FIleMakerでヤマト運輸の「お届け予定日検索」を実行し「発送締切日」を自動取得します。
Windowsのみ
動作確認
FileMaker Pro 11(9移行なら使えると思います。)
料金・お届け予定日検索(宅急便)|ヤマト運輸 : http://date.kuronekoyamato.co.jp/date/Main
上記ページを表示し、JavaScriptで入力&クリックを行なった場合、
FileMakerの「GetLayoutObjectAttribute ( "WEB1" ; "content")」では、HTMLのソースが取得出来ない!
一旦、Dataスキームで
以下のHTMLを用意して「POST」してもHTMLのソースは取れない!
DATA:text/html,
<form name=form method=post action=http://date.kuronekoyamato.co.jp/date/Takkyubin >
<input type =text name=ACTID value=J_RKTKJS0010>
.....
</form>
で、
formをJavaScriptで記述すれば、「お届け予定日検索」をした結果のHTMLのソースが取得出来ます!
JavaScriptの記述、
FileMakerのスクリプト中に記述する場合、「"」や「改行」の処理がややこしくなるので、フィールドを使います。
フィールド:JavaScript(繰り返し1)
値:
javascript:
function x(form,name,value){
var input = document.createElement( 'input' );
input.setAttribute( 'type' , 'hidden' );
input.setAttribute( 'name' , name );
input.setAttribute( 'value' , value );
form.appendChild( input );
}
フィールド:JavaScript[2](繰り返し2)
値:
javascript:
var form = document.createElement( 'form' );
document.body.appendChild( form );
x(form,'ACTID','J_RKTKJS0010');
x(form,'PARA_STA','7760035');
x(form,'PARA_END','9070000');
x(form,'PARA_YEAR','2012');
x(form,'PARA_MONTH','5');
x(form,'PARA_DAY','3');
x(form,'PARA_SEARCH_KBN','PARA_CARRY_SEARCH');
x(form,'BTN_EXEC_SLEVEL','SEND');
フィールド:JavaScript[3](繰り返し3)
値:
javascript:
form.setAttribute( 'action' , 'http://date.kuronekoyamato.co.jp/date/Takkyubin' );
form.setAttribute( 'method' , 'post' );
form.submit();
※文字数制限があるようでいっぺんには送れないので3分割。
スクリプトは、こんな感じ
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: "about:blank"]
スクリプト一時停止/続行 [間隔(秒): 0]
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: JSMaker::JavaScript]
スクリプト一時停止/続行 [間隔(秒): 0]
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: JSMaker::JavaScript[2]]
スクリプト一時停止/続行 [間隔(秒): 0]
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: JSMaker::JavaScript[3]]
スクリプト一時停止/続行 [間隔(秒): 0]
スクリプト実行 [「_GET_content」]
スクリプト実行 [「_GET発送締切日」]
フィールドへ移動 []
こうやってヤマトにPOSTした場合は、「GetLayoutObjectAttribute ( "WEB1" ; "content")」で結果のHTMLソースが取得できます。
スクリプト実行 [「_GET_content」]の中:
変数を設定 [$n; 値:0]
Loop
変数を設定 [$Result; 値:GetLayoutObjectAttribute ( "WEB1" ; "content")]
Exit Loop If [PatternCount ( $Result ; "</html>" ) or $n>10]
スクリプト一時停止/続行 [間隔(秒): 1]
変数を設定 [$n; 値:$n+1]
End Loop
フィールド設定 [JSMaker::Result; $Result]
スクリプト実行 [「_GET発送締切日」]の中:
変数を設定 [$Source; 値:JSMaker::Result]
変数を設定 [$max; 値:ValueCount ( $Source )]
変数を設定 [$n; 値:1]
Loop
変数を設定 [$Raw; 値:Trim(GetValue ( $Source ; $n ))]
If [$Raw = "<h3 class=\"typeB first-item\">お届け予定日</h3>"]
変数を設定 [$hit; 値:1]
End If
If [$hit=1]
変数を設定 [$Result; 値:$Result & $Raw]
If [$Raw = "</table>"]
Exit Loop If [1]
End If
End If
変数を設定 [$n; 値:$n+1]
Exit Loop If [$n>$max]
End Loop
変数を設定 [$Result; 値:Substitute ( $Result ; ["<strong>" ; "¶"]; ["</strong>" ; "¶"] )]
変数を設定 [$DAY; 値:GetValue ( $Result ; 2 )]
変数を設定 [$DAY[2]; 値:GetValue ( $Result ; 4 )]
フィールド設定 [JSMaker::Result; "発送締切日:" & $DAY & ¶ & "発送締切日(午前中お届け):" & $DAY[2]]
これで「お届け日指定」があった場合も逆算がカンタン!?
実際の「楽天RMS運用支援SYSTEM(借名)」の場合は、プラグインを使う予定。で、「楽天RMS」から「お届け希望日」を取得して、ほぼ自動化したいな!
FIleMakerでヤマト運輸の「お届け予定日検索」を実行し「発送締切日」を自動取得します。
Windowsのみ
動作確認
FileMaker Pro 11(9移行なら使えると思います。)
料金・お届け予定日検索(宅急便)|ヤマト運輸 : http://date.kuronekoyamato.co.jp/date/Main
上記ページを表示し、JavaScriptで入力&クリックを行なった場合、
FileMakerの「GetLayoutObjectAttribute ( "WEB1" ; "content")」では、HTMLのソースが取得出来ない!
一旦、Dataスキームで
以下のHTMLを用意して「POST」してもHTMLのソースは取れない!
DATA:text/html,
<form name=form method=post action=http://date.kuronekoyamato.co.jp/date/Takkyubin >
<input type =text name=ACTID value=J_RKTKJS0010>
.....
</form>
で、
formをJavaScriptで記述すれば、「お届け予定日検索」をした結果のHTMLのソースが取得出来ます!
JavaScriptの記述、
FileMakerのスクリプト中に記述する場合、「"」や「改行」の処理がややこしくなるので、フィールドを使います。
フィールド:JavaScript(繰り返し1)
値:
javascript:
function x(form,name,value){
var input = document.createElement( 'input' );
input.setAttribute( 'type' , 'hidden' );
input.setAttribute( 'name' , name );
input.setAttribute( 'value' , value );
form.appendChild( input );
}
フィールド:JavaScript[2](繰り返し2)
値:
javascript:
var form = document.createElement( 'form' );
document.body.appendChild( form );
x(form,'ACTID','J_RKTKJS0010');
x(form,'PARA_STA','7760035');
x(form,'PARA_END','9070000');
x(form,'PARA_YEAR','2012');
x(form,'PARA_MONTH','5');
x(form,'PARA_DAY','3');
x(form,'PARA_SEARCH_KBN','PARA_CARRY_SEARCH');
x(form,'BTN_EXEC_SLEVEL','SEND');
フィールド:JavaScript[3](繰り返し3)
値:
javascript:
form.setAttribute( 'action' , 'http://date.kuronekoyamato.co.jp/date/Takkyubin' );
form.setAttribute( 'method' , 'post' );
form.submit();
※文字数制限があるようでいっぺんには送れないので3分割。
スクリプトは、こんな感じ
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: "about:blank"]
スクリプト一時停止/続行 [間隔(秒): 0]
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: JSMaker::JavaScript]
スクリプト一時停止/続行 [間隔(秒): 0]
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: JSMaker::JavaScript[2]]
スクリプト一時停止/続行 [間隔(秒): 0]
Web ビューアの設定 [オブジェクト名: "WEB1"; URL: JSMaker::JavaScript[3]]
スクリプト一時停止/続行 [間隔(秒): 0]
スクリプト実行 [「_GET_content」]
スクリプト実行 [「_GET発送締切日」]
フィールドへ移動 []
こうやってヤマトにPOSTした場合は、「GetLayoutObjectAttribute ( "WEB1" ; "content")」で結果のHTMLソースが取得できます。
スクリプト実行 [「_GET_content」]の中:
変数を設定 [$n; 値:0]
Loop
変数を設定 [$Result; 値:GetLayoutObjectAttribute ( "WEB1" ; "content")]
Exit Loop If [PatternCount ( $Result ; "</html>" ) or $n>10]
スクリプト一時停止/続行 [間隔(秒): 1]
変数を設定 [$n; 値:$n+1]
End Loop
フィールド設定 [JSMaker::Result; $Result]
スクリプト実行 [「_GET発送締切日」]の中:
変数を設定 [$Source; 値:JSMaker::Result]
変数を設定 [$max; 値:ValueCount ( $Source )]
変数を設定 [$n; 値:1]
Loop
変数を設定 [$Raw; 値:Trim(GetValue ( $Source ; $n ))]
If [$Raw = "<h3 class=\"typeB first-item\">お届け予定日</h3>"]
変数を設定 [$hit; 値:1]
End If
If [$hit=1]
変数を設定 [$Result; 値:$Result & $Raw]
If [$Raw = "</table>"]
Exit Loop If [1]
End If
End If
変数を設定 [$n; 値:$n+1]
Exit Loop If [$n>$max]
End Loop
変数を設定 [$Result; 値:Substitute ( $Result ; ["<strong>" ; "¶"]; ["</strong>" ; "¶"] )]
変数を設定 [$DAY; 値:GetValue ( $Result ; 2 )]
変数を設定 [$DAY[2]; 値:GetValue ( $Result ; 4 )]
フィールド設定 [JSMaker::Result; "発送締切日:" & $DAY & ¶ & "発送締切日(午前中お届け):" & $DAY[2]]
これで「お届け日指定」があった場合も逆算がカンタン!?
実際の「楽天RMS運用支援SYSTEM(借名)」の場合は、プラグインを使う予定。で、「楽天RMS」から「お届け希望日」を取得して、ほぼ自動化したいな!
2012年4月18日水曜日
FileMakerと楽天RMS連携[Windows]2
FileMakerからInternet Explorerを操作し、楽天RMSへ自動入力!
ログアウトしている状態から1クリックで[受注管理 - 新規受付]を開く!
楽天RMSってこうゆう事をさせたくないのか?HTMLタグに、「id」の設定が無い!「name」の設定もすくない!でも!なんとか出来ない事はない! d(^ ^)
2012年4月13日金曜日
FileMakerと楽天RMS連携[Windows]
楽天支援にあたり、FileMakerを使って楽天RMSの操作・入力支援ツールを制作予定!
FileMakerからInternet Explorerを操作し、楽天RMSへ自動入力!
FileMakerからInternet Explorerを操作し、楽天RMSへ自動入力!
既存で色々ソフトがあるけど、FileMakerで作れば使う人が独自のカスタマイズが出来てイイと思う!
楽天RMSの入力は、大変なのでガンバって作ったら使ってくれる人いるかな?
社内のWEB担当が、RMSの入力!、大変そうなのでこのツールでラクチンになって、
クリエイティブな事に時間を使って下さい! d(^-^)
※まだ出来てないですけど!
2012年4月6日金曜日
MailMakerPop+ は、FileMaker Pro 12 に対応しています。
【MailMakerPop+ は、FileMaker Pro 12 に対応しています。 】
(FileMaker用メール送受信プラグイン)
動作検証:
MailMakerPop+ Ver.2.0.0.5(dll2.0.0.6)
OS:Windows Xp SP3 , 7 (32bit,64bit)
http://manual-mailmakerpop.joy-h.com/
動作検証を行いました!
FileMaker Pro 12 で、ファイルシステムが変わるので「MailMakerPop+」の手直しが必要かと思っていましたが、そのままで「FileMaker Pro 12」に対応します。d(^^)
2012年2月2日木曜日
2012年1月23日月曜日
MailMakerPop+
ファイルメーカーで直接メールを受信可能にするプラグイン.
MailMakerPop+
http://manual-mailmakerpop.joy-h.com/
独自サブドメインになりました!
と言いながら、
?????
ドメイン移管が上手くいかない!!!
MailMakerPop+ へは、以下でアクセスでお願いします。
https://sites.google.com/site/mailmakerpopplus/
MailMakerPop+
http://manual-mailmakerpop.joy-h.com/
独自サブドメインになりました!
と言いながら、
?????
ドメイン移管が上手くいかない!!!
MailMakerPop+ へは、以下でアクセスでお願いします。
https://sites.google.com/site/mailmakerpopplus/
2012年1月19日木曜日
ファイルメーカー メールを受信 プラグイン - MailMakerPop+
ファイルメーカーで直接メールを受信可能にするプラグイン.
MailMakerPop+
http://manual-mailmakerpop.joy-h.com/
独自サブドメインになりました!
CNAME レコードの設定: ムームードメイン
http://support.google.com/a/bin/answer.py?hl=ja&answer=142022
MailMakerPop+
http://manual-mailmakerpop.joy-h.com/
独自サブドメインになりました!
CNAME レコードの設定: ムームードメイン
http://support.google.com/a/bin/answer.py?hl=ja&answer=142022
Googleにマニュアルがあったのであっけなくサブドメイン登録が完了!
今後、http://manual-mailmakerpop.joy-h.com/のページは、マニュアル中心になります!
という事で、現在当社WEBデザイナーがMailMakerPop+のトップページを作ってくれています!
イイ感じです!
こっちの方がモット!イイ感じです!
![]() |
登録:
投稿 (Atom)