public override void DeleteObject(long oid)
        {
            ExpedientInfo exp = ExpedientInfo.Get(oid, false);

            exp.LoadChilds(typeof(Batch), false, true);
            if (exp.Partidas.Count > 0)
            {
                MessageBox.Show("El expediente tiene productos asociados",
                                moleQule.Face.Resources.Labels.ADVISE_TITLE,
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Warning);

                _action_result = DialogResult.Ignore;
                return;
            }

            exp.LoadChilds(typeof(Maquinaria), false, true);
            if (exp.Maquinarias != null && exp.Maquinarias.Count > 0)
            {
                MessageBox.Show("El expediente tiene maquinas asociadas",
                                moleQule.Face.Resources.Labels.ADVISE_TITLE,
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Warning);

                _action_result = DialogResult.Ignore;
                return;
            }

            Expedient.Delete(oid);
            _action_result = DialogResult.OK;

            ExpedienteList cache = Cache.Instance.Get(typeof(ExpedienteList)) as ExpedienteList;

            if (cache != null)
            {
                cache.RemoveItem(oid);
            }

            //Se eliminan todos los formularios de ese objeto
            foreach (EntityDriverForm form in _list_active_form)
            {
                if (form is ItemMngBaseForm)
                {
                    if (((ItemMngBaseForm)form).Oid == oid)
                    {
                        form.Dispose();
                        break;
                    }
                }
            }
        }