viernes, 29 de junio de 2012

Abrir window con varios parametros - PowerBuilder

Como podriamos abrir una ventana enviandole varios parametros, he aqui una solución que me sirvió mucho. El ejemplo esta basado en mi experiencia
1. Creamos una structura con los parametros que vamos a enviar y recibir.
     A mi structura lo llamé st_parametros_email
 2. Luego vamos a crear el Scrip desde donde enviaremos los parametros.
     En mi caso el el Evento Clicked de un boton.
     w_frame lw_frame
     w_sheet lw_sheet
     st_parametros_email lstr_parm //Aqui declaramos el parametro como
     //la structura que creamos anteriormente
     string ll_mail, ls_ruta, ls_parametros
     ll_mail = tabpage_1.dw_1.object.personas_mail[1]
     ls_ruta='C:\PDF\carta_oferta.pdf'
    //le asignas los valores para la structura
    lstr_parm.st_para =ll_mail
    lstr_parm.st_adjunto =ls_ruta
    lstr_parm.st_asunto ='Presupuesto'
    lstr_parm.st_cuerpo = 'Sr./es Cliente/s.: Adjuntamos Presupuesto'
    //aqui utilizo solo funciones del PFC, si no trabajas con PFC solo haz el  
    //clasico openwithparm(w_miventana,lstr_parm) y ya....
    if gnv_appmanager.of_getframe( lw_frame )  <> 1 then return
           opensheetwithparm(lw_sheet,lstr_parm,"w_send_mail",lw_frame,2,original! )
3. Y por ultimo este scrip lo ponemos en el evento OPEN de la ventana que recibirá los parametros.
    st_parametros_email lstr_parmr
    lstr_parmr = Message.PowerObjectParm
   //aginar los valores a cajas
   Sle_to.text = lstr_parmr.st_para
   lb_archivos.Additem(string( lstr_parmr.st_adjunto))
   sle_sub.text = lstr_parmr.st_asunto
   mle_mail.text = lstr_parmr.st_cuerpo

3 comentarios: