Office 2007アップグレードBreaks 4GL Progress Code
-
09-10-2019 - |
質問
レガシー4GL進捗コードをサポートしています。 4GLを実行するサーバーの1つは、私の知らないうちに2007年にOffice 2007にアップグレードされました(いいですか?)。とにかく、アップグレードはExcel.Application Comコンポーネントを実行しているコードのセグメントを破りました。 Financeは、Excelドキュメントに保管している販売予測番号のリストを維持し、次のコードにそれらの数値をロードします。
CREATE
"Excel.application" chExcelApplication NO-ERROR.
ASSIGN
chExcelApplication:VISIBLE = NO NO-ERROR.
ASSIGN
chWorkbook = chExcelApplication:Workbooks:OPEN(STRING(i-infile)) NO-ERROR.
ASSIGN
chWorkSheet = chExcelApplication:Sheets:ITEM((1)) NO-ERROR.
IF input frame f-in Plan1 <> 0 THEN
Plan1 = input frame f-in Plan1.
ELSE
Plan1 = chWorkSheet:range(forecastColumn + "4"):VALUE.
IF input frame f-in Plan2 <> 0 THEN
Plan2 = input frame f-in Plan2.
ELSE
Plan2 = chWorkSheet:range(forecastColumn + "7"):VALUE.
IF input frame f-in Plan3 <> 0 THEN
Plan3 = input frame f-in Plan3.
ELSE
Plan3 = chWorkSheet:range(forecastColumn + "6"):VALUE.
コードが実行されると、次のエラーが表示されます。
「処理中/ステートメントの処理中に参照される無効なコンポーネントハンドル:範囲。」
奇妙なことは、a)「オープン」コマンドまたは「作成」コマンドで失敗しないということです。そのため、COMオブジェクト自体に問題はないようです。 b)Office 2007も実行される同じコードをマシンから実行すると、正常に実行されます。
これをトラブルシューティングする方法についてのアイデアはありますか?
ありがとう!
解決
Excelのコンテンツを新しいファイルにコピーしましたが、今では数字をうまく引いています。変...
所属していません StackOverflow