public void MarcaIngresoReaj(string strcodcli, string strrut, int descinte, string strfechapago, int stfolio) { DateTime fechaerror = new DateTime(); DataSet ds_fechas_ser = new DataSet(); ParamsDates Objfechas = new ParamsDates(); ds_fechas_ser = Objfechas.getFechasServidor(); fechaerror = Convert.ToDateTime(ds_fechas_ser.Tables[0].Rows[0]["fechahoramin"].ToString()); try { CuentaCorrienteNG objBanedCC = new CuentaCorrienteNG(); int nSaldoDisp = 0; int inserta = 0; int actualiza = 0; int saldoFin = 0; string fechapag = strfechapago.Substring(6, 2) + "-" + strfechapago.Substring(4, 2) + "-" + strfechapago.Substring(0, 4); //ctg nSaldoDisp = objBanedCC.SaldoDisponibleReajuste(strrut, strcodcli, "LIQUIDA"); saldoFin = nSaldoDisp - descinte; //ctg string str_tipoTransaccion = "GIRO POR REAJUSTE"; inserta = objBanedCC.InsertaTBSDMDistribucionReajusteTransacciones(strcodcli, strrut, str_tipoTransaccion, 0, 0, descinte, 0, saldoFin, fechapag.ToString(), stfolio.ToString(), ParametrosPagoAutoData.P_str_codigo_moduloServicio); actualiza = objBanedCC.ActualizaTBSDMDistribucionReajInteresAcumulado(strcodcli, strrut, saldoFin); actualiza = objBanedCC.ActualizaTBSDMDistribucionLiquida(strcodcli.ToString(), strrut.ToString(), "CANCELADO POR WS PAGO AUTOMATICO", stfolio.ToString(), fechapag.ToString(), ParametrosPagoAutoData.P_str_codigo_moduloServicio); } catch (Exception ex) { objParam.GrabarErrores(fechaerror, Environment.MachineName, Environment.MachineName, ParametrosPagoAutoData.P_int_codigo_modulo, "Error SqlException : " + ex.ToString(), false, ParametrosPagoAutoData.P_int_codigo_error_Sql_exceptions, ParametrosPagoAutoData.P_str_codigo_moduloServicio + "/Negocio/MDL_funciones/MarcaIngresoReaj"); } }
//[WebMethod] public int PagoAutomaticoCaja(string str_rut_cli, string str_cod_demandante, string str_login_usrs) { //Proceso de transaccion de caja MDL_Funciones objFuncion = new MDL_Funciones(); //DateTime d_fechaactual = new DateTime(); // solo pruebas ya que se necesita fecha servidor DataSet ds_Movdia = new DataSet(); DataSet ds_Movdia_tempo = new DataSet(); DataSet ds_tb_prov = new DataSet(); DataSet ds_fechas_servidor = new DataSet(); DataSet ds_Movdia_tabnexo = new DataSet(); DataSet ds_tb_prov_tabnexo = new DataSet(); ParamsDates ObjDates1 = new ParamsDates(); DateTime date = new DateTime(); //Util ObjUtil = new Util(); ParamsErrores ObjError = new ParamsErrores(); MDL_Funciones objfunc = new MDL_Funciones(); MDL_PagoAutomatico ObjPagosMd = new MDL_PagoAutomatico(); ds_fechas_servidor = ObjDates1.getFechasServidor(); date = Convert.ToDateTime(ds_fechas_servidor.Tables[0].Rows[0]["fechahoramin"].ToString()); str_login_user = str_login_usrs; str_time_hora = formatoHora(Convert.ToString(date.Hour)) + ":" + formatoMinuto(Convert.ToString(date.Minute)) + ":" + formatoSegundo(Convert.ToString(date.Second)); str_fecha_hoy = Convert.ToString(date); DateTime FechaHoy = new DateTime(); FechaHoy = Convert.ToDateTime(str_fecha_hoy); string str_hora = Convert.ToString(FechaHoy.Hour) + ":" + Convert.ToString(FechaHoy.Minute) + ":" + Convert.ToString(FechaHoy.Second); int_estadoProcesosInternos = -2; int filasAfectadas = -1; // busca disponibilidad de proceso segun dia habil de BD if (objFuncion.DisponibilidadWSFinDeMes(str_cod_demandante) == true) { try { // se realiza la operacion de caja PagoAutomatico ObjPagoAuto = new PagoAutomatico(); // se obtiene datos desde base datos y se llenan datasets ds_Movdia = ObjPagoAuto.ObtieneMovDiaPorParametros(str_rut_cli, str_cod_demandante, EstadosPagosAutomaticos.P_str_mov_pendiente_de_pago); ds_tb_prov = ObjPagoAuto.ObtieneTab_prov_Por_Parametros(str_rut_cli, str_cod_demandante, EstadosPagosAutomaticos.P_str_prov_pendiente_de_pago, EstadosPagosAutomaticos.P_str_prov_nota_debito); //se obtienen montos de Movdia if (ds_Movdia.Tables[0].Rows.Count > 0) { decimal sumamontos = 0; foreach (DataRow dataRow in ds_Movdia.Tables[0].Rows) { int_descinte = Convert.ToInt32(dataRow["descinte"]); str_cod_sucursal = Convert.ToString(dataRow["cod_suc"]); str_numOpe = Convert.ToString(dataRow["num_ope"]); str_numCuota = Convert.ToString(dataRow["num_cuo"]); sumamontos = sumamontos + Convert.ToDecimal(dataRow["mto_total"]); } monto_total_mov = sumamontos; } else { monto_total_mov = 0; //return filasAfectadas; } //se obtienen montos de tb_pro y se compara con monto movdia if (ds_Movdia.Tables[0].Rows.Count > 0) { // Validar int_descinte > 0 , si no sale del ciclo completo //if (int_descinte > 0) //{ // string str_fecha_pago_tempo = objfunc.checkDiaDePago(FechaHoy.AddDays(1), str_hora, "", "", FechaHoy, str_cod_sucursal); if (ds_tb_prov.Tables[0].Rows.Count > 0) { foreach (DataRow dataRow in ds_tb_prov.Tables[0].Rows) { str_folio_Deb = dataRow["folio"].ToString(); } } // llama funcion de marca ingreso reajuste // objFuncion.MarcaIngresoReaj(str_cod_demandante, str_rut_cli, int_descinte, str_fecha_pago_tempo, Convert.ToInt32(str_folio_Deb)); //inicia proceso Pago Automatico if (ds_tb_prov.Tables[0].Rows.Count > 0) { // busca montos de tab_prov decimal d_sumamontos_prov = 0; foreach (DataRow dataRow in ds_tb_prov.Tables[0].Rows) { str_folio_Deb = dataRow["folio"].ToString(); d_sumamontos_prov = d_sumamontos_prov + Convert.ToDecimal(dataRow["monto"].ToString()); } monto_total_prov = d_sumamontos_prov; //se compara Montos de movdia y tab_prov , en caso iguales se procesa , si no se sale del ciclo if (monto_total_mov == monto_total_prov) { str_rut_cliente = str_rut_cli; str_fecha_pago = objfunc.checkDiaDePago(FechaHoy.AddDays(1), str_hora, "", "", FechaHoy, str_cod_sucursal); // str_fecha_pago = Convert.ToString(date); int_correlativo = objfunc.Busca_Correlativo(); str_cod_cajero = EstadosPagosAutomaticos.P_str_CM_codigo_cajero + Convert.ToString(Convert.ToInt32(str_cod_sucursal)); str_Tip_pag_movto = EstadosPagosAutomaticos.P_str_prov_nota_debito; //valida campos necesarios if (ValidaCamposTransations() == true) { // valida cuenta corrientes if (ObjPagosMd.ValidaSaldoCuentaCorriente(MgsDescripcionesProcesos.P_str_moduloServicio, str_rut_cliente, str_cod_demandante, monto_total_prov) == true) { // realiza proceso de pago automatico if (ObjPagosMd.ActualizarMovDiaNG( str_rut_cliente, str_cod_demandante, Convert.ToString(int_correlativo), str_cod_cajero, Convert.ToDateTime(str_fecha_pago), EstadosPagosAutomaticos.P_str_prov_estado_liq, EstadosPagosAutomaticos.P_str_mov_Num_caja, EstadosPagosAutomaticos.P_str_mov_tipo_pago, EstadosPagosAutomaticos.P_str_prov_estado_liq, EstadosPagosAutomaticos.P_str_mov_tipo_movtos, EstadosPagosAutomaticos.P_str_mov_tipo_liq_movtos, EstadosPagosAutomaticos.P_str_mov_tipo_Pag_movtos, str_cod_demandante, monto_total_prov, "", "", Convert.ToDateTime(str_fecha_pago), str_time_hora, Convert.ToDateTime(str_fecha_pago), str_cod_sucursal, str_login_user, str_folio_Deb) == true) { ds_Movdia_tempo = ObjPagoAuto.ObtieneMovDiaPorParametros(str_rut_cli, str_cod_demandante, EstadosPagosAutomaticos.P_str_mov_cancelado_de_pago); if (ds_Movdia_tempo.Tables[0].Rows.Count > 0) { foreach (DataRow dataRow in ds_Movdia_tempo.Tables[0].Rows) { int_descinte = Convert.ToInt32(dataRow["descinte"]); } } if (int_descinte > 0) { objFuncion.MarcaIngresoReaj(str_cod_demandante, str_rut_cli, int_descinte, str_fecha_pago, Convert.ToInt32(str_folio_Deb)); } // Actualiza DBF MOVDIA , TAB_PROV y MOVTOS string str_hora_pago_DBF = ""; str_hora_pago_DBF = formatoHora(Convert.ToString(date.Hour)) + ":" + formatoMinuto(Convert.ToString(date.Minute)) + ":" + formatoSegundo(Convert.ToString(date.Second)); if (ObjPagosMd.ActualizacionMOVDIA_DBF_NG(str_rut_cliente, str_cod_demandante, str_cod_sucursal, str_cod_cajero, EstadosPagosAutomaticos.P_str_mov_tipo_pago, str_numOpe, str_numCuota, "", "", "", Convert.ToDouble(monto_total_prov), Convert.ToDouble(int_correlativo), str_folio_Deb, Convert.ToDateTime(str_fecha_pago), str_hora_pago_DBF, EstadosPagosAutomaticos.P_str_prov_estado_liq, EstadosPagosAutomaticos.P_str_mov_Num_caja) == true) { } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_Actualiza_MovDia_DBF, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_actualizar_movdia_DBF; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_update_movdia_DBF; return(filasAfectadas); } if (ObjPagosMd.ActualizacionTab_Prov_DBF_NG(str_rut_cliente, str_cod_demandante, Convert.ToString(int_correlativo), str_cod_cajero, Convert.ToDateTime(str_fecha_pago), EstadosPagosAutomaticos.P_str_prov_estado_liq, str_hora_pago_DBF, Convert.ToDateTime(str_fecha_pago)) == true) { } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_Actualiza_tab_prov_DBF, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_Actualiza_tab_prov_DBF; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_update_tab_prov_DBF; return(filasAfectadas); } if (ObjPagosMd.InsertarMovTos_DBF_NG(Convert.ToString(int_correlativo), str_rut_cliente, str_cod_cajero, EstadosPagosAutomaticos.P_str_mov_tipo_movtos, EstadosPagosAutomaticos.P_str_mov_tipo_liq_movtos, EstadosPagosAutomaticos.P_str_mov_tipo_Pag_movtos, str_cod_demandante, Convert.ToDouble(monto_total_prov), Convert.ToDateTime(str_fecha_pago), str_hora_pago_DBF, Convert.ToDateTime(str_fecha_pago), str_cod_sucursal) == true) { } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_Actualiza_mov_tos_DBF, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_insert_MovTos_DBF; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_insert_movtos_DBF; return(filasAfectadas); } string str_folioLi = ""; string str_folioNc = ""; string str_folioRe = ""; ds_Movdia_tabnexo = ObjPagoAuto.ObtieneMovDiaPorParametrosTab_nexo_data(str_rut_cli, str_cod_demandante, EstadosPagosAutomaticos.P_str_mov_cancelado_de_pago, Convert.ToString(int_correlativo)); ds_tb_prov_tabnexo = ObjPagoAuto.ObtieneTab_prov_Por_Parametros_tab_nexo_data(str_rut_cli, str_cod_demandante, EstadosPagosAutomaticos.P_str_prov_estado_liq, EstadosPagosAutomaticos.P_str_prov_nota_debito, Convert.ToString(int_correlativo)); if (ds_Movdia_tabnexo.Tables[0].Rows.Count > 0 && ds_Movdia_tabnexo != null) { foreach (DataRow dataRow in ds_Movdia_tabnexo.Tables[0].Rows) { string str_folio_movdia = dataRow["folio"].ToString(); if (ObjPagosMd.InsertTabNexo_DBF_NG(Convert.ToString(int_correlativo), str_folio_movdia.ToString(), str_folioNc, "", str_folioRe, EstadosPagosAutomaticos.P_str_cdEstadoTabNexo, str_cod_sucursal.ToString()) == false) { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_insert_tabNexo_DBF; return(filasAfectadas); } } } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF + " " + MgsDescripcionesProcesos.P_str_Error_Datos_vacios_MovDia; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_insert_tabNexo_DBF; return(filasAfectadas); } if (ds_tb_prov_tabnexo.Tables[0].Rows.Count > 0 && ds_tb_prov_tabnexo != null) { foreach (DataRow dataRow in ds_tb_prov_tabnexo.Tables[0].Rows) { string str_folio_tab_prov = dataRow["folio"].ToString(); if (ObjPagosMd.InsertTabNexo_DBF_NG(Convert.ToString(int_correlativo), str_folioLi, str_folioNc, str_folio_tab_prov.ToString(), str_folioRe, EstadosPagosAutomaticos.P_str_cdEstadoTabNexo, str_cod_sucursal.ToString()) == false) { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_insert_tabNexo_DBF; return(filasAfectadas); } } } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_insert_tabNexo_DBF + " " + MgsDescripcionesProcesos.P_str_Error_Datos_vacios_Tabprov; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_insert_tabNexo_DBF; return(filasAfectadas); } filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_monto; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_procesos_internos; return(filasAfectadas); } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_Actualiza_MovDia, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_error_procesos_internos; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_error_procesos_internos; return(filasAfectadas); } } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_saldos_cuentacorrientes, false, EnumEstadosProcesosPagos.codigo_estado_Error_saldo_cuenta_corriente, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_error_procesos_internos; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_saldos_cuentacorrientes; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_saldo_cuenta_corriente; return(filasAfectadas); } } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 0, MgsDescripcionesProcesos.P_str_Error_error_validacion_campos + " " + str_descripcion_err_valida, false, EnumEstadosProcesosPagos.codigo_estado_procesos_internos, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_error_procesos_internos; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_validacion_campos; return(filasAfectadas); } } else { ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 9, MgsDescripcionesProcesos.P_str_estado_error_transaccion_no_monto, false, EnumEstadosProcesosPagos.codigo_estado_error_trans_no_monto, MgsDescripcionesProcesos.P_str_moduloServicio); filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_error_trans_no_monto; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_str_monto_mov_prov; return(filasAfectadas); } } else { filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_proceso_no_data; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_error_procesos_internos; } //}else { // // Validar int_descinte = 0 // filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_error_procesos_internos; // int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_Error_desc_int; // str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_Error_error_validacion_descint; //} } else { filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_proceso_no_data; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_error_procesos_internos; str_descripcion_err_valida = MgsDescripcionesProcesos.P_str_estado_transaccion_proceso_no_data; } } catch (Exception ex) { filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_transaccion_proceso_no_data_exception; str_descripcionErrores_exceptions = "Error al realizar la operacion de datos ." + ex; //GrabaError(ex, "Error al realizar la operacion de datos ."); // objFuncion.GrabaErrores(ex, ErrorDescripPagoAutomaticoCaja.ErrorDescripTransPagoAutomatico); ObjError.GrabarErrores(Convert.ToDateTime(str_fecha_hoy), Environment.MachineName, str_login_usrs, 9, str_descripcionErrores_exceptions, false, EnumEstadosProcesosPagos.codigo_estado_transaccion_proceso_no_data_exception, MgsDescripcionesProcesos.P_str_moduloServicio); } } else { filasAfectadas = EnumEstadosProcesosPagos.codigo_estado_validacion_diaHabil; int_estadoProcesosInternos = EnumEstadosProcesosPagos.codigo_estado_validacion_diaHabil; } return(filasAfectadas); }
public bool DisponibilidadWSFinDeMes(string str_cod_cli) { bool disponibilidadWS = true; DateTime date = DateTime.Now; // solo pruebas ya que se necesita fecha servidor DataTable dt = new DataTable(); DataSet ds_diahabil = new DataSet(); DataSet ds_diahabilmes = new DataSet(); DataSet ds_fechas_servidor = new DataSet(); PagoAutomatico ObjPagoAuto = new PagoAutomatico(); ParamsDates ObjDate = new ParamsDates(); try { // se realiza la operacion de disponibilidad de dias ds_fechas_servidor = ObjDate.getFechasServidor(); date = Convert.ToDateTime(ds_fechas_servidor.Tables[0].Rows[0]["fechahoramin"].ToString()); str_mes = Convert.ToString(date.Date.Month); str_dia = Convert.ToString(date.Date.Day); str_ano = Convert.ToString(date.Date.Year); str_hora = Convert.ToString(date.Hour) + ":" + Convert.ToString(date.Minute); str_fecha_actual = formatoDia(str_dia) + "-" + str_mes + "-" + str_ano; ds_diahabilmes = ObjPagoAuto.BuscarDiasHabilporMes(str_mes); if (ds_diahabilmes.Tables[0].Rows.Count == 0) { } else { foreach (DataRow dataRow in ds_diahabilmes.Tables[0].Rows) { string str_diatemporal = Convert.ToString(Convert.ToString(dataRow["dia"])); if (str_diatemporal.Equals(formatoDia(str_dia))) { str_dia_ultimo_vigente = Convert.ToString(Convert.ToString(dataRow["dia"])); } } } if (!string.IsNullOrEmpty(str_dia_ultimo_vigente)) { // date = Convert.ToDateTime("19-11-2011"); // str_fecha_ultimo_dia = Convert.ToString(FechaHabil(date, str_cod_cli)); str_fecha_ultimo_dia = formatoDia(str_dia_ultimo_vigente) + "-" + str_mes + "-" + str_ano; //llamar rutina para obtencion de datos de bd ds_diahabil = ObjPagoAuto.BuscarUltimoDiasHabil(str_fecha_ultimo_dia); } else { ds_diahabil = null; } if (ds_diahabil == null || ds_diahabil.Tables[0].Rows.Count == 0) { str_fecha = ""; str_corte = ""; } else { str_fecha = ds_diahabil.Tables[0].Rows[0]["fecha"].ToString(); str_corte = ds_diahabil.Tables[0].Rows[0]["corte"].ToString(); } //verifica si fecha ultimo dia viene vacia desde BD //if (str_fecha == "" || string.IsNullOrEmpty(str_fecha)) //{ // disponibilidadWS = false; //}else { if (str_fecha_actual == str_fecha) { if (Convert.ToDateTime(str_hora).Hour >= Convert.ToDateTime(str_corte).Hour) { disponibilidadWS = false; } else { disponibilidadWS = true; } } else { disponibilidadWS = true; } //} } catch (Exception ex) { disponibilidadWS = false; objParam.GrabarErrores(FechaSis.Date, Environment.MachineName, Environment.MachineName, ParametrosPagoAutoData.P_int_codigo_modulo, "Error SqlException : " + ex.ToString(), false, ParametrosPagoAutoData.P_int_codigo_error_Sql_exceptions, ParametrosPagoAutoData.P_str_codigo_moduloServicio + "/Negocio/MDL_funciones/DisponibilidadWSFinDeMes"); } return(disponibilidadWS); }