社内SEの徒然なる日記

未だにOCRを使おうという夢を見る人がいて困る

■ OCR

最近、会社では色々と企んでいるらしく、業務の見直しというか、チェック機能の強化を図ろうとしているようです。それは別に良いのですが、検討中の業務フローの中にOCRとかいう文字が見えます。

・・・ハァ?

何でも、取引先の発注書をOCRで読み取って、基幹システムにデータ連携させるとか。

いや、無理だから。検討する価値すらなく無理だから。発注書が完全に機械化されているなら可能性もあるけど、手書きだし、FAXだから文字も潰れるし、書式も違うし、入力欄に沿って書いてないし、どう考えても無理。

という話をしたのですが、どうしてもOCRを使いたいようなのです。

■ 電話受注を手書き&OCR

しばらく放置していたのですが、話はさらに妙な方向に進んだらしいです。

何でも、電話で受注したものについては伝票に手書きして、それをOCRで読み込んで基幹システムに登録しようと考えているらしいです。

ん?何いってんだ?って思って聞いて見ると、お客さんに納期、単価を回答するのに、手書伝票に書き込んでFAXするらしいです。だから、その伝票をOCRで読み込むんだって言っています。

社員みんなでペン習字でも習うのかな?

そもそも、勤め先は卸売業だから納期回答するためにはメーカーに発注しないとダメで、発注処理をするためには基幹システムに伝票入力しないとダメだし。

手書伝票からOCRで読めって言ったって、その時点で基幹システムに受発注データは出来ている訳でして、何を読み込めと?

納期回答が必要なら、受発注データから納期回答書を印刷できるようにすれば良いだけだし、実務を知らない人が机上の空論を話しているだけで、もう、疲れてきます。

■ システム化の思案

OCR、私が若い頃から存在していましたが、まともにシステム化出来たって話を聞きません。

そりゃ、判断する情報が少ない業種であれば、ある程度はハマると思いますけど、様々な取引先、膨大な商品種を扱う卸売業で機能するとは思えません。

なのですが、いつの間にかOCRを使うことが目的になっているらしく、何を言っても聞き入れません。そして、いつの間にか経営陣に説明して許可をもらったらしく、上から目線で「やれ」って感じでシステム化の依頼(実際には命令)が出て来ました。

・・・・・・・・・まぁ、サラリーマンだからやるけどさ。

うーん、どっちにしてもOCRの読み込み結果を画面表示して、人間が見て修正するって工程は必要なんだから、その辺りを全面的に押し出して、それっぽく見せ掛けようかな?

OCRで読み込んだ結果を表示する画面を用意。この画面からOCRで読み込んだ結果を取りに行って、画面上に表示する。ただし、別にOCRから読み込まなくても、全ての項目を手入力可能にする。

んで、新たに納期回答書を作って、この画面の入力データから印刷可能にする。手書きするって言っていた伝票にも、この入力データから印刷可能にする。

とりあえずOCRから連動できますよって感じの見た目にしておいて、実際にはOCRは使わないシステムにするってことです。

さらに、手書き伝票なんて馬鹿な話を潰すために、入力したデータから手書き伝票の帳票レイアウトに合わせた印刷も可能にする。当然、この入力データは基幹システムの受発注データと連動しているっと。

うん、この辺りが、現場に無駄な仕事を増やさず、OCR推進派の要望にも答えた(ように見せる)現実解かな?

■ 後書き

こういう言い方をすると何ですが、今回の話は銀行だの、どっかの大会社だのからやって来た余所者が関わっています。

それだけでもアレなのに、さらに社内の様々な立場の人が自分の思惑を付け加えて、もう訳がわからない状態になっています。

余所者が現場の実態も知らずに経営陣に耳障りの良い話をして、システム開発開始。現場から猛反発を受けて大失敗。良くある話ですけど、自分が関わるかと思うと気が重いです。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end — スポンサードリンク

PageTop

ESETの更新の時期が来たようです

■ ESET

我が愛機には、ESETというセキィリティソフトをインストールしています(esetなるセキュリティソフトを積んでいた)。

購入したのは3年間使えるタイプだったのですが、もう3年も経つようで、更新通知が届きました。



ESET更新 - 1



■ 更新

メールに書かれているURLに飛ぶと、ページの先頭には月額サービスの案内が書かれていました。



ESET更新 - 2



・・・おすすめ!って言われてもねぇ。

その下の方にログイン画面があります。メールアドレスは、更新通知が届いたアドレスでよいのですが、その下のパスワードが分からない。



ESET更新 - 3



と思ったら、ユーザー名でも良いらしく、それは更新通知のメール内に書かれていました。ふむ、自分でID管理しないで良いのは助かります。

タイル型のメニュー画面が出たので、一番上の段の中間の「次年度更新」をクリック。



ESET更新 - 4



一番右の「3年更新」の「申込」ボタンをクリック。


ESET更新 - 5



ユーザー情報の入力画面に遷移。ここからが面倒だと思ったのですが、必要な項目には既に入力がされていました。ってことで、左下の「確認」をクリック。



ESET更新 - 6



確認画面が表示されたので「次へ」をクリック。



ESET更新 - 7



支払方法選択は3種類。私はクレジットカード決済を選んで「次へ」をクリック。



ESET更新 - 8



流石にカード情報までは自動表示されなかったので、素直に入力しました。入力後、「確認」をクリック。



ESET更新 - 9



支払方法の確認画面が表示されたので、「次へ」をクリック。



ESET更新 - 10



これで更新手続き完了だそうです。



ESET更新 - 11



■ 更新後

更新後、すぐにメールが届きました。メール内に「更新の手続きが完了していても、インストールされたプログラムの有効期限が延長されるまで、少なくとも12時間お待ちいただく必要があります。」と書かれていたのですが、確かにESETのバージョン情報を見るとライセンスの有効期限が古いままです。

ESET更新 - 12

この後、もしかするとバージョンアップの操作が必要なのかと思ったのですが、特に必要なものは無いらしく、数日後に確認した時にはライセンスの有効期限は新しくなっていました。

ESET更新 - 13

うん、これで3年間は安心です。

■ 後書き

ESET、インストールして結構経ちますが、記憶にある障害はOSのアップグレードによるWEBアクセスの遅延(Mac OS Xのアップグレードでネットが遅くなった(ESET)ESETによるWEBアクセス遅延が解消されたらしい(2016年1月25日))くらいなので、そのまま更新することにしました。

・・・使い勝手に関する通知はしないのに、更新要求の通知は出したり、更新方法が妙に親切だったりする点については思うところがありますがね。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end — スポンサードリンク

PageTop

OracleのimpdpでORA-39126とか致命的なエラー連発!

■ Oracleのリストア

基幹システムのリプレースに合わせて、新環境で色々とテストしていたのですが、その中でexpdpで抜いたデータをimpdpで戻すテストを行いました。

エクスポート、インポートともに、対象はスキーマ全体です。

さて、エクスポートは正常に動いて、そのままインポートを実行したのですが、これがいつまでたっても終わりません。

待ち続けて3時間、夜も更けてきたので音を上げて帰宅したのですが、翌朝結果を見ると見たことのない凄いエラーを吐いて異常終了していました。

■ impdpのログ

実際にエラーが出た個所のログはこんな感じ。ここまで大量にエラーが吐かれると、いろいろと諦めがつきます。



ORA-39126: KUPW$WORKER.STATS_LOAD [MARKER]でワーカーに予期しない致命的なエラーが発生しました
ORA-29913: ODCIEXTTABLEOPENコールアウトの実行中にエラーが発生しました。
ORA-29400: データ・カートリッジ・エラーが発生しました
KUP-11011: 次のファイルはこのロード操作には無効です
KUP-11013: ファイル/backup/expdp.dmpのヘッダーの内部番号が無効です
ORA-06512: "SYS.DBMS_SYS_ERROR", 行95
ORA-06512: "SYS.KUPW$WORKER", 行11259
----- PL/SQL Call Stack -----
object line object
handle number name
51bf79980 27116 package body SYS.KUPW$WORKER
51bf79980 11286 package body SYS.KUPW$WORKER
51bf79980 24286 package body SYS.KUPW$WORKER
51bf79980 20690 package body SYS.KUPW$WORKER
51bf79980 4545 package body SYS.KUPW$WORKER
51bf79980 12063 package body SYS.KUPW$WORKER
51bf79980 2081 package body SYS.KUPW$WORKER
52eec0d20 2 anonymous block
DBMS_METADATA_UTIL.FETCH_STAT
DBMS_METADATA_UTIL.FETCH_STAT
KUPD$DATA.OPEN
KUPD$DATA.SET_PARAMETER - common
KUPD$DATA.SET_PARAMETER - common
KUPD$DATA.SET_PARAMETER - LOAD
KUPD$DATA.SET_PARAMETER - LOAD
KUPD$DATA.SET_PARAMETER - flags
KUPD$DATA.START_JOB
In procedure DETERMINE_FATAL_ERROR with ORA-29913: ODCIEXTTABLEOPENコールアウトの実行中にエラーが発生しました。
ORA-29400: データ・カートリッジ・エラーが発生しました
KUP-11011: 次のファイルはこのロード操作には無効です
KUP-11013: ファイル/backup/expdp.dmpのヘッダーの内部番号が無効です
ORA-39126: KUPW$WORKER.STATS_LOAD [MARKER]でワーカーに予期しない致命的なエラーが発生しました
ORA-29913: ODCIEXTTABLEOPENコールアウトの実行中にエラーが発生しました。
ORA-29400: データ・カートリッジ・エラーが発生しました
KUP-11011: 次のファイルはこのロード操作には無効です
KUP-11013: ファイル/backup/expdp.dmpのヘッダーの内部番号が無効です
ORA-06512: "SYS.DBMS_SYS_ERROR", 行95
ORA-06512: "SYS.KUPW$WORKER", 行11259
----- PL/SQL Call Stack -----
object line object
handle number name
51bf79980 27116 package body SYS.KUPW$WORKER
51bf79980 11286 package body SYS.KUPW$WORKER
51bf79980 24286 package body SYS.KUPW$WORKER
51bf79980 20690 package body SYS.KUPW$WORKER
51bf79980 4545 package body SYS.KUPW$WORKER
51bf79980 12063 package body SYS.KUPW$WORKER
51bf79980 2081 package body SYS.KUPW$WORKER
52eec0d20 2 anonymous block
DBMS_METADATA_UTIL.FETCH_STAT
DBMS_METADATA_UTIL.FETCH_STAT
KUPD$DATA.OPEN
KUPD$DATA.SET_PARAMETER - common
KUPD$DATA.SET_PARAMETER - common
KUPD$DATA.SET_PARAMETER - LOAD
KUPD$DATA.SET_PARAMETER - LOAD
KUPD$DATA.SET_PARAMETER - flags
KUPD$DATA.START_JOB
In procedure DETERMINE_FATAL_ERROR with ORA-29913: ODCIEXTTABLEOPENコールアウトの実行中にエラーが発生しました。
ORA-29400: データ・カートリッジ・エラーが発生しました
KUP-11011: 次のファイルはこのロード操作には無効です
KUP-11013: ファイル/backup/expdp.dmpのヘッダーの内部番号が無効です
ジョブ"********"."*****"は致命的なエラーのため ************ elapsed 0 03:23:44で停止しました



■ 原因

一体何が起こったのかと頭を抱えたのですが、結局原因はインポート中にダンプファイルが壊れたことが原因でした。

日々のバックアップのために、夜間にexpdpをスケジュール実行していたのですが、これを止めるのを忘れてしまったため、インポート中のダンプに上書きする形でエクスポートが実行されていました。

そりゃ、失敗しますよね。

幸いなことに、ダンプファイルを別の場所に退避していたので、それを使って再度インポートを実行したところ、今度は成功しました。

■ 後書き

今回のimpdpは、オプションとして、CONTENT=ALL、TABLE_EXISTS_ACTION=REPLACE を指定していたのですが、これを設定すると異様に時間が掛かりました。

もうちょっと性能が落ちる環境で、CONTENT=DATA_ONLY、TABLE_EXISTS_ACTION=TRUNCATE で実行した時は1時間程度だったので、長くても1時間30分くらいなんだろうなと思ってたのですが、実際には3時間以上かかりました。

ログを見ると、テーブルにデータを入れる部分については1時間程度だったのですが、「オブジェクト型SCHEMA_EXPORT/TABLE/INDEX/INDEXの処理中です」と表示されてからが長かった・・・

インポートの時間の大半ってテーブルのデータを突っ込む部分だと思っていたのですが、そうでもないようです。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

Symantecの警告画面を始めてみた

■ Symantec

ウィルス対策ソフトとして、随分と長いことSymantecを使用しています。普段はあまり意識していないのですが、先日、働いているところを確認できました。

ファイラーとして As/R というソフトを使用しています。まめFile というファイラーの後継ソフトなのですが、先日アップデートしようとインストーラーをダウンロードして実行しようとすると、このような警告が表示されました。
Symantecの警告画面1

Symantecの警告画面2

As/Rのホームページには、「毎回のようにウィルススキャンソフトによる誤検出が発生して、しばらくしてから誤検出として解除されるケースが続いています。」という警告文がデカデカと表示されていたので、いつか引っかかるとは思っていましたが、ようやく見ることが出来ました。

■ 後書き

一昔前までは、こいつ(Norton)が原因で、異様にパソコンが遅くなったりと苦労させられましたが、最近は随分と安定してきた気がします。

そのせいで、ごく稀に発生するウィルス対策ソフトに起因する障害対応の初期対応に悩むことがあります。

昔は通信や印刷など動きが妙だと思った時にはウィルス対策ソフトが原因かと早い段階で疑ったものですが、普段意識しない分、これが原因だと思いつくまでの時間が長くなった気がします。

便利なのは良いのですが、それはそれで困ることがあるようです。

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

jarを実行できない(Solaris)【解決!】

■ jar

前回は、Windowsでjarを使う方法を書きました(jarを実行できない(Windows)【解決!】)。

そこで作成したjarファイルをアプリケーションサーバ(Solaris)に転送して解凍しようとしたのですが、ここでも動かない。


jarが実行できない(Solaris) - 1



この時点で、アプリケーションサーバでシステムは動いているのだから、どっかにjarくらい入っていそうな気がします。

環境変数のpathの値を確認(echo $path)して、そこにjarが無いかlsコマンドで確認してみたのですが、想像通り見当たりません。


jarが実行できない(Solaris) - 2



では、どっかにjarが転がっていないか検索(find / -name jar)したのですが、そこそこ入っていました。


jarが実行できない(Solaris) - 3



後は環境変数「path」に値を追加すれば良いだけです。

■ 設定と確認

前回のWindows編では、きちんとシステム全体にパスを通したのですが、正直、Soralisの方は出来るだけ環境を触りたくありません。

なので、ログインしているセッションにだけ環境変数を追加するようにしました(コマンドは、使っているシェルの種類で変わります)。
export PATH=/usr/sbin:/usr/bin:/opt/FJSVawjbk/jdk6/bin/

jarが実行できない(Solaris) - 5

一時的な利用なら、これでOKです。

なお、実際にはシェルの中で実行するので、シェルに環境変数を設定する処理を追加しました。
jarが実行できない(Solaris) - 4

■ 後書き

本当なら、Solarisの環境変数の設定とか、JDKのインストール方法とかをきちんと書いた方が良いのでしょうが、書きません。書かないというか、Solarisは詳しくないので書けないというのが正しいのですが。

きちんと勉強しないといけないのは分かるのですが、ミッションクリティカルなシステムが動いているアプリケーションサーバで実験したくないし。

・・・いや、これは言い訳ですね。

前回:jarを実行できない(Windows)【解決!】

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop