private void CargarCombos() { // Cargo el combo tipo de tarifarios LlenarCombos.TipoTarifariosConceptos(ddlTipoTarifario, ""); ddlTipoTarifario.Items.Remove(ddlTipoTarifario.Items[0]); ddlTipoTarifario_SelectedIndexChanged(null, null); // Cargo el combo de provincias IEmpresaFacturacion empresa = EmpresaFacturacionFactory.GetEmpresaFacturacion(); ddlEmpresaFacturacion.DataSource = empresa.GetEmpresasFacturacionConsultaDataSet().Datos.Select("", "Predeterminada desc, RazonSocial"); ddlEmpresaFacturacion.DataValueField = "EmpresaFacturacionId"; ddlEmpresaFacturacion.DataTextField = "RazonSocial"; ddlEmpresaFacturacion.DataBind(); ddlEmpresaFacturacion.Items.Insert(0, new ListItem("", "")); // Cargo el combo de conceptos de facturación de delfos IConceptoFacturacionDelfos conceptosFact = ConceptoFacturacionDelfosFactory.GetConceptoFacturacionDelfos(); ddlConceptoFacturacionDelfos.DataSource = conceptosFact.GetAll(); ddlConceptoFacturacionDelfos.DataValueField = "VentaConcepCodi"; ddlConceptoFacturacionDelfos.DataTextField = "VentaConcepDescrip"; ddlConceptoFacturacionDelfos.DataBind(); //ddlConceptoFacturacionDelfos.Items.Insert(0, new ListItem("", "")); // Cargo el combo de tipos de clientes ddlTipoCliente.DataSource = IoC.GetObjectDominio<ITipoClienteDominio>().GetTiposCliente(); ddlTipoCliente.DataValueField = "TipoClienteID"; ddlTipoCliente.DataTextField = "TipoClienteDescrip"; ddlTipoCliente.DataBind(); }
private void BindGrid() { SisPackController.AdministrarGrillas.Configurar(dtgEmpresas, "EmpresaFacturacionID", this.CantidadOpciones); IEmpresaFacturacion oEmpresaFacturacion = EmpresaFacturacionFactory.GetEmpresaFacturacion(); oEmpresaFacturacion.RazonSocial = this.txtRazonSocial.Text; this.dtgEmpresas.DataSource = oEmpresaFacturacion.GetEmpresasFacturacionConsultaDataSet(); this.dtgEmpresas.DataBind(); }
public static void EmpresaFacturacion(DropDownList lst, int unidadNegocioID) { lst.Items.Clear(); IEmpresaFacturacion EmpFact = EmpresaFacturacionFactory.GetEmpresaFacturacion(); DsEmpresaFacturacion ds = EmpFact.GetEmpresasFacturacionConsultaDataSet(); // DsZonas ds = zonas.GetZonasDataSet(); lst.DataSource = EmpFact.GetEmpresasFacturacionConsultaDataSet(); lst.DataTextField = "RazonSocial"; // lst.DataValueField = "Agencia"; lst.DataBind(); }
private void validarEmpresaPorDefecto() { IEmpresaFacturacion oEmpresaFacturacion = EmpresaFacturacionFactory.GetEmpresaFacturacion(); int i = oEmpresaFacturacion.GetEmpresasPredeterminada(); if (i == 0) { lblEmpresaPorDefecto.Visible = true; } else { lblEmpresaPorDefecto.Visible = false; } }
private void Editar() { IEmpresaFacturacion empresa = EmpresaFacturacionFactory.GetEmpresaFacturacion(); empresa.EmpresaFacturacionID = Convert.ToInt32(this.txtEmpresaID.Text); empresa.Consultar(); this.txtRazonSocial.Text = empresa.RazonSocial; this.txtEMail.Text = empresa.Email; this.txtCuerpos.Text = empresa.Cuerpos.ToString(); this.txtWan.Text = empresa.Wan; this.chkPredeterminada.Checked = empresa.Predeterminada; //this.ddlTipoDocumento.SelectedValue = ((int)empresa.TipoDocumento).ToString(); if (empresa.NroCUIT != null) { this.txtCUITTipo.Text = empresa.NroCUIT.Substring(0, 2); this.txtCUITNro.Text = empresa.NroCUIT.Substring(2, 8); this.txtCUITDigitoVerificador.Text = empresa.NroCUIT.Substring(10, 1); //this.txtCUITTipo.ReadOnly=true; //this.txtCUITNro.ReadOnly=true; //this.txtCUITDigitoVerificador.ReadOnly=true; } IDatosDomicilio domicilio = (IDatosDomicilio)phDomicilio.FindControl("domicilio"); domicilio.DomicilioID = empresa.Domicilio.DomicilioID; domicilio.Calle = empresa.Domicilio.Calle; domicilio.CalleNro = empresa.Domicilio.CalleNro; domicilio.Telefono = empresa.Domicilio.Telefono; domicilio.ProvinciaID = empresa.Domicilio.Localidad.Provincia.ProvinciaID; domicilio.LocalidadID = empresa.Domicilio.Localidad.LocalidadID; this.txtLogoActual.Text = empresa.Logo.ToString(); txtDirWeb.Text = empresa.Web; txtNumeroIIBB.Text = empresa.NumeIIBB; txtFechaInicio.Text = empresa.FechaInicio.ToString("dd/MM/yyyy"); txtNumeroEstablecimiento.Text = empresa.NumeEstablecimiento; foreach (ListItem item in ddlCondicionIva.Items) { if (item.Text == empresa.CondicionIVA) { item.Selected = true; } } txtCertificadoDigital.Text = empresa.CertificadoDigital; txtTexto.Text = empresa.Texto; }
protected void dtgEmpresas_DeleteCommand1(object source, DataGridCommandEventArgs e) { IEmpresaFacturacion empresa = EmpresaFacturacionFactory.GetEmpresaFacturacion(); empresa.EmpresaFacturacionID = Convert.ToInt32(this.dtgEmpresas.DataKeys[e.Item.ItemIndex]); empresa.Consultar(); try { empresa.Eliminar(usuario); this.dtgEmpresas.EditItemIndex = -1; this.BindGrid(); try { this.BindGrid(); } catch (Exception) { this.dtgEmpresas.CurrentPageIndex = 0; this.BindGrid(); } } catch (Exception ex) { string mensaje = ex.Message; try { mensaje = this.TraducirTexto(ex.Message); if (mensaje == "" || mensaje == null) { mensaje = ex.Message; } } catch (Exception) { mensaje = ex.Message; } ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje); } }
private void LlenarCombos() { SisPackController.LlenarCombos.Producto(this.ddlProducto, this.TraducirTexto("Combos.ElijaProducto"), this.UnidadNegocioID); SisPackController.LlenarCombos.TiempoEntrega(this.ddlTiempoEntrega, this.TraducirTexto("Combos.ElijaTiempoEntrega"), this.UnidadNegocioID); SisPackController.LlenarCombos.Servicio(this.lstServicios, this.TraducirTexto("Combos.SinServicioAdicional"), this.UnidadNegocioID); // Cargo el combo de provincias IEmpresaFacturacion empresa = EmpresaFacturacionFactory.GetEmpresaFacturacion(); ddlEmpresaFacturacion.DataSource = empresa.GetEmpresasFacturacionConsultaDataSet().Datos.Select("", "Predeterminada desc, RazonSocial"); ddlEmpresaFacturacion.DataValueField = "EmpresaFacturacionId"; ddlEmpresaFacturacion.DataTextField = "RazonSocial"; ddlEmpresaFacturacion.DataBind(); ddlEmpresaFacturacion.Items.Insert(0, new ListItem("", "")); // Cargo el combo de conceptos de facturación de delfos IConceptoFacturacionDelfos conceptosFact = ConceptoFacturacionDelfosFactory.GetConceptoFacturacionDelfos(); ddlConceptoFacturacionDelfos.DataSource = conceptosFact.GetAll(); ddlConceptoFacturacionDelfos.DataValueField = "VentaConcepCodi"; ddlConceptoFacturacionDelfos.DataTextField = "VentaConcepDescrip"; ddlConceptoFacturacionDelfos.DataBind(); ddlConceptoFacturacionDelfos.Items.Insert(0, new ListItem("", "")); }
//DsOrdenRetiroImprimir.DatosRow dsoRdenes; #region Page_Load private void Page_Load(object sender, System.EventArgs e) { //TextWriterTraceListener myListener = new TextWriterTraceListener("TextWriterOutput2.log", "myListener"); //myListener.WriteLine("Inicia Load de Imprimirguiablanco.aspx."); DsGuiaFacturaImpresion ds = (DsGuiaFacturaImpresion)Session["DatosGuia"]; //DsOrdenRetiroImprimir dsoRdenes = (DsOrdenRetiroImprimir)Session["imprimirOrden"]; DsHojaRutaRepartidor dsoRdenes = (DsHojaRutaRepartidor)Session["imprimirOrden"]; DsOrdenRetiroImprimir.DatosRow dsOrdenR; int cantCopias = 0; string nombreArchivo = ""; //SFE. Codigo barras AFIP string nombreArchivoCBAFIP = ""; Boolean EsReImpresion = false; bool esFacturaRemito = false; Boolean EsFacturaConceptoFacturacion = false; string textoDorso = ""; bool esGuiaRendicion = false; string tipoGuia = ""; // Obtengo el texto del dorso de la guía //IGuiaDorso guiaDorso = GuiaDorsoFactory.GetGuiaDorso(); //guiaDorso.UnidadNegocioID = UnidadNegocioID; //guiaDorso.Consultar(); //string textoDorso = guiaDorso.Texto; // Obtengo el texto del dorso de la guía por la empresa de facturacion IGuia guia = GuiaFactory.GetGuia(); if (ds != null) { double pesototal50 = ds.Datos[0].PesoTotal != null ? ds.Datos[0].PesoTotal : 0; // ds.Datos[0].; double pesoButlos50 = ds.Datos[0].PesoBulto != null ? ds.Datos[0].PesoBulto : 0; string canBul = ds.Datos[0].IsCantidadBultosTotalNull()?"0": ds.Datos[0].CantidadBultosTotal.ToString(); string remito = ds.Datos[0].IsRemitoClienteNroNull() ? "0" : ds.Datos[0].RemitoClienteNro.ToString(); string DomicilioRem = ds.Datos[0].IsDireccionRemitenteNull()?"N/A": ds.Datos[0].DireccionRemitente.ToString(); string remi = ds.Datos[0].IsNombreRemitenteNull() ? "" : ds.Datos[0].NombreRemitente.ToString(); if (remi == "") { remi = ds.Datos[0].IsNombreEmpresaRemitenteNull() ? "" : ds.Datos[0].NombreEmpresaRemitente.ToString(); } string doc = ds.Datos[0].IsCUITEmpresaNull() ? "" : ds.Datos[0].CUITEmpresa.ToString(); if (pesototal50 > 50 || pesoButlos50 > 50)//mayor a 50 { System.Web.UI.Control impresion; impresion = Page.LoadControl("uc/ImprimirDeclaracionJuradaEV.ascx"); GuiaDominio gd = new GuiaDominio(); string text = gd.getTextoDorso(0).ToString(); textoDorso = text; /* inicio declaracion jurada*/ //string existeDJ = gd.GetDeclaracionJurada(ds.Datos[0].GuiaID).ToString(); //if (existeDJ == "")//es para que no re imprima la declaracion jurada que se emitio // //FQuiroga 26/11 //{ // //declaracion jurada // if (ds.Datos[0].EsFleteCobrar == true && remito == "0") // {//si es un fpd y pesa mas de 50 y no tiene remito // //tiene que gaurda el numero de declaracion jurada // string DJ = gd.GuiaDCINS(ds.Datos[0].GuiaID).ToString(); // LlenarControlDJ(impresion, remi, DomicilioRem, pesototal50, canBul, doc, DJ); // phImpresion.Controls.Add(impresion); // // hago un salto de página // LiteralControl lt = new LiteralControl("<br style='page-break-after: always'>"); // // no hace salto de página para la última hoja... // phImpresion.Controls.Add(lt); // } // if ((ds.Datos[0].TipoGuia == "B" || ds.Datos[0].TipoGuia == "A") && remito == "0") // {//eventuales sin remito // string DJ = gd.GuiaDCINS(ds.Datos[0].GuiaID).ToString(); //tiene que guardar declaracion // LlenarControlDJ(impresion, remi, DomicilioRem, pesototal50, canBul, doc, DJ); // phImpresion.Controls.Add(impresion); // // hago un salto de página // LiteralControl lt = new LiteralControl("<br style='page-break-after: always'>"); // // no hace salto de página para la última hoja... // phImpresion.Controls.Add(lt); // } //} /* fin declaracion jurada*/ } else { //34 y35 bultos IEmpresaFacturacion empresa = EmpresaFacturacionFactory.GetEmpresaFacturacion(); try { empresa.EmpresaFacturacionID = ds.Datos[0].EmpresaFacturacionID; } catch (Exception) { throw new Exception("No se configuró la empresa de facturacion para la agencia emisora de la guia."); } empresa.Consultar(); textoDorso = empresa.Texto; } // SFE: Imprimir la leyenda "Guia Rendicion" y el Nro de Rendicion si es Guia de Rendicion // IGuia guia = GuiaFactory.GetGuia(); guia.GuiaID = ds.Datos[0].GuiaID; guia.ConsultarCompletoByGuiaID(); //if (ds.Datos.Rows[0].IsEsFacturaConceptoFacturacionNull() == false && dr.EsFacturaConceptoFacturacion //if (|| (ds.Datos.Rows[0].IsNull("EsFacturaConceptoFacturacion") == false && Convert.ToBoolean( ds.Datos.Rows[0]["EsFacturaConceptoFacturacion"] Boolean _esFacturaConceptoFacturacion = false; try { _esFacturaConceptoFacturacion = Convert.ToBoolean(ds.Datos.Rows[0]["EsFacturaConceptoFacturacion"]); } catch { _esFacturaConceptoFacturacion = false; } esGuiaRendicion = false; string nroRendicionGuia = ""; if (_esFacturaConceptoFacturacion == false) { guia.GuiaID = ds.Datos[0].GuiaID; guia.ConsultarCompletoByGuiaID(); if (guia.ClasificacionGuiaID == NegociosSisPackInterface.SisPack.ClasificacionGuia.Rendicion) { esGuiaRendicion = true; nroRendicionGuia = guia.GetNroRendicionGuia(); if (nroRendicionGuia != "") { nroRendicionGuia = "Nro de Rendición: " + nroRendicionGuia; } ds.Datos[0].Observaciones = nroRendicionGuia; } // SFE: Imprimir la leyenda "Guia Rendicion" y el Nro de Rendicion si es Guia de Rendicion } } if (dsoRdenes != null) { IEmpresaFacturacion empresa = EmpresaFacturacionFactory.GetEmpresaFacturacion(); empresa.EmpresaFacturacionID = 1;// Convert.ToInt32(dsoRdenes.Ordenes.Rows.Datos[0].EmpresaFacturacion.ToString()); empresa.Consultar(); textoDorso = empresa.Texto; //cargo las ordenes de retiro DsOrdenRetiroImprimir dsOrdenes2 = new DsOrdenRetiroImprimir(); IOrdenRetiro ordenes = OrdenRetiroFactory.GetOrdenRetiroFactory(); string todas = ""; foreach (DsHojaRutaRepartidor.OrdenesRow dsss in dsoRdenes.Ordenes.Rows) { if (todas == "") { todas = dsss.OrdenRetiroID; } else { todas = todas + "," + dsss.OrdenRetiroID; } } dsOrdenes2 = ordenes.GetOrdenRetiroPrint(todas); foreach (DsOrdenRetiroImprimir.DatosRow drOrd in dsOrdenes2.Datos) { System.Web.UI.Control impresion; impresion = Page.LoadControl("uc/ImprimirOrdenRetiro.ascx"); LlenarControlOrdenes(drOrd, impresion, nombreArchivo); phImpresion.Controls.Add(impresion); // hago un salto de página LiteralControl lt = new LiteralControl("<br style='page-break-after: always'>"); // no hace salto de página para la última hoja... phImpresion.Controls.Add(lt); } } //if (dsConcepto != null) { // try // { // _esFacturaConceptoFacturacion = Convert.ToBoolean(dsoRdenes.Datos.Rows[0]["EsFacturaConceptoFacturacion"]); // } // catch // { // _esFacturaConceptoFacturacion = false; // } // foreach (DsGuiaFacturaImpresion.DatosRow drCon in dsConcepto.Datos.Rows) // { // System.Web.UI.Control impresion; // impresion = Page.LoadControl("uc/ImprimirGuiaBlanco.ascx"); // LlenarControl(drCon, impresion, nombreArchivo); // phImpresion.Controls.Add(impresion); // // hago un salto de página // LiteralControl lt = new LiteralControl("<br style='page-break-after: always'>"); // // no hace salto de página para la última hoja... // phImpresion.Controls.Add(lt); // if (drCon.IsEsFacturaConceptoFacturacionNull() == false && drCon.EsFacturaConceptoFacturacion) // { // EsFacturaConceptoFacturacion = true; // // Se trata de una factura de un concepto de facturación. // // 16/10/2013. Se solicito que si se trata de un concepto de facturacion se impriman la cantidad de cuerpos que se definen en el ABM de conceptos de facturacion. // IConceptoFacturacion concepto = ConceptoFacturacionFactory.GetConceptoFacturacion(); // concepto.GetOne(148); // if (concepto.CantCuerposImprGuia > 0) // { // cantCopias = concepto.CantCuerposImprGuia ?? 0; // } // else // { // IFactura factura = FacturaFactory.GetFactura(); // cantCopias = factura.GetCantCuerposImprFacturaRemito(); // factura = null; // } // } // } //} // }Cargo los comprobantes if (ds != null) { int ComprobanteActual = 1; foreach (DsGuiaFacturaImpresion.DatosRow dr in ds.Datos.Rows) { // Reviso si se paso la cantidad de copias a imprimir o hay que obtenerlo de los parametros if (Request.QueryString["CantCopias"] == "" || Request.QueryString["CantCopias"] == null) { // No se paso la cantidad de copias a imprimir. // Obtengo de los parámetros generales cuántas copias del cuerpo se deben imprimir en la agencia origen /* VSA 01-09-2009 Permitir parametrizar la cantidad de copias a imprimir para la guía */ // Reviso si se trata de una guía o factura if (dr.IsEsFacturaConceptoFacturacionNull() == false && dr.EsFacturaConceptoFacturacion) { EsFacturaConceptoFacturacion = true; // Se trata de una factura de un concepto de facturación. // 16/10/2013. Se solicito que si se trata de un concepto de facturacion se impriman la cantidad de cuerpos que se definen en el ABM de conceptos de facturacion. IConceptoFacturacion concepto = ConceptoFacturacionFactory.GetConceptoFacturacion(); concepto.GetOne(dr.ConceptoFacturacionID); if (concepto.CantCuerposImprGuia > 0) { cantCopias = concepto.CantCuerposImprGuia ?? 0; } else { IFactura factura = FacturaFactory.GetFactura(); cantCopias = factura.GetCantCuerposImprFacturaRemito(); factura = null; } } else if (dr.IsEsFacturaRemitoNull() || dr.EsFacturaRemito == false) { // Se trata de una guía // Verifico si en el campo "CantidadCopiasImprimir" viene asignada la cantidad de copias, si es asi, es porque se llamo desde la Hoja de Ruta del Repartidor y se esta reimprimiendo una guia desde ese modulo // Si no se debe buscar en la base la cantidad de copias a imprimir. if (((DsGuiaFacturaImpresion.DatosRow)ds.Datos.Rows[0]).IsCantidadCopiasImprimirNull()) { // Debo buscar en la base la cantidad de copias a imprimir. IGuia cantAImprGuia = GuiaFactory.GetGuia(); cantAImprGuia.GuiaID = ((DsGuiaFacturaImpresion.DatosRow)ds.Datos.Rows[0]).GuiaID; cantAImprGuia.UnidadNegocioID = UnidadNegocioID; cantCopias = cantAImprGuia.GetCantCuerposImprGuia(); cantAImprGuia = null; } else { //Viene asignada la cantidad de copias, se llamo desde la Hoja de Ruta del Repartidor y se esta reimprimiendo una guia desde ese modulo try { cantCopias = ((DsGuiaFacturaImpresion.DatosRow)ds.Datos.Rows[0]).CantidadCopiasImprimir; } catch { cantCopias = 1; } } esFacturaRemito = false; } else { // Se trata de una factura IFactura factura = FacturaFactory.GetFactura(); cantCopias = factura.GetCantCuerposImprFacturaRemito(); factura = null; esFacturaRemito = true; } } else { // Si se paso la cantidad de copias a imprimir cantCopias = Utiles.Validaciones.obtieneEntero(Request.QueryString["CantCopias"]); EsReImpresion = true; // Reviso si se trata de una guía o factura if (dr.IsEsFacturaRemitoNull() || dr.EsFacturaRemito == false) { esFacturaRemito = false; } else if (dr.IsEsFacturaConceptoFacturacionNull() == false && dr.EsFacturaConceptoFacturacion) { // Se trata de una factura de un concepto de facturación EsFacturaConceptoFacturacion = true; } else { esFacturaRemito = true; } if (dr.IsEsFacturaConceptoFacturacionNull() == false && dr.EsFacturaConceptoFacturacion) { // Se trata de una factura de un concepto de facturación EsFacturaConceptoFacturacion = true; } } //} // Cargo las copias del comprobante que se esta procesando for (int i = 0; i < cantCopias; i++) { System.Web.UI.Control impresion; if (guia.ClasificacionGuiaID == NegociosSisPackInterface.SisPack.ClasificacionGuia.UnidadLogistica) { impresion = Page.LoadControl("uc/ImprimirGuiaUnidadLogistica.ascx"); } else { impresion = Page.LoadControl("uc/ImprimirGuiaBlanco.ascx"); } LlenarControl(dr, impresion, nombreArchivo); // cargo el control de impresión... impresion.ID = "ImpreBlanco" + i.ToString(); // Creo la imagen del CB if (i == 0) { nombreArchivo = CrearImagenCB(((IGuiaImpresion)impresion).TipoGuia, ((IGuiaImpresion)impresion).NroSucursal, ((IGuiaImpresion)impresion).NroGuia); // SFE: Codigo Barras AFIP nombreArchivoCBAFIP = CrearImagenCBAFIP(((IGuiaImpresion)impresion).TipoGuia, ((IGuiaImpresion)impresion).NroSucursal, ((IGuiaImpresion)impresion).NumeroCAI, ((IGuiaImpresion)impresion).FechaVencimientoCAI); } // Termino de cargar los datos ((IGuiaImpresion)impresion).RutaCodigoBarras = nombreArchivo + "-" + this.AgenciaConectadaID.ToString(); // SFE: Codigo Barras AFIP. ((IGuiaImpresion)impresion).RutaCodigoBarrasAFIP = nombreArchivoCBAFIP + "-" + this.AgenciaConectadaID.ToString(); if (EsReImpresion == false) { ((IGuiaImpresion)impresion).DescripcionFormulario = ObtenerDescripcion(i + 1, EsFacturaConceptoFacturacion); ((IGuiaImpresion)impresion).EsReimpresion = false; } else { ((IGuiaImpresion)impresion).DescripcionFormulario = ObtenerDescripcion(3, EsFacturaConceptoFacturacion); ((IGuiaImpresion)impresion).EsReimpresion = true; } ((IGuiaImpresion)impresion).TextoDorso = textoDorso; ((IGuiaImpresion)impresion).EsGuiaRendicion = esGuiaRendicion; ((IGuiaImpresion)impresion).EsFacturaRemito = esFacturaRemito; ((IGuiaImpresion)impresion).EsFacturaConceptoFacturacion = EsFacturaConceptoFacturacion; phImpresion.Controls.Add(impresion); // hago un salto de página //tipoGuia = dr.IsTipoGuiaNull() ? "" : dr.TipoGuia; //System.Web.HttpBrowserCapabilities browser = Request.Browser; //string name = browser.Browser; //float version = (float)(browser.MajorVersion + browser.MinorVersion); //if ((name != "Chrome" && version >= 8) && (name != "Firefox" && version >= 8) && (name == "IE" && version > 8) && (tipoGuia == "R")) //{ LiteralControl lt = new LiteralControl("<br style='page-break-after: always'>"); // no hace salto de página para la última hoja... if (i + 1 < cantCopias || ComprobanteActual < ds.Datos.Rows.Count) { phImpresion.Controls.Add(lt); } //} } ComprobanteActual++; } //myListener.WriteLine("Finaliza Load de Imprimirguiablanco.aspx."); //myListener.Flush(); } }
protected void butGuardarEmpresa_Click(object sender, EventArgs e) { try { if (!Page.IsValid) { return; } IEmpresaFacturacion empresa = EmpresaFacturacionFactory.GetEmpresaFacturacion(); empresa.EmpresaFacturacionID = this.txtEmpresaID.Text == "" ? 0 : Convert.ToInt32(this.txtEmpresaID.Text); empresa.RazonSocial = this.txtRazonSocial.Text; empresa.Email = this.txtEMail.Text; empresa.Wan = this.txtWan.Text; empresa.Predeterminada = this.chkPredeterminada.Checked; empresa.Cuerpos = this.txtCuerpos.Text == string.Empty ? 0 : int.Parse(this.txtCuerpos.Text); empresa.NroCUIT = this.txtCUITTipo.Text + this.txtCUITNro.Text + this.txtCUITDigitoVerificador.Text; if (empresa.EstadoEmpresa == NegociosSisPackInterface.SisPack.EstadoEmpresa.Ninguno) { empresa.EstadoEmpresa = NegociosSisPackInterface.SisPack.EstadoEmpresa.Habilitada; } //Domicilio IDatosDomicilio domicilio = (IDatosDomicilio)this.phDomicilio.FindControl("domicilio"); empresa.Domicilio.DomicilioID = domicilio.DomicilioID; empresa.Domicilio.Calle = domicilio.Calle; empresa.Domicilio.CalleNro = domicilio.CalleNro; empresa.Domicilio.Localidad.LocalidadID = domicilio.LocalidadID; empresa.Domicilio.Telefono = domicilio.Telefono; //Logo // Verificamos que se esté guardando un logo, de lo contrario se muestra error. if ((File1.PostedFile != null) && (File1.PostedFile.ContentLength > 0)) { // Tomamos el nombre del archivo y obtenemos su extensión para ver si es PNG. string nombreLogo = System.IO.Path.GetFileName(File1.PostedFile.FileName); string[] nombreLogoSeparado = nombreLogo.Split('.'); if (!nombreLogoSeparado[nombreLogoSeparado.Length - 1].Equals("png") && !nombreLogoSeparado[nombreLogoSeparado.Length - 1].Equals("PNG") && !nombreLogoSeparado[nombreLogoSeparado.Length - 1].ToUpper().Equals("JPG")) { Exception ex = new Exception("La extensión del logo a guardar no es válida."); throw ex; } else { // Verificamos si se ha creado la carpeta para archivos, de lo contrario se crea. string carpetaDestino = "Archivos"; bool existeDirectorio = Directory.Exists(Request.PhysicalApplicationPath + "\\" + carpetaDestino); if (!existeDirectorio) { // Especificamos el directorio activo actual. string directorioActivo = Request.PhysicalApplicationPath; // Creamos la nueva carpeta para guardar los logos. string nuevaCarpeta = System.IO.Path.Combine(directorioActivo, carpetaDestino); System.IO.Directory.CreateDirectory(nuevaCarpeta); } // Verificamos si se ha creado la carpeta para logos, de lo contrario se crea. string carpetaLogos = "LogosEmpresas"; bool existeCarpeta = Directory.Exists(Request.PhysicalApplicationPath + "\\" + carpetaDestino + "\\" + carpetaLogos); if (!existeCarpeta) { // Especificamos el directorio activo actual. string directorioActivo = Request.PhysicalApplicationPath; // Creamos la nueva carpeta para guardar los archivos. string nuevaCarpeta = System.IO.Path.Combine(directorioActivo + "\\" + carpetaDestino, carpetaLogos); System.IO.Directory.CreateDirectory(nuevaCarpeta); } // Redimensionamos la imagen al tamaño obligatorio 356 x 56. int ancho = 356; int alto = 56; // Guardamos la imagen en la carpeta seleccionada. File1.PostedFile.SaveAs(Request.PhysicalApplicationPath + carpetaDestino + "\\" + carpetaLogos + "\\" + nombreLogo); //Accedemos a la imagen guardada para poder redimensionarla. string imagenUrl = carpetaDestino + "/" + carpetaLogos + "/" + nombreLogo; System.Drawing.Image nuevaImagen = System.Drawing.Image.FromFile(Server.MapPath(imagenUrl)); System.Drawing.Image.GetThumbnailImageAbort dummyCallBack = new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback); System.Drawing.Image imagenRedimensionada = nuevaImagen.GetThumbnailImage(ancho, alto, dummyCallBack, IntPtr.Zero); // Liberamos las imagenes utilizadas. nuevaImagen.Dispose(); // Salvamos la imagen redimensionada. imagenRedimensionada.Save(Request.PhysicalApplicationPath + carpetaDestino + "\\" + carpetaLogos + "\\" + nombreLogo, ImageFormat.Png); // Liberamos las imagenes utilizadas y liberamos memoria. imagenRedimensionada.Dispose(); GC.Collect(); // Guardamos la nueva imagen redimensionada. empresa.Logo = nombreLogo; } } else if ((this.txtLogoActual.Text != "") && (this.File1.Disabled == true)) { empresa.Logo = this.txtLogoActual.Text; } else { Exception ex = new Exception("Seleccione un logo a guardar."); throw ex; } // Datos para delfos empresa.Web = txtDirWeb.Text; empresa.NumeIIBB = txtNumeroIIBB.Text; empresa.FechaInicio = Convert.ToDateTime(txtFechaInicio.Text); empresa.NumeEstablecimiento = txtNumeroEstablecimiento.Text; empresa.Telefono = domicilio.Telefono; empresa.CondicionIVA = ddlCondicionIva.SelectedItem.Text; empresa.CertificadoDigital = txtCertificadoDigital.Text; empresa.Texto = this.txtTexto.Text.Trim(); try { if (empresa.Guardar(usuario)) { string script = "<script language='javascript'>\n"; script += "alert('Los datos se guardaron correctamente.');\n"; script += "window.location.href = 'ABMEmpresasFacturacionConsul.aspx';\n"; script += "</script>"; Page.RegisterStartupScript("scriptOk", script); } else { string script = "<script language='javascript'>\n"; script += "alert('Los datos no se guardaron debido a errores.');\n"; script += "</script>"; Page.RegisterStartupScript("scriptError", script); } } catch (Exception ex) { string mensaje = ex.Message; try { mensaje = this.TraducirTexto(ex.Message); if (mensaje == "Errores.Invalidos.EmpresaNoActualizable.NoPuedeSerPredeterminada") { mensaje = "No puede ser empresa predeterminada por que no cumple con las propiedades de ser unica y estar asociada a todas las agencias."; } if (mensaje == "" || mensaje == null) { mensaje = ex.Message; } } catch (Exception) { mensaje = ex.Message; } ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje); } } catch (Exception ex) { string mensaje = ex.Message; try { mensaje = this.TraducirTexto(ex.Message); if (mensaje == "" || mensaje == null) { mensaje = ex.Message; } } catch (Exception) { mensaje = ex.Message; } ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje); } }