Снегопат

Обсуждение Снегопата
Текущее время: 22 ноя 2024, 22:38

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: 20 апр 2012, 15:11 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
Ошибку падения скрипта исправил.
Пока для таких "нештатных" случаев размещения определения процедур/функций скрипт не выдает имя процедуры, для остальных, более штатных, выдает.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2012, 15:41 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
orefkov писал(а):
Хотя вру ведь. Все уже решаемо сейчас:
Код:
var msgWnd = null
function createTextWindow(textWnd){msgWnd = textWnd}

function macrosПроверка()
{
   // Будем отлавливать создание текстового окна
   events.connect(Designer, "createTextWindow", SelfScript.Self);
   // Очищаем окно сообщений
   stdcommands.Frntend.ClearMessageWindow.send()
   // Закрываем его
   stdcommands.Frntend.CloseMessageWindow.send()
   // Запускаем синтакс-контроль
   stdcommands.Frntend.SyntaxCheck.send()
   // Отпишемся от события
   events.disconnect(Designer, "createTextWindow", SelfScript.Self);
   // Прочитаем, что там в окне сообщений
   var msgText
   if(msgWnd)
   {
      msgText = msgWnd.text
      MessageBox(msgText)
   }   
   // Очищаем окно сообщений
   stdcommands.Frntend.ClearMessageWindow.send()
}

Саш, ты этот скрипт выложишь?
ЗЫ не хочется ничего терять :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2012, 15:43 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
Нет. Это не скрипт, а просто кусок кода, который можно где-то приспособить.
К тому же скоро добавлю перехват сообщений, и код будет нужен уже совсем другой.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2012, 17:34 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
kuntashov писал(а):
tormozit, посмотри скрипт refactoring.js в ветке refactoring-tool-script. Я реализовал ExtractMethod, но пока он не очень умный в плане автоматического вычисления параметров и возвращаемых значений, но в простых случаях работает.

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

Что-то я не увидел, что этот метод работает :(
Выделил код, который хочу вынести в метод, вызываю соответствующий макрос, и ничего.
Конфигуратор перегружал, скрипты заливал свежие.
что не так?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2012, 22:56 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:53
Сообщения: 448
Откуда: Саратов
artbear писал(а):
kuntashov писал(а):
tormozit, посмотри скрипт refactoring.js в ветке refactoring-tool-script. Я реализовал ExtractMethod, но пока он не очень умный в плане автоматического вычисления параметров и возвращаемых значений, но в простых случаях работает.

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

Что-то я не увидел, что этот метод работает :(
Выделил код, который хочу вынести в метод, вызываю соответствующий макрос, и ничего.
Конфигуратор перегружал, скрипты заливал свежие.
что не так?


У меня вот так работает: http://www.youtube.com/watch?v=FxkV5ty0KNU
Точно ничего не делает, без каких либо сообщений об ошибках? Модуль, случаем, не "под замком"? Или даже диалог не открывается?
Может, приведешь текст процедуры, на которой воспроизводится?

_________________
С уважением,
Александр Кунташов
Канал про 1С в Телеграме: @kuntashov_devnotes


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 апр 2012, 07:38 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
Да, у меня именно диалог даже не открывается :(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 апр 2012, 07:45 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
artbear писал(а):
Да, у меня именно диалог даже не открывается :(

В общем, диалог мелькал все-таки. Виноват оказался скрипт MaximizeWnd.js
Отключил его, диалог стал появляться.
Нужно как-то скрипт MaximizeWnd.js, чтобы он распознавал подобные диалоги и не путал их с текстовым окном


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 апр 2012, 07:56 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
artbear писал(а):
artbear писал(а):
Да, у меня именно диалог даже не открывается :(

В общем, диалог мелькал все-таки. Виноват оказался скрипт MaximizeWnd.js
Отключил его, диалог стал появляться.
Нужно как-то скрипт MaximizeWnd.js, чтобы он распознавал подобные диалоги и не путал их с текстовым окном

Фишка в том, что в этом скрипте при открытии диалогов выдается инфа, что
textWnd.extName = <Встроенный язык>
textWnd.readOnly = <true>
textWnd.text = <>
ИМХО здесь частично вопрос к Саше Орефкову - почему возвращается именно это расширение.
ИМХО Пока как костыль как скрипта подойдет проверка на три этих условия !


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 апр 2012, 08:17 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
artbear писал(а):
artbear писал(а):
Да, у меня именно диалог даже не открывается :(

В общем, диалог мелькал все-таки. Виноват оказался скрипт MaximizeWnd.js
Отключил его, диалог стал появляться.

Эту ошибку в MaximizeWnd.js исправил/залил.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 01 май 2012, 17:21 
Не в сети

Зарегистрирован: 13 фев 2012, 21:15
Сообщения: 190
kuntashov писал(а):
Я реализовал ExtractMethod, но пока он не очень умный в плане автоматического вычисления параметров и возвращаемых значений, но в простых случаях работает. И прошу высказать замечания по поводу интерфейса и вообще возможностей как специалиста, уже имеющего свое аналогичное решение, буду очень признателен.

Прежде всего спасибо за проделанную работу. Ощутимая польза есть.

По функционалу. Нестрогий анализ текста дает о себе часто знать при использовании.
Код:
   Если Не ЗначениеЗаполнено(F) Тогда
      F = D;
   КонецЕсли;

Такой фрагмент будет обработан неверно. Ну и подобные. Пока не появится доступ к компилятору платформы или кто то не прикрутит свой строгий синтаксический разбор по дереву конечных автоматов (грамматике), инструмент будет отставать от аналогов. Фича, которую я спрашивал в этой теме возможно позволит решить проблему.

По интерфейсу. Нужны кнопки для сдвига параметров Вверх/Вниз. Неплохо было бы заиметь колонку для значения по умолчанию, которая бы подхватывала значения по умолчанию из одноименных параметров текущего метода.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB