Подсистема "Контекстная подсказка" 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+ (поддержка прекращена)
.1174841487 411,88Kb
14.11.09
438
.1174841487 411,88Kb 438 Бесплатно
v0.91 под 8.0.18+ (поддержка прекращена)
.1175720089 391,93Kb
14.11.09
150
.1175720089 391,93Kb 150 Бесплатно
Подсистема Контекстная подсказка (8.1.8+) v1.51
.cf 1,63Mb
14.11.09
869
.cf 1,63Mb 869 Бесплатно

См. также

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Не всегда алгоритм может быть целиком текстом какой-либо процедуры. А даже если и так, в любом случае у процедуры и функции есть параметры, которые явно никто инициализировать не будет, они формируют контекст, к которому применяется алгоритм.
При проверке алгоритма такое допущение (=Неопределено) необходимо...
77. Сергей Старых (tormozit) 4105 04.05.07 00:13 Сейчас в теме
Согласен. В следующей версии сделаю.
78. Герман (German) 921 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) 4105 04.05.07 12:51 Сейчас в теме
> 1. Убрать кнопку конструктора запросов из макетов, она хуже работает чем стандартная
Поясни пожалуйста.
80. Олег (Sol) 54 04.05.07 13:55 Сейчас в теме
В запросах не работает компонента практически не работает с бух.регистрами
Например после "ВЫБРАТЬ * ИЗ РегистрБухгалтерии.Хозрасчетный." нажать Crtl+Space, то выходит ошибка "Поле объекта не обнаружено (ВидРегистра)".

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

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

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

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

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

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

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

92. Сергей Старых (tormozit) 4105 05.05.07 17:20 Сейчас в теме
> Ну просто местами поменять.
Так страничка уже отображена. Таким способом лишь можно сократить время ее сырого отображения. Это я уже сделал, но совсем избавиться от кратковременного показа в сыром виде не хватает времени на изучение сабжа.
93. Сергей Старых (tormozit) 4105 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) 921 07.05.07 09:23 Сейчас в теме
>На мой взгляд, это лучше делать вне компоненты. Опиши ситуацию, в которой по-твоему это целесообразней производить из >компоненты?
Да очень просто
КонтекстнаяПодсказка1.Инициализировать(ПолеТекстовогоДокументаСКонтекстнойПодсказкой,ЭтаФорма, ЭлементыФормы.ТекстЗапроса, ЭлементыФормы.КонтМеню.Кнопки.Предприятие,Истина);
где
ЭлементыФормы.КонтМеню.Кнопки.Предприятие контекстное меню ЭлементыФормы.ТекстЗапроса с признаком авто.


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

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