<?xml version="1.0" encoding="Windows-1255" ?><Interface name="KitVariables" alias="$ENV" id="core.env:KitVariables" sort="23" urn="core.env:extensions.KitVariables.js" toc="\Extension Points"><Summary>Extension point for defining kit variables.</Summary><Copyright>(c) SAP AG 2003-2006. All rights reserved.</Copyright>
<Topics>
<Method name="defineVariable" sortGroup="true" scope="public" id="core.env:KitVariables!defineVariable" sort="35" group="Methods" seq="0000"><Summary>Defines a new kit variable.</Summary><Parameters signature="method:: &lt;i&gt;$ENV&lt;/i&gt;.&lt;b&gt;defineVariable&lt;/b&gt;(&lt;i&gt;def&lt;/i&gt;) &amp;rarr; void"><Param name="def" type="VARIABLE_DEF" typeRef="&lt;q ref=&quot;core.env:KitVariables!VARIABLE_DEF&quot;&gt;VARIABLE_DEF&lt;/q&gt;">The variable definition.</Param></Parameters><Return></Return><Remarks>&lt;h2&gt;Xml definition of a variable in a configuration file&lt;/h2&gt;
      &lt;pre&gt;
      &amp;lt;CONFIGURE type=&amp;quot;VARIABLES&amp;quot;&amp;gt;
      ?  &amp;lt;HEADER&amp;gt;
      ?     &amp;lt;PRAGMA&amp;gt;# Pragmas section&amp;lt;/PRAGMA&amp;gt;
      ?     &amp;lt;SCRIPT&amp;gt;# Code section. Place here functions\variables
                      which you want to address from within the variable tags
            &amp;lt;/SCRIPT&amp;gt;
         &amp;lt;/HEADER&amp;gt;
         &amp;lt;VARIABLES&amp;gt;
      +     &amp;lt;VARIABLE id=&amp;quot;com.sap.mypackage:variableId&amp;quot;&amp;gt;
               # For complete description of variable
               definition see &lt;q ref=&quot;core.env:KitVariables!VARIABLE_DEF&quot;&gt;VARIABLE_DEF&lt;/q&gt;
      ?        &amp;lt;PROPERTIES&amp;gt;
      *             &amp;lt;propertyName type=&amp;quot;[function | ]&amp;quot;/&amp;gt;
                        # Represents a property of the variable
                        You can assign the 'type' attribute for
                        evaluating the value of the property
                        as a function
               &amp;lt;/PROPERTIES&amp;gt;
            &amp;lt;/VARIABLE&amp;gt;
         &amp;lt;/VARIABLES&amp;gt;
      &amp;lt;/CONFIGURE&amp;gt;
      &lt;/pre&gt;
      &lt;h2&gt;Example&lt;/h2&gt;
      &lt;pre&gt;
      &amp;lt;CONFIGURE type=&amp;quot;VARIABLES&amp;quot;&amp;gt;
         &amp;lt;VARIABLES&amp;gt;
            &amp;lt;VARIABLE id=&amp;quot;CacheEnabled&amp;quot;&amp;gt;
               &amp;lt;PROPERTIES&amp;gt;
                  &amp;lt;type&amp;gt;bool&amp;lt;/type&amp;gt;
                  &amp;lt;dflt&amp;gt;true&amp;lt;/dflt&amp;gt;
                  &amp;lt;scope&amp;gt;user&amp;lt;/scope&amp;gt;
               &amp;lt;/PROPERTIES&amp;gt;
            &amp;lt;/VARIABLE&amp;gt;
         &amp;lt;/VARIABLES&amp;gt;
      &amp;lt;/CONFIGURE&amp;gt;
      &lt;/pre&gt;</Remarks></Method>
<Method name="getVariable" also="core.lib:Global!GETVAR" sortGroup="true" scope="public" id="core.env:KitVariables!getVariable" sort="35" group="Methods" seq="0001"><Summary>Gets the value of a specified kit variable.</Summary><Parameters signature="method:: &lt;i&gt;$ENV&lt;/i&gt;.&lt;b&gt;getVariable&lt;/b&gt;(&lt;i&gt;id&lt;/i&gt;, &lt;i&gt;default&lt;/i&gt;) &amp;rarr; Variant"><Param name="id" type="QName">Variable Id.</Param><Param name="default">Default value to use in case the variable is empty or undefined.</Param></Parameters><Return type="Variant">The requested variable value.</Return><Remarks>This method is equivalent to the &lt;q ref=&quot;core.lib:Global!GETVAR&quot;&gt;GETVAR&lt;/q&gt; macro.</Remarks><SeeAlso>&lt;q ref=&quot;core.lib:Global!GETVAR&quot;&gt;GETVAR&lt;/q&gt;</SeeAlso></Method>
<Method name="getVariableDef" sortGroup="true" scope="public" id="core.env:KitVariables!getVariableDef" sort="35" group="Methods" seq="0002"><Summary>Gets the definition of a specified kit variable.</Summary><Parameters signature="method:: &lt;i&gt;$ENV&lt;/i&gt;.&lt;b&gt;getVariableDef&lt;/b&gt;(&lt;i&gt;id&lt;/i&gt;) &amp;rarr; &lt;q ref=&quot;core.env:KitVariables!VARIABLE_DEF&quot;&gt;VARIABLE_DEF&lt;/q&gt;"><Param name="id" type="QName">Variable Id.</Param></Parameters><Return type="VARIABLE_DEF" typeRef="&lt;q ref=&quot;core.env:KitVariables!VARIABLE_DEF&quot;&gt;VARIABLE_DEF&lt;/q&gt;">The variable definition object.</Return></Method>
<Method name="getVariablesTable" sortGroup="true" scope="public" id="core.env:KitVariables!getVariablesTable" sort="35" group="Methods" seq="0003"><Summary>Gets the table of all variable values.</Summary><Parameters signature="method:: &lt;i&gt;$ENV&lt;/i&gt;.&lt;b&gt;getVariablesTable&lt;/b&gt;() &amp;rarr; Object[Id]"></Parameters><Return type="Object[Id]">The table of all variables and their values, indexed by Id.</Return><Remarks>Variable id's are stored in uppercase. Use &lt;q ref=&quot;core.lib:Basic!UPPER&quot;&gt;UPPER&lt;/q&gt; macro to convert the variable name to uppercase
before using it the index in the table of variable values.</Remarks></Method>
<Method name="removeVariable" sortGroup="true" scope="public" id="core.env:KitVariables!removeVariable" sort="35" group="Methods" seq="0004"><Summary>Removes a specified kit variable.</Summary><Parameters signature="method:: &lt;i&gt;$ENV&lt;/i&gt;.&lt;b&gt;removeVariable&lt;/b&gt;(&lt;i&gt;id&lt;/i&gt;) &amp;rarr; void"><Param name="id" type="QName">Variable Id.</Param></Parameters><Return></Return></Method>
<Method name="resetVariable" sortGroup="true" scope="public" id="core.env:KitVariables!resetVariable" sort="35" group="Methods" seq="0005"><Summary>Resets a specified kit variable to its default value.</Summary><Parameters signature="method:: &lt;i&gt;$ENV&lt;/i&gt;.&lt;b&gt;resetVariable&lt;/b&gt;(&lt;i&gt;id&lt;/i&gt;) &amp;rarr; void"><Param name="id" type="QName">Variable Id.</Param></Parameters><Return></Return></Method>
<Method name="setVariable" also="core.lib:Global!SETVAR" sortGroup="true" scope="public" id="core.env:KitVariables!setVariable" sort="35" group="Methods" seq="0006"><Summary>Sets the value of a specified kit variable.</Summary><Parameters signature="method:: &lt;i&gt;$ENV&lt;/i&gt;.&lt;b&gt;setVariable&lt;/b&gt;(&lt;i&gt;id&lt;/i&gt;, &lt;i&gt;value&lt;/i&gt;) &amp;rarr; void"><Param name="id" type="QName">Variable Id.</Param><Param name="value">New variable value (if the value is empty or omitted, the variable will be deleted).</Param></Parameters><Return></Return><Remarks>This method is equivalent to the &lt;q ref=&quot;core.lib:Global!SETVAR&quot;&gt;SETVAR&lt;/q&gt; macro.</Remarks><SeeAlso>&lt;q ref=&quot;core.lib:Global!SETVAR&quot;&gt;SETVAR&lt;/q&gt;</SeeAlso></Method>
<Structure name="VARIABLE_DEF" sortGroup="true" id="core.env:KitVariables!VARIABLE_DEF" sort="41" group="Structures" seq="0007"><Summary>Represents a Storyboard variable definition.</Summary><Remarks>The VARIABLE_DEF structure is made of:
      &lt;table class=&quot;BOTH&quot;&gt;&lt;tr&gt;&lt;td class=&quot;H V&quot;&gt;Name &lt;/td&gt;&lt;td class=H&gt;Type &lt;/td&gt;&lt;td class=H&gt;Description &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=V&gt;id &lt;/td&gt;&lt;td&gt;QName &lt;/td&gt;&lt;td&gt;Variable id  - must be prefixed with namespace e.g. com.sap.mypackage:id &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=V&gt;type &lt;/td&gt;&lt;td&gt;Enum &lt;/td&gt;&lt;td&gt;Variable type: {str &lt;/td&gt;&lt;td&gt;int &lt;/td&gt;&lt;td&gt;float &lt;/td&gt;&lt;td&gt;bool &lt;/td&gt;&lt;td&gt;obj &lt;/td&gt;&lt;td&gt;arr} &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=V&gt;dflt &lt;/td&gt;&lt;td&gt;Variant &lt;/td&gt;&lt;td&gt;Default value for the variable &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=V&gt;scope &lt;/td&gt;&lt;td&gt;Enum &lt;/td&gt;&lt;td&gt;Variable scope: {user &lt;/td&gt;&lt;td&gt;system} &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</Remarks></Structure>
</Topics>
</Interface>