Автоматическое заполнение данных в разных полях при выборе ID из одного dataset`а

Доброго времени суток!

Есть карточка редактирование, в которой есть поле справочник "Контакт", так же есть поле "Адрес" из таблицы контактов. При выборе нужного контакта, поле "Адрес" не заполняется автоматически, но стоит сохранить карточку редактирования и заново её открыть, поле "Адрес" уже заполнено в соответствии с данными из таблицы контактов. Как можно отобразить данные на момент создания записи?

Версия 3.3.2.311.

Заранее спасибо.

Нравится

3 комментария

Вот обсужение аналогичного вопроса. На изменение в датасете карточки поля «Контакт» вычисляем для него значение адреса и пишем в нужное поле. В Вашем случае действовать аналогично, различие только в том, что адрес в карточку (а точнее, в поле датасета) будет писаться только для отображения и реально в этой таблице не хранится. А тут немного другая, но похожая задача, если контакту на ходу изменили адрес.

Использовал такой код для реализации данной задачи, может кому пригодиться:

var ContactSelectQuery = Services.GetNewItemByUSI('sq_Contact');
EnableSelectQueryFilters(ContactSelectQuery, false);
ApplySelectQueryFilter(ContactSelectQuery, 'ID', ContactID, true);
var ContactDataset = ContactSelectQuery.Open();
Dataset.Values('ContactAddress') = ContactDataset.Values('Address');

Еще в конце тогда уж

ContactDataset.Close();
Показать все комментарии