public void PrepararImpressão(RelatorioRegraPessoa relatório, List<ImpressãoRegraPessoa> lstEntidades, Comissão c)
        {
            DataSetRegraPessoa ds = new DataSetRegraPessoa();

            DataTable tabelaInformações = ds.Tables["Informacoes"];
            DataRow linha = tabelaInformações.NewRow();
            linha["Mes"] = c.MêsReferência.ToString("MM/yyyy");

            tabelaInformações.Rows.Add(linha);

            DataTable tabelaItens = ds.Tables["Itens"];

            foreach (ImpressãoRegraPessoa entidade in lstEntidades)
            {
                DataRow item = tabelaItens.NewRow();
                item["valorv"] = entidade.Valorv;
                item["valorc"] = entidade.Valorc;
                item["valore"] = entidade.Valore;
                item["apagar"] = entidade.APagar;
                item["regra"] = Regra.ObterNome(entidade.Regra);
                item["Comissaopara"] = Entidades.Pessoa.Pessoa.AbreviarNome(entidade.Nomecomissaopara);

                tabelaItens.Rows.Add(item);
            }

            relatório.SetDataSource(ds);
        }
        public void PrepararImpressão(RelatorioResumo relatório, List<ImpressãoResumo> lstEntidades, Comissão c)
        {
            DataSetResumo ds = new DataSetResumo();

            DataTable tabelaInformações = ds.Tables["Informacoes"];
            DataRow linha = tabelaInformações.NewRow();
            linha["Mes"] = c.MêsReferência.ToString("MM/yyyy");

            tabelaInformações.Rows.Add(linha);

            DataTable tabelaItens = ds.Tables["Itens"];

            foreach (ImpressãoResumo entidade in lstEntidades)
            {
                DataRow item = tabelaItens.NewRow();
                item["valorv"] = entidade.Valorv;
                item["faturamentocompartilhado"] = entidade.FaturamentoCompartilhado;
                item["valorc"] = entidade.Valorc;
                item["valore"] = entidade.Valore;
                item["apagar"] = entidade.APagar;
                item["nomecomissaopara"] = Entidades.Pessoa.Pessoa.AbreviarNome(entidade.Nomecomissaopara);
                item["setor"] = entidade.Setor;

                tabelaItens.Rows.Add(item);
            }

            relatório.SetDataSource(ds);
        }
        internal void Carregar(Comissão comissão)
        {
            this.comissão = comissão;

            if (!bg.IsBusy)
                bg.RunWorkerAsync();
        }
        public void PrepararImpressão(RelatorioCompartilhada relatório, List<ImpressãoCompartilhada> lstEntidades, Comissão c)
        {
            DataSetCompartilhada ds = new DataSetCompartilhada();

            DataTable tabelaInformações = ds.Tables["Informacoes"];
            DataRow linha = tabelaInformações.NewRow();
            linha["Mes"] = c.MêsReferência.ToString("MM/yyyy");

            tabelaInformações.Rows.Add(linha);

            DataTable tabelaItens = ds.Tables["Itens"];

            foreach (ImpressãoCompartilhada entidade in lstEntidades)
            {
                DataRow item = tabelaItens.NewRow();

                if (entidade.Comissaopara == entidade.Representante)
                    item["Valorv"] = 0;
                else
                    item["Valorv"] = entidade.Valorv;

                item["Valorc"] = entidade.Valorc;
                item["Valore"] = entidade.Valore;
                item["Apagar"] = entidade.APagar;
                item["Comissaopara"] = Entidades.Pessoa.Pessoa.AbreviarNome(entidade.Comissaopara);
                item["Vendedor"] = Entidades.Pessoa.Pessoa.AbreviarNome(entidade.Vendedor);
                item["Representante"] = Entidades.Pessoa.Pessoa.AbreviarNome(entidade.Representante);

                tabelaItens.Rows.Add(item);
            }

            relatório.SetDataSource(ds);
        }
Пример #5
0
        internal void Carregar(Comissão comissão)
        {
            this.comissão = comissão;

            if (!bg.IsBusy)
            {
                AguardeDB.Mostrar();
                bg.RunWorkerAsync(comissão);
                UseWaitCursor = true;
            }

        }
        internal void DefinirLimites(DateTime? diaInicial, DateTime? diaFinal, Entidades.Pessoa.Pessoa comissãoPara, Comissão comissão, bool emAberto, bool estorno)
        {
            this.comissão = comissão;
            this.diaInicial = diaInicial;
            this.diaFinal = diaFinal;
            this.comissãoPara = comissãoPara;
            this.emAberto = emAberto;
            this.estorno = estorno;

            btnAdicionarLançamento.Visible = btnRemoverLançamento.Visible = Comissão.UsuárioPodeManipularComissão;

            Comissão.AssegurarManipulaçãoComissãoPara(comissãoPara);
        }
        public DataSet ObterDataSet(List<ImpressãoComissãoVenda> lstEntidades, Comissão c)
        {
            DataSetComissaoVenda ds = new DataSetComissaoVenda();

            DataTable tabelaInformações = ds.Tables["Informacoes"];
            DataRow linha = tabelaInformações.NewRow();
            linha["Mes"] = c.MêsReferência.ToString("MM/yyyy");

            tabelaInformações.Rows.Add(linha);

            DataTable tabelaItens = ds.Tables["Itens"];

            foreach (ImpressãoComissãoVenda entidade in lstEntidades)
                entidade.ObterImpressão(tabelaItens);

            return ds;
        }
        public void Carregar(DateTime? diaInicial, DateTime? diaFinal, Entidades.Pessoa.Pessoa comissãoPara, Comissão comissão, bool emAberto, bool estorno)
        {
            if (bg.IsBusy)
                return;


            Comissão.AssegurarManipulaçãoComissãoPara(comissãoPara);

            this.diaInicial = diaInicial;
            this.diaFinal = diaFinal;
            this.comissãoPara = comissãoPara;
            this.comissão = comissão;
            this.emAberto = emAberto;
            this.estorno = estorno;

            lst.Items.Clear();

            UseWaitCursor = true;
            AguardeDB.Mostrar();

            bg.RunWorkerAsync();
        }
 public void PrepararImpressão(RelatorioComissaoVenda relatório, List<ImpressãoComissãoVenda> lstEntidades, Comissão c)
 {
     DataSet ds = ObterDataSet(lstEntidades, c);
     relatório.SetDataSource(ds);
 }
Пример #10
0
        public void Abrir(Comissão comissão)
        {
            this.comissão = comissão;
            títuloBaseInferior.Título = (Comissão.UsuárioPodeManipularComissão ? "Edição de comissão" : "Comissão de " + 
                Entidades.Pessoa.Pessoa.AbreviarNome(ComissãoPara.Nome)) + " nº " + comissão.Código.ToString() +
                " - " + comissão.MêsReferência.ToString("MMMM/yyyy");

            if (!Comissão.UsuárioPodeManipularComissão)
                AlternarExibiçãoSomenteLeitura();

            títuloBaseInferior.Descrição = comissão.Descrição;
            DefinirNovosLimites();

            CarregarAbaAtual();
        }
Пример #11
0
        /// <summary>
        /// Retorna valores de comissão calculados pelo banco de dados, agrupados no nível venda-pessoa-regra.
        /// aberto: para exibição no lado esquerdo da tela, ou seja, comissões em aberto.
        /// estorno: indica se é a tela de venda (estorno=falso) ou estorno. (estorno=true).
        /// 
        /// Pode-se filtrar ainda por dia inicial e final da data da venda,
        /// comissãoPara: Pessoa a receber a comissão. nulo para todas as pessoas.
        /// </summary>
        public static List<ComissãoValor> Obter(DateTime? diaInicial, DateTime? diaFinal, Pessoa.Pessoa comissãoPara, Comissão comissão, bool aberto, bool estorno)
        {
            StringBuilder cmd = new StringBuilder("select v.data as data, c.setor, p.nome as clientenome, p.codigo as clientecodigo, c.vendedor, c.comissaopara, ");
            cmd.Append(" c.venda, regra, valorc, valorv from comissao_venda c join pessoa p on c.cliente=p.codigo ");
            cmd.Append(" join venda v on c.venda=v.codigo ");

            if (!estorno)
            {
                // Não Estorno !
                if (aberto)
                    cmd.Append(" LEFT ");

                cmd.Append(" JOIN comissaovenda cv on ");

                if (!aberto)
                {
                    // Direito
                    cmd.Append(" cv.comissao=");
                    cmd.Append(DbTransformar(comissão.Código));
                    cmd.Append(" AND ");
                }

                cmd.Append(" cv.venda=c.venda AND cv.pessoa=c.comissaopara ");
            } else
            {
                // Estorno !
                cmd.Append(" LEFT JOIN comissaovenda cv on ");

                if (aberto)
                {
                    cmd.Append(" cv.comissao !=");
                    cmd.Append(DbTransformar(comissão.Código));
                    cmd.Append(" AND ");
                }

                cmd.Append(" cv.venda=c.venda AND cv.pessoa=c.comissaopara ");
            }

            cmd.Append(" LEFT JOIN comissao_saldo cs on cs.venda=v.codigo AND cs.pessoa=c.comissaopara ");

            if (estorno && !aberto)
            {
                cmd.Append(" JOIN comissaoestornovenda cve on cve.comissao=");
                cmd.Append(DbTransformar(comissão.Código));
                cmd.Append(" and cve.venda=v.codigo and cve.pessoa=c.comissaopara ");
            }

            cmd.Append(" WHERE 1=1 ");
            if (diaInicial.HasValue)
            {
                cmd.Append(" AND v.data > '");
                cmd.Append(diaInicial.Value.ToString("yyyy-MM-dd"));
                cmd.Append(" 00:00:00'");
            }

            if (diaFinal.HasValue)
            {
                cmd.Append(" AND v.data < '");
                cmd.Append(diaFinal.Value.AddDays(1).ToString("yyyy-MM-dd"));
                cmd.Append(" 00:00:00'");
            }


            if (comissãoPara != null)
            {
                cmd.Append(" AND c.comissaopara=");
                cmd.Append(DbTransformar(comissãoPara.Código));
            }

            if (estorno && aberto)
                cmd.Append(" AND ifnull(cs.saldo,0) != 0");

            if (!estorno && aberto)
                cmd.Append(" AND ifnull(cs.saldo,0) != 1");

            if (aberto)
            {
                cmd.Append("  AND (c.comissaopara,  c.venda) NOT in (select pessoa, venda from comissaovenda where comissao=");
                cmd.Append(DbTransformar(comissão.Código));
                cmd.Append(") ");

                cmd.Append("  AND (c.comissaopara,  c.venda) NOT in (select pessoa, venda from comissaoestornovenda where comissao=");
                cmd.Append(DbTransformar(comissão.Código));
                cmd.Append(") ");
            }
            
            cmd.Append(" order by v.data desc, v.codigo desc");

            List<ComissãoValor> retorno = Mapear<ComissãoValor>(cmd.ToString());

            return retorno;
        }