хмм.... видимо я не совсем верно сформулировал свой вопрос. Попробую по другому.
Позиционирование на дс происходит абсолютно верно. Если вы говорите про кусок кода -
Query().dataSourceNo(2), то да - здесь вернее будет ловить по имени (Query().dataSourceName("pgpQstRef")), спасибо за подсказку.
Суть немного в другом - мне необходимо форму №2 открывать из 4ех других форм, каждый раз с разным range.
. В форме №1 и в форме №3 у меня никакого range нет, я его задаю открываемой форме позиционируясь на один из её датасурсов и используя текущие записи из форм №1 и №3. И ессно у меня в данных формах нет и Query.
Не совсем еще разобрался в SysQuery::MergeRanges() но там на входе 2 query, а у меня существует только один.

Данный метод мне, к сожалению не подходит.
Вобще суть вопроса такова - при явном указании открываемой форме на какое поле ей необходимо наложить range (то, что я назвал позиционироваться) Акспта начинает путать поля и накладывать задаваемый range не туда, куда надо.
З.Ы. SysQuery::findOrCreateRange() - вобще не нашел, к сожалению. Может это при другом СП? Напомню свой текущий - Ax3.0 SP2.