Вот код:
procedure Tmain.tvRubricLostrubricPropertiesCloseUp(Sender: TObject);
var
i,rubric_id:integer;
s:variant;
begin
for i:=0 to tvRubric.DataController.GetSelectedCount-1 do
begin
rubric_id:=tvRubric.DataController.Values[tvRubric.DataController.GetSelectedRowIndex(i),tvRubric.FindItemByName('tvRubricRubric_id').Index];
with dm.t_pricelink do begin
if Locate('inet_rubric_id',rubric_id,[loCaseInsensitive]) then Edit else Insert;
FieldValues['inet_rubric_id']:=rubric_id;
FieldValues['lost_rubric_id']:=tvRubricLostRubric.EditValue;
ShowMessage(VarToStr(tvRubricLostRubric.EditValue));
Post;
end;
end;
dm.q.Requery();
end;
соответственно tvRubricLostRubric - колонка с LookupComboBox, данные в грид попадают из TAdoQuery, соответственно как я понимаю по логике при выборе значения из Combobox'а датасет не обновляется, соответственно значение не выбирается, соответственно EditValue всегда возвращает null
procedure Tmain.tvRubricLostrubricPropertiesCloseUp(Sender: TObject);
var
i,rubric_id:integer;
s:variant;
begin
for i:=0 to tvRubric.DataController.GetSelectedCount-1 do
begin
rubric_id:=tvRubric.DataController.Values[tvRubric.DataController.GetSelectedRowIndex(i),tvRubric.FindItemByName('tvRubricRubric_id').Index];
with dm.t_pricelink do begin
if Locate('inet_rubric_id',rubric_id,[loCaseInsensitive]) then Edit else Insert;
FieldValues['inet_rubric_id']:=rubric_id;
FieldValues['lost_rubric_id']:=tvRubricLostRubric.EditValue;
ShowMessage(VarToStr(tvRubricLostRubric.EditValue));
Post;
end;
end;
dm.q.Requery();
end;
соответственно tvRubricLostRubric - колонка с LookupComboBox, данные в грид попадают из TAdoQuery, соответственно как я понимаю по логике при выборе значения из Combobox'а датасет не обновляется, соответственно значение не выбирается, соответственно EditValue всегда возвращает null