Consiste en configurar un frmMantenimiento desconectado de la tabla.
Si bien la carga inicial la podemos realizar desde una tabla o vista, al establecer la propiedad SoloArray a true, hacemos que todo cambio que hagamos en el grid no se realice en la tabla origen.
Se utiliza para los casos que debemos preparar la información para luego realizar un proceso de actualización masiva. Generalmente va acompañado de scripts de pantalla que realizan esa función.
Código VB6:
Sub Main() frmAux.Descargar 'ATENCIÓN: DEBE ESTAR SIEMPRE QUE NO SE MUESTRE EL FORMULARIO. Set lFrm = gcn.ahoraproceso ("NewFrmMantenimiento",False,gcn) lfrm.Form.NombreForm = "frmMantPers_ArticulosAlt" With lFrm.Grid("Articulo alternativos") ' NO_TRADUCIR_TAG .Agregar = True .Editar = True .Eliminar = True .CargaObjetos = False .EditarPorObjeto = False .Grid.HeadLines = 2 .AgregaColumna "IdArticulo", 2500, "IdArticulo", False,"Select IdArticulo,IdArticulo IdArt, Descrip from Articulos order by Idarticulo" .AgregaColumna "IdArticuloAlt", 2500, "Art. Alt.",False,"Select IdArticulo,IdArticulo IdArt, Descrip from Articulos order by Idarticulo" .AgregaColumna "@Descrip", 2000, "Descripción",True .AgregaColumna "@M", 2000, "Marca",False .From = "Pers_Articulos_Alternativos" .Where = "" .Campo ("@Descrip").Sustitucion = "Select Descrip from Articulos where IdArticulo = @IdArticuloAlt" .Campo ("@M").Booleano = True .Campo ("@M").Default = True .ColumnaEscalada = "@Descrip" .campo ("IdArticulo").Coleccion = "Articulos" .campo ("IdArticulo").ColeccionWhere = "Where IdArticulo = @IdArticulo" .campo ("@Descrip").Coleccion = "Articulos" .campo ("@Descrip").ColeccionWhere = "Where IdArticulo = @IdArticuloAlt" '.OrdenMultiple = "IdArticulo" .RefrescaSinLoad = True .Refresca = True . soloarray = True End With lFrm.Form.Width = lFrm.Form.width * 2 lFrm.Form.Caption = "Artículo alternativos " lFrm.Carga , False, 4 End Sub
Código C#:
using AhoraAsistentes; using AhoraSistema; using AhoraOCX; using AhoraCore; namespace AhoraScriptsVacia { public class Script_0 : AhoraOCX.AhoraBaseScript { public void Main() { IFrmMantenimientos lFrm = (IFrmMantenimientos)gCn.AhoraProceso("NewFrmMantenimiento", out _, gCn); lFrm.Form.NombreForm = "frmMantPers_ArticulosAlt"; ICntGridUsuario lGrid = lFrm["Articulo alternativos"]; lGrid.Agregar = true; lGrid.Editar= true; lGrid.Eliminar= true; lGrid.CargaObjetos = false; lGrid.EditarPorObjeto= false; lGrid.GridHeadLines = 2; lGrid.AgregaColumna("IdArticulo", 167, "IdArticulo", false, "Select IdArticulo,IdArticulo IdArt, Descrip from Articulos order by Idarticulo"); lGrid.AgregaColumna("IdArticuloAlt", 167, "Art. Alt.", false, "Select IdArticulo,IdArticulo IdArt, Descrip from Articulos order by Idarticulo"); lGrid.AgregaColumna("@Descrip", 133, "Descripción", true); lGrid.AgregaColumna("@M", 133, "Marca", false); lGrid.Where = ""; lGrid.Campo("@Descrip").Sustitucion = "Select Descrip from Articulos where IdArticulo = @IdArticuloAlt"; lGrid.Campo("@M").Booleano = true; lGrid.Campo("@M").Default = true; lGrid.ColumnaEscalada = "@Descrip"; lGrid.Campo("IdArticulo").Coleccion = "Articulos"; lGrid.Campo("IdArticulo").ColeccionWhere = "WHERE IdArticulo = @IdArticulo"; lGrid.Campo("@Descrip").Coleccion = "Articulos"; lGrid.Campo("@Descrip").ColeccionWhere = "WHERE IdArticulo = @IdArticuloAlt"; lGrid.RefrescaSinLoad = true; lGrid.Refresca = true; lGrid.SoloArray = true; lFrm.Form.Width = lFrm.Form.Width * 2; lFrm.Form.Text = "Artículos alternativos"; lFrm.Carga(null, false, AhoraOCX.EBotonesMant.eBotMant_Cerrar); } } }
¿Le ha sido útil este artículo?
¡Qué bien!
Gracias por sus comentarios
¡Sentimos mucho no haber sido de ayuda!
Gracias por sus comentarios
Sus comentarios se han enviado
Agradecemos su esfuerzo e intentaremos corregir el artículo