Снегопат
https://snegopat.ru/forum/

Открыть модуль объекта
https://snegopat.ru/forum/viewtopic.php?f=3&t=145
Страница 1 из 1

Автор:  vsuh [ 11 мар 2012, 15:57 ]
Заголовок сообщения:  Открыть модуль объекта

Здравствуйте, уважаемые.
Как у объекта конфигурации, в скрипте открыть окно с модулем объекта?
Интересуют, прежде всего, внешние обработки и отчеты.

Автор:  orefkov [ 12 мар 2012, 07:27 ]
Заголовок сообщения:  Re: Открыть модуль объекта

Модуль объекта - это одно из свойств объекта метаданных, почти такое же, как Имя, Синоним и т.п.
Поэтому если уже как-то получен объект метаданных, то просто:
Код:
mdObj.editProperty("МодульОбъекта")

плюс со следующего релиза для модулей будет и такой способ:
Код:
mdObj.openModule("МодульОбъекта")

Другое дело, как получить сам объект метаданных. Для объектов конфигурации это не сложно - есть metadata.current.rootObject, metadata.ib.rootObject от которых можно добраться до любого объекта. Для внешних же отчетов/обработок пока не все так просто. На внутреннем уровне внешний отчет/обработка - сами являются контейнером метаданных, и имея только открытое окно отчета - до метаданных отчета не добраться (пока). А вот имея активный модуль формы внешнего отчета/обработки - уже можно.
Код:
    var wnd = snegopat.activeTextWindow()
    if(!wnd)
        return
    if(wnd.mdProp.name(1) == "Форма")
    {
        var md = wnd.mdObj.parent
        //var className = md.mdclass.name(1)
        //if(className == "ВнешняяОбработка" || className == "ВнешнийОтчет")
        try{
            md.editProperty("МодульОбъекта")
        }catch(e)
        {
        }
    }

Автор:  vsuh [ 14 мар 2012, 07:18 ]
Заголовок сообщения:  Re: Открыть модуль объекта

Спасибо
получилось

Автор:  vsuh [ 15 мар 2012, 11:53 ]
Заголовок сообщения:  Re: Открыть модуль объекта

Александр,
подскажите, пожалуйста, начинающему скриптописателю, почему у меня макрос не вешается при авторегистрации на Alt-Z?
Код:
function getDefaultMacros() {
    return 'Вставить';
}

....
function getPredefinedHotkeys(predef) {
    predef.setVersion(1);
    predef.add('Маркер "Вставить"', "Alt + Z");
}


о! а почему файлы нельзя к сообщению прицеплять? правила форума читать, да?

Автор:  orefkov [ 15 мар 2012, 12:40 ]
Заголовок сообщения:  Re: Открыть модуль объекта

У тебя макрос так и называется Маркер "Вставить" ?
Почему тогда в getDefaultMacros другое название возвращается?
И это, при тестах увеличивай номер возвращаемой версии, иначе если вернешь номер версии, которая уже обработана, хоткеи не будут добавляться.

Автор:  vsuh [ 15 мар 2012, 13:08 ]
Заголовок сообщения:  Re: Открыть модуль объекта

о! заработало!
спасибо.

а как увидеть значения и типы значений свойств объектов в скрипте? (а также описание методов)
Командное окно в WSDbg очень уж какое-то... некузявое.

Автор:  orefkov [ 15 мар 2012, 13:41 ]
Заголовок сообщения:  Re: Открыть модуль объекта

Хороший отладчик скриптов - это или Visual Stidio, или в составе офиса - ms script editor.

Автор:  vsuh [ 15 мар 2012, 13:54 ]
Заголовок сообщения:  Re: Открыть модуль объекта

А как назначить, например ms script editor главной же.. ой! отладчиком по-умолчанию?

Автор:  orefkov [ 15 мар 2012, 15:17 ]
Заголовок сообщения:  Re: Открыть модуль объекта

Когда окошко появляется с выбором отладчика - поставь галку "Использовать этот отладчик как основной"

Автор:  kuntashov [ 15 мар 2012, 15:23 ]
Заголовок сообщения:  Re: Открыть модуль объекта

Раз пошел такой разговор, кто знает как установить MS Script Editor, на Windows 7, если нет возможности установить офис младше 2003-го, а в поздних версиях офиса он не включен в поставку :(

Знаю, что можно поставить VS Express для Web-разработки, там альтернативный отладчик для JS, но он с собой тянет много всякой фигни, которую ставить не хотелось бы.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/