<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.trainzsimulator.com/index.php?action=history&amp;feed=atom&amp;title=Class_AsyncQueryHelper</id>
	<title>Class AsyncQueryHelper - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.trainzsimulator.com/index.php?action=history&amp;feed=atom&amp;title=Class_AsyncQueryHelper"/>
	<link rel="alternate" type="text/html" href="https://wiki.trainzsimulator.com/index.php?title=Class_AsyncQueryHelper&amp;action=history"/>
	<updated>2026-11-05T05:36:23Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://wiki.trainzsimulator.com/index.php?title=Class_AsyncQueryHelper&amp;diff=26613&amp;oldid=prev</id>
		<title>Danny252: /* Related Messages */ Fix table formatting</title>
		<link rel="alternate" type="text/html" href="https://wiki.trainzsimulator.com/index.php?title=Class_AsyncQueryHelper&amp;diff=26613&amp;oldid=prev"/>
		<updated>2020-12-28T19:43:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Related Messages: &lt;/span&gt; Fix table formatting&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:43, 28 December 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l43&quot;&gt;Line 43:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 43:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{TableHeader|width=50%|margin=15px}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{TableHeader|width=50%|margin=15px}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Major&#039;&#039;&#039;||bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Minor&#039;&#039;&#039;||bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Source&#039;&#039;&#039;||bgcolor=&quot;#EEEEEE&quot; |&#039;&#039;&#039;Destination&#039;&#039;&#039;|bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Description&#039;&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Major&#039;&#039;&#039;||bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Minor&#039;&#039;&#039;||bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Source&#039;&#039;&#039;||bgcolor=&quot;#EEEEEE&quot; |&#039;&#039;&#039;Destination&#039;&#039;&#039;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|&lt;/ins&gt;|bgcolor=&quot;#EEEEEE&quot;|&#039;&#039;&#039;Description&#039;&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|AsyncQuery||AsyncResult||AsyncObjectSearchResult||Broadcast||Query is complete.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|AsyncQuery||AsyncResult||AsyncObjectSearchResult||Broadcast||Query is complete.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Danny252</name></author>
	</entry>
	<entry>
		<id>https://wiki.trainzsimulator.com/index.php?title=Class_AsyncQueryHelper&amp;diff=26612&amp;oldid=prev</id>
		<title>Danny252: Add partial docs on AsyncQueryHelper</title>
		<link rel="alternate" type="text/html" href="https://wiki.trainzsimulator.com/index.php?title=Class_AsyncQueryHelper&amp;diff=26612&amp;oldid=prev"/>
		<updated>2020-12-28T19:42:51Z</updated>

		<summary type="html">&lt;p&gt;Add partial docs on AsyncQueryHelper&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;*[[TrainzScript Library Reference|API Hierarchy]]&lt;br /&gt;
**[[Class GSObject|GSObject]] *&lt;br /&gt;
***[[Class GameObject|GameObject]]&lt;br /&gt;
****[[Class AsyncQueryHelper|AsyncQueryHelper]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
AsyncQueryHelper is a generic base class for asynchronous (non-blocking) queries. Most notably, it is inherited by the [[Class AsyncObjectSearchResult|AsyncObjectSearchResult]] class.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Constants==&lt;br /&gt;
*These constants are used to define various values and can be used as mnenomics.&lt;br /&gt;
*If accessed from scripts the values must be prefixed &amp;#039;&amp;#039;AsyncQueryHelper.&amp;#039;&amp;#039;, for example:&lt;br /&gt;
 int errorCode = AsyncQueryHelper.ERROR_INVALID_STATE&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Search Errors and Warnings===&lt;br /&gt;
----&lt;br /&gt;
{{TableHeader|width=95%|margin=15px}}&lt;br /&gt;
|width=375|public define int ERROR_NONE = 0 || Query completed without error&lt;br /&gt;
|-&lt;br /&gt;
|public define int ERROR_FLOOD = 1 || System is flooded, query was not run&lt;br /&gt;
|-&lt;br /&gt;
|public define int ERROR_INVALID_STATE = 2 || Invalid state for query. This is the initial state of an AsyncQueryHelper object.&lt;br /&gt;
|-&lt;br /&gt;
|public define int ERROR_NOT_COMPLETE = 3 || Query is still running&lt;br /&gt;
|-&lt;br /&gt;
|public define int WARN_MORE_RESULTS = 101 || Query aborted early because result limit was hit&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Error and Warning Number Ranges===&lt;br /&gt;
----&lt;br /&gt;
{{TableHeader|width=95%|margin=15px}}&lt;br /&gt;
|width=375|public define int WARNINGS_START = 100 || Error codes above 100 are warnings. Code 100 is not a valid result.&lt;br /&gt;
|-&lt;br /&gt;
|public define int CUSTOM_ERROR_START = 1000 || Extending classes may define custom error codes between 1000 and 2000&lt;br /&gt;
|-&lt;br /&gt;
|public define int CUSTOM_WARN_START = 2000 || Extending classes may define custom warning codes above 2000&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Related Messages==&lt;br /&gt;
*The major parameter of messages may be customised by the inheriting class, via the GetMessageMajor() function, however this should be avoided unless it is absolutely necessary.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{TableHeader|width=50%|margin=15px}}&lt;br /&gt;
|-&lt;br /&gt;
|bgcolor=&amp;quot;#EEEEEE&amp;quot;|&amp;#039;&amp;#039;&amp;#039;Major&amp;#039;&amp;#039;&amp;#039;||bgcolor=&amp;quot;#EEEEEE&amp;quot;|&amp;#039;&amp;#039;&amp;#039;Minor&amp;#039;&amp;#039;&amp;#039;||bgcolor=&amp;quot;#EEEEEE&amp;quot;|&amp;#039;&amp;#039;&amp;#039;Source&amp;#039;&amp;#039;&amp;#039;||bgcolor=&amp;quot;#EEEEEE&amp;quot; |&amp;#039;&amp;#039;&amp;#039;Destination&amp;#039;&amp;#039;&amp;#039;|bgcolor=&amp;quot;#EEEEEE&amp;quot;|&amp;#039;&amp;#039;&amp;#039;Description&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
|AsyncQuery||AsyncResult||AsyncObjectSearchResult||Broadcast||Query is complete.&lt;br /&gt;
|-&lt;br /&gt;
|AsyncQuery||Failure||AsyncObjectSearchResult||Broadcast||Query has failed, call [[#GetQueryErrorCode|GetQueryErrorCode]] for more information.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Related Classes==&lt;br /&gt;
*[[Class World|AsyncObjectSearchResult]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Categories==&lt;br /&gt;
[[Category:Script Class]]&lt;/div&gt;</summary>
		<author><name>Danny252</name></author>
	</entry>
</feed>