[[PrimeKarte]] > [[PkApp]] > PkPdfImport
#contents
&br;
*機能 [#wd60389c]
-指定フォルダ内の指定フォーマットに従ったファイル名のPDFファイルからPNGとXMLファイルを作成し、文書管理オーダを発行する。
-条件付きで[[任意のファイル名によるPDF取り込み]]も可能。
*ファイル名フォーマット [#g3470a64]
**仕様 [#p5e97843]
|位置|項目名|内容|必須|h
|1|文書番号|[[DOCUMENT_DOC]]を参照|◯|
|2|発行日付|YYYYMMDD形式|◯|
|3|発行時間|HHMMSS形式|◯|
|4|診療科コード|当該オーダの診療科コード|◯|
|5|関連オーダ種別コード|存在しない場合は0||
|6|関連オーダNo|存在しない場合は0||
|7|担当医ID||◯|
|8|患者ID||◯|
|9|更新者ID||◯|
|10|オーダ番号|新規発行なら0か空文字||
|11|オーダSEQ|新規発行なら0か空文字(削除時は-1)||
|12|ベンダー文書識別ID|指定不要(オプション)(文字列可/最大300バイト)||
|13|ファイル識別文字|未使用(部門システムで任意の文字列を埋めたい場合に使用)||
|14|入院オーダ番号|指定不要(オプション)||
|15|PrimeReport識別番号|指定不要(PrimeReportの場合のみ)||
&color(red){必須とは別に"_"区切りで11項目以上ないと対象としないため注意};
** 修正/削除対象の判定 [#g787188a]
-- &color(red){削除時はSEQを-1で指定する};
-- 関連オーダ種+関連オーダNo+発行日付+発行時間が一致(1501.xml[23]で設定)
-- 関連オーダ種+関連オーダNo+発行日付が一致(1501.xml[15]で設定)
-- 関連オーダ種+関連オーダNoが一致(1501.xml[19]で設定)
**仕様書 [#sccf549c]
-最新の連携仕様は下記を参照
\\eagle01d\sec2\H00_共通\連携\標準仕様\PDF連携
**例 [#p314bb9a]
・通常
111900_20080530_084112_7_0125_1661_999999_3301192_ishi01__.pdf
・修正オーダの場合
300430006_20110517_084112_7_0125_1661_ishi01_9305608_ishi01_10002547_999.pdf
・入院オーダ番号指定
300430006_20110517_084112_7_0125_1661_ishi01_9305608_ishi01_0_0_0_0_100117461.pdf
・移動情報として外来を明示的に指定
300430006_20110517_084112_7_0125_1661_ishi01_9305608_ishi01_0_0_0_0_0.pdf
*その他の設定可能な項目 [#ab382bec]
-文書タイトル
--DOC_DENPYO.DOCUMENT_TITLEに設定
--PDFと同フォルダ内に文書タイトルを記述したテキストファイルを置く
ファイル名規約:PDFファイル名(拡張子を除く)]+[.title.text]
例)
PDFファイル名:100430011_20130329_194112_7_0125_1661_ishi01_9305137_ishi01__.pdf
タイトルファイル名:100430011_20130329_194112_7_0125_1661_ishi01_9305137_ishi01__.title.txt
-コメント
--DOC_DENPYO.KARTE_TEXT
--PDFと同フォルダ内にコメントを記述したテキストファイルを置く
ファイル名規約:PDFファイル名(拡張子を除く)]+[.comment.text]
例)
PDFファイル名:100430011_20130329_194112_7_0125_1661_ishi01_9305137_ishi01__.pdf
コメントファイル名:100430011_20130329_194112_7_0125_1661_ishi01_9305137_ishi01__.comment.txt
-病名
--DOC_DENPYO.BYOMEI_TEXT
--PDFと同フォルダ内に病名を記述したテキストファイルを置く
ファイル名規約:PDFファイル名(拡張子を除く)]+[.byomei.text]
例)
PDFファイル名:100430011_20130329_194112_7_0125_1661_ishi01_9305137_ishi01__.pdf
病名ファイル名:100430011_20130329_194112_7_0125_1661_ishi01_9305137_ishi01__.byomei.txt
*設定の保存 [#tbf77414]
-各種設定はアプリケーション終了時に設定ファイル(1501.xml)に自動的に保存する。
-詳細は→[[1501.xml(PDF取り込み)]]
*コマンドライン引数 [#v32fc855]
-/q:クイックモード
起動後、取り込み処理を行い、即座にアプリケーションを終了する。
例)PrimeKartePdfImport.exe /q
-/n:クイックモード時にウィンドウを非表示にする
例)PrimeKartePdfImport.exe /q /n
-/d=:取り込み元フォルダ指定
取り込み元フォルダを指定する。設定ファイル(1501.xml)より優先される。
例)PrimeKartePdfImport.exe /q /n /d="C:\Program Files\PrimeKarte\Files\PDF"
-/c=:[[取り込み後のPDFコピー>#nd90b6f7]]のコピー先フォルダ指定
設定ファイル(1501.xml)より優先される。
-/o:PDFコピー(/c)時にファイル名をオリジナルのままとする(通常はPrimeKarte仕様に変換される)
-/i=:ふじのくにネット向けINDEXファイルのコピー先フォルダ指定
-/g=:取り込みに失敗したPDFを移動する先のフォルダ指定(処理開始時に移動し成功したら消える)
-/e=:取り込み後に失敗したPDFの移動先フォルダ(処理終了時に失敗だったらここに移動する)
-/z:C:\Program Files\PrimeKarte\Files\PDF\Bakのzipファイルを削除する(7日間保持)
-/s:診療科変換を行わないようにする
設定ファイル(1501.xml)より優先される。
-/t:BML連携モード(同一文書識別・シングルベンダーモード)
--1501.xml[28]で指定された文書番号のみ取込対象とする
--BML連携時は連携元であるBMLと診療科コードのコンバートを行ってから登録する(1501.xml[28]=-1 の場合は行わない)
-/v=:同一文書識別・マルチベンダーモード
--ベンダー毎の文書識別IDにより、同一文書を識別してSEQアップ・削除を行う
--ベンダー管理フラグとして10 以上の数値を指定する(10、20、30、・・・)
--ベンダー管理フラグが重複することがないよう、連携先一覧で管理する
-/cx:[[取り込み後のPDFコピー>#nd90b6f7]]のコピー先フォルダ種別(XenApp用)
--Xen環境でこれが入っているとコピー先フォルダをXen上のパスとして扱う
--Xen環境でない場合はこれを指定しても通常通り院内のパスとして扱う
-/ix:ふじのくにネット向けINDEXファイルのコピー先フォルダ種別
--Xen環境でこれが入っているとコピー先フォルダをXen上のパスとして扱う
--Xen環境でない場合はこれを指定しても通常通り院内のパスとして扱う
-/x:[ToDo:スキャン]の自動完了更新を行う
--PDF取り込み登録時に[ToDo:スキャン]を自動完了するための更新処理を行う
--XenAppエンドポイントモードのスキャンで出力したPDFを取り込む場合に有効にする
-/p:Microsoft Print to PDFに出力したPDFからPNG画像を作成する
--埋め込みフォントによる文字化けが発生する場合に使用する
-/b:読影レポートモード
--オーダ種別を読影レポート(0505)として取り込みを行う
--1501.xml[31](オーダ番号指定時のSEQアップ対象STEP_FLG)に「0:編集中」を含めること
-/u:担当医ID・更新者IDがSTAFFマスタに存在しなければエラーとする
*取り込み後のPDFコピー [#nd90b6f7]
**ふじのくにネット向け [#a9537369]
-PDF取り込み後にPDFを所定のフォルダにコピーする
--ふじのくにネット向けPDF取り込みアプリ用のフォルダにコピーしたいため
--PrimeKarteで取り込んだファイルのみをコピーしたいため、PDF取り込み後に行う
-設定
--1501.xml(DispOrder=13):コピー先のフォルダ
--1501.xml(DispOrder=14):コピーする文書コード(複数指定)
**眼科カルテ向け [#kfbad050]
-結果の成否によりOKフォルダ、または、Errフォルダに出力する
--OKフォルダ→/cで指定する
--Errフォルダ→/eで指定する
-OKフォルダに出力するPDFファイル名をオリジナルのままにする場合、/oを指定する
-/gで指定したフォルダは作業中に一時的に移動するフォルダ(作業フォルダ)という扱いになる
*よくある質問 [#xc41d124]
-オーダNoとSEQを指定しているのにSEQアップがされない(何も起こらない)
--SEQアップの条件として&color(red){指定したオーダが「取込済or取込済+確認済」};である必要があります。
--もしそれ以外の状態もSEQアップしたい時は1501.xml[31]に対象のSTEP_FLGを指定(例えば「完成」オーダもSEQアップしたいなら2を追加)
-Cドライブにmagick-◯◯というファイルがたくさんできる
--.Net対応のモジュールがあたっていない(旧版で使っていたImageMagickのファイルが出ている)
&size(20){&color(red){※この事例に限らず、連携稼働しているモジュールが更新されていないことに起因する問い合わせが多いので注意};};
-WorkフォルダにPNGが残る
--最後に処理したPNGは残る(WorkはPDF→PNGの処理をしてそのPNGをNewにコピーするまでの一時フォルダ)
--Newにコピー後は何もしないため、最後に処理したPNGが残ってしまう(&color(red){手が空いたら消すように処理を組む?};)
--次に取り込み処理が走り、新たに取り込み対象のPDFが見つかった段階でWork下は削除される
-ログに「パラメータバインディングが無効」のエラーが出る(連携時)
--一部PkScanのSQLを借りていて、それが古い場合が多い
--PkScan.dll, 05010019.sqlをチェック
*備考 [#gef60361]
診療科が1(外来)の場合はエラー。~
下記のログが出力される
PrimeKarte.PkPdfImport - 【Error】チェックエラーでエラーが発生しました。
PrimeKarte.PkPdfImport - 【Error】発行処理中にエラーが発生しました。
更新者IDは通常必須だが、Defaultに文書の発行権限がついている場合はなくても発行可能。~
ただし当然ながら発行者、更新者が空になる。
*PDF連携セットアップ手順 [#wdb71c7e]
+下記に従い、各種インストールを行う
\\eagle02b\public\102大パッケージ(Toro)\#実行環境整備\端末設定\その他インストーラ\PDF取り込み環境設定\00Readme.xls
+PrimeKarteのDLLをコピー
--下記を推奨
C:\Program Files\PrimeKarte\PDFImport
※PrimeKarteSetting.configを合わせて変更すること
+バッチファイルを作成する
--例
REM PrimeReport
"C:\Program Files\PrimeKarte\PDFImport\PrimeKartePdfImport.exe" /q /n /d="D:\PRPdf" /c="" /i="" /g="D:\PRPdf\NG" /z
REM 健診
"C:\Program Files\PrimeKarte\PDFImport\PrimeKartePdfImport.exe" /q /n /d="\\10.5.171.41\kenshin" /c="" /i="" /g="\\10.5.171.41\kenshin\NG" /z
REM 透析
"C:\Program Files\PrimeKarte\PDFImport\PrimeKartePdfImport.exe" /q /n /d="\\10.5.151.210\report" /c="" /i="" /g="\\10.5.151.210\report\NG" /z
REM ベンダー文書識別1
"C:\Program Files\PrimeKarte\PDFImport\PrimeKartePdfImport.exe" /q /n /d="\\10.5.151.210\report1" /c="" /i="" /g="\\10.5.151.210\report1\NG" /z /v=10
REM ベンダー文書識別2
"C:\Program Files\PrimeKarte\PDFImport\PrimeKartePdfImport.exe" /q /n /d="\\10.5.151.210\report2" /c="" /i="" /g="\\10.5.151.210\report2\NG" /z /v=20
+タスクを登録する
--例
---タスク
#ref(タスク1.png);
&br;
---スケジュール
#ref(タスク2.png);
&br;
---スケジュールの詳細設定
#ref(タスク3.png);
+ログ削除用タスクを登録する
--PkFileDelete.xmlに削除対象のログフォルダを指定する
#ref(ログ削除タスク.png);
#ref(ログ削除タスク2.png);
-タスク追加時の注意点
--既にPDF取り込みが動いている病院に連携を追加する場合は、極力バッチファイルとスケジュールを一本化する
--スケジュールを切り分けた場合、同時刻にPDF取り込みのプロセスが動くと二重起動エラーになるため
*高木モード(BML連携モード) [#l58ac3c2]
-概要
--コマンドライン引数/tを付けて起動する
--基本的なファイルフォーマットは変わらないが、末尾にBMLシステムの管理番号が付く
--BML管理番号は英数字最大7桁の管理番号部と、2桁の連番の構成
例:710000002_20181030_0000_9999_0_0_ishi01_9000054_ishi01_0_0_Z0001_02.pdf
--時刻が不明な場合は「00:00」となる
--通常3桁までの診療科コードが4桁となる(結局コンバートされるのだが)
--管理番号は[[DOC_PRIME_REPORT_MAPPING]]のSTR_01に格納される
--既に格納されてある管理番号のPDFが来たら、修正発行となる
-調査時のポイント
--[[DOC_PRIME_REPORT_MAPPING]]参照時はFLG_01=1のものがBML連携レコード
--診療科コンバートが正しく行われているか注意([[COMMON]].STR_06の値を元にコンバートしている)
--BML連携対象の文書番号は[[1501.xml(PDF取り込み)]][28]で管理している
*PDF連携 稼働病院 [#cb3c491b]
|病院コード|病院|IP|h
|002|静岡市立|172.16.2.147|
|012|焼津|10.5.171.71|
|018|菊川|10.18.3.51|
|019|湖西|10.19.20.22|
|021|遠州|10.121.20.168|
|029|てんかん|10.100.100.51|
|032|天竜|10.32.20.71|
|033|十全|10.33.1.51|
|041|フジ虎|10.7.96.117|
|055|岡村|192.168.60.168|
|059|西脇|10.159.20.52|
|067|横一|172.16.2.37|
|068|吉あ|172.16.23.37|
|075|掛川東|10.75.2.71|
|076|浜松南|10.184.10.71|
|079|東名裾野|10.79.2.58|
|204|(アイテック)南古谷|192.168.204.68|
|302|(BSN)立川|10.31.32.25|
|401|西崎|172.24.1.8|
|601|米谷|192.168.10.17|
*1501.xml Config内容 [#j75c7ecf]
-[[1501.xml(PDF取り込み)]]