0

現在のユーザーの変数を設定する関数があります。変数名にはモジュールの名前がプレフィックスとして付けられます。基本的には、アプリケーションのセットアップ方法です。Client はクラス、Server はクラス、Agency はクラスなどです。これは、クライアントまたはクライアントのウェブサイトの 1 つに関する重要な情報を、200 以上のサーバーにわたって、できるだけ少ないクリック数でデータベースからのライブ データを使用して見つけることができるシステムを作成する試みです。

機能は次のとおりです。

public sub setVariable(varName, varValue)
    varValue = cstr(varValue)
    def = ""
    if varValue = "" then def = "1"
    response.write vbcrlf & "Variable: " & varName & " : " & varValue & vbcrlf
    if not cstr("" & getVariable(varName, def)) = cstr("" & varValue) then
        response.write vbcrlf & varName & " : " & varValue & vbcrlf
        prepend varName, "Module." & Name & "."
        response.write vbcrlf & varName & " : " & varValue & vbcrlf
        session(varName) = varValue
        Core.RunSproc "SetUserVariable", array("@name", "@value"), array(varName, cstr(varValue)), setVar
    end if
end sub

最初に出力される5行目では、変数名として「ID」のみが出力されています。varName = "something" & varNameただし、2 行後に名前が「Module.<module-name>.ID」に設定されます (たとえば、Module.Server.ID. something + "Module.<module-name>.ID". 実際には、この場合、出力します"Module.Server.Module.Server.ID". 何かを取り出すと、最初の Module.Server から取り出されますが、2 番目からは取り出されないことに注意してください。サーバーは、5 行目と 7 行目の間で変数名の先頭に追加されていますが、if ステートメントがある唯一の行です。よろしくお願いします。

4

1 に答える 1