• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Отладчик скриптов?

Автор fatscrat, 03.03.14, 08:45:06

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

fatscrat

03.03.14, 08:45:06 Последнее редактирование: 03.03.14, 09:25:43 от fatscrat
Здравствуйте. Есть ли в вертикали нормальный отладчик vb скриптов? И если есть, то как использовать?

teplinskiy

Для отладки vb скриптов в ВЕРТИКАЛи могу посоветовать лишь следующее:
1) Открыть "локальную" структуру файла ТП в Конфигураторе, так как нужны данные для отладки;
2) Выбрать функцию (либо вещественный атрибут), работу которой необходимо проверить;
3) На панели инструментов нажать кнопку "Выполнить".
Результат выполнения функции появится в отдельном окне (см. вложение)

fatscrat

Спасибо.
А в редактроре отчетов?

teplinskiy

Цитата: fatscrat
А в редактроре отчетов?
К сожалению в Редактор шаблонов тех. карт нет возможности поместить данные из файла ТП, на которых можно проводить отладку.
Придеться одновременно держать открытой как ВЕРТИКАЛЬ, так и сам Редактор.
Редактор работает с шаблоном (не забывать сохранять данные, которые были изменены), ВЕРТИКАЛЬ запускает отчет. При этом отчет из УТС достаточно выбрать один раз, после только перестартовывать его в ВЕРТИКАЛи.
Диалоговое окно при формировании отчета в ВЕРТИКАЛи, в случае наличия ошибок, отображает информацию о причине и месте их нахождения: название функции, тип ошибки, номер строки.

fatscrat

В том то и дело что оно ничего не отображает  :(

tur

Цитата: fatscrat от 04.03.14, 08:19:09
В том то и дело что оно ничего не отображает  :(

Выложите, хотя бы, что вы хотите сделать.

fatscrat

04.03.14, 10:54:17 #6 Последнее редактирование: 04.03.14, 16:51:31 от fatscrat
Вот. Где косяк. Почему не выводится "selectMaters - START"

const RIGHTS = 62 
const TYPE_INT = "{DDF29044-F2DA-4457-9CA2-CA0F1E6501A6}"
const TYPE_FLOAT = "{51AF1A06-C000-4ed4-940D-ADD3B199EB5E}"
const TYPE_STRING = "{751A3E7F-86DC-4527-91C8-79919F3B3FA3}"
const TYPE_TEXT = "{B7672ACF-D5AA-4432-AA5C-ACF9FF8A27F7}"
const TYPE_BOOL = "{1739DAD4-D175-4b0a-B2C7-55759916F7EF}"
const TYPE_DATE = "{BDB20E23-B5D7-4966-8110-6F4EFD8764BB}"
const TYPE_NULL = "{00000000-0000-0000-0000-000000000000}"
const TYPE_FILE = "{2B02B52B-7C4A-40a7-845A-DA553A1B0DA1}"
const TYPE_STREAM = "{F0CA433A-74E7-47b0-958C-CC1EBAC73DA8}"

class clDbf
   
    private model
    private objects
    private classes
    private filters
    private detail
   
    private sub class_initialize()
       
'        msgbox("class_initialize - START")
       
        set model = rptBuilder.rModel
        set objects = model.vrGetObjVector
        set classes = model.vrGetClassVector
        set filters = classes.vrFilterVector
       
        set det_it = objects.vrCreateIterator("dse", objects.vrItem(0), true)
        det_it.vrFirst
        set detail = det_it.vrGetObject
       
'        msgbox("class_initialize - END")
       
    end sub
   
    private sub prSelectMaters(parent)

        msgbox("prSelectMaters - START")
       
        set it = objects.vrCreateIterator("", parent, true)
        do while it.vrNext
            set obj = it.vrGetObject
            if filters.vrLocateConstraint("operations", obj.vrClass.vrName) then
                msgbox(obj.vrAttrByValue("nameoper").vrValue)
            elseif filters.vrLocateConstraint("materials", obj.vrClass.vrName) then
                msgbox(obj.vrAttrByValue("name").vrValue)
            end if
            prSelectMater obj
        loop
       
    end sub
   
    public sub selectMaters()
       
        msgbox("selectMaters - START")
        prSelectMaters detail
       
    end sub
   
end class

function DocBeforeFill(doc)

    set dbf = new clDbf
    dbf.selectMater
                 
end function


уже нашел. а здесь всего 20 строк. а есть скрипты и по 500.  :`(

вообще можно заставить это УГ выводить хоть какую-нибудь информацию об ошибках?

или хотя бы пошагово как-нибудь запустить

fatscrat

Или заставить это чудо открывать скрипты в отдельной программе. Хоть что-нибудь избавляющее от этого ада.