示例#1
0
        public virtual ItemCotizacion AddItem()
        {
            ItemCotizacion Item = new ItemCotizacion();

            Items.Add(Item);
            return(Item);
        }
示例#2
0
 public FrmCalculoMetros(ItemCotizacionServicio item, ItemCotizacion itemCotizacion)
 {
     InitializeComponent();
     m_item = item;
     m_itemCotizacion = itemCotizacion;
     Mostrar();
     ShowDialog();
 }
 public ItemCotizacionServicio ObtenerServicio(Cotizacion m_Cotizacion, ItemCotizacion m_ItemElemento)
 {
     cotizacion = m_Cotizacion;
     lcm = cotizacion.ListaCostosMaquina;
     lpe = cotizacion.ListaPreciosExistencia;
     lpt = cotizacion.ListaPreciosTransporte;
     ItemElemento = m_ItemElemento;
     ShowDialog();
     if (SWAcept) { return Item; }
     return null;
 }
        //public FrmCotizaciondeServicio(ItemCotizacionServicio m_Item)
        //{
        //    InitializeComponent();
        //    Item = m_Item;
        //    Mostrar();
        //}

        public FrmCotizaciondeServicio(Cotizacion m_Cotizacion,ItemCotizacionServicio m_Item, ItemCotizacion m_ItemElemento)
        {
            InitializeComponent();
            cotizacion = m_Cotizacion;
            lcm = cotizacion.ListaCostosMaquina;
            lpe = cotizacion.ListaPreciosExistencia;
            lpt = cotizacion.ListaPreciosTransporte;
            ItemElemento = m_ItemElemento;
            Item = m_Item;
            Mostrar();
        }
示例#5
0
        public virtual ItemCotizacion Copiar()
        {
            ItemCotizacion ItemCopia = new ItemCotizacion();
            ItemCopia.ImpresoTiraColor = ImpresoTiraColor;
            ItemCopia.ImpresoRetiraColor = ImpresoRetiraColor;
            ItemCopia.ImpresoRetiraColor = ImpresoRetiraColor;
            ItemCopia.Cantidad = Cantidad;
            ItemCopia.Observacion = Observacion;
            ItemCopia.TipoUnidad = TipoUnidad;
            ItemCopia.Nombre = Nombre;

            ItemCopia.MedidaAbiertaLargo = MedidaAbiertaLargo;
            ItemCopia.MedidaAbiertaAlto = MedidaAbiertaAlto;
            ItemCopia.MedidaCerradaLargo = MedidaCerradaLargo;
            ItemCopia.MedidaCerradaAlto = MedidaCerradaAlto;
            ItemCopia.Precio = Precio;
            ItemCopia.Costo = Costo;
            ItemCopia.CostoMaquina = CostoMaquina;


            ItemCopia.CostoMaterial = CostoMaterial;
            ItemCopia.CostoTransporte = CostoTransporte;
            ItemCopia.TieneMedidaAbierta = TieneMedidaAbierta;
            ItemCopia.TieneMedidaCerrada = TieneMedidaCerrada;




            ItemCopia.TieneTiraRetira = TieneTiraRetira;
            ItemCopia.SeparacionX = SeparacionX;
            ItemCopia.SeparacionY = SeparacionY;
            ItemCopia.FormatoImpresionLargo = FormatoImpresionLargo;
            ItemCopia.FormatoImpresionAlto = FormatoImpresionAlto;
            ItemCopia.GraficoPrecorteGirado = GraficoPrecorteGirado;
            ItemCopia.GraficoImpresionGirado = GraficoImpresionGirado;
            ItemCopia.NroPiezasPrecorte = NroPiezasPrecorte;


            ItemCopia.NroPiezasImpresion = NroPiezasImpresion;

            ItemCopia.MetodoImpresion = MetodoImpresion;
            ItemCopia.TieneGraficos = TieneGraficos;
            ItemCopia.TieneMaterial = TieneMaterial;
            ItemCopia.TieneMaquina = TieneMaquina;
            ItemCopia.LabelMaterial = LabelMaterial;





            ItemCopia.LabelMaterialAlmancen = LabelMaterialAlmancen;
            ItemCopia.LabelProduccion = LabelProduccion;
            ItemCopia.TieneTipoUnidad = TieneTipoUnidad;
            ItemCopia.UnidadMedidaAbierta = UnidadMedidaAbierta;
            ItemCopia.NumerodePases = NumerodePases;
            ItemCopia.CantidadMaterial = CantidadMaterial;

            ItemCopia.CantidadProduccion = CantidadProduccion;
            ItemCopia.CantidadDemasia = CantidadDemasia;
            ItemCopia.CantidadElemento = CantidadElemento;
            ItemCopia.CostoServicio = CostoServicio;
            ItemCopia.CantidadUnidad = CantidadUnidad;


            ItemCopia.CantidadDemasiaMaterial = CantidadDemasiaMaterial;
            ItemCopia.NumeroPliegos = NumeroPliegos;
            ItemCopia.GraficoImpresionManual = GraficoImpresionManual;
            ItemCopia.MuestraPrecioEnPresupuesto = MuestraPrecioEnPresupuesto;


            ItemCopia.NumeroCambios = NumeroCambios;
            ItemCopia.MetodoImpresionOffset = MetodoImpresionOffset;
            ItemCopia.Operacion = Operacion;
            ItemCopia.Maquina = Maquina;


            ItemCopia.Material = Material;
            



            foreach (ItemCotizacionServicio ItemServicio in Servicios)
            {
                ItemCotizacionServicio ItemServicioCopia = new ItemCotizacionServicio();

                ItemServicioCopia.Servicio = ItemServicio.Servicio;

                ItemServicioCopia.UnidadServicio = ItemServicio.UnidadServicio;
                ItemServicioCopia.CantidadServicio = ItemServicio.CantidadServicio;
                ItemServicioCopia.CostoServicio = ItemServicio.CostoServicio;
                ItemServicioCopia.Maquina = ItemServicio.Maquina;
                ItemServicioCopia.UnidadMaquina = ItemServicio.UnidadMaquina;
                ItemServicioCopia.CantidadMaquina = ItemServicio.CantidadMaquina;
                ItemServicioCopia.CostoMaquina = ItemServicio.CostoMaquina;
                ItemServicioCopia.Material = ItemServicio.Material;
                ItemServicioCopia.UnidadMaterial = ItemServicio.UnidadMaterial;


                ItemServicioCopia.CantidadMaterial = ItemServicio.CantidadMaterial;

                ItemServicioCopia.CostoMaterial = ItemServicio.CostoMaterial;
                ItemServicioCopia.CostoTotalServicio = ItemServicio.CostoTotalServicio;
                ItemServicioCopia.EsAutogenerado = ItemServicio.EsAutogenerado;
                ItemCopia.Servicios.Add(ItemServicioCopia);

            }

            return ItemCopia;
        }
示例#6
0
        private Decimal obtenerItemListaCostosMaquina(ItemCotizacion itemCotizacion)
        {
            //Decimal resultado = 0;
            //try
            //{
            //    ItemListaCostosMaquina ilcm = obtenerItemListaCostosMaquina(itemCotizacion.Maquina);
            //    UnidadListaCostosMaquina Uilcm = obtenerUnidadLCM(ilcm);
            //    EscalaListaCostosMaquina Elcm = obtenerEscalaLCM(Uilcm, itemCotizacion);

            //    Int32 multiplicador = 1;
            //    if (Uilcm.Unidad.Nombre.Equals("MILLAR"))
            //    {
            //        multiplicador = 1000;
            //        resultado = (itemCotizacion.CantidadProduccion) / multiplicador;
            //        Int32 entero = Convert.ToInt32(resultado);
            //        Decimal residuo = (resultado - entero) * 100;
            //        if (residuo >= 20 && residuo <= 100)
            //        {
            //            resultado = (entero + 1) * Elcm.Costo * itemCotizacion.NumerodePases * itemCotizacion.NumeroPliegos;
            //        }
            //        else if (entero == 0 && residuo > 0)
            //        {
            //            resultado = (1) * Elcm.Costo * itemCotizacion.NumerodePases * itemCotizacion.NumeroPliegos;
            //        }
            //        else
            //        {
            //            resultado = (entero) * Elcm.Costo * itemCotizacion.NumerodePases * itemCotizacion.NumeroPliegos;
            //        }

            //        Decimal factorColores = 0;
            //        //VERIFICANDO METODO
            //        if (itemCotizacion.MetodoImpresion.Equals("TIRA/RETIRA"))
            //        {
            //            factorColores = Convert.ToDecimal(itemCotizacion.ImpresoTiraColor) / 4;
            //            factorColores += Convert.ToDecimal(itemCotizacion.ImpresoRetiraColor) / 4;
            //        }
            //        else
            //        {
            //            factorColores = Convert.ToDecimal(itemCotizacion.ImpresoTiraColor) / 4;

            //        }

            //        resultado = resultado * factorColores;


            //    }

            //    else
            //    {
            //        multiplicador = 1;
            //        resultado = itemCotizacion.CantidadProduccion / multiplicador;
            //        Int32 entero = Convert.ToInt32(resultado);
            //        Decimal residuo = resultado - entero;
            //        if (residuo > 0 && residuo <= 1)
            //        {
            //            resultado = (entero + 1) * Elcm.Costo;
            //        }
            //        else
            //        {
            //            resultado = (entero) * Elcm.Costo;
            //        }
            //    }
            //}
            //catch (Exception)
            //{

            //}
            //return resultado;




            Decimal resultado = 0;
            try
            {
                ItemListaCostosMaquina ilcm = obtenerItemListaCostosMaquina(itemCotizacion.Maquina);
                UnidadListaCostosMaquina Uilcm = obtenerUnidadLCM(ilcm);
                EscalaListaCostosMaquina Elcm = obtenerEscalaLCM(Uilcm, itemCotizacion);

                Int32 multiplicador = 1;
                if (Uilcm.Unidad.Nombre.Equals("MILLAR"))
                {
                    multiplicador = 1000;
                    resultado = (itemCotizacion.CantidadProduccion * itemCotizacion.NumerodePases) / multiplicador;
                    Int32 entero = Convert.ToInt32(resultado);
                    Decimal residuo = (resultado - entero) * 100;
                    if (residuo >= 20 && residuo <= 100)
                    {
                        resultado = (entero + 1) * Elcm.Costo;
                    }
                    else if (entero == 0 && residuo > 0)
                    {
                        resultado = (1) * Elcm.Costo;
                    }
                    else
                    {
                        resultado = (entero) * Elcm.Costo;
                    }

                    Decimal factorColores = 0;
                    Decimal factorColores2 = 0;

                    //VERIFICANDO METODO
                    decimal PrecioCambiado = 0;
                    if (itemCotizacion.MetodoImpresionOffset.FactorCambios==2 )
                    {
                        factorColores = Convert.ToDecimal(itemCotizacion.ImpresoTiraColor) / 4;
                        factorColores2 = Convert.ToDecimal(itemCotizacion.ImpresoRetiraColor) / 4;


                        //PRIMER PASE
                        PrecioCambiado = resultado * factorColores;
                        PrecioCambiado += resultado * factorColores2;


                    }
                    else
                    {
                        factorColores = Convert.ToDecimal(itemCotizacion.ImpresoTiraColor) / 4;
                        if (itemCotizacion.NumeroPliegos == 1)
                        {
                            PrecioCambiado = resultado * factorColores;
                        }
                    }

                    resultado = PrecioCambiado * itemCotizacion.NumeroPliegos;



                }

                else
                {
                    multiplicador = 1;
                    resultado = itemCotizacion.CantidadProduccion / multiplicador;
                    Int32 entero = Convert.ToInt32(resultado);
                    Decimal residuo = resultado - entero;
                    if (residuo > 0 && residuo <= 1)
                    {
                        resultado = (entero + 1) * Elcm.Costo;
                    }
                    else
                    {
                        resultado = (entero) * Elcm.Costo;
                    }
                }
            }
            catch (Exception)
            {

            }
            return resultado;

        }
示例#7
0
        private Decimal obtenerItemListaCostosMaterial(ItemCotizacion itemCotizacion)
        {
            Decimal resultado = 0;
            try
            {

                Decimal costoMaterial = 0;

                if (itemCotizacion.Material.CostoUltimaCompra > 0)
                {
                    costoMaterial = itemCotizacion.Material.CostoUltimaCompra;
                }
                else
                {
                    costoMaterial = itemCotizacion.Material.CostoReferencia;
                }



                if (itemCotizacion.NumeroPliegos == 0)
                {
                    itemCotizacion.NumeroPliegos = 1;
                }

                resultado = costoMaterial * (itemCotizacion.CantidadMaterial + itemCotizacion.CantidadDemasiaMaterial) * itemCotizacion.NumeroPliegos;

            }
            catch (Exception)
            {
            }


            return resultado;

        }
示例#8
0
        private void CosteoElemento(ItemCotizacion itemCotizacion2)
        {
            if (itemCotizacion2.Maquina != null)
            {
                itemCotizacion2.CostoMaquina = obtenerItemListaCostosMaquina(itemCotizacion2);
            }
            else
            {
                itemCotizacion2.CostoMaquina = 0;
            }


            if (itemCotizacion2.Material != null)
            {
                itemCotizacion2.CostoMaterial = obtenerItemListaCostosMaterial(itemCotizacion2);
            }
            else
            {
                itemCotizacion2.CostoMaterial = 0;
            }

            Decimal totalservicio = 0;
            foreach (ItemCotizacionServicio item in itemCotizacion2.Servicios)
            {
                totalservicio += item.CostoTotalServicio;
            }
            itemCotizacion2.CostoServicio = totalservicio;
            itemCotizacion2.Cantidad = 1;
            itemCotizacion2.Costo = Math.Round((itemCotizacion2.CostoMaquina + itemCotizacion2.CostoMaterial + itemCotizacion2.CostoServicio) / itemCotizacion2.CantidadElemento, 2) * itemCotizacion2.CantidadElemento;
            itemCotizacion2.Precio = itemCotizacion2.Costo;
        }
示例#9
0
 private void utCotizacion_AfterSelect(object sender, Infragistics.Win.UltraWinTree.SelectEventArgs e)
 {
     UltraTreeNode Node = utCotizacion.ActiveNode;
     if (Node != null)
     {
         ItemCotizacion = (ItemCotizacion)Node.Tag;
         utcItemCotizacion.Tabs[0].Text = Node.Text;
         MostrarItem(Node);
     }
 }
示例#10
0
        private void MostrarTotalAMM(ItemCotizacion itemSe)
        {

            Decimal total = 0;
            foreach (ItemCotizacionServicio itemServicio in itemSe.Servicios)
            {
                total += itemServicio.CostoTotalServicio;
            }
            itemSe.CostoServicio = total;
            txtCostoServicio.Value = itemSe.CostoServicio;
        }
示例#11
0
 public void MostrarAMMS(ItemCotizacion ItemCotizacion)
 {
     base.ClearAllRows(ref ugServicios);
     foreach (ItemCotizacionServicio Item in ItemCotizacion.Servicios)
     {
         UltraGridRow Row = ugServicios.DisplayLayout.Bands[0].AddNew();
         Row.Tag = Item;
         MostrarAAM(Row);
     }
     MostrarTotalAMM(ItemCotizacion);
 }
示例#12
0
        public void MostrarItem(UltraTreeNode Node)
        {
            ActualizandoIU = true;
            ItemCotizacion Item = null;

            Node.Text = ItemCotizacion.Nombre;
            Item = (ItemCotizacion)Node.Tag;


            txtNombre.Text = ItemCotizacion.Nombre;
            labelSobranPaginas.Text = "";
            ItemCotizacion = Item;
            GrupoMedidaAbierta.Visible = Item.TieneMedidaAbierta;
            GrupoMedidaCerrada.Visible = Item.TieneMedidaCerrada;
            GruposTiras.Visible = Item.TieneTiraRetira;
            ssMaquina.Text = (Item.Maquina != null) ? Item.Maquina.Nombre : "";
            ssMaterial.Text = (Item.Material != null) ? Item.Material.Nombre : "";


            txtMedidaAnchoCaja.Value = Item.MedidaAnchoCaja;

            if (Item.TieneTipoUnidad)
            {
                GrupoMedidaAbierta.Text = "MEDIDA DE " + Item.TipoUnidad;
            }
            else
            {
                GrupoMedidaAbierta.Text = "MEDIDA ABIERTA";
            }


            busMetodoImpresion.Text = (Item.MetodoImpresionOffset != null) ? Item.MetodoImpresionOffset.Codigo : "";

            txtNumeroCambios.Value = Item.NumeroCambios;

            lblTipoUnidad.Text = Item.TipoUnidad;
            txtObservacionItem.Text = Item.Observacion;
            txtCantidadItem.Value = Item.CantidadUnidad;
            txtCantidadProduccion.Value = Item.CantidadElemento;
            txtMedidaAbiertoLargo.Value = Item.MedidaAbiertaLargo;
            txtMedidaAbiertoAlto.Value = Item.MedidaAbiertaAlto;
            txtMedidaCerradaLargo.Value = Item.MedidaCerradaLargo;
            txtMedidaCerradaAlto.Value = Item.MedidaCerradaAlto;
            txtImpresoTiraColor.Value = Item.ImpresoTiraColor;
            txtImpresoRetiraColor.Value = Item.ImpresoRetiraColor;
            uneCostoMaquina.Value = Item.CostoMaquina;
            uneCostoMaterial.Value = Item.CostoMaterial;
            uneCosto.Value = Item.Costo;
            uneSeparacionX.Value = Item.SeparacionX;
            uneSeparacionY.Value = Item.SeparacionY;
            txtFormatoImpresionAlto.Value = Item.FormatoImpresionAlto;
            txtFormatoImpresionLargo.Value = Item.FormatoImpresionLargo;
            txtNroPiezasPrecorte.Value = Item.NroPiezasPrecorte;
            txtNroPiezasImpresion.Value = Item.NroPiezasImpresion;
            txtImpresionAlto.Value = Item.MedidaAbiertaAlto;
            txtImpresionLargo.Value = Item.MedidaAbiertaLargo;
            ssMaquina.Visible = Item.TieneMaquina;
            lblMaquina.Visible = Item.TieneMaquina;
            ssMaterial.Visible = Item.TieneMaterial;
            lblMaterial.Visible = Item.TieneMaterial;
            txtCostoServicio.Value = Item.CostoServicio;
            //lblCostoMaquina.Visible = Item.TieneMaquina;
            uneCostoMaquina.Visible = Item.TieneMaquina;
            //lblCostoMaterial.Visible = Item.TieneMaterial;
            uneCostoMaterial.Visible = Item.TieneMaterial;
            txtMedidaAnchoCaja.Visible = Item.TieneFondo;
            labelFondoCaja.Visible = Item.TieneFondo;

            comboMedida.Text = Item.UnidadMedidaAbierta;
            lblTipoUnidad.Visible = Item.TieneTipoUnidad;
            txtCantidadItem.Visible = Item.TieneTipoUnidad;
            checkMuestraPrecioEnPresupuesto.Checked = Item.MuestraPrecioEnPresupuesto;



            if (Item.TieneTipoUnidad == false)
            {
                txtCantidadItem.Value = 0;
            }


            txtDemasia.Value = Item.CantidadDemasia;
            txtPases.Value = Item.NumerodePases;
            txtHojasMaquina.Value = (Item.CantidadMaterial) * Item.NroPiezasPrecorte;
            txtTiraje.Value = Item.CantidadProduccion;

            LabelMateriaPrima.Text = "";
            if (Item.NumeroPliegos > 0)
            {
                LabelMateriaPrima.Text = Item.NumeroPliegos + " pliegos de : ";
            }

            LabelMateriaPrima.Text += Math.Round(Item.CantidadMaterial, 0).ToString() + " + " + Math.Round(Item.CantidadDemasiaMaterial, 0).ToString() + " = " + Math.Round((Item.CantidadMaterial + Item.CantidadDemasiaMaterial), 0).ToString() + " Hjs/Resma";
            Item.LabelMaterial = LabelMateriaPrima.Text;



            LabelMaterialAlmancen.Text = "";
            if (Item.NumeroPliegos > 0)
            {
                LabelMaterialAlmancen.Text = " Total Material : ";
            }

            LabelMaterialAlmancen.Text += " = " + Math.Round((Item.CantidadMaterial + Item.CantidadDemasiaMaterial), 0).ToString() + " Hjs/Resma";
            Item.LabelMaterial = LabelMaterialAlmancen.Text;




            LabelProduccion.Text = "";
            if (Item.NumeroPliegos > 0)
            {
                LabelProduccion.Text = Item.NumeroPliegos + " pliegos de : ";
            }
            LabelProduccion.Text += Math.Round(((Item.CantidadMaterial + Item.CantidadDemasiaMaterial) * Item.NroPiezasPrecorte), 0).ToString() + " Hjs/Maquina";

            Item.LabelProduccion = LabelProduccion.Text;
            txtPliegos.Value = Item.NumeroPliegos;


            // if (Item.MetodoImpresion != null) {

            //}


            checkGraficoImpresionManual.Checked = Item.GraficoImpresionManual;

            utcItemCotizacion.Tabs["Graficos"].Visible = Item.TieneGraficos;
            txtDemasia.Value = Item.CantidadDemasia;

            if (Item.TieneGraficos)
            {
                try
                {
                    upbImpresion.Visible = true;
                    txtNroPiezasImpresion.ReadOnly = true;
                    if (Item.GraficoImpresionManual)
                    {
                        upbImpresion.Visible = false;
                        txtNroPiezasImpresion.ReadOnly = false;
                    }
                    else if (Item.GraficoImpresionGirado)
                    {
                        GenerarGraficoImpresionRotado();
                    }
                    else
                    {
                        GenerarGraficoImpresionNormal();
                    }



                    if (Item.GraficoPrecorteGirado)
                    {

                        GenerarGraficoPrecorteRotado();

                    }
                    else { GenerarGraficoPrecorteNormal(); }
                }
                catch (Exception)
                {

                }
            }

            labelSobranPaginas.Text="";
            if(Item.PaginasSobrantes >0){
                labelSobranPaginas.Text = "Sobran " + Item.PaginasSobrantes + " paginas";
            }

            uceIncluirEnPresupuesto.Checked = Item.IncluirEnPrespuesto;

            MostrarAMMS(Item);
            ActualizandoIU = false;
        }
示例#13
0
        private void CalcularProduccionItem(ItemCotizacion itemcosteado)
        {
            try
            {
                if (itemcosteado == null) { return; }

                if (itemcosteado.Operacion.Codigo.Equals("IMPRVINIL") || itemcosteado.Operacion.Nombre.Equals("IMPRESION BANNER"))
                {
                    Decimal largo = itemcosteado.MedidaAbiertaLargo;
                    Decimal alto = itemcosteado.MedidaAbiertaAlto;
                    
                    if (itemcosteado.UnidadMedidaAbierta.Equals("CM."))
                    {
                        largo = largo / 100;
                        alto = alto / 100;
                    }

                    if (ItemCotizacion.TieneGraficos)
                    {
                        itemcosteado.CantidadMaterial = Math.Round((itemcosteado.CantidadElemento * (largo * alto)), 0);
                    }
                    else 
                    {
                        itemcosteado.CantidadMaterial = (itemcosteado.CantidadElemento * (largo * alto));
                    }
                    
                    itemcosteado.CantidadDemasiaMaterial = itemcosteado.CantidadDemasia;

                    itemcosteado.CantidadProduccion = itemcosteado.CantidadMaterial + itemcosteado.CantidadDemasiaMaterial;
                }
                else
                {

                    Decimal mat = 0;
                    if (itemcosteado.CantidadUnidad > 0 && itemcosteado.TieneTipoUnidad)
                    {
                        mat = (itemcosteado.CantidadElemento / (itemcosteado.NroPiezasPrecorte));
                    }
                    else
                    {

                        mat = (itemcosteado.CantidadElemento / (itemcosteado.NroPiezasPrecorte * itemcosteado.NroPiezasImpresion));
                    }

                    Int32 mate = Convert.ToInt32(mat);

                    if ((mat - mate) > 0)
                    {
                        itemcosteado.CantidadMaterial = mate + 1;
                    }
                    else
                    {
                        itemcosteado.CantidadMaterial = mate;
                    }


                    //itemcosteado.CantidadMaterial += itemcosteado.CantidadDemasia;
                    try
                    {
                        itemcosteado.CantidadDemasiaMaterial = itemcosteado.CantidadDemasia / itemcosteado.NroPiezasPrecorte;
                    }
                    catch (Exception)
                    {
                    }






                    Int32 pases = 1;





                    if (itemcosteado.MetodoImpresion.Equals("TIRA Y RETIRA"))
                    {
                        pases = 2;
                    }
                    else if (itemcosteado.MetodoImpresion.Equals("CONTRAPINZA"))
                    {
                        pases = 2;
                    }



                    labelSobranPaginas.Text = "";


                    if (itemcosteado.CantidadUnidad == 0)
                    {
                        itemcosteado.NumeroPliegos = 1;
                    }
                    else
                    {
                        Decimal pliegos = itemcosteado.CantidadUnidad / (itemcosteado.NroPiezasImpresion * 2);
                        Decimal entero = Math.Truncate(pliegos);
                        Decimal paginasresiduo = entero - pliegos;
                        itemcosteado.PaginasSobrantes = 0;
                        if (paginasresiduo < 0) {
                            itemcosteado.PaginasSobrantes = Convert.ToInt32(itemcosteado.CantidadUnidad - (entero * itemcosteado.NroPiezasImpresion * 2)) ;    
                        }
                        
                        itemcosteado.NumeroPliegos = Convert.ToInt32(entero);

                        if (itemcosteado.NumeroPliegos == 0)
                        {

                            itemcosteado.NumeroPliegos = 1;
                        }
                    }
                    //itemcosteado.CantidadProduccion = (itemcosteado.CantidadMaterial + itemcosteado.CantidadDemasiaMaterial) * itemcosteado.NumerodePases * itemcosteado.NroPiezasPrecorte * pases;
                    itemcosteado.CantidadProduccion = (itemcosteado.CantidadMaterial + itemcosteado.CantidadDemasiaMaterial)  * itemcosteado.NroPiezasPrecorte * pases;

                }
            }
            catch (Exception)
            {
                //SoftException.ShowException(ex);
            }

        }
示例#14
0
        private EscalaListaCostosMaquina obtenerEscalaLCM(UnidadListaCostosMaquina Uilcm, ItemCotizacion itemcotizacion)
        {
            EscalaListaCostosMaquina eUilcm = null;

            if (Uilcm == null)
            {
                return eUilcm;
            }

            CalcularProduccionItem(itemcotizacion);


            Decimal cantidadProduccion = 0;
            if (Uilcm.Unidad.Nombre.Equals("MILLAR"))
            {

                cantidadProduccion = itemcotizacion.CantidadProduccion / 1000;

                Decimal entero = Convert.ToInt32(cantidadProduccion);

                Decimal dif = (cantidadProduccion - entero) * 100;
                if (dif < 20)
                {

                    cantidadProduccion = entero;
                }



            }
            else
            {
                cantidadProduccion = itemcotizacion.CantidadProduccion;

            }


            foreach (EscalaListaCostosMaquina escala in Uilcm.Escalas)
            {


                if ((escala.Desde == 0) && (escala.Hasta == 0))
                {
                    eUilcm = escala;
                    break;
                }
                else if ((escala.Desde <= cantidadProduccion) && (escala.Hasta >= cantidadProduccion))
                {
                    eUilcm = escala;
                    break;
                }
                else if ((escala.Hasta == 0))
                {
                    eUilcm = escala;
                    break;
                }
            }
            return eUilcm;

        }
示例#15
0
 public virtual ItemCotizacion AddItem()
 {
     ItemCotizacion Item = new ItemCotizacion();
     Items.Add(Item);
     return Item;
 }
示例#16
0
        public virtual ItemCotizacion Copiar()
        {
            ItemCotizacion ItemCopia = new ItemCotizacion();

            ItemCopia.ImpresoTiraColor   = ImpresoTiraColor;
            ItemCopia.ImpresoRetiraColor = ImpresoRetiraColor;
            ItemCopia.ImpresoRetiraColor = ImpresoRetiraColor;
            ItemCopia.Cantidad           = Cantidad;
            ItemCopia.Observacion        = Observacion;
            ItemCopia.TipoUnidad         = TipoUnidad;
            ItemCopia.Nombre             = Nombre;

            ItemCopia.MedidaAbiertaLargo = MedidaAbiertaLargo;
            ItemCopia.MedidaAbiertaAlto  = MedidaAbiertaAlto;
            ItemCopia.MedidaCerradaLargo = MedidaCerradaLargo;
            ItemCopia.MedidaCerradaAlto  = MedidaCerradaAlto;
            ItemCopia.Precio             = Precio;
            ItemCopia.Costo        = Costo;
            ItemCopia.CostoMaquina = CostoMaquina;


            ItemCopia.CostoMaterial      = CostoMaterial;
            ItemCopia.CostoTransporte    = CostoTransporte;
            ItemCopia.TieneMedidaAbierta = TieneMedidaAbierta;
            ItemCopia.TieneMedidaCerrada = TieneMedidaCerrada;



            ItemCopia.TieneTiraRetira        = TieneTiraRetira;
            ItemCopia.SeparacionX            = SeparacionX;
            ItemCopia.SeparacionY            = SeparacionY;
            ItemCopia.FormatoImpresionLargo  = FormatoImpresionLargo;
            ItemCopia.FormatoImpresionAlto   = FormatoImpresionAlto;
            ItemCopia.GraficoPrecorteGirado  = GraficoPrecorteGirado;
            ItemCopia.GraficoImpresionGirado = GraficoImpresionGirado;
            ItemCopia.NroPiezasPrecorte      = NroPiezasPrecorte;


            ItemCopia.NroPiezasImpresion = NroPiezasImpresion;

            ItemCopia.MetodoImpresion = MetodoImpresion;
            ItemCopia.TieneGraficos   = TieneGraficos;
            ItemCopia.TieneMaterial   = TieneMaterial;
            ItemCopia.TieneMaquina    = TieneMaquina;
            ItemCopia.LabelMaterial   = LabelMaterial;



            ItemCopia.LabelMaterialAlmancen = LabelMaterialAlmancen;
            ItemCopia.LabelProduccion       = LabelProduccion;
            ItemCopia.TieneTipoUnidad       = TieneTipoUnidad;
            ItemCopia.UnidadMedidaAbierta   = UnidadMedidaAbierta;
            ItemCopia.NumerodePases         = NumerodePases;
            ItemCopia.CantidadMaterial      = CantidadMaterial;

            ItemCopia.CantidadProduccion = CantidadProduccion;
            ItemCopia.CantidadDemasia    = CantidadDemasia;
            ItemCopia.CantidadElemento   = CantidadElemento;
            ItemCopia.CostoServicio      = CostoServicio;
            ItemCopia.CantidadUnidad     = CantidadUnidad;


            ItemCopia.CantidadDemasiaMaterial    = CantidadDemasiaMaterial;
            ItemCopia.NumeroPliegos              = NumeroPliegos;
            ItemCopia.GraficoImpresionManual     = GraficoImpresionManual;
            ItemCopia.MuestraPrecioEnPresupuesto = MuestraPrecioEnPresupuesto;


            ItemCopia.NumeroCambios         = NumeroCambios;
            ItemCopia.MetodoImpresionOffset = MetodoImpresionOffset;
            ItemCopia.Operacion             = Operacion;
            ItemCopia.Maquina = Maquina;


            ItemCopia.Material = Material;



            foreach (ItemCotizacionServicio ItemServicio in Servicios)
            {
                ItemCotizacionServicio ItemServicioCopia = new ItemCotizacionServicio();

                ItemServicioCopia.Servicio = ItemServicio.Servicio;

                ItemServicioCopia.UnidadServicio   = ItemServicio.UnidadServicio;
                ItemServicioCopia.CantidadServicio = ItemServicio.CantidadServicio;
                ItemServicioCopia.CostoServicio    = ItemServicio.CostoServicio;
                ItemServicioCopia.Maquina          = ItemServicio.Maquina;
                ItemServicioCopia.UnidadMaquina    = ItemServicio.UnidadMaquina;
                ItemServicioCopia.CantidadMaquina  = ItemServicio.CantidadMaquina;
                ItemServicioCopia.CostoMaquina     = ItemServicio.CostoMaquina;
                ItemServicioCopia.Material         = ItemServicio.Material;
                ItemServicioCopia.UnidadMaterial   = ItemServicio.UnidadMaterial;


                ItemServicioCopia.CantidadMaterial = ItemServicio.CantidadMaterial;

                ItemServicioCopia.CostoMaterial      = ItemServicio.CostoMaterial;
                ItemServicioCopia.CostoTotalServicio = ItemServicio.CostoTotalServicio;
                ItemServicioCopia.EsAutogenerado     = ItemServicio.EsAutogenerado;
                ItemCopia.Servicios.Add(ItemServicioCopia);
            }

            return(ItemCopia);
        }