Details

Details

  • Two type of view: table or detail. The first one shows many row as set by the parameter PageSize (default 15). You may set which columns show. On each row besides the values you may add link to other page that perform operation on the selected rows. The class itself manages 3 of the link (detail-> switch into detail mode, modify -> open the form to allow the editing of the current row, delete -> remove the current row). Other links to other pages may be added by the user. The detail mode shows all the fields for the selected row.
  • Both view allow the user to move backward, forward one page (15 rows the table view, 1 row the detail mode), or to move to the first or the last page.
  • Search box. You may choose to allow the user to add its custom filter to the pager in order to reduce the shown rows. You may set which field ask to the user. The user may choose to not fill the search box and then the class will show the all rows returned from the sql statement, or fill one or more field and then the class appends that fields to the 'where' part of the sql statement
  • The module saves its internal status into session vars, so in same session you may leave the page generated by Yap, and then, when you return to it, the module resumes the state as before without require you to add any GET/POST parameters; simply call the page URL. This feature is safe also if you switch between many scripts that use different istance of Yap, because, inside each script, you may set different prefix to apply to name of the session vars.
  • The 'add row' function allows the user to add many rows to the table. You may enable this feature from the configuration parameters. Each time the module receives the POST message to add the new row, it looks into its parameters to see if 'add row' function is enabled; if the function is not enabled Yap don't executes the function.
  • The 'modify row' function allows the user to modify the shown rows. You have two level of parameters to enable this feature. The first level is 'system wide', you enable it from the configuration parameters,and, if don't set the second level, you allow the user to modify all rows. The second one allows you to enable or not the feature per row basis, so on each row you may tell to the module to show or not the 'modify' link. This second level requires the first level enabled. As above, each time the module receives the POST message to modify the row, it looks into its parameters to see if 'modify row' function is enabled and, if so, the module checks if the user may modify that row.
  • The pager may show output from query on many tables (select with join), but the modify/delete/add functions work only on one table.
  • database supported MySql, MSSQL, and ODBC connections. (Note: the ODBC functions was tested to connect to Ms Access on Win32 system).