forked from chrisleo/RPA
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGetListOfFiles.xaml
142 lines (142 loc) · 9.33 KB
/
GetListOfFiles.xaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
<Activity mc:Ignorable="sap sap2010" x:Class="Main" this:Main.FolderPathArg="C:\Users\xshe\Documents\WeChat Files\wxxdong2102\FileStorage\File\2019-05\" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:d="clr-namespace:DirectorySearch;assembly=DirectorySearch" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:sap="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:sap2010="http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:this="clr-namespace:" xmlns:ui="http://schemas.uipath.com/workflow/activities" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<x:Members>
<x:Property Name="FolderPathArg" Type="InArgument(x:String)" />
<x:Property Name="FilesCountArg" Type="OutArgument(x:Int32)" />
<x:Property Name="FileNamesArg" Type="OutArgument(scg:List(x:String))" />
<x:Property sap2010:Annotation.AnnotationText="文件类型,可以使用匹配符,如
"*.*": 匹配所有文件
"*.pdf":匹配PDF文件
"*.png*":匹配图片文件" Name="FileTypeArg" Type="InArgument(x:String)" />
</x:Members>
<mva:VisualBasic.Settings>
<x:Null />
</mva:VisualBasic.Settings>
<sap:VirtualizedContainerService.HintSize>573.6,1306.4</sap:VirtualizedContainerService.HintSize>
<sap2010:WorkflowViewState.IdRef>ActivityBuilder_1</sap2010:WorkflowViewState.IdRef>
<TextExpression.NamespacesForImplementation>
<scg:List x:TypeArguments="x:String" Capacity="22">
<x:String>System.Activities</x:String>
<x:String>System.Activities.Statements</x:String>
<x:String>System.Activities.Expressions</x:String>
<x:String>System.Activities.Validation</x:String>
<x:String>System.Activities.XamlIntegration</x:String>
<x:String>Microsoft.VisualBasic</x:String>
<x:String>Microsoft.VisualBasic.Activities</x:String>
<x:String>System</x:String>
<x:String>System.Collections</x:String>
<x:String>System.Collections.Generic</x:String>
<x:String>System.Data</x:String>
<x:String>System.Diagnostics</x:String>
<x:String>System.Drawing</x:String>
<x:String>System.IO</x:String>
<x:String>System.Linq</x:String>
<x:String>System.Net.Mail</x:String>
<x:String>System.Xml</x:String>
<x:String>System.Xml.Linq</x:String>
<x:String>UiPath.Core</x:String>
<x:String>UiPath.Core.Activities</x:String>
<x:String>System.Windows.Markup</x:String>
<x:String>Microsoft.VisualBasic.CompilerServices</x:String>
</scg:List>
</TextExpression.NamespacesForImplementation>
<TextExpression.ReferencesForImplementation>
<scg:List x:TypeArguments="AssemblyReference" Capacity="21">
<AssemblyReference>System.Activities</AssemblyReference>
<AssemblyReference>Microsoft.VisualBasic</AssemblyReference>
<AssemblyReference>mscorlib</AssemblyReference>
<AssemblyReference>System.Data</AssemblyReference>
<AssemblyReference>System</AssemblyReference>
<AssemblyReference>System.Drawing</AssemblyReference>
<AssemblyReference>System.Core</AssemblyReference>
<AssemblyReference>System.Xml</AssemblyReference>
<AssemblyReference>System.Xml.Linq</AssemblyReference>
<AssemblyReference>PresentationFramework</AssemblyReference>
<AssemblyReference>WindowsBase</AssemblyReference>
<AssemblyReference>PresentationCore</AssemblyReference>
<AssemblyReference>System.Xaml</AssemblyReference>
<AssemblyReference>UiPath.System.Activities</AssemblyReference>
<AssemblyReference>UiPath.UiAutomation.Activities</AssemblyReference>
<AssemblyReference>System.ServiceModel</AssemblyReference>
<AssemblyReference>UiPath.Excel</AssemblyReference>
<AssemblyReference>UiPath.Mail</AssemblyReference>
<AssemblyReference>UiPath.PDF</AssemblyReference>
<AssemblyReference>UiPath.Word</AssemblyReference>
<AssemblyReference>System.ComponentModel.Composition</AssemblyReference>
</scg:List>
</TextExpression.ReferencesForImplementation>
<Sequence sap2010:Annotation.AnnotationText="功能: 获取某个文件夹中指定类型的所有文件及数目
依赖: UiPath.DirectorySearch.Activity
================================================================
入参:
 * FolderPathArg - 指定文件夹
 * FileTypeArg - 文件类型,指定后缀名或者使用匹配符进行匹配,如
 "*.*":匹配所有文件
 "*.xlsx":匹配所有Excel文件
 "*.pdf*":匹配所有PDF文件
 "RPA*.pdf":匹配文件名中包含有RPA字符的文件
================================================================
出参:
 * FilesCountArg - 获取到文件个数
 * FileNamesArg - 获取到的文件集合" DisplayName="GetListOfFiles" sap:VirtualizedContainerService.HintSize="533.6,1226.4" sap2010:WorkflowViewState.IdRef="Sequence_2">
<Sequence.Variables>
<Variable x:TypeArguments="scg:List(x:String)" Name="FileNames" />
<Variable x:TypeArguments="ui:GenericValue" Name="fileType" />
</Sequence.Variables>
<sap:WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, x:Object">
<x:Boolean x:Key="IsExpanded">True</x:Boolean>
<x:Boolean x:Key="IsAnnotationDocked">True</x:Boolean>
</scg:Dictionary>
</sap:WorkflowViewStateService.ViewState>
<If Condition="[FileTypeArg=""]" sap:VirtualizedContainerService.HintSize="511.2,209.6" sap2010:WorkflowViewState.IdRef="If_1">
<If.Then>
<Assign sap:VirtualizedContainerService.HintSize="243.2,60" sap2010:WorkflowViewState.IdRef="Assign_5">
<Assign.To>
<OutArgument x:TypeArguments="ui:GenericValue">[fileType]</OutArgument>
</Assign.To>
<Assign.Value>
<InArgument x:TypeArguments="ui:GenericValue">["*.*"]</InArgument>
</Assign.Value>
</Assign>
</If.Then>
<If.Else>
<Assign sap:VirtualizedContainerService.HintSize="243.2,60" sap2010:WorkflowViewState.IdRef="Assign_6">
<Assign.To>
<OutArgument x:TypeArguments="ui:GenericValue">[fileType]</OutArgument>
</Assign.To>
<Assign.Value>
<InArgument x:TypeArguments="ui:GenericValue">[FileTypeArg]</InArgument>
</Assign.Value>
</Assign>
</If.Else>
</If>
<d:GetFiles DisplayName="Get files" FilePaths="[FileNames]" Filter="[fileType]" sap:VirtualizedContainerService.HintSize="511.2,22.4" sap2010:WorkflowViewState.IdRef="GetFiles_1" SearchDirectory="[FolderPathArg]" SearchType="AllDirectories" />
<Assign DisplayName="Assign - out_FilesCount" sap:VirtualizedContainerService.HintSize="511.2,60" sap2010:WorkflowViewState.IdRef="Assign_3">
<Assign.To>
<OutArgument x:TypeArguments="x:Int32">[FilesCountArg]</OutArgument>
</Assign.To>
<Assign.Value>
<InArgument x:TypeArguments="x:Int32">[FileNames.Count]</InArgument>
</Assign.Value>
<sap:WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, x:Object">
<x:Boolean x:Key="IsExpanded">True</x:Boolean>
</scg:Dictionary>
</sap:WorkflowViewStateService.ViewState>
</Assign>
<Assign DisplayName="Assign - out_FileNames" sap:VirtualizedContainerService.HintSize="511.2,60" sap2010:WorkflowViewState.IdRef="Assign_4">
<Assign.To>
<OutArgument x:TypeArguments="scg:List(x:String)">[FileNamesArg]</OutArgument>
</Assign.To>
<Assign.Value>
<InArgument x:TypeArguments="scg:List(x:String)">[FileNames]</InArgument>
</Assign.Value>
<sap:WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, x:Object">
<x:Boolean x:Key="IsExpanded">True</x:Boolean>
</scg:Dictionary>
</sap:WorkflowViewStateService.ViewState>
</Assign>
<ui:ForEach x:TypeArguments="x:String" CurrentIndex="{x:Null}" DisplayName="For Each" sap:VirtualizedContainerService.HintSize="511.2,321.6" sap2010:WorkflowViewState.IdRef="ForEach`1_3" Values="[FileNames]">
<ui:ForEach.Body>
<ActivityAction x:TypeArguments="x:String">
<ActivityAction.Argument>
<DelegateInArgument x:TypeArguments="x:String" Name="item" />
</ActivityAction.Argument>
<Sequence DisplayName="Body" sap:VirtualizedContainerService.HintSize="232.8,187.2" sap2010:WorkflowViewState.IdRef="Sequence_3">
<sap:WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, x:Object">
<x:Boolean x:Key="IsExpanded">True</x:Boolean>
</scg:Dictionary>
</sap:WorkflowViewStateService.ViewState>
<WriteLine DisplayName="Write Line" sap:VirtualizedContainerService.HintSize="210.4,62.4" sap2010:WorkflowViewState.IdRef="WriteLine_1" Text="[item]" />
</Sequence>
</ActivityAction>
</ui:ForEach.Body>
</ui:ForEach>
</Sequence>
</Activity>