public List <T> ListarPorUnidadeNegocio(Guid unidadeNegocioId, int ano, Domain.Enum.OrcamentodaUnidade.Trimestres trimestre) { var query = GetQueryExpression <T>(true); query.Criteria.AddCondition("statecode", ConditionOperator.Equal, 0); query.Criteria.AddCondition("itbc_ano", ConditionOperator.Equal, ano); query.Criteria.AddCondition("itbc_trimestre", ConditionOperator.Equal, (int)trimestre); query.Criteria.AddCondition("itbc_unidadedenegocioid", ConditionOperator.Equal, unidadeNegocioId); return((List <T>) this.RetrieveMultiple(query).List); }
public List <T> ListarPorUnidadeNegocio(Guid unidadeNegocioId, int ano, Domain.Enum.OrcamentodaUnidade.Trimestres trimestre, Guid subfamiliaProdutoId) { var query = GetQueryExpression <T>(true); query.Criteria.AddCondition("statecode", ConditionOperator.Equal, 0); query.Criteria.AddCondition("itbc_ano", ConditionOperator.Equal, ano); query.Criteria.AddCondition("itbc_trimestre", ConditionOperator.Equal, (int)trimestre); query.Criteria.AddCondition("itbc_unidade_negocio", ConditionOperator.Equal, unidadeNegocioId); query.AddLink("itbc_metadocanalporsubfamilia", "itbc_metadocanalporsubfamiliaid", "itbc_metadocanalporsubfamiliaid") .LinkCriteria.AddCondition("itbc_subfamiliaid", ConditionOperator.Equal, subfamiliaProdutoId); return((List <T>) this.RetrieveMultiple(query).List); }
public T ObterPorCodigo(string chaveIntegracaoUnidadeNegocio, Domain.Enum.OrcamentodaUnidade.Trimestres trimestre, string codigoEmitenteCanal, int ano, params string[] columns) { var query = GetQueryExpression <T>(true); if (columns != null && columns.Length > 0) { query.ColumnSet.AddColumns(columns); } #region Condições query.Criteria.AddCondition("statecode", ConditionOperator.Equal, 0); //query.Criteria.AddCondition("itbc_unidadedenegocioid", ConditionOperator.Equal, UnidNeg); query.Criteria.AddCondition("itbc_trimestre", ConditionOperator.Equal, (int)trimestre); query.Criteria.AddCondition("itbc_ano", ConditionOperator.Equal, ano); query.AddLink("account", "itbc_canalid", "accountid"); query.LinkEntities[0].LinkCriteria.AddCondition("accountnumber", ConditionOperator.Equal, codigoEmitenteCanal); query.AddLink("businessunit", "itbc_unidadedenegocioid", "businessunitid"); query.LinkEntities[1].LinkCriteria.AddCondition("itbc_chave_integracao", ConditionOperator.Equal, chaveIntegracaoUnidadeNegocio); #endregion #region Ordenações OrderExpression ord1 = new OrderExpression("itbc_name", OrderType.Ascending); query.Orders.Add(ord1); #endregion var colecao = this.RetrieveMultiple(query); if (colecao.List.Count == 0) { return(default(T)); } return(colecao.List[0]); }
public List <PotencialdoKAporSubfamilia> ListarValoresPorUnidadeNegocio(Guid unidadeNegocioId, int ano, Domain.Enum.OrcamentodaUnidade.Trimestres trimestre) { var lista = new List <PotencialdoKAporSubfamilia>(); string fetch = @"<fetch aggregate='true' no-lock='true' returntotalrecordcount='true' > <entity name='itbc_metadokaporproduto' > <attribute name='itbc_metaplanejada' alias='valor_planejado' aggregate='sum' /> <attribute name='itbc_metarealizada' alias='valor_realizado' aggregate='sum' /> <link-entity name='itbc_metadokaporsubfamilia' from='itbc_metadokaporsubfamiliaid' to='itbc_metadokaporsubfamiliaid' link-type='inner' alias='sub' > <attribute name='itbc_metadokaporsubfamiliaid' alias='id' groupby='true' /> <filter type='and' > <condition attribute='itbc_ano' operator='eq' value='{0}' /> <condition attribute='itbc_unidadedenegocioid' operator='eq' value='{1}' /> <condition attribute='itbc_trimestre' operator='eq' value='{2}' /> </filter> </link-entity> </entity> </fetch>"; fetch = string.Format(fetch, ano, unidadeNegocioId, (int)trimestre); var retrieveMultiple = new RetrieveMultipleRequest() { Query = new FetchExpression(fetch) }; EntityCollection collection = ((RetrieveMultipleResponse)this.Execute(retrieveMultiple)).EntityCollection; foreach (var item in collection.Entities) { var potencialSubfamilia = new PotencialdoKAporSubfamilia(OrganizationName, IsOffline, Provider) { ID = (Guid)((AliasedValue)(item.Attributes["id"])).Value, PotencialPlanejado = ((Money)((AliasedValue)item.Attributes["valor_planejado"]).Value).Value, PotencialRealizado = ((Money)((AliasedValue)item.Attributes["valor_realizado"]).Value).Value }; lista.Add(potencialSubfamilia); } return(lista); }
public List <MetadaUnidadeporProduto> ListarValoresPorUnidadeNegocio(Guid unidadeNegocioId, int ano, Domain.Enum.OrcamentodaUnidade.Trimestres trimestre) { var lista = new List <MetadaUnidadeporProduto>(); string fetch = @"<fetch aggregate='true' no-lock='true' > <entity name='itbc_potencialdosupervisorporproduto' > <attribute name='itbc_potencialplanejado' alias='valor_planejado' aggregate='sum' /> <attribute name='itbc_potencialrealizado' alias='valor_realizado' aggregate='sum' /> <attribute name='itbc_produtoid' alias='produto' groupby='true' /> <attribute name='itbc_qtdeplanejada' alias='quantidade_planejada' aggregate='sum' /> <attribute name='itbc_qtderealizada' alias='quantidade_realizada' aggregate='sum' /> <filter type='and' > <condition attribute='itbc_ano' operator='eq' value='{0}' /> <condition attribute='itbc_unidade_negociosid' operator='eq' value='{1}' /> <condition attribute='itbc_trimestre' operator='eq' value='{2}' /> </filter> <link-entity name='itbc_potencial_supervisor_subfamilia' from='itbc_potencial_supervisor_subfamiliaid' to='itbc_potencialsupervisorporprodutoid' > <attribute name='itbc_subfamliadeprodutoid' alias='subfamilia' groupby='true' /> </link-entity> </entity> </fetch>"; fetch = string.Format(fetch, ano, unidadeNegocioId, (int)trimestre); var retrieveMultiple = new RetrieveMultipleRequest() { Query = new FetchExpression(fetch) }; EntityCollection collection = ((RetrieveMultipleResponse)this.Execute(retrieveMultiple)).EntityCollection; foreach (var item in collection.Entities) { var produto = ((EntityReference)((AliasedValue)item.Attributes["produto"]).Value); var subfamilia = ((EntityReference)((AliasedValue)item.Attributes["subfamilia"]).Value); var potencial = new MetadaUnidadeporProduto(OrganizationName, IsOffline, Provider) { MetaPlanejada = ((Money)((AliasedValue)item.Attributes["valor_planejado"]).Value).Value, MetaRealizada = ((Money)((AliasedValue)item.Attributes["valor_realizado"]).Value).Value, QtdePlanejada = (decimal)((AliasedValue)item.Attributes["quantidade_planejada"]).Value, QtdeRealizada = (decimal)((AliasedValue)item.Attributes["quantidade_realizada"]).Value, Trimestre = (int)trimestre, Ano = ano, Produto = new SDKore.DomainModel.Lookup(produto.Id, produto.Name, produto.LogicalName), Subfamilia = new SDKore.DomainModel.Lookup(subfamilia.Id, subfamilia.Name, subfamilia.LogicalName) }; lista.Add(potencial); } return(lista); }