いや~、相当悩んだ!
SAPから、とあるデータを定期的に抽出する要件があったので、
昔作成したvbsを少し改変して使おうと思ったら。
Set functionCtrl = CreateObject("SAP.Functions")
という記載がある行で引っかかった。
「ActiveXコンポーネントはオブジェクトを生成できません。」
というエラー。
・ちょっと古めのPCで試してみると、動く。
そりゃそうだ、ただのCreateObjectだもの。
・Accessに組み込んだものを、エラーが出るPCで実行すると、やはり動く。
同じコードなのに、ワケが分からん。
・SAPのGuiがちゃんとインストールできていないかと思って、入れ直すが効果なし。
どういうことだ?
いろいろ調べると、OSのバージョンが影響しているようだ。
「32ビット版のコンポーネント(ODBCドライバなど)を使用しているVBScriptのプログラムを64ビット版のWindowsで実行すると、実行時エラーが発生します。64ビット版のWindowsでは、CScriptコマンドも自動的に64ビット版が用いられるためです。」
だそうです。orz
「C:\Windows\SysWOW64\WScript.exe」が、32bit版のwscriptコマンドだそうで、
コイツにvbsを実行させると良いそうだ。
「C:\Windows\SysWOW64\WScript.exe hogehoge.vbs」
というbatファイルを同じディレクトリに置き、それをキックすることで無事実行できた。
ふ~、スッキリ!!
このブログを検索
サイトマップ
Google検索
-
はじめに バッチファイル的に、SAPからテーブルの内容を引っこ抜きたいことが度々ある。 SAPにはRFCライブラリというものが用意されており、様々なプログラムからSAPシステムに接続 → データを得ることができる。 その一連のロジックをvbsファイルにしておけば、コチコ...
-
sqlの違いがいろいろあって、結構手間取ったので整理。 文字列を整形する oracle TO_CHAR access FORMAT フォーマットについては、ここが参考になった。 ■Format関数の書式 -- みんなのAccess備忘録 http://www.accesscl...
-
SQLServer のテーブルを、ACCESSにコピーするにあたり、SELECT INTO というSQL文一発で実行できて便利だ! と書いたのですが、、、 テーブルによっては以下のようなエラーが出て、どうにもならない例がありました。 いろいろと試行錯誤...
マルウェア「Emotet」に感染したくないから、「EmoCheck」と「EmoKill」の使い方、利用方法をまとめてみた!
はじめに 世間を騒がしている「Emotet」。2014年ごろから確認されているマルウェアだが、流行と鎮静化を繰り返しながら変異を続けており、今もなお大きな影響を及ぼしている。2020年は、多数の企業が被害を受けた年になった。 Emotetに一旦感染するとやっかいだ。そのモジュ...
0 件のコメント:
コメントを投稿