Formulier functies

OpenIMS heeft een voorziening voor het maken van popup formulieren. Het volgende voorbeeld illustreert hoe dit in zijn werk gaat:

Het $form object wordt gebruikt voor het specificeren van het formulier:

     $form = array();

De titel van het formulier:

     $form["title"] = "Opstellen nieuw contract";

Informatie die van het huidige formulier naar het popup formulier wordt overgedragen:

     $form["input"]["sgn"] = IMS_SuperGroupName();

Velden in het formulier:

     $form["metaspec"]["fields"]["bedrijfsnaam"]["type"] = "string";

     $form["metaspec"]["fields"]["contactpersoon"]["type"] = "string";

     $form["metaspec"]["fields"]["woonplaats"]["type"] = "string";

     $form["metaspec"]["fields"]["straat"]["type"] = "string";

     $form["metaspec"]["fields"]["postcode"]["type"] = "smallstring";

De inhoud van het formulier:

     $form["formtemplate"] = '

       <table>

         <tr><td>Bedrijfsnaam: </td><td>[[[bedrijfsnaam:]]]</td></tr>

         <tr><td>Contactpersoon: </td><td>[[[contactpersoon:]]]</td></tr>

         <tr><td>Straat: </td><td>[[[straat:]]]</td></tr>

         <tr><td>Postcode: </td><td>[[[postcode:]]]</td></tr>

         <tr><td>Woonplaats: </td><td>[[[woonplaats:]]]</td></tr>

         <tr><td colspan=2>&nbsp</td></tr>

         <tr><td colspan=2><center>[[[ok:]]]&nbsp;&nbsp;&nbsp;[[[cancel:]]]</center></td></tr>

       </table>

     ';

Code die na het invullen van het formulier moet worden uitgevoerd:      

     $form["postcode"] = '

       if (!$data["bedrijfsnaam"]) {

         FORMS_ShowError ("Foutmelding", "De bedrijfsnaam is niet ingevuld");

       }

       <<< etc >>>

     '; 

Code die de url genereert die de popup zal weergeven:

     $url = FORMS_URL ($form);

Opmerkingen:

  • In de “postcode” is het $data object beschikbaar met daarin alle ingevulde informatie.
  • Naast “postcode” is er ook “precode”. In “precode” kan het $data object gevuld worden met de initiële inhoud van het formulier.
  • In zowel “precode” als “postcode” is het $input object beschikbaar. De inhoud hiervan wordt bepaald met “input”.
  • In “postcode” is ook $files beschikbaar indien er velden van het type file gebruikt worden in het formulier.
  • Beschikbare types zijn gelijk aan deze in de velden omgeving: smallstring, string, bigstring, smalltext, text, bigtext, yesno, date, time, datetime, list en file.
  • Met FORMS_ShowError ($title, $error, $allowretry=false) kunnen fouten worden weergegeven.
  • Door in “postcode” de variabele $gotook te vullen met “closeme&parentgoto:<<<url>>>” kan bepaald worden waar het moederformulier naar toe moet springen.

Altijd als eerste op de hoogte van de laatste nieuwtjes?

Schrijf je in voor onze nieuwsbrief