private EstadoItem CreateItem(ItemComprobante item)
        {
            //German 20120302 -  Tarea 0000247
            EstadoItem miitem = new EstadoItem(item);

            //Fin German 20120302 -  Tarea 0000247
            miitem.IdProducto                = item.IdProducto;
            miitem.Codigo                    = item.Codigo;
            miitem.Descripcion               = item.Descripcion;
            miitem.DescripcionLarga          = item.DescripcionLarga;
            miitem.TieneDescripcionDetallada = item.TieneDescripcionPersonalizada;
            miitem.Cantidad                  = item.Cantidad;
            miitem.FechaDeEntrega            = mz.erp.businessrules.Sistema.DateTime.Now;
            EstadosCollection estadosCol = (new EstadosCollection()).GenerateFormaDeEntrega();
            string            id         = estadosCol.KeyOfValue(_estadoItemDefault);

            miitem.IdEstado = id;
            miitem.Ordinal  = item.Ordinal;
            miitem.Visible  = item.Visible;
            miitem.IdTipoDeComprobanteOrigen = item.ItemsComprobantes.ComprobanteDeVenta.TipoComprobanteDestino;
            miitem.IdComprobanteOrigen       = item.ItemsComprobantes.ComprobanteDeVenta.IdComprobante;

            // ---- Matias - Tarea 204 - 20090722
            miitem.CampoAuxiliar1 = item.CampoAuxiliar1;
            miitem.CampoAuxiliar2 = item.CampoAuxiliar2;
            miitem.CampoAuxiliar3 = item.CampoAuxiliar3;
            miitem.CampoAuxiliar4 = item.CampoAuxiliar4;
            miitem.CampoAuxiliar5 = item.CampoAuxiliar5;
            miitem.CampoAuxiliar6 = string.Empty;
            miitem.Observaciones  = string.Empty;
            // ---- FinMatias

            return(miitem);
        }
        private void LoadDataFromClassSeleccionEstadoDeItem(ArrayList estadodeItems)
        {
            this.ArrayItems.Clear();
            EstadosCollection estadosentrega = new EstadosCollection().GenerateFormaDeEntrega();
            string            idBuscado      = estadosentrega.KeyOfValue("Enviar");

            foreach (mz.erp.businessrules.EstadoItem unestadoItem in estadodeItems)
            {
                if (unestadoItem.IdEstado == idBuscado)                 //"1" es el enviar
                {
                    //German 20120302 -  Tarea 0000247
                    EstadoItem miitem = new EstadoItem(unestadoItem.Item);
                    //Fin German 20120302 -  Tarea 0000247
                    miitem.IdProducto       = unestadoItem.IdProducto;
                    miitem.Codigo           = unestadoItem.Codigo;
                    miitem.Descripcion      = unestadoItem.Descripcion;
                    miitem.DescripcionLarga = unestadoItem.DescripcionLarga;
                    miitem.Cantidad         = unestadoItem.Cantidad;
                    miitem.FechaDeEntrega   = unestadoItem.FechaDeEntrega;
                    miitem.IdEstado         = unestadoItem.IdEstado;
                    miitem.Ordinal          = unestadoItem.Ordinal;
                    this.ArrayItems.Add(miitem);
                }
            }
        }
        private void LoadDataFromComprobanteDeVentaSaved(ComprobanteDeVenta comprobante)
        {
            ProcessManager _process = comprobante.GetProcessManagerParent();

            if (_process.Process.MainTask.TaskInstance.Equals(comprobante))
            {
                foreach (RelacionComprobanteOrigenDestino rol in comprobante.RelacionesComprobantesOrigenDestino)
                {
                    string idComprobante = rol.IdComprobante;
                    long   idordinal     = rol.OrdinalOrigen;
                    mz.erp.commontypes.data.tsa_ComprobanteDetalleEstadoItemsDataset data = tsa_ComprobanteDetalleEstadoItems.GetList(idComprobante, idordinal, decimal.MinValue, System.DateTime.MinValue, null);
                    if (data.tsa_ComprobanteDetalleEstadoItems.Rows.Count > 0)
                    {
                        mz.erp.commontypes.data.tsa_ComprobanteDetalleEstadoItemsDataset.tsa_ComprobanteDetalleEstadoItemsRow row = (mz.erp.commontypes.data.tsa_ComprobanteDetalleEstadoItemsDataset.tsa_ComprobanteDetalleEstadoItemsRow)data.tsa_ComprobanteDetalleEstadoItems.Rows[0];

                        if (rol.Visible && rol.Entregar && this.DebeEntregar(rol.IdProducto, rol.IdTipoProducto))
                        {
                            if (this.Contains(rol.IdProducto, rol.OrdinalOrigen))
                            {
                                EstadoItem miitem = this.GetItem(rol.IdProducto, rol.OrdinalOrigen);
                                miitem.FechaDeEntrega            = row.Fecha;
                                miitem.IdEstado                  = row.IdEstado;
                                miitem.IdTipoDeComprobanteOrigen = comprobante.TipoComprobanteDestino;
                            }
                        }

                        /*
                         * else
                         * {
                         * if(rol.Entregar)
                         * {
                         *      if(!this.Contains( rol.IdProducto, rol.OrdinalOrigen, rol.Visible))
                         *      {
                         *              DataRow rowP = mz.erp.businessrules.tsh_Productos.GetByPk(rol.IdProducto);
                         *              EstadoItem miitem = new EstadoItem();
                         *              miitem.IdProducto = rol.IdProducto;
                         *              miitem.Codigo = Convert.ToString(row["Codigo"]);
                         *              miitem.Descripcion = rol.Descripcion;
                         *              miitem.DescripcionLarga = rol.Descripcion;
                         *              miitem.Cantidad = rol.CantidadOrigen;
                         *              miitem.FechaDeEntrega = mz.erp.businessrules.Sistema.DateTime.Now;
                         *              EstadosCollection estadosCol = (new EstadosCollection()).GenerateFormaDeEntrega();
                         *              string id = estadosCol.KeyOfValue(_estadoItemDefault);
                         *              miitem.IdEstado = id;
                         *              miitem.Ordinal = rol.OrdinalOrigen;
                         *              miitem.Visible = false;
                         *              this.ArrayItems.Add(miitem);
                         *      }
                         * }
                         * }	*/
                    }
                    _preSetData = true;
                }
                if (ObjectHasChanged != null)
                {
                    this.ObjectHasChanged(this, new EventArgs());
                }
            }
        }
 private void LoadDataFromComprobanteDeEntrega(ComprobanteDeEntrega entrega)
 {
     this.ArrayItems.Clear();
     foreach (ItemComprobante item in entrega.Items)
     {
         //German 20120302 -  Tarea 0000247
         EstadoItem miitem = new EstadoItem(item);
         //Fin German 20120302 -  Tarea 0000247
         miitem.IdProducto       = item.IdProducto;
         miitem.Codigo           = item.Codigo;
         miitem.Descripcion      = item.Descripcion;
         miitem.DescripcionLarga = item.DescripcionLarga;
         miitem.Cantidad         = item.Cantidad;
         miitem.FechaDeEntrega   = entrega.FechaVencimiento;
         miitem.IdEstado         = string.Empty;
         miitem.Ordinal          = item.Ordinal;
         this.ArrayItems.Add(miitem);
     }
 }
        // ---- FinMatias

        #endregion

        public bool Equals(EstadoItem item)
        {
            return(this._idProducto.Equals(item._idProducto) && this._idEstado.Equals(item.IdEstado));
        }