00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 using System;
00013 using System.Collections.ObjectModel;
00014 using Mcs.Epm.MicrosoftProject.mpFx.ResourcesWebService;
00015 using Microsoft.Office.Project.Server.Library;
00016
00017 namespace Mcs.Epm.MicrosoftProject.mpFx
00018 {
00019
00020
00021
00022 public static class ResourceFilters
00023 {
00024 #region Public Static Properties
00025
00026
00027
00028
00029 public static string ListMinimumResourceInformation
00030 {
00031 get
00032 {
00033 Filter filter = new Filter();
00034
00035 using (ResourceDataSet resourceDataSet = new ResourceDataSet())
00036 {
00037 filter.FilterTableName = resourceDataSet.Resources.TableName;
00038
00039 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_NAMEColumn.ColumnName));
00040 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_UIDColumn.ColumnName));
00041 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_ACCOUNTColumn.ColumnName));
00042
00043 return filter.GetXml();
00044 }
00045 }
00046 }
00047
00048
00049
00050
00051 public static string ListSecurityInformation
00052 {
00053 get
00054 {
00055 Filter filter = new Filter();
00056
00057 using (ResourceDataSet resourceDataSet = new ResourceDataSet())
00058 {
00059 filter.FilterTableName = resourceDataSet.Resources.TableName;
00060
00061 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_UIDColumn.ColumnName));
00062 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_NAMEColumn.ColumnName));
00063 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_GROUPColumn.ColumnName));
00064 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_ACCOUNTColumn.ColumnName));
00065 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_EMAILColumn.ColumnName));
00066
00067 return filter.GetXml();
00068 }
00069 }
00070 }
00071
00072 #endregion
00073
00074 #region Public Static Methods
00075
00076
00077
00078
00079
00080
00081 public static string ItemBasicInformation(Guid resourceGuid)
00082 {
00083 Filter filter = new Filter();
00084
00085 using (ResourceDataSet resourceDataSet = new ResourceDataSet())
00086 {
00087 filter.FilterTableName = resourceDataSet.Resources.TableName;
00088
00089 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_UIDColumn.ColumnName));
00090 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_NAMEColumn.ColumnName));
00091 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_TYPEColumn.ColumnName));
00092 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_COST_CENTERColumn.ColumnName));
00093 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_GROUPColumn.ColumnName));
00094 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_BOOKING_TYPEColumn.ColumnName));
00095 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.MOD_DATEColumn.ColumnName));
00096 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_CHECKOUTBYColumn.ColumnName));
00097 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_EMAILColumn.ColumnName));
00098 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_ACCOUNTColumn.ColumnName));
00099 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_CHECKOUTDATEColumn.ColumnName));
00100
00101 Filter.IOperator equalResGuid =
00102 new Filter.FieldOperator(Filter.FieldOperationType.Equal,
00103 resourceDataSet.Resources.RES_UIDColumn.ColumnName,
00104 new object[] {resourceGuid.ToString()});
00105
00106 filter.Criteria = equalResGuid;
00107 return filter.GetXml();
00108 }
00109 }
00110
00111 public static string ItemBasicInformationByAccount(string accountName)
00112 {
00113 Filter filter = new Filter();
00114
00115 using (ResourceDataSet resourceDataSet = new ResourceDataSet())
00116 {
00117 filter.FilterTableName = resourceDataSet.Resources.TableName;
00118
00119 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_UIDColumn.ColumnName));
00120 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_NAMEColumn.ColumnName));
00121 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_TYPEColumn.ColumnName));
00122 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_COST_CENTERColumn.ColumnName));
00123 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_GROUPColumn.ColumnName));
00124 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_BOOKING_TYPEColumn.ColumnName));
00125 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.MOD_DATEColumn.ColumnName));
00126 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_CHECKOUTBYColumn.ColumnName));
00127 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_EMAILColumn.ColumnName));
00128 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_ACCOUNTColumn.ColumnName));
00129 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_CHECKOUTDATEColumn.ColumnName));
00130
00131 Filter.IOperator equalResGuid =
00132 new Filter.FieldOperator(Filter.FieldOperationType.Equal,
00133 resourceDataSet.Resources.WRES_ACCOUNTColumn.ColumnName,
00134 accountName);
00135
00136 filter.Criteria = equalResGuid;
00137 return filter.GetXml();
00138 }
00139 }
00140
00141
00142
00143
00144
00145
00146 public static string ItemSecurityInformation(Guid resourceGuid)
00147 {
00148 Filter filter = new Filter();
00149
00150 using (ResourceDataSet resourceDataSet = new ResourceDataSet())
00151 {
00152 filter.FilterTableName = resourceDataSet.Resources.TableName;
00153
00154 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_UIDColumn.ColumnName));
00155 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_NAMEColumn.ColumnName));
00156 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_GROUPColumn.ColumnName));
00157 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_IS_WINDOWS_USERColumn.ColumnName));
00158 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_ACCOUNTColumn.ColumnName));
00159 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.WRES_EMAILColumn.ColumnName));
00160
00161 Filter.IOperator equalResGuid =
00162 new Filter.FieldOperator(Filter.FieldOperationType.Equal,
00163 resourceDataSet.Resources.RES_UIDColumn.ColumnName,
00164 new object[] {resourceGuid.ToString()});
00165
00166 filter.Criteria = equalResGuid;
00167
00168 return filter.GetXml();
00169 }
00170 }
00171
00172
00173
00174
00175
00176
00177
00178 public static string CreateFilterFromColumns(Guid resourceGuid,
00179 Collection<string> columns)
00180 {
00181 Filter filter = new Filter();
00182
00183 using (ResourceDataSet resourceDataSet = new ResourceDataSet())
00184 {
00185 filter.FilterTableName = resourceDataSet.Resources.TableName;
00186
00187 foreach (string column in columns)
00188 {
00189 filter.Fields.Add(new Filter.Field(column));
00190 }
00191
00192 Filter.IOperator equalResGuid =
00193 new Filter.FieldOperator(Filter.FieldOperationType.Equal,
00194 resourceDataSet.Resources.RES_UIDColumn.ColumnName,
00195 new object[] {resourceGuid.ToString()});
00196
00197 filter.Criteria = equalResGuid;
00198 return filter.GetXml();
00199 }
00200 }
00201
00202
00203
00204
00205
00206
00207 public static string CreateGetAllResourceInfoFilter(Guid resourceGuid)
00208 {
00209 Filter filter = new Filter();
00210
00211
00212 using (ResourceDataSet resourceDataSet = new ResourceDataSet())
00213 {
00214 filter.Fields.Add(new Filter.Field(resourceDataSet.Resources.RES_UIDColumn.ColumnName));
00215
00216 Filter.IOperator equalResGuid =
00217 new Filter.FieldOperator(Filter.FieldOperationType.Equal,
00218 resourceDataSet.Resources.RES_UIDColumn.ColumnName,
00219 new object[] {resourceGuid.ToString()});
00220
00221 filter.Criteria = equalResGuid;
00222 return filter.GetXml();
00223 }
00224 }
00225
00226 #endregion
00227 }
00228 }
00229
00230
00231
00232
00233
00234
00235