コンテキスト プロパティにアクセスして、マップ内のファイル名プロパティを取得するのと同様の状況がありました。外部 Functoid を使用せずに以下の手順を実行しました。これが誰かを助けることを願っています
手順:
「FileSchema」と言う新しいスキーマを作成する FileNode(rootNode) -FileName (fieldElement)
スキーマをクリックし、プロパティのターゲット名前空間で名前空間をクリアします。
FileName プロパティを区別します。Rt.Click FileName とプロモーションを表示し、FileName を Distinguished プロパティ タブに追加します。
ターゲット スキーマで、フィールド FileName を追加します。データベースのすべての行のファイル名が必要なので、私はそれをSQLスキーマに追加しました
オーケストレーションで、メッセージ割り当て図形を使用し、以下を入力します
// System.XML.XMLDocument 型の変数 varFileXML を作成します
// ファイル スキーマと同じ xml を作成し、それを XML 変数にロードしてから、それを FileSchema タイプの Message に割り当てます
varFileXML = new System.Xml.XmlDocument();
varFileXML.LoadXml("<FileNode><FileName>FileName_0</FileName></FileNode>");
Msg_FileSchema = varFileXML;
// FileName を文字列型の変数に取得します
varFileName = Msg_FlatFileSchema(FILE.ReceivedFileName);
varFileName = System.IO.Path.GetFileName(varFileName);
//メッセージからファイル名プロパティにアクセスし、それに変数を割り当てます
Msg_File.FileName = varFileName;
メッセージに FileName を取得したので、それをターゲット スキーマへのマッピングに使用できます。
変換シェイプを使用して、ソースをターゲット スキーマとファイル スキーマとして一緒に、宛先をターゲット スキーマとして、新しいインライン マップを作成しました。ファイルスキーマからファイル名プロパティをターゲット スキーマにマップしました。
これは、コンテキスト プロパティを取得する多くの方法の 1 つです。それが役に立てば幸い
ありがとうございます。それでは、お元気で
シラム