C#のERPシステム(SAP)からいくつかのデータをプルする必要があります。SAPについて詳しくは説明しません(SAPについては知りたくないと思います)。
C#内からリモート関数を呼び出して動作していますが、奇妙な問題が発生しています。SAPでC#から呼び出さなければならない関数の1つは、BAPI_USER_GET_DETAILと呼ばれます。
だから私はC#でこれを行います:
s.Bapi_User_Get_Detail("No","10217502", out address, out alias, out companyName,
out defaults, out islocked, out lastmodified, out logonData, out ref_user, out snc, out uclass,
ref activeGroups, ref addcomrem, ref addfax, ref addpag, ref addprt, ref addrfc,
ref addrml, ref addsmtp, ref addssf, ref addtel, ref addtlx, ref addttx, ref adduri,
ref addx400, ref extidhead, ref extidpart, ref groups, ref parameter, ref parameter1,
ref profiles, ref return0, ref systems, ref uclasssys);
Console.WriteLine(companyName._Company);
Console.ReadLine();
SAPはこれらすべてのフィールドを必要とするため、これはごく普通のコードです。out
この関数内の引数の1つをプルする必要があります。company
つまり、このプロシージャを実行した後の引数は、このcompany
フィールド内に値が含まれている必要があり、ウォッチはここに次のように表示します。
私が抱えている問題は、_Companyには必要な価値があるが、私にはできないことに気づいたことですcompanyName._Company
(Visual Studioはこれを好みません)。ただし、上記のように時計で実行すると、正しく表示されます。それは私に会社名を与えます。では、時計が値を正しく表示するのはどうしてですか。私はC#で単純なことを間違って行っているに違いありません。