gifts2017

Подсистема "Контекстная подсказка" v1.51

Опубликовал Сергей Старых (tormozit) в раздел Программирование - Практика программирования

Контекстная подcказка для языка запросов и внутреннего языка в режиме 1С:Предприятие. Ее можно программно подключить к любому полю текстового документа. В настоящее время выпускается только под 8.1 в виде подсистемы.

Используется комбинированный подход: вычисление типа и статистика использования свойств и методов.

В форме подсказки после ввода каждого символа текущего слова происходит позиционирование в списке слов, а также промежуточное дополнение слова исходя из набора слов, чье начало совпадает с введенной строкой. Также имеется горячий фильтр списка слов по подстроке. По умолчанию окно контекстной подсказки открывается только в том случае, если она не смогла сделать промежуточное дополнения текущего слова. Таким образом в общем случае вам придется нажать CTRL+SPACE 1-2 раза для открытия формы подсказки.

Описание платформы и для версии под 8.0 и для версии под 8.1 используется от 8.1
Поддержка версии под 8.0 прекращена.

Чтобы открыть подробную справку по компоненте, нужно вызвать диалог "Настройки компоненты" и нажать F1.

Данную обработку-компоненту можно программно подключить к вашему редактору запросов, алгоритмов или выражений.
Пример подключения вы можете увидеть в демонстрационной форме "ФормаПример", где комментариями поясняется назначение каждого блока.
В режиме внутреннего языка реализован интерфейс для выполнения редактируемой программы в глобальном контексте или локальном контексте любого объекта, у которого должен присутствовать соответствующий экспортный метод. Естественно объект и сам может взять и выполнить программу в своем контексте, когда ему нужно будет. Но для синтаксического контроля и удобства отладки важно, чтобы компонента сама инициировала выполнение программы.

Для использования контекстной справки необходимо интерактивно в настройках компоненты указать путь к распакованным файлам справки.

Для работы подсказки для COM-объектов необходимо зарегистрировать библиотеку (COM-компоненту) TLBINF32.DLL. Ее рекомендуется поместить в каталог исполняемых файлов платформы. Регистрация производится выполнением в командной строке в каталоге библиотеки "regsvr32 TLBINF32".

Для корректной работы формы подсказки требуется установленный пакет MS Office 95-2007 (более поздние версии не содержат нужной компоненты).


Планируется:
- в обоих режимах - подсказка после "="
- в режиме внутреннего языка - вычисление состава универсальных коллекций по тексту
- в режиме языка запросов - персонализированная подсказка в параметрах виртуальных таблиц.

Ярким примером применения компоненты является подсистема "Инструменты разработчика" http://infostart.ru/projects/1274

Скачать файлы

Наименование Файл Версия Размер
v0.92 под 8.1.7+ (поддержка прекращена) 438
.1174841487 411,88Kb
14.11.09
438
.1174841487 411,88Kb Бесплатно
v0.91 под 8.0.18+ (поддержка прекращена) 150
.1175720089 391,93Kb
14.11.09
150
.1175720089 391,93Kb Бесплатно
Подсистема Контекстная подсказка (8.1.8+) v1.51 857
.cf 1,63Mb
14.11.09
857
.cf 1,63Mb Бесплатно

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Сергей Старых (tormozit) 01.05.07 22:31
В версиях 0.90 в форме подсказки была добавлена очень полезная горячая кнопка "." (кириллица). Она позволяет сразу входить в выбранное слово, не закрывая окна подсказки.
2. Герман (German) 26.03.07 15:27
А в 8.0 то будет работать?
3. Сергей Старых (tormozit) 26.03.07 21:51
Следующий релиз постараюсь сделать для двух плафторм, но описание платформы будет в обоих случаях от 8.1.
4. Герман (German) 27.03.07 09:07
Ну вообщем +1, было бы интересней если бы вывалися по CTRL+SPACE список значений а не эта громоздкая таблица.
А так очень даже нечего, глубоко не удалось посмотреть, но реально это необходимо.
5. Сергей Старых (tormozit) 27.03.07 20:24
По поводу громоздкой таблицы - там же можно настроить видимость колонок. По умолчанию все включены в первую очередь для отладки.
6. Сергей Старых (tormozit) 01.04.07 19:12
v 0.70
- улучшен "интеллект"
- реализовано простое вычисление типов в режиме запроса
- улучшена поддержка метаданных
- сделал фильтр для списка слов
- улучшена раскраска различных типов слов
- исправлена куча ошибок
7. Сhe Burashka (CheBurator) 01.04.07 23:35
8. Сергей Старых (tormozit) 02.04.07 00:05
v 0.71
- исправил парочку мелких багов
9. Сергей Старых (tormozit) 03.04.07 10:18
v 0.75
- реализована полная поддержка метаданных в обоих режимах с бесконечным разыменовыванием
- добавлена поддержка составных типов
- теперь в заголовке окна подсказки отображается текущий контекст, а его тип в информационном поле вверху окна

10. Сергей Старых (tormozit) 03.04.07 19:54
11. Сергей Старых (tormozit) 05.04.07 00:58
Теперь доступны две версии: под 8.0 и под 8.1
12. Сергей Старых (tormozit) 05.04.07 09:21
Исправлена ошибка в v0.77 под 8.0
{ВнешняяОбработка.КлсПолеТекстовогоДокументаСКонтекстнойПодсказкой(1482,9)}: Процедура или функция с указанным именем уже определена (ЗначениеНеЗаполнено)
Функция <<?>>ЗначениеНеЗаполнено(Значение) Экспорт
13. Герман (German) 05.04.07 09:53
Вот это было бы класно.
"Для режима внутреннего языка - возможность указания локального контекста"
То есть можно будет програмно указать нужные переменые?
Допустим если я пишу на встроенном языке и знаю что результат выполнения я должен передать в переменную "Результат" и это результат я смогу найти в подсказке?
Или ты хочешь самостоятельно анализировать текущий контекст?

Еще было бы прикольно всетаки отказаться от таблицы значений(иногда отображается в самом неподходящем месте ), правда даже пока незнаю как исхитрится.... :(( Или сделать ее прикремляемой.....
14. Сергей Старых (tormozit) 05.04.07 10:00
>> Возможность указания локального контекста.
Да. Можно будет програмно указать нужные локальные свойства (переменные). Также можно будет указать тип локального контекста (например, ДокументОбъект.РасходнаяНакладная).

>> Еще было бы прикольно всетаки отказаться от таблицы значений.
На начальном этапе я экспериментировал с окном, даже пытался его пизиционировать через обходные пути, но ничего достойного не вышло =(
15. Герман (German) 05.04.07 10:03
>>>> Еще было бы прикольно всетаки отказаться от таблицы значений.
>>На начальном этапе я экспериментировал с окном, даже пытался его пизиционировать через обходные пути, но>> >>ничего достойного не вышло =(
может стоит посмотреть в сторону AutoIT?
16. Сергей Старых (tormozit) 05.04.07 10:10
>> может стоит посмотреть в сторону AutoIT?
Да, думаю, попробую применить это средство. Правильная позиция окна подсказки играет немаловажную роль.
17. Сергей Старых (tormozit) 07.04.07 23:27
v 0.79
- реализована поддержка табличных частей в обоих режимах
- обработка обращения по индексу несколько раз подряд
- исправлены мелкие ошибки
18. Герман (German) 09.04.07 09:17
Когда будет долгожданная
>>програмно указать нужные локальные свойства
19. Сергей Старых (tormozit) 09.04.07 09:38
>> Когда будет долгожданная
Сегодня-завтра. Уже сделал, нужно немного потестировать.
20. Сергей Старых (tormozit) 09.04.07 23:19
v 0.80
- улучшено внутреннее преобразование типов и расширен список поддерживаемых типов
- теперь можно в режиме внутреннего языка указывать свойства локального контекста (можно увидеть в демонстрационной форме)
21. Сергей Старых (tormozit) 09.04.07 23:55
v 0.80
- добавлено получение предопределенных элементов
- в глобальный контекст больше не попадают общие модули с признаком "Глобальный
22. Герман (German) 10.04.07 09:24
Для 8.0 версия .77..... хочется .8
23. Герман (German) 10.04.07 09:59
И в 8.0 ЭлементУправленияTextBox не хочет работать так как он работает в 8.1
24. Герман (German) 10.04.07 10:11
Указываю свойства локального контекста
Необходимо брать данные из структуры Параметр
Добавляю
Параметр.Число - строка
Параметр.Число2- строка
пишу "П"+Ctrl+Spase
вижу в окне
Параметр.Число
Параметр.Число2
вроде все нормально
Пишу
"Параметр."+Ctrl+Spase
получаю пустое окно.
25. Сергей Старых (tormozit) 10.04.07 10:14
German, спасибо за багрепорт. Ошибка устранена.
Обновил .77 для 8.0
26. Сергей Старых (tormozit) 10.04.07 10:24
Свойства локального контекста должны быть идентификаторами, а не адресами.
27. Сергей Старых (tormozit) 10.04.07 10:26
Возможность реализации иерархического задания свойств локального контекста будет рассмотрена после реализации "вычисление элементов универсальных коллекций по имени, поддержка колонок таблиц значений".
28. Герман (German) 10.04.07 10:41
Сергей, а "Параметр.Число" в данном случае является адрес? Что тогда будет идентификатор?

Колонки таблицы значений это тоже дело. Респект. Плюсонул бы еще раз.
29. Герман (German) 10.04.07 10:47
Хотелось бы еще для формы "ФормаПодсказки" грамонтный содержательный хелп а то приходится при внедрении класса самому писать :)) и мне кажется что значение поля (поле)"ТипКонтекста" можно поместить в заголовок, что бы минимизировать форму, по хорошему там вообще должна остаться одна таблица и ЭлементУправленияTextBox
30. Герман (German) 10.04.07 10:56
31. Сергей Старых (tormozit) 10.04.07 11:16
Под идентификатором я понимал - [А-Яа-я_A-Za-z][А-Яа-я_A-Za-z0-9]*.
Под адресом я понимал - ([А-Яа-я_A-Za-z][А-Яа-я_A-Za-z0-9]*\.)*[А-Яа-я_A-Za-z][А-Яа-я_A-Za-z0-9]*.
Прошу помочь мне называть все своими именами.
32. Сергей Старых (tormozit) 10.04.07 11:19
Хелп скоро будет. Поле "ТипКонтекста" сначала не было и тип отображался в заголовке, но затем оно мне лично понадобилось и было решено разместить его менно там. Ведь тип может быть и составной и сам контекст не маленький, поэтому почти ничего видно в заголовке формы подсказки не будет.
33. Сергей Старых (tormozit) 10.04.07 11:27
Герман, форму подсказки замучаешься каждый раз переделывать ;)
Хотелось бы все же, чтобы форму подскази не переделывали, а общими усилиями пришли к оптимальному виду.
34. Сергей Старых (tormozit) 10.04.07 11:39
>> по хорошему там вообще должна остаться одна таблица и ЭлементУправленияTextBox.
Да, наверное командную панель я все таки уберу, а оставлю только контекстное меню.
35. Сергей Старых (tormozit) 10.04.07 23:21
0.81 под 8.1
- теперь сообщения об ошибках и компиляции и выполнения содержат адекватную информацию и ошибочная строка выделяется в тексте
- упростил форму подсказки, убрал большинство команд в контекстное меню таблицы.
- положил начало справке
36. Герман (German) 11.04.07 09:29
Сергей ты совсем забросил версию под 8.0?
37. Сергей Старых (tormozit) 11.04.07 09:54
Герман, сейчас просто запуск моего проекта на работе идет. Поэтому очень мало свободного времени.
Постараюсь в выходные обновить версию под 8.0
38. Сергей Старых (tormozit) 11.04.07 23:08
В версии под 8.0 были исправлены 2 важных ошибки, которые сильно снижали удобство использования подсказки.
39. Сергей Старых (tormozit) 11.04.07 23:14
0.81 под 8.0
Каждый релиз для 8.0 требует все больше и больше времени на переделку из 8.1.
В версии под 8.0 в силу ограничений платформы не будет отображаться ошибочная строка при неудачной компиляции.
40. Герман (German) 12.04.07 09:54
Поэтому нужно было писать на 8.0 сразу, так чтобы можно было конвертировать в 8.1 ;)))
41. Сергей Старых (tormozit) 15.04.07 14:05
0.82 для 8.1
- реализован переход к ближайшему определению слова в тексте
- улучшена работа с комментариями
- реализована контекстная справка, но сами файлы справки пока не включены в поставку
- исправлены мелкие ошибки
- добавлена справка пользователя по компоненте
42. Сергей Старых (tormozit) 15.04.07 20:34
v 0.83 для 8.1
- в режиме внуреннего языка реализован интерфейс для выполнения редактируемой программы в локальном контексте любого объекта (у объекта должен присутствовать соответствующий экспортный метод); в форме-примере объявлены 2 локальные переменные "лСписок" и "лПостроительОтчета", которые объявлены в подсказке
- теперь после слова Новый отображаются только те типы, у которых существует конструктор (как и должно быть)
43. Сергей Старых (tormozit) 16.04.07 00:58
Обнаружилось, что под видом версии 0.81 под 8.0 лежала 0.77 под 8.0. Накладочка вышла. Исправил. Теперь там лежит правильная версия 0.81 под 8.0
На днях планирую выпустить 0.83 под 8.0
44. Олег (Sol) 16.04.07 01:31
Таблицу со "свойством локального контекста" лучше прятать (делать Свертку), как это часто делают в Отчетах, в типовых.
45. Сергей Старых (tormozit) 16.04.07 06:38
Sol, не мог ты пояснить, что имеется ввиду?
46. Сергей Старых (tormozit) 16.04.07 07:31
Догадался. Речь о свертке элемента управления табличное поле в версии 0.81 для 8.0. Да, так будет удобнее, но так как совсем скоро выйдет новый релиз для 8.0, где табличного поля не будет, то реализовавыть такую возможность не разумно.
47. Сергей Старых (tormozit) 16.04.07 09:53
В обоих версиях исправлена ошибка
{ВнешняяОбработка.КлсПолеТекстовогоДокументаСКонтекстнойПодсказкой(1745,9)}: Процедура или функция с указанным именем уже определена (СкопироватьУниверсальнуюКоллекцию)
Функция <<?>>СкопироватьУниверсальнуюКоллекцию(КоллекцияИсходная) Экспорт
48. Олег (Sol) 16.04.07 13:06
Т.е. остался только программный интерфейс доступа до Локального контекста, от интерактивного ты отказался?
Можно узнать почему?
49. Олег (Sol) 16.04.07 13:10
Кстати у лСписок, методы после точки не появляются
50. Сергей Старых (tormozit) 16.04.07 13:30
>> Кстати у лСписок, методы после точки не появляются
Спасибо. Это ошибка. Вечером будет исправлено.
51. Сергей Старых (tormozit) 16.04.07 22:41
Исправлена ошибка с неправильным вычислением типа СписокЗначений.
52. Сергей Старых (tormozit) 19.04.07 23:58
0.84 под 8.1
- исправлены мелкие ошибки
- у функций теперь свой значок аналогично подсказке конфигуратора
- улучшена подсказка в режиме выбора типа (но пока не доделана)
53. Сhe Burashka (CheBurator) 20.04.07 04:16
чувствую - офигенная вещь...
54. Сергей Старых (tormozit) 20.04.07 06:48
Чебурашка, ты я смотрю очень чувствительный =)
55. Сергей Старых (tormozit) 20.04.07 07:49
Выложил файлы справки от платформы 8.1
56. yura ivanov 21.04.07 05:27
Очень полезная штука. +1.
Смотрю для 8.1.
А можно ли оптимизировать, чтобы макет "ОписаниеПлатформы" загружался при первом обращении к контекстной подсказке. На данный момент 2 секунды открывается окошко (по замеру производительности 75% чтение макета и еще 10% на индексы таблиц).
Просто не факт, что контекстной подсказкой будут пользоваться при открытии окна, а инициализировать надо, ибо кнопки на панель добавить надо. Но из-за кнопок на панели ждать 2 секунды... анноит.
Попробовал создать проц ОтложеннаяИнициализация туда перенести чтение макета, создание индексов для таблиц, сразу лучше стало. Проблема только с локальным контекстом - происходит чтение таблиц для заполнения массивов типов... По-моему, это дело поправить было бы несложно, сам не хотел менять уж сильно имеющийся код....
И еще пожелание. Сделать кнопку проверки алгоритма на внутр. языке без необходимости его выполнять (иногда алгоритмы бывают не безобидными). Сделать обрамление с помощью Если Ложь Тогда <ТекстАлгоритмы> КонецЕсли; и для использования локальных переменных инициализировать их в Неопределено перед этим Если. Про ВыполнитьЛокально пока не смотрел, но не всегда контекст формы редактирования алгоритма совпадает с контектом самого алгоритма, т.е. вызываться может не из формы, а например из общего модуля...
57. Сергей Старых (tormozit) 21.04.07 12:14
Спасибо за ценные замечания и предложения.

Выпустил версию 0.85 под 8.1.7
- добавлен синтаксический контроль в режиме внутреннего языка
- оптимизирована инициализация описания платформы, теперь не будет тормоза при открытии формы с полем текстового документа
- реализована возможность указания глобального контекста для выполнения программного кода
- исправлена ошибка при обращении к контексту элемента формы (их поддержка пока даже не планируется)
- исправлена ошибка при определении адреса перехода по гиперссылке в файлах справки
- в настройках компоненты добавлена опция отказа от открытия формы подсказки в случае пустого списка

ВНИМАНИЕ! Данная версия совместима только с версиями платформы 8.1.7 и выше
58. robert (Robert) 21.04.07 20:38
А что значит "Выпустить компоненту в виде подсистемы (CF)"? Можно поподробней? Что за подсистемы такие?
59. Сергей Старых (tormozit) 22.04.07 03:12
0.86 для 8.1.7
- исправлена неработающая опция условия открытия формы подсказки в настройках компоненты
- исправлена работа с перечислениями, которую испортил в предыдущем релизе
- реализовано вычисление системных перечислений
- доделана работа с константами
60. Олег (Sol) 24.04.07 05:43
> На днях планирую выпустить 0.83 под 8.0

Будет? Или для 8.0 решил прекратить поддержку?
61. Сергей Старых (tormozit) 24.04.07 07:20
> Будет? Или для 8.0 решил прекратить поддержку?
Скорее всего будет, но последняя. Возможно в конце недели.
62. Сергей Старых (tormozit) 29.04.07 23:17
Вышла 0.87 под 8.1
- доведен до ума браузер по справке (реализовано динамическое подключение стилей)
- устранена ошибка в синтаксическом анализаторе, приводящая к зацикливанию
- немного улучшен синтаксический анализатор
- сделана подсказка по типам (контексты внутреннего языка "Тип("", "Новый"и языка запросов "ССЫЛКА")
63. Сергей Старых (tormozit) 29.04.07 23:18
Для версии 0.87 необходимо скачать новые файлы справки. Со старыми она работать не будет.
64. Сергей Старых (tormozit) 30.04.07 01:42
Да, еще поля виртуальных таблиц стали более корректно вычисляться.
65. Герман (German) 30.04.07 11:24
Сергей где обещеная 0.83 под 8.0? Неможем новую версию выпустить EI
ждем тебя.....
66. Сергей Старых (tormozit) 30.04.07 11:48
>> Сергей где обещеная 0.83 под 8.0? Неможем новую версию выпустить EI
ждем тебя.....
Ладно. Сейчас попытаюсь...
67. Сергей Старых (tormozit) 30.04.07 13:44
Наконец то! Выпустил 0.88 под 8.0.

0.88 включает исправление мелких ошибок
68. Сергей Старых (tormozit) 30.04.07 16:51
0.89 под 8.1
- добавлена посдказка для первого параметра конструктора ОписаниеТипов - <Новый ОписаниеТипов(">
- в таблицу типов добавлены все примитивные типы
69. Олег (Sol) 01.05.07 09:27
Спасибо.
Исправь под 8.0 ошибку. Ты там забыл убрать проверку Общего модуля на свойство "Глобальный" ;)

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

Для начала мог бы приложить Консоли запросов и Отчетов (только последнюю бери из последних российских УПП). Можешь также выложить обработку "Универсальный подбор и обработка объектов", которую я выкладывал в партнерском форуме (второй вариант). Короче, чем больше приложений - тем лучше.

Так как обработка очень полезна новичкам, но они-то как раз сами, вряд ли пока смогут ее куда-нибудь подсоединить ;)
70. Сергей Старых (tormozit) 01.05.07 09:48
Спасибо за багрепорт.
Устранил проверку общих модулей на глобальность в версии 0.89 под 8.0. Нужно перекачать заново.
71. Сергей Старых (tormozit) 01.05.07 10:21
Sol,
по поводу конечных продуктов я уже думал. Когда реализую "Выпустить компоненту в виде подсистемы (CF)", тогда уже можно будет включить туда пару "вкусных" приложений.
72. Сергей Старых (tormozit) 01.05.07 18:29
Вышли версии 0.90
- исправлены 2 ошибки в синтаксическом анализаторе (статистика)
73. Сергей Старых (tormozit) 02.05.07 23:28
Исправлена ошибка в релизах 0.90 с вычислением системных перечислений (внес ее в одном из предпоследних релизов).
74. yura ivanov 03.05.07 03:54
В процедуре ПроверитьПрограммныйКод() не хватает:
Код
      Для каждого ЛокальноеСлово из ТаблицаЛокальногоКонтекста Цикл
         Если ЛокальноеСлово.ТипСлова = "Свойство" Тогда
            ТекстДляВыполнения = ЛокальноеСлово.Слово+" = Неопределено;
               |"+ТекстДляВыполнения;
         КонецЕсли;
      КонецЦикла;
Показать полностью

Переменные локального контекста надо бы инициализить.

Еще не хватает процедуры УдалитьСловоЛокальногоКонтекста(Слово). Контекст может меняться в зависимости от каких-либо параметров....
75. Сергей Старых (tormozit) 03.05.07 07:12
> Переменные локального контекста надо бы инициализить.
Тут позволю себе не согласиться. Допустим у меня есть таблица значений определенной структуры, которая передается в программный код для обработки. Если я ее буду превращать в Неопределено, то о какой обработке той таблицы может идти речь? Думаю, правильнее всего будет инициализировать конкретные локальные переменные в самом программном коде явно.

Процедура УдалитьСловоЛокальногоКонтекста(Слово, ТипСлова) будет добавлена в следующем релизе.
76. yura ivanov 03.05.07 14:08
Пусть есть Конвертация данных от 1С. И вот мы пишем в обработчике перед выгрузкой.
Код
КлючВыгружаемыхДанных = ЗначениеВСтрокуВнутр(Источник.Дата) + ЗначениеВСтрокуВнутр(Источник.ТипЦен);
Показать полностью

Что такое Источник? В алгоритме его не инициализят. Или
Код
Запросы.КорректировкаДолга.УстановитьПараметр("ДатаНачала",     ДатаНачала);
Показать полностью

Не всегда алгоритм может быть целиком текстом какой-либо процедуры. А даже если и так, в любом случае у процедуры и функции есть параметры, которые явно никто инициализировать не будет, они формируют контекст, к которому применяется алгоритм.
При проверке алгоритма такое допущение (=Неопределено) необходимо...
77. Сергей Старых (tormozit) 04.05.07 00:13
Согласен. В следующей версии сделаю.
78. Герман (German) 04.05.07 11:07
Пожелания мелкие....
1. Убрать кнопку конструктора запросов из макетов, она хуже работает чем стандартная
2. Кнопку Справка Ctrl+F1 Переименовать в "Поиск в синтаксисе помошнике"; И картинку поставить как в конфигураторе, а то чтото в начале запутался.
3. Если путь к файлам справки не указан тогда кнопку поиск в синтаксисе помошнике делать недоступной.
Хорошо бы... Фантазии...
1. Синтаксис помошник открывался как в конфигураторе с деревом, ну а если будет индекс тогда вообще фантастика!!!.....
2. Применить шаблоны которые входят в стандартный конфигуратор.....
3. Файлы синтаксиса помошника выложить где нибуть в группах например Googlу на http://groups.google.ru/grphp?hl=ru&tab=wg&q=
для общего доступа и изменения, дополнения примерами и прочее...., тогда фалы справки придется держать у себя если только нет интернета, а так прямо из сети.
79. Сергей Старых (tormozit) 04.05.07 12:51
> 1. Убрать кнопку конструктора запросов из макетов, она хуже работает чем стандартная
Поясни пожалуйста.
80. Олег (Sol) 04.05.07 13:55
В запросах не работает компонента практически не работает с бух.регистрами
Например после "ВЫБРАТЬ * ИЗ РегистрБухгалтерии.Хозрасчетный." нажать Crtl+Space, то выходит ошибка "Поле объекта не обнаружено (ВидРегистра)".

Если самостоятельно порешить эту проблему, то далее выходит другая - "Значение не является значением объектного типа (ИмяКоллекции)". Спотыкается на <Измерения>, т.к. в Макете "ОписаниеТиповИКоллекций" есть только <Имя измерения>, но нет просто <Измерения>.

P.S. При этом <Имя измерения>, содержится в Макете дважды ;)
81. Сергей Старых (tormozit) 04.05.07 14:30
На бух.регистрах в запросах пока не отлаживалась. Также, наверное, не работает и с регистрами расчета.
Регистрами бухгалтерии займусь в ближайшие дни.
82. Герман (German) 04.05.07 15:07
>> 1. Убрать кнопку конструктора запросов из макетов, она хуже работает чем стандартная
>Поясни пожалуйста.
если выделяю только вложенный запрос строит для всего запроса конструктор.
83. Герман (German) 04.05.07 15:17
Описание добавления локальных свойств вообще нет.
Какие возможности?
Планы?
Есть только два примера почти одинаковых....:(

Чем отличаются "ТипСлова" -свойство и т.д.
как мне допустим указать в локальном контексте текущую строку табличного поля?
Или просто строку таблицы?
84. Сергей Старых (tormozit) 04.05.07 15:21
Герман
Я понял. В самом деле выделение не учитывается в моей команде, но зато выделяется ошибочная строка. Поэтому постараюсь реализовать в своей команде учет выделения текста при вызове конструктора.
85. Герман (German) 04.05.07 15:28
+ По кнопке конструктора дополнения:
Да если доделать твоя будет лучше без сомнения

Нужно еще проверять в какое меню она выводится(кнопка), если в контекстное тогда, надо снимать галку авто контекстное меню. а то получается 2 кнопки конструктора.... :))
86. Сергей Старых (tormozit) 05.05.07 00:05
> Нужно еще проверять в какое меню она выводится(кнопка), если в контекстное тогда, надо снимать галку авто контекстное меню.

На мой взгляд, это лучше делать вне компоненты. Опиши ситуацию, в которой по-твоему это целесообразней производить из компоненты?
87. yura ivanov 05.05.07 03:09
Мелкие исправления для справки.
Создавать сначала стиль, потом грузить body. Иначе скачет страничка когда рендерится.
Получая форму справки, делать владельцем ЭтаФорма, иначе справка остается висеть после закрытия диалога редактирования текста.
88. Сергей Старых (tormozit) 05.05.07 10:25
> Чем отличаются "ТипСлова" -свойство и т.д.
"Метод" - к слову добавляется одна (или две) скобки
"Свойство" - к слову ничего не добавляется
89. Сергей Старых (tormozit) 05.05.07 10:29
>как мне допустим указать в локальном контексте текущую строку табличного поля?
Или просто строку таблицы?

В данный момент нет нормального способа. Расширения элементов формы пока не поддерживаются и описание колонок для таблиц значений тоже.
90. Сергей Старых (tormozit) 05.05.07 10:36
> Создавать сначала стиль, потом грузить body.
Я бы с радостью. Дашь пример кода?
91. yura ivanov 05.05.07 17:14
Ну просто местами поменять. Сначала
Код
ЭлементыФормы.ПолеHTMLДокумента.Документ.createStyleSheet(ПутьКСтилю);
Показать полностью

потом
Код
ЭлементыФормы.ПолеHTMLДокумента.Документ.body.innerHTML = СодержаниеСтраницы;
Показать полностью

92. Сергей Старых (tormozit) 05.05.07 17:20
> Ну просто местами поменять.
Так страничка уже отображена. Таким способом лишь можно сократить время ее сырого отображения. Это я уже сделал, но совсем избавиться от кратковременного показа в сыром виде не хватает времени на изучение сабжа.
93. Сергей Старых (tormozit) 05.05.07 18:24
Вышли 0.91
- теперь вызов конструктора запроса при наличии выделенного текста берет только его, а не весь текст (как и стандартная команда платформы)
- уменьшено время отображения сырой страницы справочной системы
- добавлен метод УдалитьСловоЛокальногоКонтекста
- в режиме языка запросов ввведены новые типы слова "Поле" и "Таблица" со своими пиктограммами
- исправлено вычисление полей ряда виртуальных таблиц (главным образом, регистров бухгалтерии)
- в версии для 8.1 оптимизирована структура индексов
- исправлены мелкие ошибки с поиском нужной страницы синтаксис-помощника
- добавлен реквизит компоненты ФормаВладелец и теперь все дочерние формы закрываются вместе с главной
- исправлены ошибки в таблицах описания платформы
- добавлены типы для системных констант Null, Неопределено, Истина, Ложь
94. yura ivanov 05.05.07 23:05
Все краше и краше :)
Что-то надо делать с параметрами методов локального контекста...
Ладно, передать массив массивов типов в процедуру добавления слов несложно, но вот каким образом показать эти параметры при редактировании?...
Может по нажатию для методов локального контекста по Ctrl+F1 отображать popup меню с параметрами (НаименованиеПараметра - ТипПараметра)? Развивая мысль для свойств локального контекста, по Ctrl+F1 тоже показывать тип в этом контекстном меню. Честно говоря, не знаю будет ли это работать достаточно быстро...
Либо второй вариант дать возможность передавать код html-страницы с хелпом по методу/свойству. Это будет смотреться универсально, хотя писать в формате help'а от 1С сложновато, да и ссылок не получится по типам...
95. Герман (German) 07.05.07 09:23
>На мой взгляд, это лучше делать вне компоненты. Опиши ситуацию, в которой по-твоему это целесообразней производить из >компоненты?
Да очень просто
КонтекстнаяПодсказка1.Инициализировать(ПолеТекстовогоДокументаСКонтекстнойПодсказкой,ЭтаФорма, ЭлементыФормы.ТекстЗапроса, ЭлементыФормы.КонтМеню.Кнопки.Предприятие,Истина);
где
ЭлементыФормы.КонтМеню.Кнопки.Предприятие контекстное меню ЭлементыФормы.ТекстЗапроса с признаком авто.


Да на самом деле это не существенно, но если бы сделал было бы ничего

96. Олег (Sol) 15.05.07 00:09
Если вызвать синтаксис-помошник (Ctrl+F1) для значений Истина или Ложь - ничего не происходит, Справка не открывается. Если данные значения встретить в СП (еще сам тип Булево) и щелкнуть по ним, то пишет "Указаная страница справочной информации отсутствует."
97. Сергей Старых (tormozit) 15.05.07 11:33
> Если вызвать синтаксис-помошник (Ctrl+F1) для значений Истина или Ложь - ничего не происходит,
К сожалению, я пока не нашел способа это исправить.
98. Герман (German) 15.05.07 11:59
99. Сергей Старых (tormozit) 15.05.07 12:21
> Развитие то идет?
Нет. Сейчас по работе очень загружен, даже в выходные приходится работать.
Следующая версия будет не раньше, чем через месяц.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа