artbear 24.09.2004 - 09:48 |
Итак, начнем 6 ветку о телепате! Теперь уже точно свыше 1300 постов :) Для тех, кто только что присоединился. . Сабж http://openconf.itland.ru/beta FAQ http://1c.alterplast.ru/faq/telepat.html Скрипты для Опенконфа можно взять здесь http://itland.ru/forum/index.php?showtopic=4456
|
Maniac 1 - 24.09.2004 - 09:48 |
предлагаю познакомится http://nnm.ru/web/img/22_01_04_01.jpg |
Eugene G 2 - 24.09.2004 - 09:51 |
Немного не про телепат: есть плагин (кажется от Орефкова), который показывает классы (1с++), их методы и свойтсва в конфигураторе отдельной закладкой, так вот если класс описывается обработкой Предприятия (defcls), а не файлом defcls.prm, то классы не показывается...:(...будет пофиксено? |
orefkov 3 - 24.09.2004 - 10:14 |
(2) Да, после Телепата буду дорабатывать Visual 1C++ (OFF в прошлой ветке) Как физическое лицо (те без офрмления бумажек) можно будет оплатить WebMoney, Яндекс-деньги, и тд и тп. Можно будет через Сбербанк. Для юрлиц (с оформлением всех необходимых документов) будет продажа через softkey.ru (но дороже) |
Eugene G 4 - 24.09.2004 - 10:19 |
Ок, ждем и того и другого :) |
Данила хМастер 5 - 24.09.2004 - 10:22 |
(Orefkov) Спасибо дружище! Теперь можно запускать кучу конфигураторов!!! :))) Я пробовал: 3 комплексных + 1 Расходные накл. И все ОК :+) |
slavka 6 - 24.09.2004 - 10:33 |
присоединяюсь к (5) теперь держит 5 конфигураторов нормально. Сенкс!!! |
Лёлик 7 - 24.09.2004 - 10:39 |
2(orefkov) Саша, спасибо, супер - утром пробовал - 4 конфигуратора и 2 предприятия крутятся, полёт нормальный, 3-е предприятие вылетает, но я думаю это из-за того, что конфы ТЯЖЕЛЕННЫЕ |
Болван 8 - 24.09.2004 - 11:07 |
Так дайте прямую ссылку на последний телепат а то http://openconf.itland.ru/beta навалено всего че качать , хоть дату ставили бы! |
slavka 9 - 24.09.2004 - 11:08 |
2(artbear) не могли бы Вы поделиться инфой по скриптам? |
Незнайка на Луне 10 - 24.09.2004 - 11:13 |
Может, уже пробегало, но где задаются автозамены типа "х++" на "х=х+1"? |
alkl 11 - 24.09.2004 - 11:28 |
x +=, x+= RTFM & History.... |
artbear 12 - 24.09.2004 - 11:30 |
(8) А номера версий посмотреть не можешь, и выбрать последние (те, что сверху). (9) Напиши, что КОНКРЕТНО интересует? я не понимаю что означает "инфа по скриптам" :( (10) Вшиты в код. Еще попробуй +=, -- и т.д |
Незнайка на Луне 13 - 24.09.2004 - 11:52 |
Во блин, думал, что OpenConf " Ю " меняет " > ", а "ж+enter" на ";", а это Ninja :)) |
Незнайка на Луне 14 - 24.09.2004 - 12:20 |
В качестве апа. А как насчет того, чтоб менять все зарезервированные слова и стандартные методы в нижнем регистре на правильный регистр, например "использоватьвладельца" на "ИспользоватьВладельца"? |
АЛьФ 15 - 24.09.2004 - 12:26 |
2(14) После "использоватьвладельца" нажми Ctrl+Пробел, а затем Enter. |
fez 16 - 24.09.2004 - 12:53 |
По адресу http://1c.alterplast.ru/faq/telepat.html в список сохраненных веток по телепату добавлена предыдущая. |
Fobos 17 - 24.09.2004 - 12:58 |
2 Данила хМастер, Лёлик и пр. кто стянул пофиксенный телепат на запуск нескольких конфигураторов: Это какая версия? Где лежит? На сайте обновлений не появлялось, все теже версии 2.0.0.0 н - телепата и 1.0.1.3 - опенконфа! размеры архивов и файлов в архивах одиннаковые со скаченными ранее. |
hlud 18 - 24.09.2004 - 13:00 |
2(orefkov) Немного не по теме. Ты не сталкивался с проблемой, что priorities.dll приводит к нестабильной работе 1с-ки? Терминал под вин 2003. |
slavka 19 - 24.09.2004 - 13:34 |
2(12) меня интересует VBScript. у меня есть дока по VBScript и JScript, скачанная с microsoft'a, но там нет описания SelStartLine, SelStartCol например. (чувствую что еще много там не описано). |
Данила хМастер 20 - 24.09.2004 - 13:35 |
(17) Тебе не Телепат, а Опенконф обновить надо. :-) |
Fobos 21 - 24.09.2004 - 13:40 |
(20) Детали содержания скачанного архива OpenConf 1.0.1.3 (beta) config.dll - 295424 б от 21.09.2004 config.tlb - 45044 б от 11.05.2004 Адын, в адын аднако с тем что уже стоит Брал с: http://openconf.itland.ru/beta/ocb1013.zip |
artbear 22 - 24.09.2004 - 13:41 |
(19) Подробно рассказать сложно, могу сказать только: почитай доку на ОпенКонф (не путать с Телепатом), лежит где-то на опенконф.итланд.ру |
Незнайка на Луне 23 - 24.09.2004 - 13:43 |
15. Не шуршит 21. Тормозим? http://openconf.itland.ru/beta/ocb1014.zip |
Данила хМастер 24 - 24.09.2004 - 13:44 |
(21) Одын конечно в одын, но работает 4 конфа, вместо одного! ;-) |
artbear 25 - 24.09.2004 - 13:46 |
(21) Скачай оттуда же Опенконф версии 1.0.1.4 !! |
Fobos 26 - 24.09.2004 - 13:50 |
(23) Гы. А ведь не было с утра или прокси в кеш полез за страничкой :-) |
Незнайка на Луне 27 - 24.09.2004 - 13:53 |
26. А, Опера... Карошая весчь! |
trad 28 - 24.09.2004 - 13:57 |
Обновил плагин EFExplorer. http://www.ptlan.com/~trad/EFExplorer1106.zip 1.1.0.6 -исправлена ошибка версии 1.1.0.5 возникавшая при отсутствии файла effolders.txt |
slavka 29 - 24.09.2004 - 13:59 |
(25) нашел!!! заходишь в ексельный VB, меню Tools->References- "Набор интерфейсов для автоматизации Конфигуратора 1С 7.7. затем F2 и все. КРУТО!!! КЛАССНО!!! Спасибо orefkov'у!!!!! |
Fobos 30 - 24.09.2004 - 14:05 |
Во млин... ситуации: а) открыто 2 конфигуратора (размер МД-шников по 19, 21 метр соответственно) и 2 предприятия. При открытие дерева метаданных запущенного 3-его (такого ж тяжелого)- стабильно виснет б) открыто 2 конфигуратора (размер МД-шников по 19, 21 метр соответственно), 2 предприятия, 1 отладчик. Открытие еще одного экземпляра предприятия - после логина под пользователем вылетает по английски (без всякого рода сообщений. |
orefkov 31 - 24.09.2004 - 14:33 |
(30) 1.0.1.4 скачал? |
Fobos 32 - 24.09.2004 - 14:55 |
Да, Саш, скачал. |
fez 33 - 24.09.2004 - 15:34 |
(32) А установил? :)) |
Fobos 34 - 24.09.2004 - 15:39 |
(33) Да :-) |
Bot 35 - 24.09.2004 - 17:04 |
Не знаю, есть ли уже решение этого... . Надо копировать реквизиты из свойств документа/справочника/и т.д. в другой. Если из формы в другую форму, то всё в порядке - проблем нет. А вот чтоб из свойств в другие свойства - это трабл. Вручную - от безысходности. . Мож у кого уже есть такой скриптик? Буду очень признателен. Если реализации этого нету, можно воспринимать как идею. |
DES 36 - 24.09.2004 - 18:07 |
А может как то можно сделать нормальное перемещение строк в дереве конфигуратора, а то эти дурачкие кнопки 'вверх/вниз' достали уже. |
a13x 37 - 24.09.2004 - 18:16 |
2(orefkov) буквально пару минут назад встретилась ситуация, когда в цикле нужно было добавлять символы в начало строки... интуитивно написал ++стр, но ожидаемого раскрытия шаблона не случилось =( (а ожидал я стр = _ + стр;, где _ - позиция курсора после раскрытия)... может, имеет смысл сделать? |
SandWorm 38 - 24.09.2004 - 18:39 |
Я тут подумал(точнее с АДО долбусь :-)), в той версии которой будет "точка". Делать описание языка отдельным файлом (с возможностью дополнения), например для того, что бы можно было бы работь с АДО объектам, Екселем и т.д. |
Лёлик 39 - 24.09.2004 - 19:03 |
2(trad) По поводу EFExplorer - если сохранять конфигурацию, находясь на закладке EFExplorer, то конфигуратор тихо уходит, версии 1.1.0.6 и 1.1.0.5, 1с 23 sql, патченая 2(Fobos) config.dll версия 1.0.1.4, скачана часов в 10 с http://openconf.itland.ru/beta, вроде полёт нормальный |
Phoenix 40 - 24.09.2004 - 20:15 |
to orefkov, как можно открыть окно объекта? например окно документа, а не только окно формы документа, т.е. осуществить аналог двойного клика на документе в дереве метаданных. |
Начинающий линуксоид 41 - 24.09.2004 - 23:03 |
ап |
trdm 42 - 24.09.2004 - 23:37 |
(38) мысля гуд. но только мысля. |
trdm 43 - 26.09.2004 - 00:08 |
Что-то непонятка у меня, при загрузке плагина скомпилированного как debug конфигуратор стабильно вылетает. Час пыхтел как мамонт, выяснял в чем проблема. Скомпилировал Release и ругаться перестало. Потом посмотрел на пример плагина и понял, что отличие в том, что у него только одна версия 'Release' :| Думаю, что такой прикол надо включить в FAQ. |
KRIHA 44 - 26.09.2004 - 00:37 |
Есть предложение. Когда выпадает список с вариантами, то по нему можно перемещаться только вниз до "дна", а потом вверх до "горлышка" - с "горлышка" на дно одним нажатием стрелочки вверх (как это обычно в связанном списке) не получиться. А иногда это удобно, так как видишь например, что нужный вариан последний, но щелкать долго :-) |
Mkonst 45 - 26.09.2004 - 16:00 |
а еще было бы прикольно, сделать так: к примеру нажал на //_ и вместо двух палочек с подчеркиванием появлилось нечто //___________________________ // // //___________________________ Удобно перед процедурой или функцией маленький заголовок делать И еще было бы совсем не плохо в конце каждой процедуры или функции , печатать следующее: //<имя процедуры> сорри если не в тему попал. |
fez 46 - 26.09.2004 - 17:37 |
(45) ИМХО для таких простых задач есть штатные шаблоны. |
Vaicartana 47 - 26.09.2004 - 19:05 |
после выхода из конфигуратора вываливается мессага от винды, щё мов некоректно закрыто, ошибка в приложении итп. Эт я один такой несчастный или такое уже было? |
KRIHA 48 - 26.09.2004 - 21:22 |
+ к (44) это полезно думаю так же и в случае со списком Методов модуля. Может быть много процедур с одинаковым началом названия... |
ShootNICK 49 - 26.09.2004 - 21:26 |
47 - Если у тебя HistoryPlugin стоит - то из за него такая ботва. По крайней мере у меня такое бУло :) |
artbear 50 - 27.09.2004 - 06:37 |
(49,47) Плагин мой и иногда "такая ботва" встречается. В чем дело, пока не разобрался :( PS Не судите строго: первый мой плагин, делался в основном для пробы и написан на VB |
trdm 51 - 27.09.2004 - 13:46 |
Не могу разобраться как из плагина обращаться с объектной модели конфигуратора на VC++. Киньте в меня примером плагина плз. |
artbear 52 - 27.09.2004 - 14:18 |
А на Делфях все довольно просто :) Кстати, в связи с вопросами, как сделать плагин на Делфи для Опенконф, отправил Александру простейший плагин на Делфи, которым можно управлять из скриптов (один метод и одно событие) и попросил положить его на сайт для обучения. |
orefkov 53 - 27.09.2004 - 16:19 |
(51) "Объектная модель OpenConf'а" задумывалось для разработки плагинов не на С++. Предполагается, что на С++ будут писаться плагины, напрямую работающие с 1С (по технологии Rainbow). Так что для С++ скоро будет один большой пример в виде исходников ОпенКонфа. Как только работу с формами доделаю. (52) Артур, ты что, не получил мое письмо? |
artbear 54 - 27.09.2004 - 17:20 |
(52) Как ты уже заметил, письмо получил. Сегодня/завтра закину к тебе на сайт и пример плагина, и набор используемых скриптов. |
gero 55 - 27.09.2004 - 17:26 |
2 ALL пардон если я пропустил... а как сделать чтобы telepat, те настройки что в шаблонах описаны исключал из автоподстановки? И ещё можно как-нибудь "возврат" и "продолжить" настроить писать с маленькой буквы, кроме как diskeditorom? |
sdf 56 - 27.09.2004 - 17:40 |
меню: OpenConf - о программе - аварийное завершение чем огоньки играются? у меня поди этого нету. ver. 1.0.1.4 |
trdm 57 - 28.09.2004 - 02:36 |
В принципе в доке по опенконфу все написано, просто у меня был наверное плагин не того типа и что-то не дочитал. Я думал сделаю таким образом: экспортирую классы из tlb, создам переменные этих типов и заработает. Ан нет классы экспортнул, переменные создал. А функции молчат. Облизывался на идею сделать типа как в V8 деревце по категориям, в этих 2-х сотнях констант уже блин задолбался копаться. |
trdm 58 - 28.09.2004 - 03:01 |
Ладушки, завтра OLE/COM Object Viewer поюзаю, доку почитаю, может и достучусь куда. |
artbear 59 - 28.09.2004 - 08:45 |
(ALL) Народ, если у кого есть полезные скрипты и плагины, можете присылать мне. Я их выставлю для всеобщего обозрения на сайте у Александра Орефкова (опенконф.итланд.ру) и дам ссылки в ветках о телепате/опенконфе здесь и на итланде. ЗЫ Александр восстановил мне возможность управлять его сайтом. |
artbear 60 - 28.09.2004 - 08:47 |
(59+) Моя почта в посте 0. Есть аська 265666057 |
a13x 61 - 28.09.2004 - 13:37 |
Вопрос по ОпенКонфу. Каким образом можно отловить событие ПриСохраненииФала/ПослеСохраненияФайла (не конфигурации - любого другого - внешней обработки, таблицы etc)? про Configurator::MetaDataSaved знаю :-), но я не про MD ничего не говорил :-)... Поделитесь приемами, кто как это делает, пожалуйста. |
a13x 62 - 28.09.2004 - 13:52 |
2(orefkov) фичереквест (по поводу поддержки Телепатом скриптов): хотелось бы иметь метод телепата, возвращающий список функций редактируемого модуля (как минимум) по максимуму хотелось бы иметь возможность программно узнавать для заданной функции/процедуры список параметров, ее тип (экспортируемая/нет), объявлена ли она предварительно или нет... совсем уж из области фантастики - список локальных переменных для заданной по имени функции/процедуры... я конечно понимаю, что у меня есть возможность заняться написанием парсера модуля на каком-либо скриптовом языке, но если это уже сделано в телепате, то... |
orefkov 63 - 28.09.2004 - 14:20 |
(61) Этого пока нет, но буду делать. (62) Это тоже конечно будет, но позже. |
IAm 64 - 28.09.2004 - 14:27 |
62 Подобный парсинг занимает меньше кода, чем Вы написали в своем сообщении :)) |
artbear 65 - 28.09.2004 - 15:26 |
(61) ПослеСохранения внешнего файла легко сделать в плагине на базе ловушки изменения файла (из ВинАпи). Кстати, сегодня как раз задумывался над этой проблемой. Можно сделать плагин, который будет выдавать подобное событие. Имхо это несложно. |
a13x 66 - 28.09.2004 - 15:31 |
2(62)да, своего рода "парсер" на регекспах в большинстве случаев работает :-), но на больших модулях дает сбои и относительно медленный - проводить парсинг всего модуля при каждом вызове макроса - не самый эффективное с точки зрения производительности решение... |
a13x 67 - 28.09.2004 - 15:33 |
в (66) я отвечал на (64) :-) |
KVA 68 - 28.09.2004 - 15:34 |
2(65) Лучше ПередЗаписью :) ЗЫ: Когда примерчик плагина на Дельфях выложите? |
IAm 69 - 28.09.2004 - 15:38 |
66 Как это парсер на регэкспах может дать сбои? Относительно чего парсер на регэкспах медленный, если регэкспы пишутся изначально на самом низком уровне? Нифига не понимаю. Даже если регэкспы не использовать а использовать штатные тормозные VB-функции и то, на большинстве модулей скорость выполнения заявленного Вами поиска будет почти незаметной, а уж регэкспами и вовсе шикарной |
artbear 70 - 28.09.2004 - 15:43 |
(68) Примерно через час. Планирую положить к Александру на сайт: 1) пример плагина для Опенконф на Делфи 2) набор используемых мной скриптов (с указанием авторства) 3) новую версию своего плагина "Мастер 1С++) (счас стал понимать алиасы из окси.ини) (Александр) Если не против, там где-нибудь аккуратно поставлю ссылку на FAQ от Федора ? |
a13x 71 - 28.09.2004 - 15:49 |
(69) я сразу скажу, что я н екомпетентен в вопросах, касающихся внутренней работы движка регулярных выражений, хотя приходилось ковыряться в регексповом движке колорера, но в простейшем случае сопоставление регулярного вырашения конкретной строке - это алгоритм полного перебора |
Тертый 72 - 28.09.2004 - 16:12 |
70) А в скриптах чего-нибудь нового добавил? По сравнению с тем, что было на итланде? |
artbear 73 - 28.09.2004 - 18:07 |
(ALL) Обновил сайт Александра. По ссылке http://openconf.itland.ru/beta/index.html добавил: 1) пример плагина для Опенконф на Делфи 3) обновил свой плагин "Мастер 1С++" [+] плагином теперь можно управлять из скриптов, в поставке есть пример скрипта для управления; [+] разрешены алиасы из окси.ini [ #Классы\Общие ]; [+] Разрешена работа с относительными путями [ Классы\Общие ]; [+] При создании класса открывается окно модуля вместо окна формы; [+] на форме размещен небольшой хелп. [+] Методы, атрибуты, объекты для управления плагином из скриптов [+] Проверка на отсутствие пробелов в имени и пути к классу; [*] файл-шаблон для класса находится внутри плагина; ЗЫ На подходе скрипты :) |
artbear 74 - 28.09.2004 - 18:58 |
В скриптах будет, например, *) быстрый переход к началу/завершению текущей процедуры/функции в модуле *) создание процедуры и одновременно кнопку для нее на форме с использованием шаблонов и/или новых возможностей телепата *) Создание меню модуля по Цтрл-2 и еще кое-что. Включу скрипты от orefkov, ADirks, IAm, свои. |
Бодун 75 - 28.09.2004 - 20:20 |
1. Как бы узнать полный список и описание методов Телепата (в образце скрипта, например, кусочно некоторые такие оговариваются - типа инициировать встроенный 1С-овский штатный выбор объекта конфигурации и вернуть его, т.е. гложет мысль, что и другие полезные можно бы использовать, а вот какие???) 2. КАК в VBS можно сделать выбор (просто выбор из списка там, или из массива) - не подскажете?.. примерчик типа... 3. И - мануалы по VBS по-русски есть в природе? (при положительном ответе - следует вопрос "и как бы их нарыть?"). 4 И тово, мужуки, колитесь - кто как скрипты отлаживает?.. |
artbear 76 - 29.09.2004 - 08:11 |
(Александр) Еще раз повторюсь: есть ли возможность программно вызывать вызывать список автозавершения? имхо очень нужно и удобно, была бы возможность легко и удобно составлять различные шаблоны, исключив "дурной" способ с InputBox |
orefkov 77 - 29.09.2004 - 08:55 |
(75) 1. Все програмные возможности телепата есть в примере скрипта. 2. Меня тоже гложет эта мысль. 3. Проскакивал здесь как-то алс по VBScript, поищи. или оставь мыло, я кину. 4. Я отлаживаю в ScriptEditor'е, который идет с офисом. При установке офиса ищи в доп.компонентах. потом где надо, в скрипте пишешь stop, и запускается отладчик. (76) Артур, будет, подожди. |
a13x 78 - 29.09.2004 - 09:30 |
2(artbear) по поводу обновления сайта. добавленные ссылки битые. надо обратные виндовые слеши на прямые юниксовые поменять |
artbear 79 - 29.09.2004 - 09:49 |
(78) Нет, я специально проверял: файлы нормально скачиваются. Счас еще раз проверю |
artbear 80 - 29.09.2004 - 09:51 |
(78) У меня все прекрасно качается: и Оперой, и ИЕ, и регетом. (ALL) у кого-нибудь еще есть проблемы? |
Vtlk 81 - 29.09.2004 - 10:03 |
А после точки Телепат должен срабатывать? ВОт, например, хочу, чтобы в фразе "ЖР.Начало..." кусок "...Периода()" сам дописал? А то плагин работает только от начала строки, не очень удобно. |
a13x 82 - 29.09.2004 - 10:11 |
(80) забыл сказать. у меня firefox. он слишком уж правильный и все делает так, как декларируют спецификации тех или иных протоколов. в ие я пробовал, в се открывается... вобщем, если это сложно, то можно и не менять, мне и руками две ссылки поправить не трудно в адресной строке... а обратные слеши в урлах - это ошибка согласно RFC 1738 http://design.ti.ru/php/index.php?s=&p=http://www.faqs.org/rfcs/rfc1738 |
trdm 83 - 29.09.2004 - 11:10 |
(75.2) Думаю просто сделать активХ с возможностью выбора из списка, пару методов: для заполнения переданного списка, для возврата значения. Потом зарегить его в систенме и повызывать. Вроде так? |
artbear 84 - 29.09.2004 - 11:43 |
(83) Да, имхо этого достаточно. Сделаешь? Если да, как скоро? ЗЫ Сам уже задумывался над таким КОМ-объектом |
artbear 85 - 29.09.2004 - 11:46 |
(82) ОК, ссылки подправил |
artbear 86 - 29.09.2004 - 11:55 |
Есть ли в природе какая-нибудь прога для сборки шаблонов из алс-файлов? У меня есть только 1С:Harleq_GShaft (Редактор шаблонов *.st и синтаксис-помощника *.als), НО с учетом нынешних возможностей телепата функция этой обработки его функция разбиения, например, строки "Получить" на подстроки типа Полу Получ Получи Получит Получить становится ОЧЕНЬ неудобной, т.к. все эти строки показаны в списке телепата. Кто как решает подобную задачу (пока нет работы с точкой)? |
IAm 87 - 29.09.2004 - 12:00 |
84 Хочешь, сейчас напишу за пять минут? :))) |
artbear 88 - 29.09.2004 - 12:07 |
Хочу :) Буду только рад. Всем нам очень пригодится :) Запускаю таймер ? ЗЫ Только не как вчера :( ЗЗЫ Сделал пару скриптов, которые позволяют запускать макросы из меню модуля по Цтрл-2: 1 скрипт - показывает абсолютно все макросы из всех скриптов/плагинов в виде "Форматирование.FormatLines" (т.е. как они описаны в файле) 2 скрипт - позволяет после маленькой настройки показывать нормальные, русские описания макросов, т.е. "Форматирование текстовый блок [ спасибо IAM-у :) ]" 2 скрипт - показывает |
artbear 89 - 29.09.2004 - 12:09 |
(88+) Теперь после совсем небольшой доработки последнего скрипта можно выполнять группировку макросов в меню: например, группа "Конструкторы", "Форматирование", "Работа с формой" и т.д. |
trdm 90 - 29.09.2004 - 12:19 |
Лучше пусть IAm напишет. (83) - была просто идея. Я с активХ-ами плохо знаком. :) только по первымшагам.ру :) |
artbear 91 - 29.09.2004 - 12:27 |
(88+) Как я уже отметил, теперь для модуля (текста) стало возможным не пользоваться хоткеем Цтрл-М, а вызывать макросы через Цтрл-2. имхо когда скриптов становится больше 10, становится неудобным выполнять навигацию по ним и их макросам, поэтому и появился мой скрипт. Доделаю группировку макросов, и выложу на опенконф.итланд.ру ЗЫ К сожалению, Цтрл-2 работает только для текстовых модулей, на форме и других остается пользоваться только Цтрл-М. Хоткеи помогают, но не настолько хорошо (все не запомнишь) Но я не теряю надежды, что Александр закроет и эту лазейку :) |
IAm 92 - 29.09.2004 - 12:31 |
Написал самый примитивный В функцию передается строка значений с разделителями открывается форма выбора, возвращается выбранное значение. Если значение не выбрано - возвращается пустая строка |
trdm 93 - 29.09.2004 - 12:34 |
Если поможет вот еще идея: такого же принципа активХ, только в виде дерева. Заполняется из списка типа: Документ.ПриходнаяНакладная.Фирма Документ.ПриходнаяНакладная.ТЧ.Цена Документ.ПриходнаяНакладная..Цена .... Разделитель - точка (на выбор) одинаковые лексемы типа "Документ", одинакового уровня - один узел дерева. Методы: ЗагрузитьИзСписка() Активировать("Документ.ПриходнаяНакладная..Цена"); открывается диалог с деревом активный узел: "Документ.ПриходнаяНакладная..Цена". Пример Активировать("Документ.ПриходнаяНакладная..Цена"); При выборе возвращает строку узла. ЗЫ Пытался по быстрому набросать (83), но начальство озадачило :( |
IAm 94 - 29.09.2004 - 12:38 |
93 Сейчас изображу |
IAm 95 - 29.09.2004 - 12:42 |
С деревом хреново то, что TreeView контрол идет в виде ocx, честно говоря не знаю как его в ту же длл запихнуть |
Harleq 96 - 29.09.2004 - 12:48 |
1.Можно ли сдалать поиск выделенного слова вниз или вверх по тексту. Приходиться копировать его поле для поиска, а уже потом искать. 2.Можно ли открыть обработку или отчет из строки, например есть строка ОткрытьФорму("Обработка.МояОбработка",,); и нажав правой кнопкой на слово "МояОбработка" выбрать "Перейти" |
artbear 97 - 29.09.2004 - 13:09 |
(95) Нет проблем, использовать как обычный ком-объект. Ответил в аську (96) 1) Вроде бы проблем быть не должно. 2) По правой кнопке открывается контекстное меню, там есть меню Шаблоны, в которое и могут свои пункты вставлять скрипты и плагины. Я сегодня планирую выложить скрипт, который использует данную фичу телепата |
artbear 98 - 29.09.2004 - 13:31 |
(ALL) На http://openconf.itland.ru/beta выложил COM-объект для выбора нескольких значений из списка 0.9 от 29.09.2004 Автор: IAm >>Пока самый примитивный: >>Значения передаются с разделителем запятая, >>заголовок фиксированный. >>Пример: >>Set SelObj = CreateObject("SelectValue.SelectVal") >>ChosenVal = SelObj.SelectValue("1,2,3") >>msgBox ChosenVal PS Качать всем, кто пишет скрипты. имхо удобно. Дима обещал добавить еще необходимый функционал |
trdm 99 - 29.09.2004 - 13:48 |
Ура, правда я скрипты не пишу :( |
вым 100 - 29.09.2004 - 13:49 |
(94) сорри, а как этим пользоваться? чего где жмакнуть? когда срабатывает твоя длл-ка? просвятите плиз.... |
slavka 101 - 29.09.2004 - 13:53 |
(99) а теперь придется :-) |
artbear 102 - 29.09.2004 - 14:02 |
ALL) На http://openconf.itland.ru/beta выложил 1) Порядок установки SelectValue (98+) 2) Два cкрипта для запуска макросы из меню модуля по Цтрл-2 версия 1.0 1 скрипт - показывает абсолютно все макросы из всех скриптов/плагинов в виде "Форматирование.FormatLines" (т.е. как они описаны в файле) 2 скрипт - позволяет после маленькой настройки показывать нормальные, русские описания макросов, т.е. "Форматирование текстового блока" Теперь после совсем небольшой доработки последнего скрипта можно выполнять группировку макросов в меню: например, группа "Конструкторы", "Форматирование", "Работа с формой" и т.д. Установка: Кинуть все содержимое архива в каталог Bin\Config от 1С, Загрузить Конфигуратор, открыть любой модуль в окне редактора текста (можно просто текст), нажать Ctrl-2, в меню появятся два новых пункта "Макросы (полный список)" и "Макросы с удобным названием" ЗЫ В связи с нехваткой времени пока не могу выложить все скрипты сразу, т.к. занимаюсь их описанием и систематизацией. |
Magnus 103 - 29.09.2004 - 14:10 |
а вот у меня до сих пор телепат не работает, хотя делаю все так, как в хелпе написано. Может что подскажете? |
orefkov 104 - 29.09.2004 - 14:11 |
Сейчас занят был писанием скрипта для работы с cvs и gcomp. Встает такая же проблема. Быстренько дописываю ole-сервер для: Перевод строк OEM-Ansi, выбор файла, выбор каталога, выбор из списка, выбор из дерева, пометки в списке, вывод меню. Хотя считаю данное решение временным, до выхода в опенконфе работы с ActiveX-формами. |
artbear 105 - 29.09.2004 - 14:18 |
(Александр) Как обычно, ты делаешь самые нужные вещи. И как обычно, пиши меня как первого тестера :) |
artbear 106 - 29.09.2004 - 14:27 |
(102+) При установке скриптов "Макросы в меню" неточно указал порядок установки: 1) Заново закачайте архив с опенконф.итланд.ру\бета 2) Установка: Кинуть все содержимое архива (кроме каталога System) в каталог Bin\Config от 1С (именно Config, а не Scripts), Кинуть файл macrosenum.dll (это СОМ-объект для доступа к макросам скриптов от Александра Орефкова) из каталога System куда-нибудь, кроме каталога Bin\Config, выполнить команду regsvr32 macrosenum.dll Загрузить Конфигуратор, открыть любой модуль в окне редактора текста (можно просто текст), нажать Ctrl-2, в меню появятся два новых пункта "Макросы (полный список)" и "Макросы с удобным названием" |
Тертый 107 - 29.09.2004 - 14:39 |
Артур, ну поясни как: "Кинуть все содержимое архива (кроме каталога System) в каталог Bin\Config от 1С (именно Config, а не Scripts)", если там есть уже папка Scripts, а? Накрыть ее, что-ли? Или скрипты просто добавить? |
Тертый 108 - 29.09.2004 - 14:47 |
Не читайте 106):-) Надо: скрипты скопировать в папку Scripts, если она есть, если нет, то создать. Macros.ini кинуть Bin\Config длл-ку кинуть в Program Files\1Cv77\ и зарегить. 106) А ты не отвлекайся на всякие мелочи, ваяй еще чего-нить полезное! |
artbear 109 - 29.09.2004 - 14:50 |
(107) А в чем проблема? Старое же содержимое папки Scripts не удалится, а новое добавится, что и требуется. |
Тертый 110 - 29.09.2004 - 15:13 |
109) :-) я не стал рисковать! |
a13x 111 - 29.09.2004 - 15:25 |
никто еще не думал сделать из компилятора 1С, написанного в рамках проекта 2С active scripting language? И скриптеров бы поприбавилось, и штуки вроде выборКаталога и прочее были бы... |
DES 112 - 29.09.2004 - 15:39 |
А это у меня только глючит Ctrl+2 Макросы с удобным названием Открыть файл настроек плагина "Внешние формы" где это файл должен быть ? |
artbear 113 - 29.09.2004 - 15:49 |
(112) У тебя нету нужного скрипта и макроса! Добавить очень легко В папке Config \ Scripts должен быть скрипт "ExtForms Explorer.vbs" с текстом ' Макрос для быстрого открытия файла EFFolders.txt для плагина "ExtForms Explorer" Sub OpenExtFormsExplorerParameters() Documents.Open BinDir & "Config\EFFolders.txt" End Sub |
Тертый 114 - 29.09.2004 - 15:56 |
113) А ранее он у тебя назывался ExtForms.vbs... у меня тоже вылетало, пока не переименовал по твоей подсказке. |
DES 115 - 29.09.2004 - 15:58 |
(113) THX, жужить.... |
DES 116 - 29.09.2004 - 16:07 |
А чего теперь ругается на Scripts("Конструкторы ТЗ").PoiskZnacheniya |
artbear 117 - 29.09.2004 - 16:14 |
(ALL) Народ, кто пользует мой скрипт "Макросы в меню", я привел пример настроечного файла Config\Macros.ini У него очень простая структура, легко разберетесь, именно в нем указано, какие макросы и как будут показаны в меню шаблонов. Отсутствующие у вас скрипты/макросы можно закомментировать (точка с запятой) или удалить. ЗЫ Добавлю в скрипт проверку на наличие скрипта/макроса, чтобы не было проблем |
Тертый 118 - 29.09.2004 - 16:17 |
117) "Добавлю в скрипт проверку на наличие скрипта/макроса, чтобы не было проблем" - а вот это дело! |
DES 119 - 29.09.2004 - 16:20 |
Macros.INI Конструкторы ТЗ.NovayaTabliza = Таблица значенией: создать новую У меня есть - Таблица значений.vbs в чем дело то ? |
Незнайка на Луне 120 - 29.09.2004 - 16:22 |
Ctrl+2 почему не работет? |
DES 121 - 29.09.2004 - 16:27 |
(120) только в тексте модуля, ИМХО |
artbear 122 - 29.09.2004 - 16:37 |
(119) А повнимательнее посмотреть не судьба: В строке "Конструкторы ТЗ.NovayaTabliza = Таблица значенией: создать новую" Конструкторы ТЗ - это имя скрипта без расширения (т.е. у тебя должен быть скрипт Конструкторы ТЗ.vbs) В этом скрипте должен быть макрос NovayaTabliza А пункт в меню для этого макроса будет называться "Таблица значенией: создать новую" Вроде бы все просто :) |
DES 123 - 29.09.2004 - 16:43 |
(122) Ой, звиняйте... А где же этот скрипт надыбать? Еще раз прошу прощения ? ;-) |
artbear 124 - 30.09.2004 - 08:02 |
Повторю свой вопрос: ЕСТЬ ЛИ В ПРИРОДЕ КАКАЯ-НИБУДЬ ПРОГА ДЛЯ СБОРКИ ШАБЛОНОВ ИЗ АЛС-ФАЙЛОВ? Удобно пользоваться, пока Александр не сделал работу после точки. У меня есть только 1С:Harleq_GShaft (Редактор шаблонов *.st и синтаксис-помощника *.als), НО с учетом нынешних возможностей телепата функция этой обработки его функция разбиения, например, строки "Получить" на подстроки типа Полу Получ Получи Получит Получить становится ОЧЕНЬ неудобной, т.к. все эти строки показаны в списке телепата. Кто как решает подобную задачу (пока нет работы с точкой)? |
artbear 125 - 30.09.2004 - 08:43 |
Кстати, был прикол при написании скрипта для работы с произвольными макросами: Для запуска макросов использовал метод Execute. На работе все было в порядке, перенес скрипт на свой ноутбук, и началось: у меня установлен последний ДокторВеб, и он намертво заблокировал работу этого скрипта, потому что "файл заражен вирусом VVBS.Generic.134". Стоило только закомментировать вызов Execute, все стало работать! Проверил на СумантекАВ и КасперскийАВ, никаких проблем. Так в итоге и пришлось довольствоваться Eval c некоторыми извращениями |
DES 126 - 30.09.2004 - 09:13 |
Прошу пардону, а где скрипты ? |
artbear 127 - 30.09.2004 - 09:14 |
Обновление cкрипта для запуска макросов из меню модуля по Ctrl-2 (версия 1.3) Теперь можно использовать разделители и выполнять группировку макросов в меню: например, группа "Конструкторы", "Форматирование", "Работа с формой" и т.д. История версий: Меню макросов из файла.vbs 1.3: [+] в меню будут показаны только существующие макросы из списка макросов. Меню макросов из файла.vbs 1.2: [+] группы макросов в меню + разделители; [*] скрипт обрабатывает выбор только из своего меню; [*] из меню можно вызывать макросы этого скрипта; Меню всех макросов.vbs 1.2: [+] в меню будут показаны только существующие макросы из списка макросов. common.vbs 1.2: [+] методы Error, GetTextDocIfOpened, MacrosExists; [*] более надежная работа с ошибками выполнения Брать где обычно опенконф.итланд.ру\бета |
DES 128 - 30.09.2004 - 09:16 |
(125) последний ДокторВеб, и он намертво заблокировал работу этого скрипта Запиши скрипт в исключения для докторавеба |
DES 129 - 30.09.2004 - 09:19 |
я имею ввиду это: "Конструкторы ТЗ.NovayaTabliza = Таблица значенией: создать новую" Конструкторы ТЗ - это имя скрипта без расширения (т.е. у тебя должен быть скрипт Конструкторы ТЗ.vbs) |
artbear 130 - 30.09.2004 - 09:24 |
(129) Пока эти скрипты здесь http://itland.ru/forum/index.php?showtopic=4456 (128) Естественно, пробовал задать исключение, но не помогло (даже после нескольких перезагрузок) :( Да у тех, кто скачает скрипт, могли быть подобные приколы. Лучше без этих подозрительных сообщений. |
DES 131 - 30.09.2004 - 09:33 |
Что то я не догоняю! . У меня есть скрипт Таблица значений.vbs но нет Конструкторы ТЗ.vbs . Где взять его ? |
slavka 132 - 30.09.2004 - 09:48 |
а никто не собирается делать подсветку текста при редактировании макросов? (ну типа как Far'овском colorere). |
artbear 133 - 30.09.2004 - 09:48 |
(131) Буду краток: http://itland.ru/forum/index.php?showtopic=4456 ЗЫ Ты прогер или кто? пробуй, ищи и все получится :) |
tigor 134 - 30.09.2004 - 10:24 |
На двух разных компьютерах: ОС W2000, v7 релиз 23, OpenConfig 1.0.1.4beta, в каталогах C:\Program Files\1C77.ADM\Bin\config находяться telepat.dll-версия 2.0.0.0, в каталогах C:\Program Files\1Cv77.ADM\BIN\Config\scripts находятся telepat.vbs-последний(размер 21747 от 21.09.2004) На одном компьютере все работает правильно, а втором - две ошибки. Первая - При запуске конфигуратора "выскакивает" окно сообщений: Ошибка выполнения скрипта. Скрипт: teltpat Файл:C:\Program Files\1C77.ADM\Bin\config\scripts\telepat.vbs Строка:487 Позиция:4 Код: 0 Источник: Ошибка выполнения Microsof VBScript Описание: Объект не является семейством:'Plugins' Второе-При наборе в программных модулях 1С сочетания "с" срабатывает телепат и при выборе "СоздатьОбъект" на "правильном" компьютере формируется строка СоздатьОбъект(""), а на "неправильном" СоздатьОбъект(), Так формировалась строка на предыдущих версиях телепата. |
tigor 135 - 30.09.2004 - 10:26 |
134-Вдогонку telepat версии n |
Тертый 136 - 30.09.2004 - 10:49 |
artbear! Перенес с локального компа на сервант все из каталога 1Cv77: телепат, скрипты, плагины. macrosenum.dll зарегил, запускаю конфигуратор: "Ошибка выполнения скрипта... бла-бла-бла Меню макросов из файла.vbs.Объект не поддерживает это свойство или метод: "Matches"" и предлагает запустить отладчик скриптов. Стоит Вин2000 СП3? Артур, в чем тут дело? У меня на компе с ХР все нормально? |
artbear 137 - 30.09.2004 - 11:39 |
(136) Для полноценной работы со скриптами тебе нужно установить Windows Script Host версию 5.6 Скачай с сайта микрософта. |
Тертый 138 - 30.09.2004 - 11:47 |
137) Веришь - месяца 2 назад устанавливал. Именно 5.6. Что-то еще, наверное. |
Тертый 139 - 30.09.2004 - 11:58 |
+138)Пардон, старая стояла...установил, но он просит перезагрузку, а это только вечером. |
artbear 140 - 30.09.2004 - 11:59 |
(138) Проверь версию WSH Выполни в командной строке cscript //logo и посмотри версию. Если 5.6 (в чем сомневаюсь), тогда заходи в отладчик и смотри, где глюк. Если нет, переустанавливай еще раз |
artbear 141 - 30.09.2004 - 12:03 |
(140) Перезагрузка необязательна, вот достаточный скрипт "cscript regserver.js" (только пути в начале скрипта замени) // Registrаtion script var dlls=new Array( "C:\\WINNT\\System32\\jscript.dll", "C:\\WINNT\\System32\\vbscript.dll", "C:\\WINNT\\System32\\scrrun.dll", "C:\\WINNT\\System32\\scrobj.dll", "C:\\WINNT\\System32\\wshext.dll", "C:\\WINNT\\System32\\wshcon.dll", "C:\\WINNT\\System32\\wshom.ocx" ); var arrInWindows98=new Array( true, false ); var WshShell = new ActiveXObject("WScript.Shell") var unr=false; if(WScript.Arguments.Count()>0) unr=WScript.Arguments(0)=="U"; if(unr) unregisterAll(); else registerAll(); function registerAll(){ runAll(dlls) } function runAll(dlls, par){ var bWindows98=Boolean(IsWindows98()); for(var i in dlls) { if (bWindows98) { if (!runreg(i, dlls[i], par)) break; } else { var j=(par==null)?i:dlls.length-i-1; // reverse if (!arrInWindows98[j]) runreg(i, dlls[i], par); } } } //runAll function unregisterAll(){ runAll(dlls.reverse(), "/U") } function runreg(i, dll, par){ var fullPath=WshShell.CurrentDirectory+"\\"+dll; fullPath=dll; // var cl="regsvr32 /s "+((par==null)?"":par+" ")+"scrobj.dll /n /i:\""+fullPath+"\""; var cl="regsvr32 /s "+((par==null)?"":par+" ")+"\""+fullPath+"\""; WScript.Echo("Выполняю "+"["+(new Number(i)+1)+"/"+dlls.length+"]:"+cl); var errcode=WshShell.Run(cl,1,true); WScript.Echo(((errcode==0)?"OK":"Ошибка")+" ( Код ошибки ="+errcode+")"); return (errcode==0)?true:false; } //runreg function IsWindows98() { if (WshShell.ExpandEnvironmentStrings("%OS%")=="%OS%") // Windows 98 return true; else // Windows NT/2000/XP return false; } //IsWindows98 |
Тертый 142 - 30.09.2004 - 12:24 |
А ни фига: запустил этот скрипт, сказала, что все ОК, запускаю конфигуратор - опять то же самое. Ладно, подождем до вечера. |
artbear 143 - 30.09.2004 - 12:26 |
(ALL) Случайно никто не занимался подобной проблемой: Есть ли у кого скрипт для сравнения/объединения текста текущего модуля с произвольным текстовым файлом? Нужно для: В исх. конфе (1), например, в форме справочнике есть мой код, в новой конфе (2) есть изменение метаданных, объединяю 1 и 2 с приоритетом 2, получаю 3 конфу. В ней нет моего кода. Теперь нужно добавить мой код из внешнего файла (или совсем хорошо из файла конфы 1), очень удобно воспользоваться программами для объединения текстовых файлов |
orefkov 144 - 30.09.2004 - 13:12 |
(143) А если выгрузить в файлы и какойнить диффалкой? |
Тертый 145 - 30.09.2004 - 14:23 |
А хоткеи для макроса только из 2 сочетаний клавиш можно вешать? |
artbear 146 - 30.09.2004 - 17:14 |
(145) 2 сочетания - это как? У меня, например, работает Ctrl + Alt + NumPlus Или тебе надо Ctrl + Alt + Shift |
ADirks 147 - 01.10.2004 - 09:07 |
Тут Артур посоветовал раскрыть страшную тайну :) О том, как при помощи SendCommand выполнять любое действие, которое можно выполнить через меню. На самом деле SendCommand посылает окну сообщение WM_COMMAND с нужным параметром (Саш, я прав?). Параметр - это числовая константа, которую можно узнать, натравив на 1С что-нить типа Spy++ от МС, поставить фильтр сообщений по WM_COMMAND и нажав нужную кнопочку в конфигураторе. Потом посмотреть что там в wParam, и эту циферку можно смело подставлять в SendCommand (только надо перевести из hex в dec). |
ADirks 148 - 01.10.2004 - 09:11 |
Почему-то после команды "выделить всё" в скрипте перестают действовать методы объекта TextDoc. Например: Sub SelectAll() Set Doc = GetTextDoc(0) If Doc Is Nothing Then Exit Sub End If Line1 = Doc.SelStartLine Col1 = Doc.SelStartCol Line2 = Doc.SelEndLine Col2 = Doc.SelEndCol SendCommand(57642) 'command select all SendCommand(123170) 'Ctrl-Ins 'Doc.Copy set wshShell = createObject("WScript.Shell") wshShell.sendKeys("^+l") wshShell.sendKeys(CStr(Line1 + 1)) wshShell.sendKeys("{Enter}") ' Doc.MoveCaret Line1, Col1, Line2, Col2 End Sub Закомментированные Doc.Copy и Doc.MoveCaret не работают. Причём Doc.Copy отрабатывает, но копирует в буфер то, что было выделено до вызова скрипта. |
kir 149 - 01.10.2004 - 09:22 |
to orefkov, (мечтательно) а случаем нельзя как нить вызывать сравнение текстов, которое делается в конфигураторе при объединении , только для указанных пользователем текстовых файлов ? |
Тертый 150 - 01.10.2004 - 09:35 |
Артур, после перзагрузки серванта все, естественно, заработало нормально. |
blazevic 151 - 01.10.2004 - 09:50 |
(149) в меню "Файл" пункт "Сравнить файлы" там и сравнивай свои два текстовых файла. Работает также, как и при объединении конфигураций |
artbear 152 - 01.10.2004 - 09:58 |
(149) А зачем? Внешние диффалки намного привлекательнее :) На днях сделаю скрипт для вызова диффалки для текущего модуля |
kir 153 - 01.10.2004 - 10:38 |
2(151) аж покраснел, блин столько лет работаю, а не знал ... 2(152) а можно будет сравнивать текущий текст, с сохраненным, т.е. колбасишь ты значит текст, а при сохранении тебе показываются изменения по сравнению с тем что на диске сохранено ? и еще какими сравнивалками сам пользуешься ? |
orefkov 154 - 01.10.2004 - 11:05 |
(148) Открою еще одну страшную тайну. SendCommand делает PostMessage(WM_COMMAND,число,0) Естественно, PostMessage 1С обработает ПОСЛЕ завершения макроса. Делал сначала SendMessage, часто случались глюки. Да, номера команд проще всего посмотреть любым resorce view'ером в 1crcrus.dll |
Номер 6 155 - 01.10.2004 - 11:35 |
А вот, пока, скрипт для для включения разметки в редакторе диалога: function ВключитьРазметку() { УстановитьПараметрыРазметки(4, 4, true, true); } function УстановитьПараметрыРазметки(nX, nY, bSnapToGrid, bShowGrid) { if (Windows.ActiveWnd == null) return; if (Windows.ActiveWnd.Document != docWorkBook) return; if (Windows.ActiveWnd.Document.ActivePage != 0) return; with (new ActiveXObject("WScript.Shell")) { sendKeys("%"); sendKeys("{RIGHT}{RIGHT}{RIGHT}"); sendKeys("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}"); sendKeys("{ENTER}"); sendKeys("{DEL}"); sendKeys(nX); sendKeys("{TAB}"); sendKeys("{DEL}"); sendKeys(nY); sendKeys("{TAB}"); if (bSnapToGrid) sendKeys(" "); sendKeys("{TAB}"); if (bShowGrid) sendKeys(" "); sendKeys("{ENTER}"); } } |
artbear 156 - 01.10.2004 - 11:36 |
(154) Мы с Алексеем уже догадались про PostMessage и подправили скрипт для копирования в буфер обмена. Счас он его выложит |
ADirks 157 - 01.10.2004 - 11:40 |
Ну вот, с учётом вышесказанного: Sub SelectAll() Set Doc = CommonScripts.GetTextDoc(0) If Doc Is Nothing Then Exit Sub Line1 = Doc.SelStartLine Col1 = Doc.SelStartCol Line2 = Doc.SelEndLine Col2 = Doc.SelEndCol SendCommand(57642) 'command select all set wshShell = createObject("WScript.Shell") CmdLine = "cscript " wshShell.Run CmdLine, 0, true Doc.Copy Doc.MoveCaret Line1, Col1, Line2, Col2 Status "Текст текущего модуля скопирован в clipboard" End Sub |
Лёлик 158 - 01.10.2004 - 14:12 |
2(orefkov) Саша, есть небольшой прикол - неверно отображаются в списке процедур и функций те процедуры, в названии которых есть украинские буквы 1C 23 sql openconf 1.0.1.4 telepan вроде n |
trdm 159 - 02.10.2004 - 20:49 |
^ |
Бодун 160 - 03.10.2004 - 15:35 |
Так, народ. А может кто-нить все-тки знает, как открыть из ВБС форму (предварительно созданную и экспортнутую из ВБА в фрм+фрх файлы)??? Тогда б было б не просто хорошо, а просто ОЧЕНЬ КЛАССНО! |
trdm 161 - 03.10.2004 - 16:13 |
Сделай плагин, засунь туда свою форму и вызывай. В чем вопрос? работы минут на 30. |
IAm 162 - 03.10.2004 - 18:08 |
160 Насчет VBA не знаю, а в VB делаешь например Active Document DLL и предоставляешь клиентской программе интерфейс, в процедурах которого открываются те или иные формы. |
ShootNICK 163 - 03.10.2004 - 21:47 |
А ну кому синтаксис проверку хочется повесить на сочетание клавиш ! налетай ! 8-) вот,короче, набор полезняшек... 'ShootNICK v.041001 'Напихал сюда обработчиков модуля чтоб расставить на них сочетания клавиш... Sub CommentSelection() If Windows.ActiveWnd Is Nothing Then Exit Sub End If Set doc = Windows.ActiveWnd.Document If doc=docWorkBook Then Set doc=doc.Page(1) If doc<>docText Then Exit Sub End If doc.CommentSel() End Sub Sub UnCommentSelection() If Windows.ActiveWnd Is Nothing Then Exit Sub End If Set doc = Windows.ActiveWnd.Document If doc=docWorkBook Then Set doc=doc.Page(1) If doc<>docText Then Exit Sub End If doc.UnCommentSel() End Sub Sub FormatSelection() If Windows.ActiveWnd Is Nothing Then Exit Sub End If Set doc = Windows.ActiveWnd.Document If doc=docWorkBook Then Set doc=doc.Page(1) If doc<>docText Then Exit Sub End If doc.FormatSel() End Sub Sub Configurator_OnActivateWindow(W,A) End Sub Sub SelectAll() If Windows.ActiveWnd Is Nothing Then Exit Sub End If Set doc = Windows.ActiveWnd.Document If doc=docWorkBook Then Set doc=doc.Page(1) If doc<>docText Then Exit Sub End If SendCommand(57642) 'command select all End Sub Sub SyntaxCheck() If Windows.ActiveWnd Is Nothing Then Exit Sub End If Set doc = Windows.ActiveWnd.Document If doc=docWorkBook Then Set doc=doc.Page(1) If doc<>docText Then Exit Sub End If SendCommand(33297) 'синтаксический контроль End Sub Sub CloseMessageWindow() SendCommand(32812) 'закрыть окно сообщений End Sub Sub Configurator_AllPluginsInit() SendCommand(32812) 'закрыть окно сообщений End Sub |
orefkov 164 - 04.10.2004 - 09:01 |
(158) Можешь выслать таблицу кодировки для украинских символов? |
artbear 165 - 04.10.2004 - 10:04 |
(163 & ALL) Все это полезно, но лично мне не нравится, как 1С работает с комментами модуля. Ведь закомментировать можно не произвольный блок (как в нормальных средах программирования), а только одну или несколько выделенных строк (приведенный скрипт обладает теми же недостатками). Так вот ТЗ для тех, кто умеет писать скрипты, и обладает некоторым свободным временем: сделать 2 макроса для комментирования/раскомментирования текста, которые должны уметь комментировать/раскомментировать любой произвольный текстовый блок (не только строки), а если выделение отсутствует, комментировать/раскомментировать текущую строку. имхо это не очень сложно, но очень привлекательно. Короче, задачка для ленивых программистов :)) ЗЫ сам пока никак не освобожусь от основной работы :( |
IAm 166 - 04.10.2004 - 10:40 |
165 Что-то не понял про произвольный блок |
trdm 167 - 04.10.2004 - 13:52 |
(166) По моему он имел в виду случай когда выделение текста начинается не с 1-ой позиции n-ой строки а допустим с 12 символа и заканчивается на строке n [+x | -x] и не на последнем (?) символе. Вроде так? P.S. У кого есть нормальная иконка на mxl и еrt?/ К сожалению скриптами не владею :( |
artbear 168 - 04.10.2004 - 14:00 |
(166,167) Да, именно такую ситуацию. Хочется, понимаешь, удобств :) |
Лёлик 169 - 04.10.2004 - 15:17 |
2(orefkov) ОК, вышлю |
Фолькишер Беобахтер 170 - 04.10.2004 - 15:20 |
У всех такое, при использовани телепата: На реквизите нажимаешь правую кнопку мыши/Свойства - видно маленькое окошечко свойств - понятно... Теперь, открываем Ворд, потом переходим опять в конфигуратор - остается фоном окно ворда, и на нем - окошечко совйств реквизита, и только после закрытия окошечка происходит открытие окна конфигуратора.? Мириться? |
Oblomov 171 - 04.10.2004 - 16:16 |
Если, я тебя правильно понял, то нет. Ничего подобного не наблюдаю. |
ShootNICK 172 - 04.10.2004 - 16:29 |
165 - делалось прежде всего для ситнаксис проверки, задолбало, понимаешь, на иконку в панели жать....а так автоматизированный процесс :) проверил, закрыл окошко... а насчет выделения - да есть такая мысль что хочется и произвольную строчку закомментировать и плохо выделенный блок... как время будет что нить придумаем :) а то и кто опередит, в таком случае немедленно воспользуемся. |
Тертый 173 - 04.10.2004 - 16:36 |
Не, молодца насчет СПроверки и выделить все. На "выделить все" хоткеев не было вроде. А "Alt + Д + И" для СПроверки тоже не удобно. |
trdm 174 - 04.10.2004 - 18:27 |
(164) Как продвигается проект? Интересен вопрос: реакция 1С на данный проект, что нибудь слышно? Актуальна шутка про 23-24 релиз? |
trdm 175 - 04.10.2004 - 20:47 |
Плагин самоделка :) http://trdm.mail333.com/ExtFile.rar типа "Проводника" |
SlonSpb 176 - 05.10.2004 - 01:04 |
(172) может, тебе стоит просто нормальную мышь попробовать купить ? а то я смотрю, ты всё делаешь, чтобы ей вообще перестать пользоваться :) |
fez 177 - 05.10.2004 - 01:28 |
(176) А вообще-то с клавиатуры быстрее работать, чем с мышью. |
ShootNICK 178 - 05.10.2004 - 01:56 |
176 - пробовал. шуршать мышой и прицеливаться все равно не хочется. :) Что касается целей, ты прав - я делаю все чтобы перестать работать с мышью. |
Бодун 179 - 05.10.2004 - 02:36 |
Только что проверил на 23-м релизе: "плохо" выделенный фрагмент по Ctrl + / превращается в комментированный "хорошо" выделенный фрагмент... это у меня 1С глючит? ЗЫ: 2(77), Саша (Орефков) п.3.: алс по ВБСкрипту, если нетрудно, кинь на donor(плюх)писем.нет п.4.: а без stop-а в скрипте - никак? |
artbear 180 - 05.10.2004 - 06:47 |
(179) Да, ты прав. Но я вчера специально проверял и не работало :( ЗЫ Утро вечера мудренее. |
artbear 181 - 05.10.2004 - 07:41 |
(ALL) Чувствую, что пора открывать на сайте Опенконфа новый раздел "Скрипты для Опенконфа" :) (orefkov) Что скажешь? ЗЫ Сделал еще один скрипт (№1) в помощь разработчикам скриптов - ему можно указать разрабатываемый скрипт (№2), и в дальнейшем легко(через хоткей) перезагружать скрипт №2 столько раз, сколько нужно для полной разработки и отладки скрипта (также, если скрипт №2 делаем в среде ВБ, перед перезагрузкой скрипт №1 комментирует первую строку скрипта №2 "Attribute VB_Name ...", на которую ругается Конфигуратор) |
artbear 182 - 05.10.2004 - 10:15 |
(orefkov) Вроде бы баг при выборе файла: Set srv = CreateObject("Svcsvc.Service") sNameDevelopScript = srv.SelectFile(False, "", "VB скрипты|*.vbs;JS скрипты|*.js;Все файлы|*", False) В результате при выборе файла в поле фильтра всего 2 позиции (вместо нужных трех) 1) VB скрипты 2) *.js;Все файлы или я ошибся с фильтром ? |
orefkov 183 - 05.10.2004 - 10:32 |
(174) Работаю потихоньку. Какой-либо реакции от 1С нет. (179) Кину. Чуть попозжа. Без stop можно. На примере MS ScriptEditor, входящего в офис: в папке офиса находишь mse7.exe. Запускаешь. В меню Debug\Processes находишь 1с, подключаешься. Тогда в Debug\Windows появляется Running Documents Открываешь нужный скрипт, ставишь точку останова. (181) Да, раздел для скриптов было бы отлично. (182) Фильтр дожен быть: "VB скрипты|*.vbs|JS скрипты|*.js|Все файлы|*" |
trdm 184 - 05.10.2004 - 11:05 |
(182)+(183(182)) В С++ и 1С на сколько помню фильтр должен заканчиваться "|" иначе начинаеются фичи со списком типов файлов. Иии эта ситуация обойдена? |
trdm 185 - 05.10.2004 - 11:09 |
Еще вопрос с отладкой плагинов. Делаешь dll типа debug и конфигуратор ругается, делаешь release - все в норме, тока возможности отладки нету :(. Или я чего-то недопонимаю? Приходится сначала погонять пример где нибудь в др. проектике, а уж потом грузить классы в основной. |
Daisy 186 - 05.10.2004 - 11:17 |
Почему может не работать CodeJump? OpenConf 1.0.1.4 , Телепат тоже последний скачан. Пункты меню по CodeJump тоже не активны:( |
Тертый 187 - 05.10.2004 - 11:56 |
ShootNICK и все, кто умеет писать скрипты. Может еще хоткей сделаешь для "Открыть модуль в отладчике"? Было бы здорово! Посмотри, может, получится? |
slavka 188 - 05.10.2004 - 12:39 |
(183) может алс по ВБСкрипту выложить куда нить в общий доступ? |
ADirks 189 - 05.10.2004 - 12:57 |
(187) О! Хорошая мысль! И на F9 повесить... Sub OpenInDebugger() SendCommand(33285) End Sub |
orefkov 190 - 05.10.2004 - 13:21 |
(185) Там глюки из-за того, что 1С при работе подгружает релизные версии mfc42.dll, а плагин отладочные (mfc42d.dll) Обходится это так: Заходишь в меню Build\Configuration... Удаляешь конфигурацию Win32-Debug Жмакаешь Add. Выбираешь копировать все установки из Win32-Release. Далее идешь Project\Settings Выбираешь новую конфигурацию. На вкладке Debug указываешь файл для запуска - путь к 1С, там же прописываешь рабочий каталог (bin), и для удобства аргумент комстроки config На вкладке С++ указываешь: Optimization: Disable (Debug) Debug info: Program Database for edit and continue На вкладке Link Output file name: прописываешь "путь до папки плагинов"/yourplugin.dll Ставишь галки Generate Debug Info, Link incrementally. Все, для отладки используй эту конфигурацию. Для твоих сорцов будет возможность отладки, но в MFC функции не попадешь, тк будет использоваться релизная mfc42.dll ОпенКонф и Телепат отлаживаются именно так. |
Тертый 191 - 05.10.2004 - 13:39 |
ADirks, замечательно! На F9 и повесил. |
trdm 192 - 05.10.2004 - 18:01 |
Спасибо. |
trdm 193 - 05.10.2004 - 18:09 |
Странно, но в отладке ВК такого нет, видимо предусмотрели специально. |
ShootNICK 194 - 05.10.2004 - 20:47 |
2 Orefkov по turboMD - есть/будет возможность подменить выгруженный модуль в отладчике ? |
KRIHA 195 - 05.10.2004 - 22:41 |
Хочу повторить свою просьбу-предложение "Есть предложение. Когда выпадает список с вариантами, то по нему можно перемещаться только вниз до "дна", а потом вверх до "горлышка" - с "горлышка" на дно одним нажатием стрелочки вверх (как это обычно в связанном списке) не получиться. А часто это удобно, так как видишь например, что нужный вариан последний, но щелкать долго :-) Это полезно, думаю, так же и в случае со списком Методов модуля (когда фильтруется список). Может быть много процедур с одинаковым началом названия... " |
АБЗ 196 - 06.10.2004 - 05:18 |
Открытый конфигуратор 1.0.1.2(бета) + Телепат 2.0.0.0n. при записи конфигурации иногда ХР вываливается в синий экран, снимает дамп и перезагружается. Причем MD востановлению не подлежит... Жаль, но пришлось перейти на штатный конфигуратор. |
artbear 197 - 06.10.2004 - 06:36 |
(195) >> много процедур с одинаковым началом названия. Повторюсь для всех, кто вдруг не знает, в списке Методы модуля с фильтрацией ищутся строки НЕ ТОЛЬКО по начальным символам, а ВООБЩЕ ПО ПОДСТРОКАМ. Например, зайдите в глобальник бухии и наберите последовательно (без кавычек) "вы" пробел "ра", и увидите очень удобный результат (196) ОБЯЗАТЕЛЬНО используй Опенконф версии 1.0.1.4 (на крайний случай 1.0.1.3) телепат стабильно работает только с ними (что, кстати, четко написано в описании) И штатному уже никогда не вернешься :) |
АБЗ 198 - 06.10.2004 - 06:37 |
(197) Сейчас попробую |
KRIHA 199 - 06.10.2004 - 08:55 |
(197) О гуру, падаю ниц! :-) В любом случае будет полезно если список будет вести себя "как обычно" - к последнему элементу с первого одно нажатие стрелочки "вверх" |
ob36 200 - 06.10.2004 - 08:58 |
И снова 200! |
artbear 201 - 06.10.2004 - 09:34 |
Тогда уж не 200, а 1600 :) |
trdm 202 - 06.10.2004 - 09:43 |
Debug info: Program Database for edit and continue - нету такого. Не получается, буду ковыряться. |
artbear 203 - 06.10.2004 - 09:44 |
(199) Да, согласен! Переход вниз через стрелку вверх - это удобно |
KRIHA 204 - 06.10.2004 - 11:31 |
(203) Ну так нет этого в телепате... может будет, а? :-) |
artbear 205 - 06.10.2004 - 11:46 |
(204) Думаю, будет! Александр все полезные предложения записывает и делает. Вопрос только во времени :( счас основное желание и его, и большинства остальных - работа с точкой (после точки). |
artbear 206 - 06.10.2004 - 11:48 |
(204) Пока могу порекомендовать использовать просто Ctrl-PageUp (или Ctrl-PageDown) |
ShootNICK 207 - 07.10.2004 - 14:13 |
еще хоткей на закрытие синтсксис помощника Sub CloseSynHelp() SendCommand(45098) 'закрыть синт. помощник End Sub |
trdm 208 - 07.10.2004 - 14:56 |
(207) Это супер. Я этого ждал :) :) :) :) :) :) :) :) :) :) :) :) :) Что там еще за вкусности может справочник сделать? |
IAm 209 - 07.10.2004 - 15:09 |
Хотите скрипт, который у всех реквизитов выбранного справочника или документа автоматом проставит синоним как в 8ке? |
ShootNICK 210 - 07.10.2004 - 15:27 |
208 -какой такой справочник ? :) |
IAm 211 - 07.10.2004 - 15:31 |
Не понял, а как писать свойства объектов, если у Props.Item стоит read-only? |
orefkov 212 - 07.10.2004 - 16:07 |
(211) Пока никак. Чтение строкового значения свойства у всех объектов на техническом уровне одинаково, а вот присвоение... Там для каждого типа объектов надо писать свою частную реализацию, руки не доходят. Пока сделано только для констант, перечислений, несколько свойств объекта "Задача". |
Тертый 213 - 07.10.2004 - 16:13 |
ShootNICK, ну, прям в воду глядел... Тока сегодня в обед об этом думал, уж больно на нем маленькая кнопка. |
cathode 214 - 07.10.2004 - 16:27 |
Народ! Подскажите, пожалуйста, можно ли сделать макрос, который автоматом делает "Edit - Select All"? Просто задолбало уже, что на это дело 1С хоткея не назначила. |
trdm 215 - 07.10.2004 - 16:31 |
(207) Не канает, грешно смеяться над больными людьми. :( |
Тертый 216 - 07.10.2004 - 16:33 |
207) канает, надо, чтоб курсор в СП был... Давай далее..."Поиск во всех текстах" |
trdm 217 - 07.10.2004 - 16:35 |
(210) Я так понял 45098 и тому подобные являются идентификаторами пункта либо меню, либо акселератора и т.п. все это можно посмотреть. Вырезать из 1С и задокументировать. Или как? |
Тертый 218 - 07.10.2004 - 16:35 |
2 214) читай 163) |
cathode 219 - 07.10.2004 - 16:40 |
(218) Спасибо. Когда ветку читал, код глазами пропускал. Как оказалось - зря. |
trdm 220 - 07.10.2004 - 16:42 |
(217) Так....., значит если я долблю текст, и мне мешает синтакс-помощник, мне все равно надо сделать телодвижение в его сторону. (Песиместически). Значит будем двигать телом :) (Оптимистически). |
Тертый 221 - 07.10.2004 - 16:54 |
220) (Пессимистически), да, если уж сам с собой говоришь... А скорее так: поискал там чего надо - и закрыл нафиг. |
trdm 222 - 07.10.2004 - 17:03 |
is tru. |
trdm 223 - 07.10.2004 - 17:29 |
(212) Саша, у меня не хватает знаний на то, чтобы пользоваться возможностью работы опенконфа с конфигуратором из С++. В голове роятся идеи для плагинов, а вот осуществить не получается. Не мог бы ты скинуть исходники хотя-бы первого телепата? У меня достаточно опыта, чтобы изучить возможности по примерам. Но не хватает времени на теорию :(. Даже скрипты уже научился писать :) |
artbear 224 - 07.10.2004 - 17:49 |
имхо первый телепат без опенконфа работает с Конфигуратором, самостоятельно перехватывает функции 1С |
ShootNICK 225 - 07.10.2004 - 18:18 |
217 - ну да. но не вырезать, а поймать или подсмотреть wm_command. 216 сразу три иконки :) Sub GlobalSearch() SendCommand(33207) 'поиск во всех текстах End Sub Sub SearchSynHelp() SendCommand(33879) 'поиск синт. помощнике End Sub Sub OpenSynHelp() SendCommand(33870) 'открыть синт-помощник End Sub |
ShootNICK 226 - 07.10.2004 - 18:20 |
217 поищи в этой ветке - писалось как и чем это сделать. |
MetaEditor 227 - 08.10.2004 - 05:54 |
а как бы эта, ну установит фокус в окно синтиксисхелпера, чтоб закрывать можно было прямо из модуля, думаю это было бы логическим завершением Sub CloseSynHelp() ' вот тут поставить на него фокус SendCommand(45098) 'а тут уже закрыть синт. помощник End Sub |
Пузырь 228 - 08.10.2004 - 06:21 |
(227) Хорошо бы ещё вернуть фокус обратно... |
MetaEditor 229 - 08.10.2004 - 07:02 |
228) ага, и обратно... |
Пузырь 230 - 08.10.2004 - 08:54 |
А как ваще там фокус можно переключить? Чё-то присваивание Windows.ActiveWnd не помогает... |
MetaEditor 231 - 08.10.2004 - 08:57 |
230) подожди, еще не все проснулись |
vS 232 - 08.10.2004 - 09:40 |
ой, а я тоже хочу СП закрывать горячкой :) только я не особо шарю в энтих макросах... просто некогда :( |
orefkov 233 - 08.10.2004 - 12:12 |
Пример скрипта для закрытия окна синтакс-помощника из любого положения. Dim closesp closesp=false Sub Configurator_OnIdle() if closesp then closesp=false:SendCommand 45098 End Sub Sub Configurator_OnDoModal(Hwnd, Caption, Answer) if closesp and Caption="Контекстный поиск" then Answer=mbaOK:Exit sub End Sub Sub SynaxHelperClose() closesp=true SendCommand 33879 End Sub |
Phoenix 234 - 08.10.2004 - 12:39 |
(233) проверь мыло, правильный 2 вариант. |
Пузырь 235 - 08.10.2004 - 12:43 |
(233) Это самый простой способ решения проблемы с фокусом? Может есть какой-нибуть SetFocus или SetActiveWindow? |
trdm 236 - 08.10.2004 - 12:47 |
Идентификатор дерева синтакс-помошника 'Tree1' если поможет. |
vS 237 - 08.10.2004 - 12:57 |
Сенкс, работает спасибо огромное... как дойду, вышлю бонус :) давно пора, да все руки не доходят... до кассы |
Пузырь 238 - 08.10.2004 - 13:01 |
(236) Где ты это подсмотрел? |
orefkov 239 - 08.10.2004 - 13:09 |
В объект Windows опенконфа добавил метод ShowPanel(Caption As String, Show As boolean) Позволяет отобразть/скрыть любую панель по ее заголовку. В том числе и пристыковываемые окна. (Синтакс-помощник, Список найденных вхождений, окно сообщений и тп) К вечеру выложу на сайт. |
trdm 240 - 08.10.2004 - 13:24 |
(238) Спай++ (Spy++) из компекта мелкософт визуал-студии 6.0. Позволяет видеть жизнь виндов изнутри. Посмотри тут: http://www.firststeps.ru/mfc/steps/r.php?47 |
MetaEditor 241 - 08.10.2004 - 13:27 |
239) Александр, спасибо... Оперативность на высшем уровне.... |
Данила хМастер 242 - 08.10.2004 - 13:27 |
(ArtBear, 124) RE: Повторю свой вопрос: ЕСТЬ ЛИ В ПРИРОДЕ КАКАЯ-НИБУДЬ ПРОГА ДЛЯ СБОРКИ ШАБЛОНОВ ИЗ АЛС-ФАЙЛОВ? Удобно пользоваться, пока Александр не сделал работу после точки. У меня есть только 1С:Harleq_GShaft (Редактор шаблонов *.st и синтаксис-помощника *.als), НО с учетом нынешних возможностей телепата функция этой обработки его функция разбиения, например, строки "Получить" на подстроки типа Полу Получ Получи Получит Получить становится ОЧЕНЬ неудобной, т.к. все эти строки показаны в списке телепата. Кто как решает подобную задачу (пока нет работы с точкой)? *** ОТВЕТ: Я этот Gshaft переделал, теперь есть выбор как генерить: "Для Телепата" / "Как обычно". Куда кидать? |
Пузырь 243 - 08.10.2004 - 13:30 |
А у синтакс-помощника какой Caption? Когда он пристыкован, выводит заголовок текущего окна типа "Форма-Документ.АвансовыйОтчет" |
artbear 244 - 08.10.2004 - 13:35 |
(Александр) (мечтательно) Случайно не добавил возможность открытия метаданных (двойной щелчок, например, на конкретном справочнике или документе) ? |
artbear 245 - 08.10.2004 - 13:38 |
(242) Кидай мне! Выложу на сайт опенконф.итланд.ру ЗЫ и другим пригодится |
Данила хМастер 246 - 08.10.2004 - 13:40 |
0, ArtBear. Так что, генератор шаблонов ф-ций для Телепат кидать, или как? |
MetaEditor 247 - 08.10.2004 - 13:42 |
244) это ты как, чтоб открывалась сразу форма документа или что? |
Данила хМастер 248 - 08.10.2004 - 13:43 |
+246. Простите, ошибся. 245 - кидаю. |
ShootNICK 249 - 08.10.2004 - 14:28 |
239- наколол так наколол :) |
artbear 250 - 08.10.2004 - 14:30 |
(247) Нет, чтобы открывалась та форма, через которую мы можем менять метаданные (для документа, например, там есть 2 таблицы реквизитов) |
ShootNICK 251 - 08.10.2004 - 14:32 |
244... Господа! Господа! по моему отвлекаем творца от работы с точкой :))) |