過去ログ

■過去ログ記事に対して削除や返信は出来ません

多重定義のエラーにつきまして。 GB400
いつも、お世話さまでございます。

下記B.uwsを単独で実行すると問題なく起動します。
(楽天証券にログインして株の売買するモバイルサイトです。)
ですが、
A.uwsを実行して、B.uwsを2度実行しようとしますと・・・
Uスクリプト:BUSYWAIT:多重定義です
PROCEDURE BUSYWAIT(IE)
↑のエラーメッセージで止まってしまいます。
どなたか、対策をご教示頂けるとありがたいです。

バージョンは、4.3d1です。

[A.uws]
//楽天証券2度ログイン
call B.uws
SLEEP(2)
call B.uws



[B.uws]
//楽天証券ログイン
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("https://mobile.rakuten-sec.co.jp/fopweb/")
ACW(GETID("Microsoft Internet","IEFrame"),564,13,443,582,0)
BusyWait(IE)
IESetData(IE,"aaaaaaaa","loginid") // TEXT
IESetData(IE,"bbbbbbbb","password") // PASSWORD
IESetData(IE,True,"","ログイン") // SUBMIT
BusyWait(IE)
IELINK(IE,"転売・買戻注文") // https://mobile.rakuten-sec.co.jp/WT10/fopweb/doRepList.do;mb-pl15=rC0yHynfxX!-1939435873?fop=fop&_xpxi=FgNXl3...
BusyWait(IE)
IESetData(IE,True,"","一括転売・買戻") // SUBMIT
BusyWait(IE)
IESetData(IE,True,"0","2") // RADIO
IESetData(IE,True,"","確認") // SUBMIT
BusyWait(IE)
IESetData(IE,"3435","0") // PASSWORD
IESetData(IE,True,"","注文") // SUBMIT
BusyWait(IE)
// IE.Quit // IE終了
//------

//ブラウザを閉じる
SLEEP(1)
TITLE1 = GETID("Microsoft Internet")
ctrlwin(TITLE1,CLOSE)

Procedure BusyWait(ie)
Sleep(0.5) // Wait
Const TIME_OUT = 90
tm = Gettime()
repeat
Sleep(0.2)
ifb Gettime() - tm > TIME_OUT
MsgBox("Time Out:BusyWait")
ExitExit
endif
until (! ie.busy) and (ie.readyState=4)
Sleep(0.5)
Fend



※ちなみ・・・
下記の1回のみ実行は、問題なく実行できます。
[A.uws]
//楽天証券2度ログイン
call B.uws
DATE:2007/11/30(Fri) 17:53 No.1287


RE:多重定義のエラーにつきまして。 いりや

以下を B.uws を呼び出す A.uws の末尾にコピーして、B.uws から取り除いてみてください。

Procedure BusyWait(ie)
Sleep(0.5) // Wait
Const TIME_OUT = 90
tm = Gettime()
repeat
Sleep(0.2)
ifb Gettime() - tm > TIME_OUT
MsgBox("Time Out:BusyWait")
ExitExit
endif
until (! ie.busy) and (ie.readyState=4)
Slee
DATE:2007/11/30(Fri) 19:11


ありがとうございました。 GB400

いりや 様
ご教示頂きまして、ありがとうございました。
お蔭様で問題なく、起動するようになりました。

Procedureって
functionのような使い方をするんですね?(間違ってたらすいません)
DATE:2007/12/1(Sat) 18:50


RE:多重定義のエラーにつきまして。 いりや

はい、文の並びに、名前をつけたものという意味で一緒です。(function は値を返し、procedure は値を返しません)
DATE:2007/12/2(Sun) 21:27


便乗質問:報告まで とも

GB400 さんの、質問とは直接関係が無かったのですが

Call ".\A.uws"
Call "./A.uws"

// A.uws
Procedure foo()
FEnd

上記の記述で FOO: 多重定義です
のエラーが出ます。

Call ".\A.uws"
Call ".\A.uws"

Call "./A.uws"
Call "./A.uws"
では、エラーにはなりません。

同一ファイルを複数回呼び出す際に「\」「/」が混在すると別のファイルと認識され、エラーになる様子です。

いずれかに統一すれば問題は無いのですが、報告まで
DATE:2007/12/4(Tue) 01:31


RE:多重定義のエラーにつきまして。 umiumi

>同一ファイルを複数回呼び出す際に「\」「/」が混在すると別のファイルと認識され、エラーになる様子です。
対処します。
DATE:2007/12/4(Tue) 23:05


Rental:大宇宙 お知らせ(3/21) Base:ACE