<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416814&amp;view=findpost&amp;p=3820831</guid>
        <pubDate>Mon, 10 Feb 2020 14:53:15 +0000</pubDate>
        <title>и снова lookup поле в в dbgrid</title>
        <link>https://forum.sources.ru/index.php?showtopic=416814&amp;view=findpost&amp;p=3820831</link>
        <description><![CDATA[woojin: вот... блин&#33;&#33;&#33;&#33;&#33;&#33;<br>чуть мозг не расплавился<br><br>не надо было КЭШ включать для этого поля]]></description>
        <author>woojin</author>
        <category>Delphi: Базы данных</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416814&amp;view=findpost&amp;p=3820818</guid>
        <pubDate>Mon, 10 Feb 2020 10:24:03 +0000</pubDate>
        <title>и снова lookup поле в в dbgrid</title>
        <link>https://forum.sources.ru/index.php?showtopic=416814&amp;view=findpost&amp;p=3820818</link>
        <description><![CDATA[woojin: добрейшего денька&#33;<br>
<br>
сама БД создаваться должна в программе, грузиться и сохраняться в XML<br>
если создать два TClientDataSet в дизайнере и заполнить их необходимыми полями со связями, то после запуска программы всё отображается как надо<br>
но если создавать всё то же самое в Run-Time то LookUp поле первого TClientDataSet не показывает выбранное значение из второго TClientDataSet<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">procedure TForm.Create(Sender: TObject);</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp; &nbsp;Field1, Field2, Field3, Field4: TField</div><div class="code_line">&nbsp;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ +++++ ClientDataSet2 +++++ }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ авто добавляемое поле порядкового номера }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field1 := TAutoIncField.Create(nil);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field1.FieldName := &#39;id&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field1.Visible := True;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field1.FieldKind := fkData;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field1.DataSet := ClientDataSet2;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet2.Fields.Add(Field1);</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ текстовое поле с данными }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field2 := TStringField.Create(nil);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field2.FieldName := &#39;name&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field2.Visible := True;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field2.FieldKind := fkData;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field2.Size := 5;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field2.DataSet := ClientDataSet2;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet2.Fields.Add(Field2);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ ----- ClientDataSet2 ----- }</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ +++++ ClientDataSet1 +++++ }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ номер выбранного значения из &nbsp;ClientDataSet2 }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field3 := TIntegerField.Create(nil);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field3.FieldName := &#39;id_izmer&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field3.Visible := True;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field3.FieldKind := fkData;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field3.DataSet := ClientDataSet1;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet1.Fields.Add(Field3);</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ текстовое поле с данными из &nbsp;ClientDataSet2 }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4 := TStringField.Create(nil);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.FieldName := &#39;izmer&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.Visible := True;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.FieldKind := fkLookup;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.Size := 5;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.DataSet := ClientDataSet1;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ заполнение данных для LookUp }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.KeyFields := &#39;id_izmer&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.LookupKeyFields := &#39;id&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.LookupResultField := &#39;name&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Field4.LookupDataSet := ClientDataSet2;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet1.Fields.Add(Field4);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;{ ----- ClientDataSet1 ----- }</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet2.CreateDataSet;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet2.Active := True;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet1.CreateDataSet;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ClientDataSet1.Active := True;</div><div class="code_line">end;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
после запуска заполняю некоторыми значениями DBGrid2 с привязанным ClientDataSet2<br>
делаю выбор в LookUp поле DBGrid1 - и значение в поле id_izmer меняется, а в самом поле izmer пустота<br>
<br>
подскажите что я сделал не так?]]></description>
        <author>woojin</author>
        <category>Delphi: Базы данных</category>
      </item>
	
      </channel>
      </rss>
	