2019年7月11日木曜日

FileMaker Go からPDFファイルをWindowsサーバーへ送りサーバーに接続されたプリンタで印刷。

FileMaker Go からPDFファイルをWindowsサーバーへ送りサーバーに接続されたプリンタで印刷。

FileMaker 16以降
動作検証
Windows 10
Windows Server 2016

必要なモノ。
ProcessMakerTL
https://sites.google.com/site/processmakertl/home

PDF-XChange Editor
https://www.tracker-software.com/product/pdf-xchange-editor

 ProcessMakerTLの設定 
この説明では、Cドライブ直下に ProcessMakerTLフォルダを作成し、ココに「ProcessMakerTL.exe」を保存します。

C:\ProcessMakerTL\ProcessMakerTL.exe

 ProcessMakerTL.keyの設定 
有効期間内のProcessMakerTL.keyをダウンロードし試用認証キーファイル(ProcessMakerTL.key)を ProcessMakerTL.exe と同じフォルダに保存して下さい。
https://sites.google.com/site/processmakertl/trial-key

C:\ProcessMakerTL\ProcessMakerTL.key

 ProcessMakerTL.exe のファイルプロパティーを確認し、ブロックされている場合は、
[ブロックの解除]をおこなって下さい。






 Server起動時にProcessMakerTL.exeを起動するように設定 
タスクスケジューラ
プログラムの開始:
プログラム/スクリプト:C:\ProcessMakerTL\ProcessMakerTL.exe
引数の追加(オプション):"address=*" "port=8081" "access_token=0123"

 PDF-XChange Editor をインストール 
https://www.tracker-software.com/product/pdf-xchange-editor

 サンプルファイル:PMTL_SendFileAndPrint.fmp12 



host:http://{サーバーのIPアドレス}:{ProcessMakerTL.exe起動時に設定したポート}
例:http://192.168.11.200:8081/

access_aoken:{ProcessMakerTL.exe起動時に設定した文字列}
例:0123

PDFXEdit.exe:{サーバー上のPDFXEdit.exeのフルパス}
例:C:\Program Files\Tracker Software\PDF Editor\PDFXEdit.exe

Printer Name:{サーバー上のプリンタ名}
例:OKI MC883(PCL6)

Destination_directory 送信先ディレクトリ:{FileMaker Goから受信したファイルの保存場所}
例:C:\Users\Administrator\AppData\Local\Temp\

src_directory:{FileMaker Goのドキュメント内の場合、Document}
例:Document

SrcFilePath:{送信・印刷するファイル}
例:見積.pdf

[Send & Print]ボタンをタップで、PDFファイルがサーバーに保存され、PDFXEdit.exeで印刷が実行されます。

サンプルファイル:PMTL_SendFileAndPrint.fmp12
https://sites.google.com/site/processmakertl/example/pmtl_sendfile_and_print

2019年6月2日日曜日

FileMaker の標準機能でFileMaker Go, PC, Mac内のファイルを別のPCやMacの共有フォルダへ送信。

Send files in FileMaker Go to PC with SMB protocol. iPhone, iPad.
FileMaker の標準機能でFileMaker Go, PC, Mac内のファイルを別のPCやMacの共有フォルダへ送信。

動作検証:
FileMaker Pro 17・18
FileMaker Go 17・18
Windwos 10
※FileMaker 16以降が必要。
サンプルファイルダウンロード:SendFile.fmp12 (332k)
https://sites.google.com/site/processmakertl/example/receive-file/send-files


 説明:FileMaker Go内のファイルを送信 

・smb_Path に smb:{共有フォルダのパス} を設定。
  例:smb://192.168.0.100/share/
・smb_account に 共有フォルダにアクセスできるアカウント名を設定。
・smb_password に上記アカウントのパスワードを設定。

・src_directory 「Documents」を選択。
・SrcFilePath にファイル名を設定。



[└ Send_by_SMB]で現在のレコードで指定したファイルが送信されます。


2019年5月28日火曜日

FileMaker SHIFT_JIS でURLエンコード

FileMaker SHIFT_JIS でURLエンコード(Code:127以下は%エンコードしない)

FileMaker Pro 16.0以降

スクリプト:URLから挿入 で、Windowsの場合、プロトコル「file://」や「smb://」を使う場合、日本語(全角混じり)のパスではエラーになります。

以下の式でURLエンコードすればOK。
例:
入力:smb://192.168.100.180/共有/
出力:smb://192.168.100.180/%8B%A4%97%4C/

Let(
[
   $Val = $arg ;
   $MAX = Length ( $Val ) ;
   $n = 1 ;
   $fnc0=
      "Case ( $n > $MAX ; $Result ;
         Let(
         [
         $text=Middle ( $Val ; $n ; 1 );
          $Result = $Result  & if(Code ( $text )>127;
       
Let(
[
   $txt = HexEncode ( TextEncode ( $text ; \"shift_jis\" ; 1 ) ) ;
   $pos = Length ( $txt ) - 1 ;
   $fnc=
      \"Case ( $pos < 0 ; $txt ;
         Let(
         [
            $txt = Replace ( $txt ; $pos ; 0 ; \\\"%\\\" ) ;
            $pos = $pos - 2
         ];
            Evaluate($fnc))
      )\"
];
   Evaluate($fnc)
)

           ;
            Middle ( $Val ; $n ; 1 )
           );
            $n = $n + 1
         ];
            Evaluate($fnc0))
      )"
];
   Evaluate($fnc0)
)


/*
%エンコード部分の再帰式は、Shinさんが書いたモノです。
https://fm-aid.com/bbs2/viewtopic.php?pid=50129#p50129
*/