Ejemplo n.º 1
0
        public static string GravarCobranca(TRegistro_CobrancaClifor val, BancoDados.TObjetoBanco banco)
        {
            bool st_transacao = false;
            TCD_CobrancaClifor qtb_cobranca = new TCD_CobrancaClifor();

            try
            {
                if (banco == null)
                {
                    qtb_cobranca.CriarBanco_Dados(true);
                    st_transacao = true;
                }
                else
                {
                    qtb_cobranca.Banco_Dados = banco;
                }
                //Gravar Cobranca clifor
                string retorno = qtb_cobranca.GravarCobranca(val);
                val.Id_cobranca = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(retorno, "@P_ID_COBRANCA"));
                //Parcelas
                val.lParcelas.ForEach(p =>
                {
                    //Cobrança x Parcela
                    p.Id_cobranca = val.Id_cobranca;
                    TCN_Cobranca_X_Parcelas.GravarCobranca_x_parcelas(p, qtb_cobranca.Banco_Dados);
                });

                if (st_transacao)
                {
                    qtb_cobranca.Banco_Dados.Commit_Tran();
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_cobranca.Banco_Dados.RollBack_Tran();
                }
                throw new Exception(ex.Message);
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_cobranca.deletarBanco_Dados();
                }
            }
        }
Ejemplo n.º 2
0
        public static string DeletarCobranca(TRegistro_CobrancaClifor val, BancoDados.TObjetoBanco banco)
        {
            bool st_transacao = false;
            TCD_CobrancaClifor qtb_cobranca = new TCD_CobrancaClifor();

            try
            {
                if (banco == null)
                {
                    qtb_cobranca.CriarBanco_Dados(true);
                    st_transacao = true;
                }
                else
                {
                    qtb_cobranca.Banco_Dados = banco;
                }
                //Deletar parcelas da cobranca
                foreach (TRegistro_Cobranca_X_Parcelas parcelas in val.lParcelas)
                {
                    TCN_Cobranca_X_Parcelas.DeletarCobranca_x_parcelas(parcelas, qtb_cobranca.Banco_Dados);
                }
                //Deletar Cobranca
                qtb_cobranca.DeletarCobranca(val);
                if (st_transacao)
                {
                    qtb_cobranca.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_cobranca.Banco_Dados.RollBack_Tran();
                }
                throw new Exception(ex.Message);
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_cobranca.deletarBanco_Dados();
                }
            }
        }
Ejemplo n.º 3
0
        public static TList_CobrancaClifor Buscar(decimal id_cobranca,
                                                  string login,
                                                  string dt_cobranca,
                                                  string ds_historico,
                                                  string nm_contato,
                                                  string fone_contato,
                                                  string dt_agendamento,
                                                  Parcelas[] parcelas,
                                                  int vTop,
                                                  string vNm_campo,
                                                  BancoDados.TObjetoBanco banco)
        {
            TpBusca[] filtro = new TpBusca[0];
            if (id_cobranca > 0)
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.id_cobranca";
                filtro[filtro.Length - 1].vOperador = "=";
                filtro[filtro.Length - 1].vVL_Busca = id_cobranca.ToString();
            }
            if (login.Trim() != string.Empty)
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.login";
                filtro[filtro.Length - 1].vOperador = "=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + login.Trim() + "'";
            }
            if ((dt_cobranca.Trim() != string.Empty) && (dt_cobranca.Trim() != "/  /"))
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.dt_cobranca";
                filtro[filtro.Length - 1].vOperador = "=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + string.Format(new System.Globalization.CultureInfo("en-US", true), Convert.ToDateTime(dt_cobranca).ToString("yyyyMMdd")) + "'";
            }
            if (ds_historico.Trim() != string.Empty)
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.ds_historico";
                filtro[filtro.Length - 1].vOperador = "like";
                filtro[filtro.Length - 1].vVL_Busca = "('%" + ds_historico.Trim() + "%')";
            }
            if (nm_contato.Trim() != string.Empty)
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.nm_contato";
                filtro[filtro.Length - 1].vOperador = "like";
                filtro[filtro.Length - 1].vVL_Busca = "('%" + nm_contato.Trim() + "%')";
            }
            if (fone_contato.Trim() != string.Empty)
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.fone_contato";
                filtro[filtro.Length - 1].vOperador = "=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + fone_contato.Trim() + "'";
            }
            if ((dt_agendamento.Trim() != string.Empty) && (dt_agendamento.Trim() != "/  /"))
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.dt_agendamento";
                filtro[filtro.Length - 1].vOperador = "=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + string.Format(new System.Globalization.CultureInfo("en-US", true), Convert.ToDateTime(dt_agendamento).ToString("yyyyMMdd")) + "'";
            }
            if (parcelas != null)
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = string.Empty;
                filtro[filtro.Length - 1].vOperador = "exists";
                string cond = string.Empty;
                string op   = string.Empty;
                for (int i = 0; i < parcelas.Length; i++)
                {
                    cond += op + "((x.CD_Empresa = '" + parcelas[i].vCd_empresa + "')" +
                            "and(x.NR_Lancto = " + parcelas[i].vNr_lancto.ToString() + ")" +
                            "and(x.CD_Parcela = " + parcelas[i].vCd_parcela.ToString() + "))";
                    op = " or ";
                }
                filtro[filtro.Length - 1].vVL_Busca = "(select 1 from tb_fin_cobranca_x_parcelas x " +
                                                      "where x.id_cobranca = a.id_cobranca " +
                                                      "and " + cond + ")";
            }

            TCD_CobrancaClifor qtb_cobranca = new TCD_CobrancaClifor();

            qtb_cobranca.Banco_Dados = banco;
            return(qtb_cobranca.Select(filtro, vTop, vNm_campo));
        }