Tengo duda de como forzar un datawindow para cambiar de intentar de las columnas...
1 respuesta
Respuesta de Antonio Garcia
1
1
Antonio Garcia, clipper todas sus versiones (manejo total) power builder todas...
Cada columna u objeto del datawindow object posee 2 propiedades que delimitan la ubicación física de dicho objeto, estas propiedades son por, y cada una corresponde a las coordenadas horizontal y vertical, respectivamente. Las propiedades en función de un objeto que se encuentra en un datawindow object, pueden ser modificadas por la función MODIFY(), que posee el datawindow control, Por ejemplo cambiar la ubicación horizontal de una columna debería ser. dw_1.MODIFY('<columna>.x = <nueva posicion>') La función modify, devuelve un valor del tipo string, si es "" todo fue bien de lo contrario marcará un error. Por ultimo recuerda que esta intentar va en función de la banda en donde se encuentra el objeto. El datawindow object contiene varias bandas, entr ellas, la cabecera, el detalle, sumario y pie, y por cada grupo de selección crea una nueva banda, por lo que los objetos se mueven dentro de dicha banda. Existe una propiedad que determina si el objeto forma parte de la banda o no, pero cambiar esta propiedad puede afectar visualmente el resultado final del datawindow.
Le estoy poniendo esto, dw_reporte1.Modify("ls_nomb_col + '.tag' = gi_pos[li_cont,1]") ls_posx = dw_reporte1.Modify("ls_nomb_col + '.x' = li_posx") dw_reporte1.Modify("ls_nomb_col + '.y' = gi_pos[li_cont,3]") Y en ls_posx me manda un error de que la linea 1 y la columna 12 incorrecta sintaxis, a que se debe esto...
Creo que el problema es más de concepto que de funcionamiento. Cuando escribiste dw_reporte1.Modify("ls_nomb_col + '.tag' = gi_pos[li_cont,1]") estas integrando lo que asumo que sera una variable ls_nomb_col como parte de una cadena que seguramente la funcion no entendera. al igual que gi_pos[li_cont, 1] estoy seguro que si cambias a dw_reporte1.Modify(ls_nomb_col + '.tag = '+string(gi_pos[li_cont,1])) Te funcionaria, estoy asumiendo que gi_pos[li_cont, 1] es un valor numérico por lo que lo integré con la función string(). Recuerda que todo lo que se encierra en comillas representa una constante string.