# Constants and Variables

All SAL system constants and system variables are defined in *PPJ.Runtime.Sys* class as constants or static variables. The names are all unchanged. Ice Porter takes care of qualifying the names with the *Sys* class name.

The most used system variables in SAL are *hWndForm*, *hWndItem* and *hWndMDI*. All of them are supported in the *Sys* class and are updated automatically using a stacked context system. See [SalContext ](/general/framework/features/salcontext.md)for more information.

The only system variable that is not supported is *bStaticsAsWindows* because all the so-called "static" controls in SAL are normal controls in .NET.

All constants are defined and therefore available to the ported application as constants. However, some constants may not be supported by the function that uses them. Most of the times, the constants that are not supported are either not needed or obsolete. The unsupported constants are all marked with the **\[Obsolete]** attribute and are reported as such by the C# compiler.

## Unsupported constants

In the table below, you can find the list of all unsupported constants and the reason why they are unsupported, plus, if available, the suggested workaround.

<table><thead><tr><th width="271">Constant</th><th>Description</th></tr></thead><tbody><tr><td>OF_Reopen</td><td>SalFileOpenEx is not supported. There is no replacement and in general this function and this constant is not needed.</td></tr><tr><td>TBL_Flag_HScrollByCols</td><td>Not supported in the <em>FlexGrid.NET</em> and in general it's not needed.</td></tr><tr><td>TBL_Flag_ShowVScroll</td><td>Not supported in the <em>FlexGrid.NET</em> and in general it's not needed.</td></tr><tr><td>TBL_Flag_ShowWaitCursor</td><td>Not needed.</td></tr><tr><td>TPM_CenterAlign</td><td>System constants for context menus not exposed by the .NET framework. In general it is not needed and not used in Windows standard GUI design guidelines.</td></tr><tr><td>TPM_RightAlign</td><td>System constants for context menus not exposed by the .NET framework. In general it is not needed and not used in Windows standard GUI design guidelines.</td></tr><tr><td>TPM_RightButton</td><td>System constants for context menus not exposed by the .NET framework. In general it is not needed and not used in Windows standard GUI design guidelines.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.iceteagroup.com/general/framework/features/constants-and-variables.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
