Уникальность открытой формы определяется ее свойством КлючУникальности, которое может принимать значения произвольного типа.
Как правило, при открытии формы средствами встроенного языка, сначала нужно получить форму (метод ПолучитьФорму()), а затем выполнить ее открытие (метод Открыть()).
Одним из параметров метода ПолучитьФорму() является параметр КлючУникальности. При выполнении этого метода система будет сначала искать открытую форму с указанным ключом уникальности и, если такая существует, будет возвращена именно она. Если же нет, то будет возвращена новая форма, и ее свойство КлючУникальности будет установлено значением соответствующего параметра метода ПолучитьФорму(). Поэтому для того чтобы открыть несколько копий одной и той же формы, следует выполнять метод ПолучитьФорму() с различными ключами уникальности. Для этого, например, можно использовать общий объект УникальныйИдентификатор, создавая его каждый раз с помощью конструктора:
Копировать в буфер обменаФорма = Отчеты.АнализЦен.ПолучитьФорму("ГлавнаяФорма", ,Новый УникальныйИдентификатор());
Форма.Открыть();
Значение ключа уникальности формы также может быть изменено в модуле самой формы.
Подробнее об этом можно прочитать в разделе "Механизм уникальности форм".