gmplIncludeOrderStatement
- Mark Juras
Owned by Mark Juras
IncludeOrder Statement Summary
IncludeOrder is a terminal or nonterminal, utility statement that can occur only in command scripts. This statement computes the processing order of web site components based on their includes. The introduction of PageSlices largely deprecated the need for this statement; however, it is still useful for finding missing includes and missing references. The terminal form of the IncludeOrder statement writes a report describing the results of the analysis. The nonterminal form authors a script contained in its substatements that can include the references found and the names of the pageslice files that have to be processed. A command script using the IncludeOrder statement follows the following general form.<gmBasic> <Storage Action="Create" ... /> <Select Local="..." /> <Select System="..." /> <Select Target="..." /> <Load Page="filename(1)" /> ... <Load Page="filemame(n)" /> <Output Status="New" Filename="..." /> <IncludeOrder ... <Storage Action="Close" /> </gmBasic>
Attribute | Description |
Identifier | This attribute is only used with the nonterminal form. It is a semicolon-delimited character string containing the parameter strings to be used when writing the substatement script. Each input record in that script is search for entries like %1d or %2d, etc. These are then replaced by the corresponding entry in this list. |
Filename | This attribute limits the analysis performed to the single page named by this attribute. This page must be one of the pages loaded. It can be helpful when initially setting up or for debugging particular issues that may be associated with the page. |
The script errors associated with the IncludeOrder statement are as follows:
Error | Description |
1121 | Unable to locate requested file: %1d |
1122 | Encountered EOF while reading search information. |
The report generated by the terminal form IncludeOrder statement begins with three statements
The ordering over %d pages converged. There were %d references missing: list of missing references There were 1 order test iterations
Creating the Fmstocks Site Translation script
This discussions uses the Fmstocks sample ASP site to show how the IncludeOrder utility statement is used to aid in the creation of an initial PageSlice oriented translation command script. The Fmstocks code base consists of a set of VB6 projects and then a collection of ASP pages, some of which are only includes, that reference those projects. The assumption here is that the VB6 code has been translated and the libraries that it created have descriptions in the Local search location. The first step is the create the initial IncludeOrder command script that will give an analysis report. This might look as follows<gmBasic> <Storage Action="Create" /> <Select Local="C:\gmProj\FmStocks\IDF\FromCode" /> <Select System="C:\gmProj\FmStocks\IDF\FromIDL" /> <Select Target="C:\gmProj\FmStocks\IDF\FromIDL" /> <Load Page= ... <Output Status="New" Filename="Order0.lst" /> <IncludeOrder /> <Storage Action="Close" /> </gmBasic>
<gmBasic> <Storage Action="Create" /> <LoadRuntime dllName="Document.dll" /> <Output Status="New" Filename="Order0.xml" /> <LoadSite Directory="C:\gmSrc\fmstocks\WebSite" Extensions="asa,asp" > <gmBasic> <Storage Action="Create" /> <Select Local="C:\gmProj\FmStocks\IDF\FromCode" /> <Select System="C:\gmProj\FmStocks\IDF\FromIDL" /> <Select Target="C:\gmProj\FmStocks\IDF\FromIDL" /> <Load Page="%filename%" /> <Output Status="New" Filename="Order0.lst" /> <IncludeOrder /> <Storage Action="Close" /> </gmBasic> </LoadSite> <Storage Action="Close" /> </gmBasic>
The ordering over 33 pages converged. There were 6 order test iterations ...
<IncludeOrder Identifier="FmstockWeb;csh" > <gmBasic> <Storage Action="Create" Identifier="%1d"/> <Select DevEnv="VS2010" /> <Select Dialect="%2d" /> <Select Local="C:\gmProj\FmStocks\IDF\FromCode" /> <Select System="C:\gmProj\FmStocks\IDF\FromIDL" /> <Select Target="C:\gmProj\FmStocks\IDF\FromIDL" /> <Select DeployLocation="C:\gmProj\FmStocks\Deploy\%1d_%2d" /> <Select VirtualRoot="C:\gmSrc\FmStocks\WebSite" /> %references% %compile% <Analyse /> <Output Status="New" Filename="%1d.bnd" /> <Author /> <Storage Action="Close"/> </gmBasic> </IncludeOrder>
<gmBasic> <Storage Action="Create" Identifier="FmstockWeb"/> <Select DevEnv="VS2010" /> <Select Dialect="csh" /> ... <Select DeployLocation="C:\gmProj\FmStocks\Deploy\FmstockWeb_csh" /> <Select VirtualRoot="C:\gmSrc\FmStocks\WebSite" /> <reference id="FMStocks_Bus.dll"/> <reference id="FMSStore_Bus.dll"/> <reference id="msado25.tlb"/> <reference id="FMStocks_Ext.dll"/> <reference id="FMStocks_DB.dll"/> <compile pageslice="C:\gmSrc\fmstocks\WebSite\401k.asp"/> <compile pageslice="C:\gmSrc\fmstocks\WebSite\AccountSummary.asp"/> ... <Analyse /> <Output Status="New" Filename="FmstockWeb.bnd" /> <Author /> <Storage Action="Close"/> </gmBasic>
Table of Contents