Einen Link zu einer WebFOCUS-Maintain-Prozedur herstellen

Vorgehensweise:

Sie können Update-Funktionen direkt in Ihrem Report bieten, indem Sie ihn mit einer WebFOCUS Maintain-Prozedur verknüpfen. Der Link ist eine URL für das WebFOCUS Servlet und enthält den IBIF_cmd-Befehl mit der MNTCON RUN- oder MNTCON EX-Syntax, um eine vorhandene WebFOCUS Maintain-Formularprozedur aufzurufen. Der Link kann die Kontrolle an ein Maintain-Formular weiterreichen oder eine Maintain-Prozedur im Batch-Modus ausführen, die kein Benutzer-Interface anzeigt.


Nach oben

x
Syntax: Mit einer WebFOCUS-Maintain-Prozedur verknüpfen
TYPE=type, [subtype, ] URL=/ibi_apps/WFServlet? IBIF_cmd='MNTCON
  {RUN|EX} procname' IBIS_passthru='on' IBIS_connect='on'
  [(parameters...)], $

Hierbei gilt:

type
Bezeichnet die Reportkomponente, die Sie im Webbrowser ausgewählt haben, um den Link auszuführen. Das TYPE-Attribut und sein Wert müssen am Anfang der Deklaration stehen.
subtype
Sind alle weiteren Attribute, wie z. B. COLUMN, LINE, oder ITEM, die benötigt werden, um die Reportkomponente zu identifizieren, die Sie formatieren. Weitere Informationen über das Identifizieren von Reportkomponenten finden Sie unter Eine Reportkomponente in einem WebFOCUS StyleSheet identifizieren.
procname
Ist der Name der WebFOCUS Maintain-Prozedur.
Parameter
Werte, die an die WebFOCUS-Maintain-Prozedur weitergereicht werden. Weitere Informationen hierüber finden Sie unter Parameter erstellen.


Beispiel: Einen Link zu einer WebFOCUS-Maintain-Prozedur herstellen

Im folgenden Report können Sie den Stückpreis direkt von der Reportausgabe aktualisieren, indem Sie den Report mit der entsprechenden Maintain-Prozedur verknüpfen.

Die Reportanfrage lautet:

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

Die WebFOCUS-Maintain-Prozedur (ggupd1) ist:

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

Hinweis: Dies ist ein interaktives Formular, mit dem Daten angezeigt werden und das im Developer Studio erstellt wird.

Der Report ist:

Es wird, wenn Sie auf einen Produktcode klicken, die Maintain-Prozedur ggupd1 aufgerufen, die die IWC.getAppCGIValue-Funktion verwendet, um den richtigen Wert abzurufen.

Formular 1 in der WebFOCUS Maintain-Prozedur ggupd1 wird geöffnet und Sie können den Stückpreis für dieses Produkt aktualisieren:


WebFOCUS