private void afterBusca() { if (string.IsNullOrEmpty(CD_Empresa.Text)) { MessageBox.Show("Obrigatorio informar empresa.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); CD_Empresa.Focus(); return; } if (string.IsNullOrEmpty(CD_Clifor.Text)) { MessageBox.Show("Obrigatorio informar clifor.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); CD_Clifor.Focus(); return; } if (string.IsNullOrEmpty(Tp_Dup.Text)) { MessageBox.Show("Obrigatorio informar tipo duplicata.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Tp_Dup.Focus(); return; } Utils.TpBusca[] filtro = new Utils.TpBusca[6]; //Empresa filtro[0].vNM_Campo = "a.cd_empresa"; filtro[0].vOperador = "="; filtro[0].vVL_Busca = "'" + CD_Empresa.Text.Trim() + "'"; //Clifor filtro[1].vNM_Campo = "a.cd_clifor"; filtro[1].vOperador = "="; filtro[1].vVL_Busca = "'" + CD_Clifor.Text.Trim() + "'"; //Tipo Duplicata filtro[2].vNM_Campo = "a.tp_duplicata"; filtro[2].vOperador = "="; filtro[2].vVL_Busca = "'" + Tp_Dup.Text.Trim() + "'"; //Duplicata Ativa filtro[3].vNM_Campo = "isnull(dup.st_registro, 'A')"; filtro[3].vOperador = "<>"; filtro[3].vVL_Busca = "'C'"; //Parcela com saldo a liquidar filtro[4].vNM_Campo = "isnull(a.st_registro, 'A')"; filtro[4].vOperador = "in"; filtro[4].vVL_Busca = "('A', 'P')"; //Parcelas Vencidas filtro[5].vNM_Campo = "convert(datetime, floor(convert(decimal(30,10), a.dt_vencto)))"; filtro[5].vOperador = "<"; filtro[5].vVL_Busca = "convert(datetime, floor(convert(decimal(30,10), getdate())))"; bsParcelas.DataSource = new CamadaDados.Financeiro.Duplicata.TCD_LanParcela().Select(filtro, 0, string.Empty, "a.dt_vencto, c.nm_clifor", string.Empty); //Totalizar dados parcelas Tot_Parcelas.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_parcela); Tot_Liquidado.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_liquidado); Tot_Atual.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.cVl_atual); }
private void afterBusca() { if (string.IsNullOrEmpty(CD_Empresa.Text)) { MessageBox.Show("Obrigatório informar empresa.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); CD_Empresa.Focus(); return; } if (string.IsNullOrEmpty(Tp_Dup.Text)) { MessageBox.Show("Obrigatório informar tipo duplicata.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Tp_Dup.Focus(); return; } if (ID_CategoriaClifor.Enabled.Equals(false) && string.IsNullOrEmpty(CD_Clifor.Text)) { MessageBox.Show("Obrigatório informar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); CD_Clifor.Focus(); return; } Utils.TpBusca[] filtro = new Utils.TpBusca[5]; //Empresa filtro[0].vNM_Campo = "a.cd_empresa"; filtro[0].vOperador = "="; filtro[0].vVL_Busca = "'" + CD_Empresa.Text.Trim() + "'"; //Tipo Duplicata filtro[1].vNM_Campo = "a.tp_duplicata"; filtro[1].vOperador = "="; filtro[1].vVL_Busca = "'" + Tp_Dup.Text.Trim() + "'"; //Duplicata Ativa filtro[2].vNM_Campo = "isnull(dup.st_registro, 'A')"; filtro[2].vOperador = "<>"; filtro[2].vVL_Busca = "'C'"; //Parcela com saldo a liquidar filtro[3].vNM_Campo = "isnull(a.st_registro, 'A')"; filtro[3].vOperador = "in"; filtro[3].vVL_Busca = "('A', 'P')"; //Não buscar duplicata que possuem boletos com remessa processada filtro[4].vNM_Campo = string.Empty; filtro[4].vOperador = "not exists"; filtro[4].vVL_Busca = "(select 1 from TB_COB_LoteRemessa_X_Titulo x " + "inner join TB_COB_LoteRemessa y " + "on x.id_lote = y.id_lote " + "inner join TB_COB_Titulo z " + "on x.cd_empresa = z.cd_empresa " + "and x.nr_lancto = z.nr_lancto " + "and x.cd_parcela = z.cd_parcela " + "and x.id_cobranca = z.id_cobranca " + "and isnull(z.st_registro, 'A') <> 'C' " + "where a.cd_empresa = x.cd_empresa " + "and a.nr_lancto = x.nr_lancto " + "and a.cd_parcela = x.cd_parcela " + "and isnull(y.ST_Registro, 'A') = 'P') "; if (DT_Inicial.Text.Trim() != "/ /") { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = RB_Emissao.Checked ? "a.dt_emissao" : "a.dt_vencto"; filtro[filtro.Length - 1].vOperador = ">="; filtro[filtro.Length - 1].vVL_Busca = "'" + string.Format(new System.Globalization.CultureInfo("en-US", true), Convert.ToDateTime(DT_Inicial.Text).ToString("yyyyMMdd")) + " 00:00:00'"; } if (DT_Final.Text.Trim() != "/ /") { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = RB_Emissao.Checked ? "a.dt_emissao" : "a.dt_vencto"; filtro[filtro.Length - 1].vOperador = "<="; filtro[filtro.Length - 1].vVL_Busca = "'" + string.Format(new System.Globalization.CultureInfo("en-US", true), Convert.ToDateTime(DT_Final.Text).ToString("yyyyMMdd")) + " 23:59:59'"; } //Clifor if (!string.IsNullOrEmpty(CD_Clifor.Text.Trim())) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.cd_clifor"; filtro[filtro.Length - 1].vOperador = "="; filtro[filtro.Length - 1].vVL_Busca = "'" + CD_Clifor.Text.Trim() + "'"; } //Por categoria de clifor if (!string.IsNullOrEmpty(ID_CategoriaClifor.Text)) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "c.id_categoriaclifor"; filtro[filtro.Length - 1].vOperador = "="; filtro[filtro.Length - 1].vVL_Busca = "'" + ID_CategoriaClifor.Text.Trim() + "'"; } bsParcelas.DataSource = new CamadaDados.Financeiro.Duplicata.TCD_LanParcela().Select(filtro, 0, string.Empty, "a.dt_vencto, c.nm_clifor", string.Empty); //Totalizar dados parcelas Tot_Parcelas.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_parcela); Tot_Liquidado.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_liquidado); Tot_Atual.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.cVl_atual); }