Ресурсы из другого модуля

ПВА> Добрый день.
ПВА> Вопрос к О.Руденко:

>>были некоторые глюки, связанные, в частности, еще и со «сьездом»
>>по-горизонтали отчетов.

ПВА> можно поподробнее о «съезде» отчетов.
ПВА> Есть один отчет, который иногда съезжает вправо. Причем это уже видно в
ПВА> препросмотре.
ПВА> Оператору приходиться закрывать и формировать еще раз. Где рыть — непонятно?

ПВА> C4,ШВС

ПВА> Понамарев Виталий Александрович
ПВА> Банк Москва-Сити

С чем это связано я не разбирался. Но, если мне память не изменяет, кто-то из коллег в данной рассылке уже (правда давно) давал обьяснение данному глюку. Там что-то было связано с MDI-аттрибутом последнего открытого окна. Или что-то подобное.

Я, как уже писал, решил эту проблему просто — достаточно обьявить окошко, например глобальное, и открыть/закрыть его ПЕРЕД открытием отчета:

DummyWin WINDOW,AT(,,0,0),CENTER,NOFRAME.
...
Open(DummyWin); Close(DummyWin)
...
Open(Report)
...

С тех пор никаких подобных проблем больше не было.

А для вставки этого кода я себе написал небольшой глобальный шаблончик, который подобный код вставляет во все REPORT-процедуры:

#!------------------------------------------------------------------------------
#!------------------------------------------------------------------------------
#EXTENSION(NoShiftReport,'Предотвращение горизонтального сдвига отчетов'),APPLICATION
#!------------------------------------------------------------------------------
#BOXED('')
  #DISPLAY('Данный шаблон предотвращает возможный')
  #DISPLAY('горизонтальный сдвиг рабочего поля отчета')
  #DISPLAY('вправо.')
  #DISPLAY('Для этого в начало каждого отчета вставляется')
  #DISPLAY('код открытия и закрытия пустого окна:')
  #DISPLAY('     OPEN(DummyWin)')
  #DISPLAY('     CLOSE(DummyWin)')
  #DISPLAY('Данный шаблон обрабатывает только те процедуры,')
  #DISPLAY('в которых явно присутствует структура REPORT.')
  #DISPLAY('В других случаях вышеприведенный код надо явно')
  #DISPLAY('вставлять перед открытием отчета.')
#ENDBOXED
#!
#AT(%GlobalData),FIRST
!===============================================================================
DummyWin WINDOW,AT(,,0,0),CENTER,NOFRAME
         END
!===============================================================================
#ENDAT
#!
#AT(%ProcedureSetup),WHERE(%Report)
OPEN(DummyWin)
CLOSE(DummyWin)
#ENDAT
#!------------------------------------------------------------------------------