Cómo: |
Puede ofrecer capacidades de modernización directamente desde su informe enlazándolo con un procedimiento de mantenimiento de WebFOCUS. El vínculo es un URL del miniservidor WebFOCUS e incluye el comando IBIF_cmd, con la sintaxis MNTCON RUN o MNTCON EX para invocar un procedimiento de formulario WebFOCUS Maintain. El vínculo puede pasar control a un formulario Maintain o ejecutar un procedimiento Maintain en modo lote que no muestre una interfaz de usuario.
TYPE=type, [subtype, ] URL=/ibi_apps/WFServlet? IBIF_cmd='MNTCON {RUN|EX} procname' IBIS_passthru='on' IBIS_connect='on' [(parameters...)], $
donde:
El siguiente informe le permite actualizar el precio por unidad de un producto directamente desde la salida de informe enlazando el informe con el procedimiento de mantenimiento apropiado.
La solicitud de informe es:
TABLE FILE GGPRODS PRINT PRODUCT_DESCRIPTION VENDOR_CODE VENDOR_NAME UNIT_PRICE BY PRODUCT_ID ON TABLE SET PAGE-NUM OFF ON TABLE SET STYLE * TYPE=REPORT, GRID=OFF, $ TYPE=DATA, COLUMN=N1, URL=/ibi_apps/WFServlet?(PRODUCT_ID=N1 IBIF_cmd='MNTCON RUN GGUPD1' IBIS_passthru=\ 'on' IBIS_connect='on'), $ ENDSTYLE END
El procedimiento de mantenimiento de WebFOCUS es:
MAINTAIN FILE ggprods module import(mntuws FOCCOMP) $$Declarations Declare pcode/a4; Case Top compute timechk/a0=HHMMSS(); document.referer='/ibi_apps/WFServlet?IBIF_ex=ggprod&IBIS_connect =on'|| '&timechk='|timechk; compute pcode = IWC.getAppCGIValue("PRODUCT_ID"); Infer ggprods.prods01.product_id into ggstk1; Reposition PRODUCT_ID Stack clear ggstk1 ; For all next ggprods.prods01.product_id into ggstk1 where product_id eq pcode; Winform Show Form1; EndCase Case Updte1 for all Update ggprods.prods01.unit_price from ggstk1(1) ; EndCase END
Nota: Este es un formulario interactivo para mostrar datos y se crea en Developer Studio.
El informe es:
Cuando pulsa en un código de producto, invoca el procedimiento de mantenimiento ggupd1, que usa la función IWC.getAppCGIValue para recuperar el valor correcto.
Se abre el formulario 1 en el procedimiento de mantenimiento ggupd1 de WebFOCUSy puede entonces actualizar el precio por unidad de ese producto:
WebFOCUS |