最初に取得した変数を後から使いたい

あるフローで実施したいことが、Excelを使えば可能なのですが、
Excelを使わずにできないかと考えています。

やりたいフロー…
①.ダイアログで氏名を入力してもらい、その値を変数に格納(変数1)
②.対象者がまだいるかをヒアリングする
③.Yesの場合、変数をカウントアップし、①を再実行(変数2)
Noの場合、取得した変数を指定Web位置に記載
④Web上の作業フローへ…

・ダイアログで入力された変数を取得(①)してWebフロー(④)へ行き、
処理が終わってからまたダイアログ入力(①)…というやり方
・取得した変数1、2の氏名をExcelに記載し、
その後Excelの値を取得して値がなくなるまでWebフロー繰り返すやり方
上記二つはできそうだったのですが、
最初にダイアログで必要項目を入力してもらったら後はフロー終わるまで放置、
という方が理想だったので検討していたのですが思いつかず…

長々と失礼しましたが、何か思いつくことがございましたら、
どんなことでも構いませんのでご助力いただけますと幸甚です。

以上、何卒宜しくお願い致します。

コレクションを使うのはいかがでしょうか。
Listの変数を定義しておき、ダイアログで入力された氏名を「コレクションに追加」アクティビティでListに追加します。
その後、追加したListから値を取り出して良い感じに使えばよろしいかと。

言葉で説明すると分かり難いので簡単にサンプルを作りました。
ご参考になれば幸いです。
CollectionTest.xaml (13.5 KB)

ご回答ありがとうございます!
データベース型でリストのような変数を格納するやり方は何となく知っていましたが、
直接リストで格納するやり方は知りませんでした…。勉強になります!

恐れ入りますが、ご存知であれば追加でお教えいただけますでしょうか…。

今回は氏名、という項目一つのみでしたが、
一対象者に対し、格納したい値が増えた場合、どのように設定すべきでしょうか。
%E3%82%AD%E3%83%A3%E3%83%97%E3%83%81%E3%83%A3
※理想はこのように一人に対し一行ずつ情報を記載

お教えいただいたリストを利用し、
『申請区分/氏名/社員番号/メアド』それぞれ4つの項目を記載する場合、
そのまま利用すると対象者が一人だけでも4行同じ情報が記載されてしまいます。
%E3%82%AD%E3%83%A3%E3%83%97%E3%83%81%E3%83%A3a
恐らくリストで拾ってきた値が4項目あるので、ループの条件的にそうなるだけなので、
ここは修正次第で何とかなるのかもしれません。

一行ずつ記載する必要がある場合は、
お教えいただいたのとはまた別のやり方の方が確実なのでしょうか。

長い更問となってしまい大変申し訳ございません。
お時間がある時で構いませんので、何か思いつく点がございましたら、
お教えくださいますようお願い申し上げます。

提示したサンプルはあくまで簡単に動くようにしただけのものなので、作りたいものにあわせてフローを調整する必要があります。
入力項目が1対象者につき複数となるのであれば提示したサンプルをそのまま使ってもうまくいきません。
サンプルを元にするのであれば、Listの1件当たりのデータを対象者情報を格納する別のListにして( 「2次元リスト .net」とかで検索すれば例が出てくると思います。)、それぞれをループで回すようにすればよろしいかと。

他の方法としては対象者情報を格納するオブジェクトをListの項目にする。DataTableを使用する等が考えられますね。

1 Like

ご回答ありがとうございます。

サンプルを基にカスタマイズして動作させることができました!
色々調べてみると、取得する値が毎回異なる場合にも対応できるものもありますね…。

お力添えいただいたおかげで問題を解決することができました。
貴重なサンプルと別の手段のヒント、並びにその他のサンプル情報までお教えいただき大変助かりました。

以上、一先ずのお礼とさせていただきたく存じます。
ありがとうございました!!

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