Update of "Разработка скриптов" Вы: nobody
Вход

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview

Artifact ID: 99e5e3e5106b3e45a6d1a7bfe360b6408dce1b2c
Page Name:Разработка скриптов
Date: 2011-08-24 11:18:51
Original User: artbear
Parent: 3cbd3780b3760e81e6f40627d1fbefe57b21f027 (diff)
Next 95d06664df566ddbdbdff4e07f1c067b81db8537
Content

Разработка скриптов (начинающим)

1. В первую очередь нужно изучить объектную модель Cнегопата.

Посмотри ссылку http://forum.script-coding.com/viewtopic.php?id=4481 там описаны способы, как можно посмотреть объектную модель - тебе нужно посмотреть COM-объект "Библиотека типов Снегопата" или тупо подключить файл snegopat.dll к одному из этих обозревателей.

2. Далее нужно понять, как это все работает в скриптах.

По умолчанию методы и свойства объекта designer являются глобальными, т.е. к ним можно обращаться напрямую, а ко всем остальным уже через их имена - например, коллекция аддинов addins или активное текстовое окно snegopat.activeTextWindow()

Создавайте файл с расширением .js или .vb В качестве его текста в любом редакторе(желательно редактор с поддержкой UTF-8) можно написать простейший код на JScript:

    $engine JScript
    $uname HelloWorld
    $dname HelloWorld
    Message("Hello World")
    // метод designer.Message

или на VBScript:

    $engine VBScript
    $uname HelloWorld
    $dname HelloWorld
    Message "Hello World"
    ' метод designer.Message

3. Созданный файл нужно закинуть в папку КореньСнегопатаСДллФайлом\scripts и прописать в файле КореньСнегопатаСДллФайлом\addins.ini по примеру

4. Далее можно перезагрузить Конфигуратор для загрузки скрипта, но лучше в окне Снегопата щелкнуть правой кнопкой на группе "Пользовательские аддины" и выбрать "Загрузить скрипт", выбрать файл скрипта, он загрузится и сразу же в окне сообщений Конфигуратора появится сообщение "Hello World"

5. В скриптах можно пользоваться штатными объектами 1С - ТаблицаЗначений, Массив, и многие другие с помощью команды v8New

6. Для открытия файла в Конфигураторе можно использовать аналог следующего кода (пример для JS)

    textDoc = v8New("ТекстовыйДокумент")
    var file = v8New("Файл", filepath)
    if(file.Существует()){
       textDoc.Прочитать(filepath)
       textDoc.Показать(filepath)
    }

7. Для возможности использования глобальных функций/процедур 1С (ВвестиСтроку,ВвестиЧисло) можно использовать следующий прием:
использовать директиву \$addin global в начале описания скриптов на отдельной строке, т.е. код типа

    $engine JScript
    $uname HelloWorld
    $dname HelloWorld
    $addin global

8. Для отладки скриптов можно использовать:

А. отладочную печать
Б. Непосредственную отладку скрипта