EPPlusを使い、ピボットテーブルを出力したい。
バーコード入力したデータを、日付でグループ化したいのですが、うまくいかず。
グループ化をしないと、「年月日時分秒」で各データを表示します。
~~
2014/12/17 9:00 ~~
2014/12/17 9:02 ~~
2014/12/17 9:07 ~~
~~
これでは集計致しかねるので、「年」「月」でグループ化したりします。
~~
2014年 -- 10月 ~~
2014年 -- 11月 ~~
2014年 -- 12月 ~~
~~
OfficeOpenXml.Table.PivotTable.eDateGroupBy.Years
と
OfficeOpenXml.Table.PivotTable.eDateGroupBy.Months
を組み合わせたようなイメージです。
グループ化して、保存はできるのですが、Excel 2003+Office互換パックで開きますと、エラーが出ます。
CVTD0DC.tmpには読み取れない内容が含まれています。このブックの内容を回復しますか? ブックの発行元が信頼できる場合は、[はい] をクリックしてください。
CVTD0DC.tmpにエラーが検出されましたが、次の修復を行うことに
よってファイルを開くことができました。修復を保持するにはこのファイルを
保存してください。
ピボットテーブル レポート 'PerTool' / '[CVTD0Dc.tmp]工程別'を修復しました。
完全性に問題があるため、ピボットテーブル レポート全体の情報を修復しました。
・・・調査中です・・・
2014年12月17日水曜日
2014年6月30日月曜日
切断したネットワークドライブ Dokan
Dokanを使い、仮想ドライブを作っています。
ネットワークドライブ、という扱いにすると、どうしても「切断したネットワークドライブ」になってしまいます。Windows 7だけ? Windows XPではならない、という情報も。。。
http://dokan.googlecode.com/svn/trunk/sys/howtobuild.txt
上のURLのテキストに、次の文言が記されています。
どうも、Dokan専用、network providerを提供する必要が有るようです。
ーーー
(2014/8/2追記, 9/19編集)
判りました。
結論的には、Windows 7の64ビット版でも対応可能、デジタル署名がなくても実現可能です。
但し、64ビット環境では、32ビット用DLL、64ビット用DLLの、両方のDLLを用意する必要が有ります。
レジストリでは、設定は一か所だけ。例のようになっていると思います。
例:%SystemRoot%\System32\davclnt.dll
両方を同時に設置できる謎は、レジストリの仮想化、ファイルシステムの仮想化に有ります。
次のパスのように、仮想化によって実在場所の解釈が異なるので、各々設置できるようになっています。
C:\Windows\System32\davclnt.dll
C:\Windows\SysWOW64\davclnt.dll
これがトリックの全貌でした。。。
ネットワークドライブ、という扱いにすると、どうしても「切断したネットワークドライブ」になってしまいます。Windows 7だけ? Windows XPではならない、という情報も。。。
http://dokan.googlecode.com/svn/trunk/sys/howtobuild.txt
上のURLのテキストに、次の文言が記されています。
** Network filesystem/provider support Dokan supports network filesystem mode. You need dokan network provider dll in \dokan_np. Please build it and copy dokannp.dll into Windows\system32 directly. You need to register network provider dll to system : dokanctl.exe /i n (Unregister network provider : dokanctl.exe /r n) You probably need to restart your computer after register or unregister network provider. And try "mirror.exe /r root_path /l drive_letter /n". /n option means to mount as network drive Network filesystem mode is an experimental implementation and not tested well.
どうも、Dokan専用、network providerを提供する必要が有るようです。
ーーー
(2014/8/2追記, 9/19編集)
判りました。
結論的には、Windows 7の64ビット版でも対応可能、デジタル署名がなくても実現可能です。
但し、64ビット環境では、32ビット用DLL、64ビット用DLLの、両方のDLLを用意する必要が有ります。
レジストリでは、設定は一か所だけ。例のようになっていると思います。
例:%SystemRoot%\System32\davclnt.dll
両方を同時に設置できる謎は、レジストリの仮想化、ファイルシステムの仮想化に有ります。
次のパスのように、仮想化によって実在場所の解釈が異なるので、各々設置できるようになっています。
C:\Windows\System32\davclnt.dll
C:\Windows\SysWOW64\davclnt.dll
これがトリックの全貌でした。。。
2012年11月14日水曜日
ERROR [HYC00] UTF-8 conversion isn't implemented before 7.1
PostgreSQL 7.0.4 (Linux)から、
PostgreSQL 8.2.22 (Windows)に、移行する依頼を受けています。
pg_dumpを使うと、文字化けが起こります。
Npgsqlを使うと、Connection.Openで、固まります。
Odbcを使うと、"ERROR [HYC00] UTF-8 conversion isn't implemented before 7.1"が発生します。
対策を探しています。
2012年8月24日金曜日
IIS6で、CGIアプリが致命的なエラーになった場合
SetErrorMode
私のWindows 7パソコンにて実行した場合: 0
IIS6のCGIにて実行した場合: 32769
SetErrorModeの初期値が異なる、という事でございますが…
SEM_FAILCRITICALERRORSの件の
呼び出し側プロセスへそのエラーを送信しますって怖くないでしょうか?
子プロセスで0xC0000005(アクセス違反)が発生したら、
親プロセスも0xC0000005(アクセス違反)で、強制終了を喰らうという事でしょうか??
次の様なこういう構成なのですが、
親プロセス=CMD.exe
子プロセス=COM/OLEを使って実現している、サムネイル生成用の物
親プロセスまで0xC0000005が伝播している事例を、今までに見たことがあるような、そんな気がしています。
私のWindows 7パソコンにて実行した場合: 0
- 0
- システム既定の処理を行い、どの場合でもエラーダイアログボックスを表示します。
IIS6のCGIにて実行した場合: 32769
- 1
- SEM_FAILCRITICALERRORS
- システムは、致命的なエラーに関するメッセージボックスを表示せず、呼び出し側プロセスへそのエラーを送信します。
- 32768
- SEM_NOOPENFILEERRORBOX
- システムは、ファイルが見つからなかった場合にメッセージボックスを表示せず、呼び出し側プロセスへそのエラーを返します。
SetErrorModeの初期値が異なる、という事でございますが…
SEM_FAILCRITICALERRORSの件の
呼び出し側プロセスへそのエラーを送信しますって怖くないでしょうか?
子プロセスで0xC0000005(アクセス違反)が発生したら、
親プロセスも0xC0000005(アクセス違反)で、強制終了を喰らうという事でしょうか??
次の様なこういう構成なのですが、
親プロセス=CMD.exe
子プロセス=COM/OLEを使って実現している、サムネイル生成用の物
親プロセスまで0xC0000005が伝播している事例を、今までに見たことがあるような、そんな気がしています。
2012年7月17日火曜日
pdftotextで起こる怪
2012年6月29日金曜日
LibreOfficeとunoconvを、IIS6で動かしたい
Word/Excel/PowerPoint等の文書データを、PDFに変換しようと試みています。
unoconvを、IIS6+PHP5.4上で動かして、少ない手数で実現したい…
然しながら、うまくいっていません。
unoconvが期待するように動いてくれません:
解決を図るために、いつもの如く、Google先生に頼み込みます:
同じ境遇の方もいらっしゃるようですが、未だ解決策は見つかっていません。
という訳で、自力調査が始まります。
~~~
途中は省きますが、
LibreOfficeがMessageBoxを表示して、入力を待っていることが分かりました。
デスクトップにはMessageBoxは表示されませんが、裏方で表示されている様です。
次の図は、WinDbgでsoffice.binをアタッチした時の様子です。スタックトレースを追跡し、MessageBoxの引数をメモリダンプで確認しています:
ちょうど、次のようなメッセージボックスを表示して停止しているのでしょう。再現してみました:
次の方策は、自炊のデバッグ版LibreOfficeで以て、エラー箇所を特定することです。ご期待ください!
unoconvを、IIS6+PHP5.4上で動かして、少ない手数で実現したい…
然しながら、うまくいっていません。
unoconvが期待するように動いてくれません:
- デスクトップ環境では、期待する様に動きます。
- しかし、IIS6環境では、失敗しています。
Failed to connect to C:\Program Files\LibreOffice 3.5\program\soffice.exe (pid=10080) in 6 seconds.unoconvの問題ではなく、LibreOfficeの方がトラブルに巻き込まれている感じです。
Connector : couldn't connect to socket (WSAECONNREFUSED, Connection refused)
Error: Unable to connect or start own listener. Aborting.
解決を図るために、いつもの如く、Google先生に頼み込みます:
同じ境遇の方もいらっしゃるようですが、未だ解決策は見つかっていません。
という訳で、自力調査が始まります。
~~~
途中は省きますが、
LibreOfficeがMessageBoxを表示して、入力を待っていることが分かりました。
デスクトップにはMessageBoxは表示されませんが、裏方で表示されている様です。
次の図は、WinDbgでsoffice.binをアタッチした時の様子です。スタックトレースを追跡し、MessageBoxの引数をメモリダンプで確認しています:
ちょうど、次のようなメッセージボックスを表示して停止しているのでしょう。再現してみました:
次の方策は、自炊のデバッグ版LibreOfficeで以て、エラー箇所を特定することです。ご期待ください!
ラベル:
IIS6,
LibreOffice,
php5.4,
unoconv,
調査中の案件
2012年4月21日土曜日
エクスプローラのロックと待機チェーン
Windows Server 2008 R2 Foundationを常用しています。
このOSのリソースモニターに、「待機チェーン」を見る機能が備わっています。(以前のWindowsにも備わっている機能かもしれませんが…)
プログラムがフリーズしている場合に見ると、原因調査の役に立つようです。
普段は全く、見る必要のない画面です。
~~~
「ショートカットキー」を使って、アプリの切り替えをバンバンしていますと、時々フリーズ状態が起こります。
画面写真の内容は、丁度、そのフリーズ状態で、エクスプローラの分析結果を撮ったものです。
「ショートカットキー」とは、どちらの「ショートカットキー」でしょうか。
ショートカットのプロパティを表示しますと、「ショートカットキー」の設定が有ります:
コマンドプロンプトのショートカット・プロパティを表示しています。
同時に4つは使いたいので、4つショートカットを探し出しては、別々のキーを割り当てています。
Ctrl+Alt+M 「Visual Studio 2005 コマンド プロンプト」
Ctrl+Alt+N 「SDK コマンド プロンプト」
Ctrl+Alt+. 「Visual Studio Command Prompt (2010)」
Ctrl+Alt+, 「Visual Studio 2008 コマンド プロンプト」
良く分からないのですが、切り替えるタイミングによってフリーズを起こします。
解決方法をご存知ではないでしょうか…
このOSのリソースモニターに、「待機チェーン」を見る機能が備わっています。(以前のWindowsにも備わっている機能かもしれませんが…)
プログラムがフリーズしている場合に見ると、原因調査の役に立つようです。
普段は全く、見る必要のない画面です。
~~~
「ショートカットキー」を使って、アプリの切り替えをバンバンしていますと、時々フリーズ状態が起こります。
画面写真の内容は、丁度、そのフリーズ状態で、エクスプローラの分析結果を撮ったものです。
「ショートカットキー」とは、どちらの「ショートカットキー」でしょうか。
ショートカットのプロパティを表示しますと、「ショートカットキー」の設定が有ります:
コマンドプロンプトのショートカット・プロパティを表示しています。
同時に4つは使いたいので、4つショートカットを探し出しては、別々のキーを割り当てています。
Ctrl+Alt+M 「Visual Studio 2005 コマンド プロンプト」
Ctrl+Alt+N 「SDK コマンド プロンプト」
Ctrl+Alt+. 「Visual Studio Command Prompt (2010)」
Ctrl+Alt+, 「Visual Studio 2008 コマンド プロンプト」
良く分からないのですが、切り替えるタイミングによってフリーズを起こします。
解決方法をご存知ではないでしょうか…
2011年8月29日月曜日
c1 : fatal error C1083: ソース ファイルを開けません。'3.0': No such file or directory
この頃、C++でビルドしようとすると、次の様なメッセージが出て参ります。
c1 : fatal error C1083: ソース ファイルを開けません。'3.0': No such file or directory
Microsoft Visual Studio 2005 SP1です。直し方を模索したいと思います。2011年8月4日木曜日
window.open インターフェイスがサポートされていません {B8DA6310-E19B-11D0-933C-00A0C90DCAA9}
うまく作用しなかったようなので、再び調査中です。
参考情報:
open in a new window
Object Explorer/Server Explorer Error
2011年5月6日金曜日
Dropboxで、Windowsサーバのデータをバックアップ
デジタルドルフィンズ(文書管理システム)の、オンライン・バックアップに活用しようと検証しています。
課題等:
・「バックアップ」サービスではなく、「同期」サービスですよ、と言われました。http://forums.dropbox.com/topic.php?id=36079
・Dropboxフォルダに入っていないフォルダは同期されません。
・とはいえ、任意のフォルダをバックアップしたいものです。
・Windows Server 2003では、再解析ポイントを貼り付けることで、対象を拡大できました(※1)。
・Windows Server 2008では、シンボリックリンクを貼り付けることで、対象を拡大できました(※2)
・データベースの生データを同期するのは困難なようです:ファイルサイズの問題と、複数にまたがるファイルに対する一貫性維持の問題。
・生データのダンプ(バックアップ)を同期する分にはうまくいくようです。
・Word/Excel/PDF等、ファイルを同期する分にもうまくいくようです。
・Windowsにログインしていないと同期できません→サーバでは通常、ログインしていないので、対策が必要かもしれません。
・同期の成功・失敗がサーバマシンの外から分かりにくい。
・被災した場合には恐らく、支払い能力を巡ってDropboxと英語で交渉しなければなりません。
・同期状況がパーセンテージで表示されません。
・本当に同期されているのか、という漠然とした不安感が有ります。
・ファイルの履歴は何世代残るのか。
・世代数と使用容量の関係は?
・使用容量の増大により、履歴が消えていくのかどうか。
・優秀なファイアウォールやIDS等を導入している場合に、誤って同期が遮断されないかどうか。
(※1)
対象は拡大しましたが、拡大した部分は常時同期されませんでした。クライアントソフトで、Pause→Resumeの操作をしますと、拡大部分の同期が開始されました。これは大変!
対象の拡大には、Windows SysinternalsのJunctionを利用いたしました:http://technet.microsoft.com/ja-jp/sysinternals/bb896768%28en-us%29.aspx
(※2)
対象は拡大しましたが、拡大した部分は常時同期されるかどうかは、不明です。
課題等:
・「バックアップ」サービスではなく、「同期」サービスですよ、と言われました。http://forums.dropbox.com/topic.php?id=36079
・Dropboxフォルダに入っていないフォルダは同期されません。
・とはいえ、任意のフォルダをバックアップしたいものです。
・Windows Server 2003では、再解析ポイントを貼り付けることで、対象を拡大できました(※1)。
・Windows Server 2008では、シンボリックリンクを貼り付けることで、対象を拡大できました(※2)
・データベースの生データを同期するのは困難なようです:ファイルサイズの問題と、複数にまたがるファイルに対する一貫性維持の問題。
・生データのダンプ(バックアップ)を同期する分にはうまくいくようです。
・Word/Excel/PDF等、ファイルを同期する分にもうまくいくようです。
・Windowsにログインしていないと同期できません→サーバでは通常、ログインしていないので、対策が必要かもしれません。
・同期の成功・失敗がサーバマシンの外から分かりにくい。
・被災した場合には恐らく、支払い能力を巡ってDropboxと英語で交渉しなければなりません。
・同期状況がパーセンテージで表示されません。
・本当に同期されているのか、という漠然とした不安感が有ります。
・ファイルの履歴は何世代残るのか。
・世代数と使用容量の関係は?
・使用容量の増大により、履歴が消えていくのかどうか。
・優秀なファイアウォールやIDS等を導入している場合に、誤って同期が遮断されないかどうか。
(※1)
対象は拡大しましたが、拡大した部分は常時同期されませんでした。クライアントソフトで、Pause→Resumeの操作をしますと、拡大部分の同期が開始されました。これは大変!
対象の拡大には、Windows SysinternalsのJunctionを利用いたしました:http://technet.microsoft.com/ja-jp/sysinternals/bb896768%28en-us%29.aspx
(※2)
対象は拡大しましたが、拡大した部分は常時同期されるかどうかは、不明です。
2011年3月8日火曜日
登録:
投稿 (Atom)