Цитата:
Только не могли бы вы объяснить, почему возникают проблемы при вставке [поле <внешний ключ> должно быть заполнено]? Ведь я вставляю запись в тот DS, который определен для грида, а там все поля заполнены.
Точно могут сказать только разработчики Аксапты..
Видимо, при создании новой записи в DS1 ей в соответствие находится пустая запись в DS2. После изменений в DS1, происходит попытка записи всех несохраненных данных, при этом курсор в DS2 (c RecId = 0) воспринимается как новая запись и Аксапта пытается её сохранить с соответствующей ошибкой.
Обойти это можно, перекрыв пустыми методами create и write на DS2, а также validateWrite должен всегда возвращать true.
Цитата:
И еще: как-то можно сделать, чтоб после выбора из списка значения внешнего ключа, соответствующие поля из DS2 обновлялись?
СРАЗУ после выбора только с помощью display метода.
А после сохранения можно вызвать DS1.research() или executeQuery()