/// <summary> /// Query a number of blocks form the server. /// </summary> /// <param name="context"></param> /// <param name="numBlocks"></param> private DataTable GetDataTableBlocks(IUPopulationContext context, int numBlocks) { DataTable lDataResult = null; for (int iaux = 0; iaux < numBlocks; iaux++) { // Get Data Query. DataTable lDataAux = GetQuery(Context); AddLastOid(Context, lDataAux); if (lDataAux != null) { if (lDataResult == null) { lDataResult = lDataAux; } else { lDataResult.Merge(lDataAux); } } } return(lDataResult); }
/// <summary> /// Stablish the label Number of elements /// </summary> private void SetNumberOfInstances() { if (this.NumberOfInstances == null) { return; } IUPopulationContext lContext = Context as IUPopulationContext; int? totalNumberOfInstances = (mDataTable.ExtendedProperties["TotalRows"] as int?); string strTotalNumberOfInstances = "..."; // By default, if no information about the total number of instances. if (totalNumberOfInstances != null && totalNumberOfInstances > -1) { strTotalNumberOfInstances = totalNumberOfInstances.ToString(); } if (lContext != null) { if (lContext.LastBlock) { this.NumberOfInstances.Value = DataTable.Rows.Count.ToString() + "/" + mDataTable.Rows.Count.ToString(); } else { this.NumberOfInstances.Value = DataTable.Rows.Count.ToString() + "/" + strTotalNumberOfInstances; } } else { this.NumberOfInstances.Value = DataTable.Rows.Count.ToString() + "/" + strTotalNumberOfInstances; } }
/// <summary> /// Add to Stack of last Oid queried. /// </summary> /// <param name="context">Context to save the last oid.</param> /// <param name="lastOid">last Oid.</param> /// <returns></returns> protected virtual Oid AddLastOid(IUPopulationContext context, Oid lastOid) { if (lastOid != null) { context.LastOids.Push(lastOid); } return(lastOid); }
/// <summary> /// Add to Stack of last Oid queried. /// </summary> /// <param name="context">Context to save the last oid.</param> /// <param name="dataTable">Data table queried.</param> /// <returns></returns> protected virtual Oid AddLastOid(IUPopulationContext context, DataTable dataTable) { if (dataTable != null) { Oid lLastOid = Adaptor.ServerConnection.GetLastOid(dataTable); return(AddLastOid(context, lLastOid)); } return(null); }
/// <summary> /// Retrieves all the existing instances /// </summary> /// <param name="context"></param> protected virtual void ExecuteCommandRetriveAll(IUPopulationContext context) { context.LastBlock = false; UpdateData(true); while (!context.LastBlock) { UpdateData(false); } }
/// <summary> /// Solves the filter variables default values of a filter. /// </summary> /// <param name="context">Current context.</param> public static void ExecuteDefaultValues(IUPopulationContext context, string filterName) { // Parameter values object[] lParameters = new object[1]; lParameters[0] = context; // Parameter types Type[] lTypes = new Type[1]; lTypes[0] = typeof(IUPopulationContext); ExecuteMethod(GetFilterTypeName(context.ClassName, filterName), "ExecuteDefaultValues", lTypes, lParameters); }
/// <summary> /// Solves the validation of filter variables values of a filter. /// </summary> /// <param name="context">Current context.</param> public static void ExecuteValidateValue(IUPopulationContext context) { // Parameter values object[] lParameters = new object[1]; lParameters[0] = context; // Parameter types Type[] lTypes = new Type[1]; lTypes[0] = typeof(IUPopulationContext); ExecuteMethod(GetFilterTypeName(context.ClassName, context.FilterNameSelected), "ExecuteValidateValue", lTypes, lParameters); }
/// <summary> /// Solves the filter execution. /// </summary> /// <param name="context">Current context.</param> /// <returns>A DataTable with the instances searched.</returns> public static DataTable ExecuteQueryFilter(IUPopulationContext context) { // Parameter values object[] lParameters = new object[1]; lParameters[0] = context; // Parameter types Type[] lTypes = new Type[1]; lTypes[0] = typeof(IUPopulationContext); return(ExecuteMethod(GetFilterTypeName(context.ClassName, context.ExecutedFilter), "ExecuteQueryFilter", lTypes, lParameters) as DataTable); }
/// <summary> /// Occurs when trigger presentation (magnifying glass) of the object-valued Argument is triggered. /// </summary> /// <param name="sender">Sender object.</param> /// <param name="e">TriggerEventArgs.</param> protected void HandleTriggerExecute(object sender, TriggerEventArgs e) { // Actualize the context. IUContext lContext = null; if (Parent != null) { Parent.UpdateContext(); lContext = Parent.Context; } // Initialize class and service name. string lClassName = string.Empty; string lContainerName = string.Empty; if (IsServiceField) { IUServiceController lServiceController = Parent as IUServiceController; if (lServiceController != null) { lClassName = lServiceController.ClassName; lContainerName = lServiceController.Name; } } else if (IsFilterField) { IUFilterController lFilterController = Parent as IUFilterController; if (lFilterController != null) { IUPopulationContext lPopContext = lFilterController.Parent.Context as IUPopulationContext; lClassName = lPopContext.ClassName; lContainerName = lFilterController.Context.FilterName; lContext = lPopContext; } } // Create exchange information. ExchangeInfoSelectionForward lInfo = new ExchangeInfoSelectionForward( Domain, mSelectionScenario, lClassName, lContainerName, Name, MultiSelectionAllowed, IsNavigationalFilter, lContext); // Launch scenario. ScenarioManager.LaunchSelectionScenario(lInfo, this); }
/// <summary> /// Configures the InteractionToolkit layer from the context values. /// </summary> /// <param name="context">IUPopulationContext used to configure the InteractionToolkit layer.</param> public void ConfigureByContext(IUPopulationContext context) { IUPopulationContext lContext = context as IUPopulationContext; // Order criteria selected if (lContext.OrderCriteriaNameSelected != string.Empty) { OrderCriteriaSelected = OrderCriterias[lContext.OrderCriteriaNameSelected]; } // Default base.ConfigureByContext(context); }
/// <summary> /// Initializes a new instance of the 'IUPopulationController' class. /// </summary> /// <param name="name">Name of the Interaction Unit.</param> /// <param name="alias">Alias of the Interaction Unit.</param> /// <param name="idXML">IdXML of the Interaction Unit.</param> /// <param name="context">Current context.</param> /// <param name="parent">Parent controller.</param> public IUPopulationController(string name, string alias, string idXML, IUPopulationContext context, IUController parent) : base() { Name = name; Alias = alias; IdXML = idXML; Context = context; Parent = parent; Filters = new FilterControllerList(); mOrderCriterias = new Dictionary<string, OrderCriteriaController>(StringComparer.CurrentCultureIgnoreCase); }
/// <summary> /// Initializes a new instance of the 'IUPopulationController' class. /// </summary> /// <param name="name">Name of the Interaction Unit.</param> /// <param name="alias">Alias of the Interaction Unit.</param> /// <param name="idXML">IdXML of the Interaction Unit.</param> /// <param name="context">Current context.</param> /// <param name="parent">Parent controller.</param> public IUPopulationController(string name, string alias, string idXML, IUPopulationContext context, IUController parent) : base() { Name = name; Alias = alias; IdXML = idXML; Context = context; Parent = parent; Filters = new FilterControllerList(); mOrderCriterias = new Dictionary <string, OrderCriteriaController>(StringComparer.CurrentCultureIgnoreCase); }
/// <summary> /// Initializes a new instance of the 'IUFilterReportController' class. /// </summary> /// <param name="filterController">IUFilterController related.</param> /// <param name="reportFile">Path of the report file.</param> /// <param name="dataSetFile">Path of the associated dataset file.</param> /// <param name="printDirectly">Print ot Preview</param> public IUFilterReportController(IUFilterController filterController, string reportFile, string dataSetFile, bool printDirectly) : base(filterController.Name, filterController.Alias, filterController.IdXML, filterController.DefaultOrderCriteria, filterController.Context, filterController.Parent) { // Set report properties. mReportFile = reportFile; mDataSetFile = dataSetFile; mPrintDirectly = printDirectly; // Set the Population Context. mPopulationContext = (filterController.Parent.Context as IUPopulationContext); // Assign the filter variables values. this.InputFields = filterController.InputFields; }
/// <summary> /// Execute a <b>Query Related</b> or <b>Query Populaton</b> depending of exchange type. /// <b>ExchangeType.Navigation</b> execute Query Related. /// <b>ExchangeType.Action or SelectinForward</b> execute Query Population. /// </summary> /// <param name="context"></param> /// <returns></returns> protected virtual DataTable GetQueryPopulation(IUPopulationContext context) { DataTable lData = null; // Depending on the ExchangeInfo Type switch (Context.ExchangeInformation.ExchangeType) { case ExchangeType.Navigation: try { // Logic API call. lData = Logic.ExecuteQueryRelated(context); } catch (Exception logicException) { ScenarioManager.LaunchErrorScenario(logicException); } break; case ExchangeType.Action: case ExchangeType.SelectionForward: // If this Population doesn't contain filters, search all population if (Filters.Count == 0) { try { // Logic API call. lData = Logic.ExecuteQueryPopulation(context); } catch (Exception logicException) { ScenarioManager.LaunchErrorScenario(logicException); } } else { // If there are no filters executed, set the last block true to do not // retrieve all the instances this.Context.LastBlock = true; } break; default: lData = null; break; } return(lData); }
/// <summary> /// Save the information in user preferences /// </summary> protected override void SaveScenarioInfoInPrefecences() { // For population interaction unit IUQueryController queryController = Parent as IUQueryController; if (queryController == null) { return; } string nameInPreferences = Context.ClassName + ":" + queryController.Name; IUPopulationContext popContext = Context as IUPopulationContext; Logic.UserPreferences.SavePopulationInfo(nameInPreferences, popContext.BlockSize, CurrentDisplaySet.Name, DisplaySetList); }
/// <summary> /// Execute a query to retrieve a set of instances, without any condition. /// </summary> /// <param name="context">Current context.</param> /// <returns>A DataTable with the instances searched.</returns> public static DataTable ExecuteQueryPopulation(IUPopulationContext context) { // Last Oid RevisionPasajeroOid lLastOid = null; if (context.LastOids.Count > 0) { lLastOid = new RevisionPasajeroOid(context.LastOids.Peek()); } // Last Block bool lLastBlock = true; NavigationalFiltering navigationalFiltering = NavigationalFiltering.GetNavigationalFiltering(context); DataTable lDataTable = ExecuteQueryRelated(context.Agent, new Dictionary<string, Oid>(), context.DisplaySetAttributes, context.OrderCriteriaNameSelected, navigationalFiltering, lLastOid, context.BlockSize, ref lLastBlock); context.LastBlock = lLastBlock; return lDataTable; }
/// <summary> /// Execute a query to retrieve a set of instances, without any condition. /// </summary> /// <param name="context">Current context.</param> /// <returns>A DataTable with the instances searched.</returns> public static DataTable ExecuteQueryPopulation(IUPopulationContext context) { // Last Oid PasajeroOid lLastOid = null; if (context.LastOids.Count > 0) { lLastOid = new PasajeroOid(context.LastOids.Peek()); } // Last Block bool lLastBlock = true; NavigationalFiltering navigationalFiltering = NavigationalFiltering.GetNavigationalFiltering(context); DataTable lDataTable = ExecuteQueryRelated(context.Agent, new Dictionary <string, Oid>(), context.DisplaySetAttributes, context.OrderCriteriaNameSelected, navigationalFiltering, lLastOid, context.BlockSize, ref lLastBlock); context.LastBlock = lLastBlock; return(lDataTable); }
/// <summary> /// Creates the specific IUPopulationController of the 'PIU_NaveNodriza' IU pattern. /// </summary> /// <param name="exchangeInfo">IUPopulationContext reference.</param> /// <returns>Specific IUPopulationController of the 'PIU_NaveNodriza' IU pattern.</returns> public static IUPopulationController Population_PIU_NaveNodriza(ExchangeInfo exchangeInfo) { IUPopulationContext lContext = new IUPopulationContext(exchangeInfo, "NaveNodriza", "PIU_NaveNodriza"); // Block size. lContext.BlockSize = 40; IUPopulationController lController = new IUPopulationController("PIU_NaveNodriza", "PIU_NaveNodriza", "Clas_1347649273856884UIPobCl_1_Alias", lContext, null); // Action _Auto_. lController.Action = NaveNodriza.Action__Auto_(lController); // DisplaySet '_Auto_'. DisplaySetByBlocksController lDisplaySetByBlocksController = new DisplaySetByBlocksController(NaveNodriza.DisplaySet__Auto_(lController)); lController.DisplaySet = lDisplaySetByBlocksController; // Get user preferences for this scenario. lController.SetPreferences(Logic.UserPreferences.GetScenarioPrefs("NaveNodriza:PIU_NaveNodriza") as PopulationPrefs); return(lController); }
/// <summary> /// Copy constructor /// </summary> /// <param name="nodeToBeCopied"></param> /// <param name="newExchangeInfo"></param> public TreeNodeController(TreeNodeController nodeToBeCopied, ExchangeInfoNavigation newExchangeInfo) { mRecursiveNodes = new List <TreeNodeController>(); mParentNodeId = nodeToBeCopied.ParentNodeId; mNodeId = nodeToBeCopied.NodeId; mIsMainMaster = false; mShowGroupingNode = nodeToBeCopied.ShowGroupingNode; Filters = new FilterControllerList(); mQueryContext = new IUPopulationContext(newExchangeInfo, nodeToBeCopied.QueryContext.ClassName, ""); mQueryContext.DisplaySetAttributes = nodeToBeCopied.QueryContext.DisplaySetAttributes; mOriginalNode = nodeToBeCopied; IUPopulationContext lPopContext = nodeToBeCopied.QueryContext as IUPopulationContext; if (lPopContext != null) { ((IUPopulationContext)QueryContext).BlockSize = lPopContext.BlockSize; } mShowInTree = nodeToBeCopied.ShowInTree; mFinalNodeID = nodeToBeCopied.FinalNodeID; }
/// <summary> /// Creates the specific IUPopulationController of the 'PIU_Aeronave' IU pattern. /// </summary> /// <param name="exchangeInfo">IUPopulationContext reference.</param> /// <returns>Specific IUPopulationController of the 'PIU_Aeronave' IU pattern.</returns> public static IUPopulationController Population_PIU_Aeronave(ExchangeInfo exchangeInfo) { IUPopulationContext lContext = new IUPopulationContext(exchangeInfo, "Aeronave", "PIU_Aeronave"); // Block size. lContext.BlockSize = 40; IUPopulationController lController = new IUPopulationController("PIU_Aeronave", "Aeronave", "Clas_1348178411520734UIPobCl_1_Alias", lContext, null); // Action _Auto_. lController.Action = Aeronave.Action__Auto_(lController); // Navigation _Auto_. lController.Navigation = Aeronave.Navigation__Auto_(lController); // DisplaySet '_Auto_'. DisplaySetByBlocksController lDisplaySetByBlocksController = new DisplaySetByBlocksController(Aeronave.DisplaySet__Auto_(lController)); lController.DisplaySet = lDisplaySetByBlocksController; // Get user preferences for this scenario. lController.SetPreferences(Logic.UserPreferences.GetScenarioPrefs("Aeronave:PIU_Aeronave") as PopulationPrefs); return(lController); }
/// <summary> /// Creates the specific IUPopulationController of the '_Auto_' IU pattern. /// </summary> /// <param name="exchangeInfo">IUPopulationContext reference.</param> /// <returns>Specific IUPopulationController of the '_Auto_' IU pattern.</returns> public static IUPopulationController Population__Auto_(ExchangeInfo exchangeInfo) { IUPopulationContext lContext = new IUPopulationContext(exchangeInfo, "Revision", "_Auto_"); // Block size. lContext.BlockSize = 40; IUPopulationController lController = new IUPopulationController("_Auto_", "Revision", "Clas_1348178542592347UIPobCl_Auto_Alias", lContext, null); // Action _Auto_. lController.Action = Revision.Action__Auto_(lController); // Navigation _Auto_. lController.Navigation = Revision.Navigation__Auto_(lController); // DisplaySet '_Auto_'. DisplaySetByBlocksController lDisplaySetByBlocksController = new DisplaySetByBlocksController(Revision.DisplaySet__Auto_(lController)); lDisplaySetByBlocksController.DisplaySetList.Add(Revision.DisplaySet__Auto_(lController).CurrentDisplaySet); lController.DisplaySet = lDisplaySetByBlocksController; // Get user preferences for this scenario. lController.SetPreferences(Logic.UserPreferences.GetScenarioPrefs("Revision:_Auto_") as PopulationPrefs); return(lController); }
/// <summary> /// /// </summary> /// <param name="context"></param> /// <returns></returns> private DataTable GetNextData(IUPopulationContext context) { DataTable lData = null; // When is navigation, must have Seletected, Oids if not showed populations must be nothing. if (ExchangeInfo.IsNavigation(context.ExchangeInformation)) { if (ExchangeInfo.HasSelectedOids(context.ExchangeInformation)) { lData = GetQuery(context); } else { this.Context.LastBlock = true; } } else { lData = GetQuery(context); } return(lData); }
/// <summary> /// Execute a Query Filter or Query Population depending if has <b>FilterNameSelected</b> or not. /// </summary> /// <param name="context"></param> /// <returns></returns> protected virtual DataTable GetQuery(IUPopulationContext context) { DataTable lData = null; // If one filters is selected. use the Filter search if (Context.ExecutedFilter != string.Empty) { try { // Logic API call. lData = Logic.ExecuteQueryFilter(Context); } catch (Exception logicException) { ScenarioManager.LaunchErrorScenario(logicException); } } else { lData = GetQueryPopulation(context); } return(lData); }
/// <summary> /// Query a number of blocks form the server. /// </summary> /// <param name="context"></param> /// <param name="numBlocks"></param> private DataTable GetDataTableBlocks(IUPopulationContext context, int numBlocks) { DataTable lDataResult = null; for (int iaux = 0; iaux < numBlocks; iaux++) { // Get Data Query. DataTable lDataAux = GetQuery(Context); AddLastOid(Context, lDataAux); if (lDataAux != null) { if (lDataResult == null) { lDataResult = lDataAux; } else { lDataResult.Merge(lDataAux); } } } return lDataResult; }
/// <summary> /// Execute a <b>Query Related</b> or <b>Query Populaton</b> depending of exchange type. /// <b>ExchangeType.Navigation</b> execute Query Related. /// <b>ExchangeType.Action or SelectinForward</b> execute Query Population. /// </summary> /// <param name="context"></param> /// <returns></returns> protected virtual DataTable GetQueryPopulation(IUPopulationContext context) { DataTable lData = null; // Depending on the ExchangeInfo Type switch (Context.ExchangeInformation.ExchangeType) { case ExchangeType.Navigation: try { // Logic API call. lData = Logic.ExecuteQueryRelated(context); } catch (Exception logicException) { ScenarioManager.LaunchErrorScenario(logicException); } break; case ExchangeType.Action: case ExchangeType.SelectionForward: // If this Population doesn't contain filters, search all population if (Filters.Count == 0) { try { // Logic API call. lData = Logic.ExecuteQueryPopulation(context); } catch (Exception logicException) { ScenarioManager.LaunchErrorScenario(logicException); } } else { // If there are no filters executed, set the last block true to do not // retrieve all the instances this.Context.LastBlock = true; } break; default: lData = null; break; } return lData; }
/// <summary> /// Execute a Query Filter or Query Population depending if has <b>FilterNameSelected</b> or not. /// </summary> /// <param name="context"></param> /// <returns></returns> protected virtual DataTable GetQuery(IUPopulationContext context) { DataTable lData = null; // If one filters is selected. use the Filter search if (Context.ExecutedFilter != string.Empty) { try { // Logic API call. lData = Logic.ExecuteQueryFilter(Context); } catch (Exception logicException) { ScenarioManager.LaunchErrorScenario(logicException); } } else { lData = GetQueryPopulation(context); } return lData; }
/// <summary> /// Execute a query related with other instance. /// </summary> /// <param name="context">Current context.</param> /// <returns>A DataTable with the instances searched.</returns> public static DataTable ExecuteQueryRelated(IUQueryContext context) { try { ExchangeInfo lExchangeInfo = context.ExchangeInformation; if (lExchangeInfo.ExchangeType != ExchangeType.Navigation || lExchangeInfo.SelectedOids.Count == 0) { return(null); } IUPopulationContext lIUContext = context as IUPopulationContext; int blockSize = 1; if (lIUContext != null) { blockSize = lIUContext.BlockSize; } ExchangeInfoNavigation lNavInfo = lExchangeInfo as ExchangeInfoNavigation; // Specific case. No role name indicates Query by Instance. if (lNavInfo.RolePath == "") { if (lIUContext != null) { lIUContext.LastBlock = true; } PasajeroOid lOidInstance = new PasajeroOid(lNavInfo.SelectedOids[0]); return(ExecuteQueryInstance(context.Agent, lOidInstance, context.DisplaySetAttributes)); } // Get link items. Oid lOid = lNavInfo.SelectedOids[0]; Dictionary <string, Oid> lLinkItems = new Dictionary <string, Oid>(StringComparer.CurrentCultureIgnoreCase); lLinkItems.Add(lNavInfo.RolePath, lOid); bool lLastBlock = true; PasajeroOid lLastOid = null; string lOrderCriteria = string.Empty; // Get population members. if (lIUContext != null) { if (lIUContext.LastOid != null) { lLastOid = new PasajeroOid(lIUContext.LastOid); } lOrderCriteria = lIUContext.OrderCriteriaNameSelected; } NavigationalFiltering navigationalFiltering = NavigationalFiltering.GetNavigationalFiltering(context); DataTable lDataTable = ExecuteQueryRelated(context.Agent, lLinkItems, context.DisplaySetAttributes, lOrderCriteria, navigationalFiltering, lLastOid, blockSize, ref lLastBlock); if (lIUContext != null) { lIUContext.LastBlock = lLastBlock; } return(lDataTable); } catch (Exception e) { ScenarioManager.LaunchErrorScenario(e); return(null); } }
/// <summary> /// Creates the specific IUPopulationController of the 'PIU_NaveNodriza' IU pattern. /// </summary> /// <param name="exchangeInfo">IUPopulationContext reference.</param> /// <returns>Specific IUPopulationController of the 'PIU_NaveNodriza' IU pattern.</returns> public static IUPopulationController Population_PIU_NaveNodriza(ExchangeInfo exchangeInfo) { IUPopulationContext lContext = new IUPopulationContext(exchangeInfo,"NaveNodriza", "PIU_NaveNodriza"); // Block size. lContext.BlockSize = 40; IUPopulationController lController = new IUPopulationController("PIU_NaveNodriza", "PIU_NaveNodriza", "Clas_1347649273856884UIPobCl_1_Alias", lContext, null); // Action _Auto_. lController.Action = NaveNodriza.Action__Auto_(lController); // DisplaySet '_Auto_'. DisplaySetByBlocksController lDisplaySetByBlocksController = new DisplaySetByBlocksController(NaveNodriza.DisplaySet__Auto_(lController)); lController.DisplaySet = lDisplaySetByBlocksController; // Get user preferences for this scenario. lController.SetPreferences(Logic.UserPreferences.GetScenarioPrefs("NaveNodriza:PIU_NaveNodriza") as PopulationPrefs); return lController; }
/// <summary> /// /// </summary> /// <param name="context"></param> /// <returns></returns> private DataTable GetNextData(IUPopulationContext context) { DataTable lData = null; // When is navigation, must have Seletected, Oids if not showed populations must be nothing. if (ExchangeInfo.IsNavigation(context.ExchangeInformation)) { if (ExchangeInfo.HasSelectedOids(context.ExchangeInformation)) { lData = GetQuery(context); } else { this.Context.LastBlock = true; } } else { lData = GetQuery(context); } return lData; }
/// <summary> /// Add to Stack of last Oid queried. /// </summary> /// <param name="context">Context to save the last oid.</param> /// <param name="dataTable">Data table queried.</param> /// <returns></returns> protected virtual Oid AddLastOid(IUPopulationContext context, DataTable dataTable) { if (dataTable != null) { Oid lLastOid = Adaptor.ServerConnection.GetLastOid(dataTable); return AddLastOid(context, lLastOid); } return null; }
/// <summary> /// Creates the specific IUPopulationController of the 'PIU_Pasajero' IU pattern. /// </summary> /// <param name="exchangeInfo">IUPopulationContext reference.</param> /// <returns>Specific IUPopulationController of the 'PIU_Pasajero' IU pattern.</returns> public static IUPopulationController Population_PIU_Pasajero(ExchangeInfo exchangeInfo) { IUPopulationContext lContext = new IUPopulationContext(exchangeInfo,"Pasajero", "PIU_Pasajero"); // Block size. lContext.BlockSize = 40; IUPopulationController lController = new IUPopulationController("PIU_Pasajero", "Pasajero", "Clas_1348178542592658UIPobCl_1_Alias", lContext, null); // Action _Auto_. lController.Action = Pasajero.Action__Auto_(lController); // Navigation _Auto_. lController.Navigation = Pasajero.Navigation__Auto_(lController); // DisplaySet '_Auto_'. DisplaySetByBlocksController lDisplaySetByBlocksController = new DisplaySetByBlocksController(Pasajero.DisplaySet__Auto_(lController)); lController.DisplaySet = lDisplaySetByBlocksController; // Get user preferences for this scenario. lController.SetPreferences(Logic.UserPreferences.GetScenarioPrefs("Pasajero:PIU_Pasajero") as PopulationPrefs); return lController; }
/// <summary> /// Add to Stack of last Oid queried. /// </summary> /// <param name="context">Context to save the last oid.</param> /// <param name="lastOid">last Oid.</param> /// <returns></returns> protected virtual Oid AddLastOid(IUPopulationContext context, Oid lastOid) { if (lastOid != null) { context.LastOids.Push(lastOid); } return lastOid; }
/// <summary> /// Creates the specific IUPopulationController of the '_Auto_' IU pattern. /// </summary> /// <param name="exchangeInfo">IUPopulationContext reference.</param> /// <returns>Specific IUPopulationController of the '_Auto_' IU pattern.</returns> public static IUPopulationController Population__Auto_(ExchangeInfo exchangeInfo) { IUPopulationContext lContext = new IUPopulationContext(exchangeInfo,"Revision", "_Auto_"); // Block size. lContext.BlockSize = 40; IUPopulationController lController = new IUPopulationController("_Auto_", "Revision", "Clas_1348178542592347UIPobCl_Auto_Alias", lContext, null); // Action _Auto_. lController.Action = Revision.Action__Auto_(lController); // Navigation _Auto_. lController.Navigation = Revision.Navigation__Auto_(lController); // DisplaySet '_Auto_'. DisplaySetByBlocksController lDisplaySetByBlocksController = new DisplaySetByBlocksController(Revision.DisplaySet__Auto_(lController)); lDisplaySetByBlocksController.DisplaySetList.Add(Revision.DisplaySet__Auto_(lController).CurrentDisplaySet); lController.DisplaySet = lDisplaySetByBlocksController; // Get user preferences for this scenario. lController.SetPreferences(Logic.UserPreferences.GetScenarioPrefs("Revision:_Auto_") as PopulationPrefs); return lController; }
/// <summary> /// Obtains the NavigationalFiltering contained in a IUContext. /// </summary> /// <param name="context">Context the NavigationalFiltering is obtained from.</param> /// <returns>NavigationalFiltering contained in the context.</returns> public static NavigationalFiltering GetNavigationalFiltering(IUContext context) { NavigationalFiltering lResult = null; if (HasNavigationalFiltering(context)) { switch (context.ExchangeInformation.ExchangeType) { case ExchangeType.Navigation: { ExchangeInfoNavigation lExchangeInfo = context.ExchangeInformation as ExchangeInfoNavigation; lResult = new NavigationalFiltering( new SelectedObjectNavigationFiltering( lExchangeInfo.NavigationalFilterIdentity, lExchangeInfo.SelectedOids[0])); } break; case ExchangeType.Action: { ExchangeInfoAction lExchangeInfo = context.ExchangeInformation as ExchangeInfoAction; if ((lExchangeInfo.SelectedOids == null) || (lExchangeInfo.SelectedOids.Count == 0) || (lExchangeInfo.SelectedOids[0] == null)) { IUServiceContext lServiceContext = context.ExchangeInformation.Previous as IUServiceContext; ArgumentsList lArguments = ArgumentsList.GetArgumentsFromContext(lServiceContext); lResult = new NavigationalFiltering( new ServiceIUNavigationFiltering( lExchangeInfo.NavigationalFilterIdentity, lArguments)); } else { lResult = new NavigationalFiltering( new SelectedObjectNavigationFiltering( lExchangeInfo.NavigationalFilterIdentity, lExchangeInfo.SelectedOids[0])); } } break; case ExchangeType.SelectionForward: { ExchangeInfoSelectionForward lExchangeInfo = context.ExchangeInformation as ExchangeInfoSelectionForward; ArgumentsList lArguments = null; IUServiceContext lServiceContext = null; IUPopulationContext lPopulationContext = null; string lClassName = string.Empty; // context is of IUServiceContext type. if (context.ExchangeInformation.Previous.ContextType == ContextType.Service) { lServiceContext = context.ExchangeInformation.Previous as IUServiceContext; lArguments = ArgumentsList.GetArgumentsFromContext(lServiceContext); lClassName = lServiceContext.ClassName; if (string.Compare(lClassName, "Global", true) == 0) { lClassName = string.Empty; } lResult = new NavigationalFiltering( new ArgumentNavigationFiltering( lClassName, lServiceContext.ServiceName, lServiceContext.SelectedInputField, lArguments)); } // context is of lPopulationContext type. if (context.ExchangeInformation.Previous.ContextType == ContextType.Population) { lPopulationContext = context.ExchangeInformation.Previous as IUPopulationContext; lClassName = lPopulationContext.ClassName; string lFilterName = lExchangeInfo.ServiceName; string lFilterVariableName = lExchangeInfo.ArgumentName; lArguments = ArgumentsList.GetArgumentsFromContext(lPopulationContext.Filters[lFilterName]); lResult = new NavigationalFiltering( new FilterVariableNavigationFiltering( lClassName, lFilterName, lFilterVariableName, lArguments)); } } break; case ExchangeType.SelectionBackward: break; default: break; } } return(lResult); }
/// <summary> /// Execute a query to retrieve a set of instances, without any condition. /// </summary> /// <param name="context">Current context.</param> /// <returns>A DataTable with the instances searched.</returns> public static DataTable ExecuteQueryPopulation(IUPopulationContext context) { // Parameter values object[] lParameters = new object[1]; lParameters[0] = context; // Parameter types Type[] lTypes = new Type[1]; lTypes[0] = typeof(IUPopulationContext); return ExecuteMethod(GetClassTypeName(context.ClassName), "ExecuteQueryPopulation", lTypes, lParameters) as DataTable; }