Invoke workflow file の引数をインポートから入力しても反映されない

「引数をインポート」から、引数を追加し、横に表示される引数の数は増えるのですが、
そのあとにワークフローを確認すると、"宣言されていません"というエラーが出たままです。

他の引数は、ワークフローとして抽出したときに自動で引数が設定されたので、
こちらの引数に関しては問題ないのですが…。

事象のイメージがついておらず、可能でしたら参考となる画像をアップロードいただくことは可能でしょうか?
または対象となるワークフローファイルをまとめていただきアップロードいただくことでも構いません。

@cheez_RPA さん

お返事遅れてすみません。

参考.zip (18.2 KB)

こちらのNameという変数を手動でインポートしようとしてもできません。

ファイル確認しました。

  1. 呼び出し先となるワークフロー側には、もともと Name という引数を設定していない状態で、
  2. “Invoke Workflow File” アクティビティの “Import Arguments” ウィンドウの中で、Name を追加しているが、
  3. 追加した Name が、呼び出し先となるワークフロー側の引数に追加されていない

ということであっていますでしょうか?

もし上記であれば、2. の作業では実際に呼び出し先となるワークフローには引数が追加されないので、1. の時点でまず呼び出し先となるワークフロー側で、引数を定義してあげてください。

@cheez_RPA さん
お返事ありがとうございます。
説明不足で、すみません。

ではなくて、
Nameはもともと設定している状態で、ワークフローの抽出を行いました。

いただいたワークフローファイルを拝見しまして、変数と引数の設定状況を確認しましたが、Name という変数または引数は確認できませんでした。

@cheez_RPA さん

私の画面ですと、このようになっているのですが…なっていませんか?

@Rea12 さん

引数は呼び出される側のワークフローで引数として設定されていないと動作しないので、Excelにデータを書き込む.xaml のほうで、きちんと引数として設定・保存する必要があります。

こんにちは

おそらく、@Rea12 さんが問題視しているのは「ワークフローとして抽出」に関する挙動かと思います。

どうやらNameという変数が、他で予約語となっているためか、「ワークフローとして抽出」でうまく引数として設定されないようです。(手元の2019.10.2CEの環境では再現しました。)

そのため対応策としては以下のいずれかになるかと思います。

  1. 「ワークフローとして抽出」の前に、Nameという変数名を他に変更する。
  2. 抽出後、Nameという引数を手動で設定する。

@tkgsn146 さん

Excelにデータを書き込む.xamlのワークフローで、変数として設定する、ということでしょうか?

他の変数(yearやmonth)はテスト.xamlから持ってきています。
他の変数と同じように、テスト.xamlからNameを持ってきたいです。
そのため、変数をインポートからNameを手動で追加しようと試みましたが、それが反映されないのです。

@Yoichi さん

2は試して、ダメでした。追加されません。
①引数をインポート
②Name(入力)で追加
③引数をインポートの横に表示される数は4から5に増加
④もう一度、引数をインポートを押す
⑤先ほど追加したはずのNameの情報が消えている
(このとき表示されている数は5から4に減少)
という現象が起こります。

そして、1をたった今試したのですが、Simeiという変数名に変更して
ワークフロー抽出を行うと、正常に引数として認識されました。

Nameという名前を使用してはいけないということでしょうか…?

こんにちは

Nameという名前を使用してはいけないということでしょうか…?

もしかすると仕様かもしれませんが、おそらくUiPath側のバグの類かと思います。。

引数の追加ですが、抽出した先のワークフローで追加→保存してから
抽出元の引数インポートを行う必要があります。
そのため上記1,2は抽出先の方の作業となると思います。

@Yoichi さん
バグですか…。

ワークフローの抽出を行った後に、引数のインポートを行う場合は、
新たに抽出したワークフローで変数を追加しなければならない、ということでしょうか?

今回の場合だと、Nameという変数名のみ、
Excelにデータを書き込む.xamlのワークフローで設定したのち、
引数のインポートからNameという変数を追加する、ということですか?

間違っていたらすみません。

引数、変数という名称がややこしいのですが、今回の参考.zipに対するアクションは
1.「Excelにデータを書き込む.xaml」に対して「引数」としてNameを追加する。その際入力の方向、型を合わせて設定する。(In, Stringでよいかと思います。)
2.「Excelにデータを書き込む.xaml」を保存する。
3.「テスト.xaml」に対して、Invoke work Flow file Activityの「引数をインポート」をクリック。
4.名前欄にNameがあると思うので、値欄にNameを追加して「OK」をクリック

となると思います。

3 Likes

@Yoichi さん

教えていただいた手順で引数をインポートしたところ、無事追加されました!

先にここの因数をインポートから追加していたのですが、

先にこっちのほうに因数を追加しないと、ダメだったんですね。

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

3 Likes

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.