anonymous Log in
Search
Recents:
v3.0
csharp-l
Item 2do Nivel SDT
30/05/20 22:24

LuisCD

Replies: 2

Buenas tardes a todos,

¿Alguien me podría ayudar en como borrar item de un segundo nivel de un SDT
y como obtener el valor al dar click en el item?

He probado lo siente para poder obtener y borrar item del segundo nivel:

Borrar:
&SDT.CurrentItem.Level2.Remove(&SDT.CurrentItem.Level2.IndexOf(&SDT.CurrentI
tem.Level2.CurrentItem))

Obtener Valor: &SDTitem.Level2.CurrentItem.varlevel2

Ninguna me funciona…

Quedo al tanto a cualquier sugerencia, gracias de ante mano.
-----------------------------------------
Para Suscribirse/Desuscribirse:
http://www.gxtechnical.com/cgi-bin/hforum.exe?2,3,30,11
Por consultas owner-csharp-l@gxtech.com.uy
Replies

jizquierdo

01/06/20 11:48
Hola Luis, Si estás en la versión 15 puedes usar los métodos disponible para trabajar en SDT de 2 niveles, bien sea para recuperar un registro o para eliminarlo. Puedes encontrar información en: https://wiki.genexus.com/commwiki/servlet/wiki?31846,Business+Component+GetByKey+method https://wiki.genexus.com/commwiki/servlet/wiki?31847,Business+Component+RemoveByKey+method &SDT.Nivel.getbykey(&clave) &SDT.Nivel.removebykey(&clave) Saludos cordiales, *Jorge Izquierdo */ Technical Account Manager *Celular *(+593) 099 993 6846 *www.doit-innovations.com * *Ecuador: *(+593) 2 380 9553 ext. 216 / Av. Naciones Unidas E2-30 y Núñez de Vela, Ed. Metropólitan Of. 309 - Quito, Ecuador *Uruguay*: (+598) 2 603 7720 / Avda. Italia 6201 - LATU - Ed. Los Álamos, Of 103- Montevideo, Uruguay *Paraguay:** (+59521) 620 7856 / **Mariscal López 3794 y Cruz del Chaco Edificio Citicenter - Piso 4 – Asunción, Paraguay * *Nuestra pasión es innovar* El sáb., 30 de may. de 2020 a la(s) 20:25, Luis Cornejo ( lcornejoduenas@gmail.com)

LuisCD

01/06/20 13:00
Hola Jorge, Traté de poner como me indicabas, pero sin resultado, ni me aparecen el getbykey o removekey, lo que sucede es que no quiero eliminar o obtener el valor de un sub level que dependa de una transacción… la documentación que me pasaste es para Business Component, como mencioné, no lo estoy utilizando, uso un SDT que lo cargo de esta forma: &AgregarVisitasItem = new() &AgregarVisitasItem.SMotorizadoNomComp = NullValue(&AgregarVisitasItem.SMotorizadoNomComp) &AgregarEstablecimiento = new() &AgregarEstablecimiento.ID = &AgregarVisitasSDT.CurrentItem.SEstablecimiento.Count + 1 &AgregarEstablecimiento.SEstablecimientoRazSoc = NullValue(&AgregarEstablecimiento.SEstablecimientoRazSoc) &AgregarEstablecimiento.Eliminar.FromImage(Eliminar) &AgregarVisitasItem.SEstablecimiento.Add(&AgregarEstablecimiento) &AgregarVisitasSDT.Add(&AgregarVisitasItem) De esa forma cargo el SDT para poder digitar valores en la web y el usuario va a ir agregando más fila al sub level si desea, para lo cual lo hago de esta forma: &AgregarEstablecimiento = new() &AgregarEstablecimiento.ID = &AgregarVisitasSDT.CurrentItem.SEstablecimiento.Count + 1 &AgregarEstablecimiento.SEstablecimientoRazSoc = NullValue(&AgregarEstablecimiento.SEstablecimientoRazSoc) &AgregarEstablecimiento.Eliminar.FromImage(Eliminar) &AgregarVisitasItem.SEstablecimiento.Add(&AgregarEstablecimiento) &AgregarVisitasSDT.CurrentItem.SEstablecimiento.Add(&AgregarEstablecimiento) Hasta ahí todo OK, pero cuando quiero eliminar o tomar el valor de una fila del sublevel, ahí es donde no puedo, he probado varias combinaciones para poder borrar como: &AgregarVisitasSDT.CurrentItem.SEstablecimiento.Remove(&AgregarVisitasItem.SEstablecimiento.IndexOf(&AgregarVisitasSDT.CurrentItem)) &AgregarVisitasSDT.CurrentItem.SEstablecimiento.Remove(&AgregarVisitasItem.SEstablecimiento.IndexOf(&AgregarVisitasSDT.CurrentItem.SEstablecimiento.CurrentItem)) &AgregarVisitasSDT.CurrentItem.SEstablecimiento.Remove(&AgregarVisitasSDT.CurrentItem.SEstablecimiento.IndexOf(&AgregarVisitasItem.SEstablecimiento.CurrentItem)) &AgregarVisitasItem.SEstablecimiento.Remove(&AgregarVisitasSDT.CurrentItem.SEstablecimiento.IndexOf(&AgregarVisitasItem.SEstablecimiento.CurrentItem)) Eso son algunos de los que había probado… Quedo al tanto a cualquier sugerencia. Muchas gracias por su tiempo brindado. Saludos, Luis Cornejo


Back to csharp-l