private void Insertar(OOB.Contable.Asiento.Asiento.Guardar ficha) { var result = Globals.MyData.Asiento_Guardar(ficha); if (result.Result == OOB.Resultado.EnumResult.isError) { Helpers.Msg.Error(result.Mensaje); return; } Helpers.Msg.AgregarOk(); }
private void fCont_ExportarDetalleOk(object sender, Contabilizar.DatosEncabezado e) { fCont.Close(); var list = AsientosDet.ToList(); var mdebe = AsientosDet.Sum(d => d.MontoDebe); var mhaber = AsientosDet.Sum(d => d.MontoHaber); var ficha = new OOB.Contable.Asiento.Asiento.Guardar() { IsPreview = true, Periodo = this.Periodo, TipoAsiento = e.TipoAsiento, TipoDocumento = e.TipoDoc, Descripcion = e.Descripcion, DocumentoRef = "", Fecha = DateTime.Now, Importe = mdebe > mhaber ? mdebe : mhaber, Asiento = null, }; var ldet = list.Select(cta => { var det = new OOB.Contable.Asiento.Asiento.Detalle(); det.Cta = new OOB.Contable.PlanCta.Ficha() { Id = cta.IdCta, Codigo = cta.CodigoCta, Nombre = cta.DescripcionCta, Naturaleza = cta.Naturaleza, }; det.Debe = cta.MontoDebe; det.Haber = cta.MontoHaber; det.Codigo = cta.CodigoCta; det.Descripcion = cta.DescripcionCta; return(det); }).ToList(); ficha.Detalles = ldet; Insertar(ficha); }
private void Editar(OOB.Contable.Asiento.Asiento.Guardar ficha) { var result = Globals.MyData.Asiento_Guardar(ficha); if (result.Result == OOB.Resultado.EnumResult.isError) { Helpers.Msg.Error(result.Mensaje); return; } EventHandler <int> handler = EditarOk; if (handler != null) { handler(this, result.Id); } Helpers.Msg.EditarOk(); salirOk = true; Close(); }
public OOB.Resultado.ResultadoId Asiento_Guardar(OOB.Contable.Asiento.Asiento.Guardar ficha) { var result = new OOB.Resultado.ResultadoId(); int idAsientoEditado = -1; int idAsientoPreview = -1; if (ficha.Asiento != null) { if (!ficha.Asiento.EstaProcesado) { idAsientoPreview = ficha.Asiento.Id; } else { idAsientoEditado = ficha.Asiento.Id; } } var fichaDTO = new DTO.Contable.Asiento.Insertar() { IdAsientoPreview = idAsientoPreview, IdAsientoEditado = idAsientoEditado, IdTipoDocumento = ficha.TipoDocumento.Id, DescTipoDocumento = ficha.TipoDocumento.Descripcion, TipoAsiento = (DTO.Contable.Asiento.Enumerados.Tipo)ficha.TipoAsiento, PeriodoMes = ficha.Periodo.MesActual, PeriodoAno = ficha.Periodo.AnoActual, Importe = ficha.Importe, DocumentoRef = ficha.DocumentoRef, FechaDocumentoRef = ficha.Fecha, DescripcionDocumentoRef = ficha.Descripcion, IsPreview = ficha.IsPreview, Ctas = ficha.Detalles.Select((d) => { var signo = 1; //if (d.Cta.Naturaleza == OOB.Contable.PlanCta.Enumerados.Naturaleza.Deudora) //{ // if (d.Haber != 0) // { // signo = 1; // } //} //else //{ // signo = -1; // if (d.Debe != 0) // { // signo = 1; // } //} return(new DTO.Contable.Asiento.InsertarCta() { Id = d.Cta.Id, MontoDebe = d.Debe * signo, MontoHaber = d.Haber * signo, codigo = d.Cta.Codigo, Descripcion = d.Cta.Nombre, Naturaleza = (DTO.Contable.PlanCta.Enumerados.Naturaleza)d.Cta.Naturaleza, }); }).ToList() }; var resultDTO = _servicio.Contable_Asiento_Guardar(fichaDTO); if (resultDTO.Result == DTO.EnumResult.isError) { result.Mensaje = resultDTO.Mensaje; result.Result = OOB.Resultado.EnumResult.isError; return(result); } result.Id = resultDTO.Id; return(result); }
private void Procesar(bool Procesado = true) { var doc = (OOB.Contable.TipoDocumento.Ficha)CB_DOCUMENTO.SelectedItem; if (MDebe == 0 && MHaber == 0) { return; } if (doc == null) { return; } if (TB_DOCUMENTO.Text.Trim() == "") { return; } if (TB_DESCRIPCION.Text.Trim() == "") { return; } if (Procesado) { if (MDebe != MHaber) { return; } } OOB.Contable.Asiento.Enumerados.Tipo tipoAsiento = OOB.Contable.Asiento.Enumerados.Tipo.Operativo; switch (CB_TIPO.SelectedIndex) { case 0: tipoAsiento = OOB.Contable.Asiento.Enumerados.Tipo.Operativo; break; case 1: tipoAsiento = OOB.Contable.Asiento.Enumerados.Tipo.Ajuste; break; case 2: tipoAsiento = OOB.Contable.Asiento.Enumerados.Tipo.Cierre; break; } var importe = 0.0m; if (Procesado) { importe = MDebe; } else { importe = MDebe > MHaber ? MDebe : MHaber; } var msg = MessageBox.Show("Procesar Asiento ?", "*** ALERTA ***", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (msg == System.Windows.Forms.DialogResult.Yes) { if (ModoFicha == Modo.AgregarFicha || ModoFicha == Modo.ExportarFicha) { var ficha = new OOB.Contable.Asiento.Asiento.Guardar() { Periodo = this.Periodo, TipoAsiento = tipoAsiento, TipoDocumento = doc, Descripcion = TB_DESCRIPCION.Text, DocumentoRef = TB_DOCUMENTO.Text, Fecha = DTP_FECHA.Value, IsPreview = !Procesado, Importe = importe, Detalles = items.Where(it => it.Cta != null).Select(d => { return(new OOB.Contable.Asiento.Asiento.Detalle() { Cta = d.Cta, Codigo = d.Codigo, Descripcion = d.Descripcion, Debe = d.Debe, Haber = d.Haber }); }).ToList() }; Insertar(ficha); } else { var ficha = new OOB.Contable.Asiento.Asiento.Guardar() { Asiento = this.Asiento, Periodo = this.Periodo, TipoAsiento = tipoAsiento, TipoDocumento = doc, Descripcion = TB_DESCRIPCION.Text, DocumentoRef = TB_DOCUMENTO.Text, Fecha = DTP_FECHA.Value, IsPreview = !Procesado, Importe = importe, Detalles = items.Where(it => it.Cta != null).Select(d => { return(new OOB.Contable.Asiento.Asiento.Detalle() { Cta = d.Cta, Codigo = d.Codigo, Descripcion = d.Descripcion, Debe = d.Debe, Haber = d.Haber }); }).ToList() }; Editar(ficha); } } }