Объединить "Генерировать метод" и "Извлечь метод"

Sneer Открыто

Если есть выделенный текст, то Извлечь, а если нет, то Генерировать

Процедура создается ниже, а тело метода копируется выше выделенного блока.
А если выделить текст запроса, то выдает ошибку "Осталась незакрытая строка" и ничего не делает.

Файлы

Скачать

Комментарии

bolsun
#1, 15 декабря 2023 14:02

Я конечно вижу матрицу и по логу могу воссоздать примерно картину, но можно скриншот и код модуля? ))


Sneer
#2, ред. 15 декабря 2023 14:08

1.png

&НаСервере
Процедура Тест()
	
	Стр = Новый Структура;
	Стр.Вставить("Тест1", 0);

	Стр.Вставить("МойТест", 1);
	
	
	
	
	Запрос = Новый Запрос("ВЫБРАТЬ
	                      |	АвансовыйОтчет.ВерсияДанных,
	                      |	АвансовыйОтчет.Номер,
	                      |	АвансовыйОтчет.Проведен,
	                      |	АвансовыйОтчет.КурсДокумента
	                      |ИЗ
	                      |	Документ.АвансовыйОтчет КАК АвансовыйОтчет");
	
	
	Выб = Запрос.Выполнить().Выбрать();
	Пока Выб.Следующий() Цикл
	КонецЦикла;
	
КонецПроцедуры


bolsun
#3, ред. 15 декабря 2023 14:21

Я так полагаю используется "Генерировать метод", вместо правильной команды в данном случае "Извлечь метод"?


Sneer
#4, 15 декабря 2023 14:41

А, точно, и Извлечь метод в турбокнопке нет, но все равно странное поведение.
И Генерировать метод работает только вне методов, если курсор внутри какого-то метода, то ошибки выдает разные, в зависимости от того, где курсор.


bolsun
#5, ред. 15 декабря 2023 14:50

(4) Sneer, Генерировать метод точно используется так как задумано?

https://turboconf.ru/Forum/Details/1524#GenerateMethod


bolsun
#6, 15 декабря 2023 14:54

Но даже если его просто вызывать в любом месте, то у меня он не вызывает ошибок и генерирует метод.
Тогда нужно смотреть что за ошибки.


Sneer
#7, 15 декабря 2023 14:57

(6) bolsun, да я понял уже
ошибка одна в логе есть, а так если курсор в тексте запроса, то невозможно извлечь строку, если в теле цикла - то ожидается КонецЦикла


bolsun
#8, ред. 15 декабря 2023 15:00

(7) Sneer, мы сейчас про какую команду говорим, я уже запутался? )


Sneer
#9, 15 декабря 2023 15:01

(8) bolsun, про неправильное использование Генерировать метод, сейчас гифку попробую записать


Sneer
#10, 15 декабря 2023 15:04

14.gif


bolsun
#11, 15 декабря 2023 17:46

(10) Sneer, ну то что в строке не работает, логично.
А вот внутри цикла у меня работает нормально.


Sneer
#12, ред. 17 декабря 2023 10:04

(11) bolsun, Внутри цикла, если до конца строки, т.е. где еще есть пробелы или табуляции работает, а если правее курсор поставить (ну да, у меня включено "разрешить помещать курсор после конца строк), то ошибка
Ну и то, что в строке не работает ладно, но может ошибку какую-то более понятную выдавать? А то у меня реально трипл-килл получился - с выделением текста текст сдублировался, тыкнул в одно место - ошибка, тыкнул в другое - другая ошибка...


Sneer
#13, 17 декабря 2023 10:17

Может вообще объединить "Генерировать" и "Извлечь"? Ну если есть выделенный текст, то Извлечь, а если нет, то Генерировать


bolsun
#14, 19 декабря 2023 14:23

bolsun переместил тему в раздел Предложения


Для вставки изображения или файла, перетащите его в поле редактора или вставьте файл из буфера