602SQL-Úplná dokumentace Index  

wb_get_XML_form

PHP

mixed wb_get_XML_form( resource connection, string xml_form_ref [, string xml_data] )


Parametry

connection
Identifikátor spojení na SQL server získaný získaným voláním wb_connect nebo wb_pconnect.
xml_form_ref
Odkaz na XML formulář.
xml_data
XML zdroj obsahující data pro formulář.


Od verze

10.0

Popis

Funkce vrátí text XML formuláře, případně naplněného zadanými daty. Používá se ve skriptech, které plní 602XML Filler.

Parametr xml_form_ref může mít dvě podoby. Je-li ve tvaru jméno_objektu uvozené hvězdičkou (tj. *jméno_objektu), hledá se objekt tohoto jména typu XML formulář v otevřené aplikaci, jinak se definice XML formuláře čte přímo z tohoto parametru. Funkce rozpozná, je-li definice XML v čistém textu (formát .FO) nebo zkomprimovaná (formát .ZFO) a ve stejném formátu vrátí formulář.

Není-li zadán parametr xml_data, použije se definice formuláře tak, jak je přečtena z databáze nebo z proměnné. Jsou-li data zadána (obvykle jako výstup funkce wb_export_to_xml_buffer), připojí se k formuláři takovým způsobem, že neporuší digitální podpis formuláře.



Návratová hodnota

V případě úspěchu vrací zdrojový text XML formuláře (případně zkomprimovaný), v případě chyby vrací FALSE.

Viz



Příklad

Pokud dojde ve skriptu k chybě, lze výstup přesměrovat na chybový formulář s číslem chyby a datem (jako proměnnými).

function Send_error_form($err_num){
//poslat form Chybovy_form do Filleru
  global $connection;
// získat XML data z DAD vedoucího jen do klientských proměnných
  if (( $err_xml_data = wb_export_to_xml_buffer($connection, '*err_dad', NULL, array(
       "err_num" =>  array("type" => ATT_INT32,"out" => FALSE,"value" => $err_num),
       "err_date" => array("type" => ATT_DATE ,"out" => FALSE,"value" => time() )    )
     )) !== FALSE ) {
// naplnit dosud prázdný XML formulář XML daty z předchozího kroku a zaslat jej Filleru (tj. na std. výstup)
       if (( $xmlform = wb_get_xml_form($connection,'*Chybovy_form',$err_xml_data)) !== FALSE) {
         print $xmlform;
         exit;
       };
  }
};