public Modelo.Servicio ServicioDadoId(int id)
        {
            try
            {
                DataSetFacturacion.ficha_costosDataTable cost = FichaCostosTB.GetCostosById(id);
                Servicio servicio = new Servicio();
                servicio.Id = ((DataSetFacturacion.ficha_costosRow)cost[0]).id;
                servicio.Material = ((DataSetFacturacion.ficha_costosRow)cost[0]).material;
                servicio.Precio_unitario = ((DataSetFacturacion.ficha_costosRow)cost[0]).precio_unitario;

                return servicio;
            }
            catch (Exception ex)
            {
                throw ex ;
            }
        }
        public List<Servicio> ServiciosDadoIdPedido(int p)
        {
            List<Servicio> servicio = new List<Servicio>();
            DataSetFacturacion.pedidos_costosDataTable servicios = CostosTB.ServiciosdadoIdPedido(p);
            foreach (var item in servicios)
            {
              DataSetFacturacion.ficha_costosDataTable costos = FichaCostosTB.GetCostosById(((DataSetFacturacion.pedidos_costosRow)item).idcostos);
              foreach (var item2 in costos)
              {
                  Servicio a = new Servicio();
                  a.Id = ((DataSetFacturacion.ficha_costosRow)item2).id;
                  a.Material = ((DataSetFacturacion.ficha_costosRow)item2).material;
                  a.Precio_unitario = ((DataSetFacturacion.ficha_costosRow)item2).precio_unitario;
                  servicio.Add(a);
              }

            }
            return servicio;
        }
        public List<Cliente> TodosClientes()
        {
            List<Cliente> listaclientes = new List<Cliente>();
            foreach (var item in ds.cliente.Rows)
            {
                Cliente tempCliente = CrearCliente(item);

                foreach (var pedItem in ((DataSetFacturacion.clienteRow)item).GetpedidoRows())
                {
                    Pedido pedidotemp = new Pedido();
                    pedidotemp.Fecha_entrega = pedItem.fecha_entrega;
                    pedidotemp.Fecha_expedicion = pedItem.fecha_expedicion;
                    pedidotemp.Forma_pago = pedItem.forma_pago;
                    pedidotemp.Estado = pedItem.estado;
                    pedidotemp.Importe_total = pedItem.importe_total;
                    pedidotemp.ManoObraEncuadernado = pedItem.mano_obra_encuadernado;
                    pedidotemp.ManoObraFotocopia = pedItem.mano_obra_fotocopia;
                    pedidotemp.ManoObraImpresion = pedItem.mano_obra_impresion;
                    pedidotemp.ManoObraPresillado = pedItem.mano_obra_presillado;
                    pedidotemp.Paginas_por_Cara = pedItem.paginas_x_cara;
                    pedidotemp.Observaciones = pedItem.observaciones;
                    pedidotemp.Cantidad_Ejemplares = pedItem.cant_ejemplares;
                    pedidotemp.Cantidad_paginas = pedItem.cantidad_paginas;
                    pedidotemp.Pago_adelantado = pedItem.pago_adelantado;
                    pedidotemp.Tipo_documento = pedidotemp.Tipo_documento;
                    pedidotemp.Tipo_impresion = pedidotemp.Tipo_impresion;

                    foreach (var pedServItem in pedItem.Getpedidos_costosRows())
                    {
                        Servicio serv = new Servicio();
                        var serTable = pedServItem.ficha_costosRow;
                        serv.Material = serTable.material;
                        serv.Precio_unitario = serTable.precio_unitario;
                        serv.Id = serTable.id;
                        serv.Cant_utilizada = serTable.cantidad_material;
                        pedidotemp.Servicios.Add(serv);
                    }
                    tempCliente.Pedidos.Add(pedidotemp);
                }
                listaclientes.Add(tempCliente);
            }
            return listaclientes;
        }
        private Servicio CrearServicio(string nombreservicio)
        {
            Servicio servicio = new Servicio();
            servicio.Material = nombreservicio;
            servicio.Precio_unitario = EntidadManager.CostoDadoMaterial(nombreservicio);

            if (pedido.ManoObraImpresion != 0 || pedido.ManoObraFotocopia != 0)
                servicio.Cant_utilizada = CantHojas(pedido);

            if (pedido.Cantidad_Hojas_Mecanografia != 0.0)
            {
                servicio.Cant_utilizada = pedido.Cantidad_Hojas_Mecanografia;
                costomecanografia = servicio.Precio_unitario;
            }

            return servicio;
        }