Hello Script World

Hello from Visual FoxPro 09.00.0000.7423 EXE Support Library for Windows.
The Time is: Apr 12, 2025 01:06am.

10 Most Recent Requests

Time Request Verb IP Address
Apr 11, 2025 11:05pm /default.wc GET 5.255.231.20
Apr 11, 2025 08:05am /zdoc/FoxPro_-_SQL_Connection_in_OnConfig GET 107.209.18.233
Apr 8, 2025 08:59am /zdoc/FoxPro_-_SQL_Connection_in_OnConfig GET 107.209.18.233
Apr 8, 2025 08:58am /zdoc/FoxPro_-_SQL_Connection_in_OnConfig GET 73.143.8.73
Apr 8, 2025 08:58am /zdoc/FoxPro_-_SQL_Connection_in_OnConfig GET 52.123.190.88
Apr 4, 2025 01:23am /testpage.zm GET 98.82.66.172
Apr 3, 2025 07:57pm /zdoc/zMaxOneClick_App_Sample GET 24.126.251.127
Apr 3, 2025 07:54pm /zdoc/zMaxOneClick_App_Sample GET 24.126.251.127
Apr 3, 2025 09:28am /zdoc/zMaxOneClick_App_Sample GET 24.126.251.127
Apr 3, 2025 09:23am /zdoc/5-2-6_Reimbursement_Adjustment_(Usage) GET 192.168.0.204

This is an MVC Script Page with Code Behind

This page is rendered using a Script page - HelloScript.zm - from disk that contains FoxPro code embedded inside of < %= expression %> expression tags. There's also a HelloScript() method inside of your process class that is fired to set up a model of data that can be rendered. In this page a Message object for the info box above, and the cursor for the request list are both created in the 'code behind' controller method.

Using scripts you can:

  • Embed expressions using < %= expression % >
  • Embed code blocks using < % code % >
  • Embed Markdown using < markdown></ markdown>
  • Render other partial pages using < %= RenderPartial() %>

You can write code inside of these scripts, and the scripts are automatically recompiled when you make changes.

This Page uses a Layout Page

This page is rendered using a script that references a _Layout page which provides most of the page chrome - the HTML header the toolbar and footer. This Content Page which references this Layout page is then rendered into the Layout producing the complete HTML output.

This MVC style mechanism allows you to create a master layout for your site, and render content pages into it. Content pages then only need to provide the page specific content without having to duplicate the page chrome. You can also create multiple _Layout pages to provide different layouts for different pages.

Note that you can also create completely self contained pages that include all HTML but generally using a Layout page is more productive as you don't have to duplicate the same common HTML into each page.

For more info see Mvc for Web Connection and Layout Pages, Content Pages, Partials and Sections in the Web Connection Documentation.

For building applications we highly recommend using the MVC based approach of using controller methods for setting up models that are then passed to a view for rendering. In Web Connection this translates to a process method that calls Response.ExpandScript() to render a view.

Markdown Embedding

This block of text is rendered using Markdown that is embedded as a Markdown Island into the script page using a < markdown></ markdown> block. Markdown embedded in this way is turned into HTML and embedded into the page.