<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.harlamenkov.ru/index.php?action=history&amp;feed=atom&amp;title=RU%2Fkb%2F00000652</id>
	<title>RU/kb/00000652 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.harlamenkov.ru/index.php?action=history&amp;feed=atom&amp;title=RU%2Fkb%2F00000652"/>
	<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;action=history"/>
	<updated>2026-11-11T18:38:36Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.33.0</generator>
	<entry>
		<id>https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=21841&amp;oldid=prev</id>
		<title>Sancho: /* Итог */</title>
		<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=21841&amp;oldid=prev"/>
		<updated>2012-03-31T12:09:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Итог&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 12:09, 31 March 2012&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-l170&quot; &gt;Line 170:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 170:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;{{Load|Automatic_generation_of_test_data.ods|Automatic_generation_of_test_data.ods}}&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Все вышеперечисленные примеры собраны в единый файл:&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Все вышеперечисленные примеры собраны в единый файл:&lt;/ins&gt;{{Load|Automatic_generation_of_test_data.ods|Automatic_generation_of_test_data.ods}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;section end=toc /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;section end=toc /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sancho</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=21835&amp;oldid=prev</id>
		<title>Sancho: /* Итог */</title>
		<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=21835&amp;oldid=prev"/>
		<updated>2012-03-31T11:07:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Итог&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:07, 31 March 2012&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-l170&quot; &gt;Line 170:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 170:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;{{&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;LoadAll&lt;/del&gt;|&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;File:&lt;/del&gt;Automatic_generation_of_test_data.ods}}Все вышеперечисленные примеры собраны в единый файл:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;{{&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Load|Automatic_generation_of_test_data.ods&lt;/ins&gt;|Automatic_generation_of_test_data.ods}}Все вышеперечисленные примеры собраны в единый файл:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;section end=toc /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;&amp;lt;section end=toc /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sancho</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=19089&amp;oldid=prev</id>
		<title>Sancho: /* Генерация текста */</title>
		<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=19089&amp;oldid=prev"/>
		<updated>2011-11-16T22:57:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Генерация текста&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 22:57, 16 November 2011&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-l78&quot; &gt;Line 78:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 78:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;потребуется &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;следующая &lt;/del&gt;формула (5).&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;потребуется формула (5).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l107&quot; &gt;Line 107:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 107:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;Следует отметить, что в формуле (7) явно смешение типов данных — числовых и текстовых. Однако, в контактинируемой строке, {{IopC}} автоматически выполняет приведение типов и ошибки не возникает.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;Следует отметить, что в формуле (7) явно смешение типов данных — числовых и текстовых. Однако, в контактинируемой строке, {{IopC}} автоматически выполняет приведение типов и ошибки не возникает.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/table&gt;</summary>
		<author><name>Sancho</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=19088&amp;oldid=prev</id>
		<title>Sancho: Основной текст</title>
		<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=RU/kb/00000652&amp;diff=19088&amp;oldid=prev"/>
		<updated>2011-11-16T22:55:37Z</updated>

		<summary type="html">&lt;p&gt;Основной текст&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;section begin=title /&amp;gt;&amp;lt;noinclude&amp;gt;{{DISPLAYTITLE:База Знаний: {{OOoC|1}}. &amp;lt;/noinclude&amp;gt;Автоматическая генерация тестовых данных&amp;lt;noinclude&amp;gt;}}&amp;lt;/noinclude&amp;gt;&amp;lt;section end=title /&amp;gt;&lt;br /&gt;
{{BreadCrumbL10n|RU/kb/module/calc/automation_calculations}}&lt;br /&gt;
{{BreadCrumbL10n|RU/kb/module/calc/examples_of_calculations}}&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=toc /&amp;gt;&lt;br /&gt;
== Генерация случайных чисел ==&lt;br /&gt;
&lt;br /&gt;
Функция генерации случайного числа '''RAND()''' мала пригодна для практического использования, поскольку возвращает случайное число в диапазоне от 0 до 1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В прикладных целях больше подходит функция '''RANDBETWEEN(нижняя_граница;верхняя_граница)''', поскольку позволяет явно установить требуемый интервал значений, не прибегая к дополнительным преобразованиям.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Например, формула (1) для генерация сотенных значений.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=RANDBETWEEN(100;999)&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(1)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В случае, если требуется сгенерировать цены с копейками, используется формула (2), позволяющая создать «цены» от 1 копейки до 1000 рублей. Остаётся применить формат ячейки «денежный».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=RANDBETWEEN(1; 10000)*0,01&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание случайных чисел ==&lt;br /&gt;
&lt;br /&gt;
Создать даты за определённый интервал так же просто.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Например, произвольная дата за предыдущие 90 дней создаётся формулой (3).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=TODAY()-RANDBETWEEN(1;90)&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(3)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Создать дату из определённого диапазона поможет комбинация функций '''RANDBETWEEN()''' и '''DATE()''': формула&amp;amp;nbsp;(4), позволяющая создать произвольную дату за три года — с 2009 по 2011.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=DATE(RANDBETWEEN(2009;2011);RANDBETWEEN(1;12);RANDBETWEEN(1;31))&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(4)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Внося небольшие модификации в формулу (4) можно создать произвольную дату за конкретный год, квартал или месяц.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Генерация текста ==&lt;br /&gt;
&lt;br /&gt;
Для заполнения текстовых данных можно сделать простейший генератор шума. Для этого понадобится ещё три функции: '''CHAR()''', возвращающая символ по его коду из текущего шрифта, '''LEFT()''', возвращающая n левых символов из строки, и оператор контактинации строк '''&amp;amp;'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В качестве параметров CHAR() требуются следующие интервалы значений:&lt;br /&gt;
&lt;br /&gt;
* цифры — от 48 до 57;&lt;br /&gt;
* латинские заглавные буквы — от 65 до 90&lt;br /&gt;
* латинские строчные буквы — от 97 до 122;&lt;br /&gt;
* кириллических заглавные буквы — от 192 до 223;&lt;br /&gt;
* кириллические строчные буквы — от 224 до 255.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Для генерации «слова», длинной 10 символов, в котором:&lt;br /&gt;
&lt;br /&gt;
* первый символ — заглавная латинская буква;&lt;br /&gt;
* второй и девятый — цифры;&lt;br /&gt;
* остальные — строчные латинские буквы,&lt;br /&gt;
&lt;br /&gt;
потребуется следующая формула (5).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=CHAR(RANDBETWEEN(65;90))&amp;amp;RANDBETWEEN(0;9)&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;RANDBETWEEN(0;9)&amp;amp;CHAR(RANDBETWEEN(97;122))&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(5)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Для придания слову разной длинны, «обернём» формулу (5) в функцию '''LEFT()''', и заставим вернуть «слово», длинной от 3 до 10 символов: формула (6).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=LEFT(x;RANDBETWEEN(3;10))&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(6)&lt;br /&gt;
|}&lt;br /&gt;
- здесь '''x''' — формула (5).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Итоговая формула (7):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=LEFT(CHAR(RANDBETWEEN(65;90))&amp;amp;RANDBETWEEN(0;9)&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;CHAR(RANDBETWEEN(97;122))&amp;amp;RANDBETWEEN(0;9)&amp;amp;CHAR(RANDBETWEEN(97;122));RANDBETWEEN(3;10))&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(7)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Следует отметить, что в формуле (7) явно смешение типов данных — числовых и текстовых. Однако, в контактинируемой строке, {{IopC}} автоматически выполняет приведение типов и ошибки не возникает.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Почтовые индексы и телефонные номера ==&lt;br /&gt;
&lt;br /&gt;
В России почтовые индексы шестизначные, поэтому применим функцию форматирования по маске '''TEXT()'''. Получим формулу для индекса (8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=TEXT(RANDBETWEEN(1;999999);&amp;quot;000000&amp;quot;)&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(8)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
С телефонными номерами несколько сложнее, поскольку с помощью формата ячеек невозможно добиться «телефонного» разбиения числа на разряды. Поэтому соединим оператор контактинации и функцию '''TEXT()''' в формуле (9) для получения федерального телефонного номера в международном формате.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=&amp;quot;+&amp;quot;&amp;amp;RANDBETWEEN(1;9)&amp;amp;&amp;quot; (&amp;quot;&amp;amp;RANDBETWEEN(101;999)&amp;amp;&amp;quot;) &amp;quot;&amp;amp;TEXT(RANDBETWEEN(1011111;9999999);&amp;quot;000-00-00&amp;quot;)&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(9)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Выборка произвольной позиции из списка ==&lt;br /&gt;
&lt;br /&gt;
В {{IopC}} можно организовывать работу со списками, используя именованные диапазоны.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Допустим, список стран помещён в именованный диапазон «''Strana»''. Формула (10) для выборки позиции из списка стран использует две дополнительные функции: '''INDEX()''' и '''COUNTA()'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=INDEX(Strana;RANDBETWEEN(1;COUNTA(Strana)))&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(10)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
На этом принципе можно организовать построение сложных наборов данных.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Генерация списка ФИО с адресами ==&lt;br /&gt;
&lt;br /&gt;
Для генерации фамилий имён и отчеств можно воспользоваться нормой русского языка — стандартными окончаниями ''«-ов»'' и «''-ович»'' для отчеств и фамилий, созданных на основе имён.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Имена, страны, города и улицы вводятся в списки, по которым создаются именованные диапазоны ''«Strana»'', ''«Gorod»'', ''«Ulica»'', ''«Name»''. На основе формулы (10) создаём для ФИО формулу (11).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=INDEX(Name;RANDBETWEEN(1;COUNTA(Name)))&amp;amp;&amp;quot;ов&amp;quot;&amp;amp;&amp;quot; &amp;quot;&amp;amp;INDEX(Name;RANDBETWEEN(1;COUNTA(Name)))&amp;amp;&amp;quot; &amp;quot;&amp;amp;INDEX(Name;RANDBETWEEN(1;COUNTA(Name)))&amp;amp;&amp;quot;ович&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(11)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Всё перечисленное позволяет собрать формулу (12) для почтового адреса.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
!style=&amp;quot;width:90%&amp;quot;|=TEXT(RANDBETWEEN(1;999999);&amp;quot;000000&amp;quot;)&amp;amp;&amp;quot;, &amp;quot;&amp;amp;INDEX(Strana;RANDBETWEEN(1;COUNTA(Strana)))&amp;amp;&amp;quot;, г. &amp;quot;&amp;amp;INDEX(Gorod;RANDBETWEEN(1;COUNTA(Gorod)))&amp;amp;&amp;quot;, ул. &amp;quot;&amp;amp;INDEX(Ulica;RANDBETWEEN(1;COUNTA(Ulica)))&amp;amp;&amp;quot;, дом &amp;quot;&amp;amp;RANDBETWEEN(1;99)&amp;amp;&amp;quot;, кв &amp;quot;&amp;amp;RANDBETWEEN(1;999)&lt;br /&gt;
!style=&amp;quot;width:10%&amp;quot;|(12)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Итог ==&lt;br /&gt;
&lt;br /&gt;
{{LoadAll|File:Automatic_generation_of_test_data.ods}}Все вышеперечисленные примеры собраны в единый файл:&lt;br /&gt;
&amp;lt;section end=toc /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=signature/&amp;gt;&lt;br /&gt;
{{SignYear|Sancho||2011}}&lt;br /&gt;
&amp;lt;section end=signature/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{RUkbCalcBottom}}&lt;/div&gt;</summary>
		<author><name>Sancho</name></author>
		
	</entry>
</feed>