Персональная страница Федора Езеева
Главная
Download
Ссылки
MS SQL
Обмен данными
Новости
Статьи
О себе
Крупные разделы...
Коллективная разработка
1С++, OOP, XP
FuncTest
FAQ
Структура 1cv7.md
Телепат 2 (пререлиз) и Опенконф (продолжим 10?)
IAm
22.11.2004 - 11:49
Выполню в отсутствие именинника ArtBear Его миссию
---------------------------------------------------------
Начнем 11 ветку о Телепате и Опенконфе - программирование для Конфигуратора, облегчение работы разработчиков 1С!
Для тех, кто только что присоединился.
---------------------------------------------------------
Автор всего этого набора чудес - Александр Орефков
---------------------------------------------------------
Сабж + скрипты для Опенконф (сайт автора)
http://openconf.itland.ru/beta
FAQ
http://1c.alterplast.ru/faq/telepat.html
http://1c.alterplast.ru/faq/openconf.html
Другие плагины/скрипты для Опенконфа можно взять (а также самому положить !!) в Клубе Профессионалов
http://1c.proclub.ru/modules/mydownloads/viewcat.php?op=&cid=1002
Предыдущие ветки о Телепате/Опенконфе можно взять на страничке
http://1c.alterplast.ru/faq/telepat.html
На итланде.ру есть специальный форум для обсуждения именно Опенконфа и его плагинов (в т.ч. и Телепата)
http://itland.ru/forum/index.php?showforum=37
Если у кого есть что-то интересное для Опенконфа - плагины, скрипты, присылайте мне, я размещу на http://openconf.itland.ru
Или, что еще лучше, сами выкладывайте свои творения в Клуб Профессионалов в раздел Опенконф
http://1c.proclub.ru/modules/mydownloads/submit.php
так будет наиболее удобно для всех :)
slavka
1 - 22.11.2004 - 11:53
(Iam) sample.vbs на самом деле 2 штуки было: 1- пример работы с агентом, а 2- как раз с svcsvc.dll
kir
2 - 22.11.2004 - 12:25
сорри если про это уже было написано ,а я пропустил ...
можно ли что бы тексты которые грузятся из файла при открытии модуля сами бы открывались ?
slavka
3 - 22.11.2004 - 12:28
(2) посмотри в наборе скриптов от artbear'a. там вроде было что-то подобное
IAm
4 - 22.11.2004 - 12:35
(2) Примерно так
Function CheckWindow(doc)
  
  CheckWindow = False
  
  If Windows.ActiveWnd Is Nothing Then
     MsgBox "Нет активного окна"
     Exit Function
  End If
  
  Set doc = Windows.ActiveWnd.Document
  If doc=docWorkBook Then Set doc=doc.Page(1)
    
  If doc<>docText Then
     MsgBox "Окно не текстовое"
     Exit Function
  End If
  
  CheckWindow = True
End Function
Sub OpenLoadFile()
doc = 0
if CheckWindow(doc) = False then exit sub
Pos1 = instr(lCase(Doc.text), "#загрузитьизфайла")
Pos2 = instr(Pos1, lCase(Doc.text), vbCrLf)
if Pos1 = 0 then exit sub
if Pos2 = 0 then
 fileName = Mid(doc.Text, Pos1 + 17)
else
 fileName = Mid(doc.Text, Pos1 + 17, Pos2 - Pos1 - 17)
end if
Set NodeObj = CreateObject("wScript.shell");
NoteObj.Run("""" + Trim(FileName) + """");
End sub
kir
5 - 22.11.2004 - 12:43
2(3) спасибо, посмотрю
2(4) тоже спасибо, но ругается на Set NodeObj = CreateObject("wScript.shell"); , чего мне надо установить и где это взять ? ;-)
IAm
6 - 22.11.2004 - 12:50
Замени
Set NodeObj = CreateObject("wScript.shell");
NoteObj.Run("""" + Trim(FileName) + """");
на Documents.Open Trim(FileName)
kir
7 - 22.11.2004 - 12:59
вроде работает спасибо, вернее пытается открыть, по текущему пути, а можно как нить привязаться к каталогу текущей ИБ ?
и еще можно ли что бы автоматом открывалось , чтобы не нажимать лишних кнопок ?
IAm
8 - 22.11.2004 - 13:11
По текущему можно наверное
Documents.Open BinDir + Trim(FileName)
=================
нащёт автомата не знаю
туча
9 - 22.11.2004 - 13:21
(Lam) вопрос по Интелли:
Повесил я хоткей на "Точку", а если я хочу в строке написать так "Счет 62.1", после ввода точки вылазит приглашение что-либо выбрать, но мне не нужно ничего выбирать, я просто хочу поставить точку. Приходится переключаться на инглиш, ставить точку и обратно на рус. Можно канэшно и на др. хоткей повесить, но как то уж привык.
IAm
10 - 22.11.2004 - 13:23
9 Поставь в поле ввода списка точку и нажми Энтер.
А что она может предложить выбрать после Счет 62. ???
туча
11 - 22.11.2004 - 13:29
(22) Так уже пробовал вываливается первая строка "Валюта". Сообщить список выбора?
kir
12 - 22.11.2004 - 13:32
2(8) все получилось большое спасибо , только испозовал 'Documents.Open IBDir + Trim(FileName)' , вообще хотелось бы такую штуку по умолчанию например в телепат как опцию .....
IAm
13 - 22.11.2004 - 13:33
11 В версии 1.1.0 при появлении списка можно нажать точку(русскую) и энтер и всё будет нормально.
туча
14 - 22.11.2004 - 13:40
(13) Версия 1.1.0 нажимаю ентер, получается "Счет 62.Валюта"
trdm
15 - 22.11.2004 - 13:41
А-а-а-а-а, караул, отпиарили в прошлой ветке :)
Тертый
16 - 22.11.2004 - 13:44
15)(угрожающе) Это Вы написали dots.vbs который не давал работать? И почему так произошло, а? :)
trdm
17 - 22.11.2004 - 13:47
Конечно, я, он так и был задуман. Мне он лично не дает работать постоянно, если есть какая-то задумка, не могу устоять перед её осуществлением, и работа побоку :)
trdm
18 - 22.11.2004 - 13:50
Вобщето, ИМХО куча диалогов - это sample c демонстрацией возможностей Svcsvc.dll. Так что дядку, сначала посмотрите что за скрипт потом юзайте.
(All) Не рекомендую мой скрипт вешать на ГК - "точку".
Тертый
19 - 22.11.2004 - 13:54
А не было предупреждения, что "это вредоносная программа"... В пятницу вроде нормально работал, а сегодня... :)
trdm
20 - 22.11.2004 - 14:02
Скрипт писал для себя, дабы облегчить набор текста.
Выкладываю с мыслью "может кому пригодится". Меня самого он устраивает на 65 %, т.е. на 25 % есть задумки, которые надо написать и 10% глючки и low скоростЬ.
Тертый
21 - 22.11.2004 - 14:28
Да брось, что я не понимаю? А у тебя он тоже кучу менюшек при загрузке выдает? Если нет, то почему?
trdm
22 - 22.11.2004 - 18:49
Он не выдает, пока невызовешь процедурину WordOfCaret()
Думаю переписать в 3-й раз заново, опять начались "глюки объема".
Не качайте полз, пока.
trdm
23 - 22.11.2004 - 21:42
Создатель молчит, либо сильно занят, либо готовит бомбу :)
trdm
24 - 22.11.2004 - 21:50
Спрошу ка еще раз, есть ли инструментик для парсинга *.mxl?
Выгружать во внешний файл из workbooka не проблема, а вот парсить сей бинарик руки не доходят. Хочу извлечь из сего чуда вертикальные и горизонтальные секции, для подстановки в строки типа Таб.ВывестиСекцию(); и Таб.ПрисоединитьСекцию();
Заготовку - консольное приложение, принимающие в параметрах входной и выходной файлик сделал, а дальше что-то руки не поднимаются :(
trdm
25 - 22.11.2004 - 22:20
Обновил скрипт. Добавил описание.
Из новенького:
+ частично научил распознавать "место вызова" - )
    вызывается в 1-м параметре
  все вышесказанное справедливо для англоязычных синонимов методов
MetaEditor
26 - 23.11.2004 - 04:24
скажите мне, есть ли в природе или можно такое в принципе сделать чтобы по двойному клику или хоткею на форме (кнопке, тексте, ...) открывались не "Свойства" а модуль с переходом к процедуре которая задана в формуле ...
как в делфях...
в диалог-стриме же есть название этой процедуры/функции.....
???
artbear
27 - 23.11.2004 - 06:45
(26) Сам о подобном давно думаю.
ИМХО пока нельзя, потому что нет возможности определить активный контрол на форме или даже активный слой :(
MetaEditor
28 - 23.11.2004 - 07:25
с пришествием в онлайн...
как ветку оформили? нормально?.... )))
уверен, Александр что нибудь придумает по этому поводу...(про активный элемент)
artbear
29 - 23.11.2004 - 08:10
(28) Вроде нормально.
Можно попробовать, конечно, активный элемент поискать через ВинАПИ (работа с окнами).
sashat
30 - 23.11.2004 - 09:34
А меня не пускают на http://1c.proclub.ru/
Скиньте плиз скрипт dots.vbs
DES
31 - 23.11.2004 - 10:07
Уважаемые!
А где послений релиз набора скриптов надыбать?
artbear
32 - 23.11.2004 - 10:55
(31) Внимательно изучи (0).
ЗЫ ведь специально пишется :(
VictorB
33 - 23.11.2004 - 11:31
(to artbear)
будь добр стукнись в аську 97718371 (есть несколько вопросов)
dva1c
34 - 23.11.2004 - 11:34
(32) Скажи, пожалуйста, что за ошибка:"Инструкция по адресу "0х27581771" обратилась к памяти по адресу "0х27581771". Память не может быть "read".
". Вылазит, когда открыто много баз, а потом поочередно закрываю. ОС WinXP, памяти 397 Mb. ОпенКонф 1.0.1.7, Телепат v2.0.0.0o
dva1c
35 - 23.11.2004 - 11:37
(34) ... "много баз" - это 5 баз
artbear
36 - 23.11.2004 - 11:55
(34) Возможно, виноват какой-то плагин.
И вполне вероятно, что это мой плагин "История".
dva1c
37 - 23.11.2004 - 11:59
(36) Да, есть такой плагин. Выключить?
artbear
38 - 23.11.2004 - 12:02
(37) Как хочешь. Плагин мой, за исключением пары несущественных глюков (один как раз твой) работает нормально.
Пока меня устраивает.
Если тебе не нужен его функционал, удаляй :(
Данила хМастер
39 - 23.11.2004 - 12:05
Не далал никто скрипт "Сохранения конфы без модальных окошек"?
Чтоб по нажатии кнСохранитьКонфу (Дисктека нарисована) на всех модальных окошках нажималось OK, а их текст слался в Message (подобно тому как в AutoSave, только при ручном нажатии кнЗаписать)
dva1c
40 - 23.11.2004 - 12:09
(38) Плагин-то прикольный, просто я думаю может еще каким-нибудь "раком" выползет, а я буду грешить на другое :-)
Данила хМастер
41 - 23.11.2004 - 12:11
40 - Это точно history...(
dva1c
42 - 23.11.2004 - 12:11
(38) И еще вопрос не по существу. Artbear и artbear - это разные люди?
slavka
43 - 23.11.2004 - 12:19
(38) Если будешь дорабатывать свой плагин "История" то сделай плиз возможность выделения нескольких строк чтоб при удалении сразу кучу ненужных эл-тов удалить. а то влом одно и то же действие делать. и еще периодически появляются записи след. вида: "C:\DOCUME`1\....\Temp\b\*.tmp" возможно ли сделать их автоматическое удаление , например при нажатии кнопки "Удалить" они удалялись?
artbear
44 - 23.11.2004 - 12:20
(42) Один я :)
artbear
45 - 23.11.2004 - 12:23
(43) А зачем из истории что-то удалять?
Для истории у меня в TODO:
деление по группам (например, видам);
фильтрация (как в "Методах модуля" от Александра);
сохранение/восстановление закладок для файлов;
естественно, устранить баги.
Но вопрос времени (:
ADirks
46 - 23.11.2004 - 12:35
(39) Посмотри autoload.vbs - там всё что надо есть.
artbear
47 - 23.11.2004 - 12:38
(45+) опечатался: нужно
сохранение/восстановление закладок для любых открытых модулей;
Данила хМастер
48 - 23.11.2004 - 12:42
+43 Хочу еще историю открытых "Форм настроек доков и спр-ков" (те, которые по дабл-клику в дереве открываются...)
Данила хМастер
49 - 23.11.2004 - 12:44
46! А как отловить момент, когда пользователь нажал "Дисктетку". Что-то запись вызывать отдельным скриптом не хочется, привык: ^S | F11 - enter.
Phoenix
50 - 23.11.2004 - 12:50
(48) уже много раз писали, нельзя это пока сделать, НЕЛЬЗЯ :(
многие сидят, с нетерпением ждут этого функционала.
slavka
51 - 23.11.2004 - 12:52
(45) ну например посмотрел какие-нибудь модули,внешние файлы и все они мне больше не нужны в истории. ну ты же и кнопочку "Удалить" сделал. :)
Данила хМастер
52 - 23.11.2004 - 12:55
Orefkov!
При работе над несохраненной конфой поменял кол симв., с кот. "подсказывать" Телепатом с 1 на 5. Он 1 раз подсказал, другой долго думал и обвалил (( конфигуратор, вот!
PS: Win2K, Telepat O, OC 1.7 ...
ADirks
53 - 23.11.2004 - 13:36
(49) Так ведь там приведён пример обработки _событий_. Не надо никаких макросов вызывать. Скрипт будет выглядеть примерно так:
Dim AutoProcess;
AutoProcess = false
Sub Configurator_OnMsgBox(Text, Style, DefAnswer, Answer)
  Text = Trim(LCase(Text))
  If InStr(Text, "Выполнить сохранение метаданных?") Then
    Answer = DefAnswer
    Message Text, mExclamation 'выдадим в окно сообщений текст модального окна
    AutoProcess = true
  ElseIf Text = "реорганизация информации закончена!" Then
    AutoProcess = false
  ElseIf AutoProcess Then
    Answer = DefAnswer
    Message Text, mExclamation 'выдадим в окно сообщений текст модального окна
  End If
End Sub
Sub Configurator_OnDoModal(Hwnd, Caption, Answer)
  If AutoProcess Then
    Message Caption, mInformation
    Answer = mbaOK
  End If
End Sub
trdm
54 - 23.11.2004 - 13:56
(26)-(27) Сие возможно, надо просто внимательно посмотреть на диалогстрим, где то я на это натыкался.
KVA
55 - 23.11.2004 - 14:22
2(54) А можно скриптом в диалогстим писать? Хочу функцию прописывать в контролы, а не получается :(
artbear
56 - 23.11.2004 - 14:27
(55) Конечно, можно.
Можешь посмотреть "Мой набор скриптов" - мой скрипт "Добавление кнопки на форму" или разработки IAm-а из этого же набора.
kir
57 - 23.11.2004 - 14:36
да было бы неплохо разом во все контролы в "фукнцию" прописывать вызов единой функции обрабатывающей выбор, а то достает прощелкивать все элементы ....
grumpi
58 - 23.11.2004 - 15:14
Не работает скрипт Переходы по модулю от Artbear. Пишет <требуется объект > Common Scripts. Как решить проблему?
artbear
59 - 23.11.2004 - 15:17
А ты откуда этот скрипт "Переходы по модулю" взял?
Там же есть и файл common.vbs - достаточно переписать его в папку Бин\Конфиг
artbear
60 - 23.11.2004 - 15:19
(59+) Упс, Bin\Config\Scripts
trdm
61 - 23.11.2004 - 15:23
(26) А идея неплохая :) Если кто сделает, не стесняйтесь выложить на проклуб :)
a13x
62 - 23.11.2004 - 15:38
на выходных рассказывал в предыдущей ветке, многие пропустили, поэтому повторюсь...
----------------------------------------------------
http://kuntashov.narod.ru/files/DialogStreamWSC.zip
----------------------------------------------------
.
еще две недели назад написал парсер диалог-стрима, а потом - по инерции - и DialogStream.wsc - скриплет, позволяющий работать с диалог-стримом как с объектом, например, на JScript это будет выглядеть так:
.
---------------------------------------------------
// размещает на текущем диалоге кнопку с заголовком "Hello!"
function addButton()
{
    var frm = new ActiveXObject("OpenConf.DialogObject");
    var stream = Windows.ActiveWnd.Document.Page(0).Stream;
    if (!stream)
        return;
    frm.Stream = stream;
    var btn = frm.CreateControl("BUTTON");
    btn.Caption = "Hello!";
    frm.Controls.Add(btn);
    Windows.ActiveWnd.Document.Page(0).Stream = frm.Stream;
}
---------------------------------------------------
.
Естественно, также можно и на бейсик-скрипте.
.
Для работы нужно распаковать куда-нибудь архив и с помощью regsvr32 зарегистрировать все файлы с расширением *.wsc.
.
На простых диалогах работать можно, а вот на больших - тормоза...
Узкое место - парсер, он разбирает стрим посимвольно...
.
Еще также пока не поддерживается browser (по причине тормозов делать не стал).
.
И на последок. Поскольку у меня с 6 декабря начинается последняя сессия (ну да, студент я зеленый...), то я до следующего года на месяц сворачиваю совою активную деятельность.
Возможно, кому-либо будет интересно заняться оптимизацией того, что сделал я, либо написать свое аналогичное...
.
В первом случае, достаточно переписать только парсер, сохранив его интерфесы... Кстати, возникла идея написать парсер в виде COM-dll, будет гораздо быстрее, а с сохранением интерфесов, повторюсь, остальное переписывать совсем не надо будет...
.
Is there anyone to be a volounteer? ;-)
Данила хМастер
63 - 23.11.2004 - 16:40
53. Слушайте! А если я хочу, чтоб при сохранении вопрос "Хотите ли вы сохранить?" задавался (желательно не VB-окошко, а стд 1С-кое msgBox, как оно сейчас есть), а вот при положительном ответе уже все остальное без модальных окон и только в Message, тогда как? Как такое сделать?
Данила хМастер
64 - 23.11.2004 - 16:44
+63 Как в Configurator_OnMsgBox отловить, что нажали mbOK?
a13x
65 - 23.11.2004 - 16:52
(64) а с какой целью? что бы нажать в остальных окнах все по дефолту?
вроде никак,
но ведь достаточно зарегистрировать факт появления этого окна,
ведь, если пользователь ответит Ok, то вы заведомо знаете, какое окошко откроется следующим
slavka
66 - 23.11.2004 - 16:57
(ALL) в опенконфе есть событие:
Event OnActivateWindow(Wnd As ICfgWindow, ByVal bActive As Boolean)
в ICfgWindow возвращается какое-то значение или нужно указывать что-то?
a13x
67 - 23.11.2004 - 17:10
не возвращается, а передается значение - окно, которое активизируется
// максимизирует все открываемые окна внутри конфигуратора
function Configurator::OnActivateWindow(cfgWnd, bActive)
{
    if (cfgWnd)
        if (!cfgWnd.Maximized)
            cfgWnd.Maximized = 1;
}
Данила хМастер
68 - 23.11.2004 - 17:32
(65) Оочень хочется, чтоб при записи конфы как по F11, так по ^s, вместо модальных окон все шло в Message. Однако все ж хочется, чтоб окно с вопросом "А надо ли вообще сохранять? Или может передумали?" появлялось и реагировало соответственно ответу. Т.е., если почитаете выше, тут пердложили флаг, по которому на всех модальных окнах нажимать Default, а флаг этот предлагают устанавливать при появлении окошка с текстом "Выполнить сохоранение метаданных?", само же окошко там не появляется, т.к. тоже наж-ся Def. А мне надо как раз узнать ответ юзера и толшько по "Да" устанавливать этот флаг.
Может проще можно?
Oblomov
69 - 23.11.2004 - 17:40
А чьё это сообщение "Окно не текстовое" телепата или Intellisence? Выскакивает, когда я точку хочу ввести например в строке поиска.
Нельзя ли сделать так, что бы телепат (или Intellisence?) работал только в модуле, то есть только там где пишеться код.
a13x
70 - 23.11.2004 - 17:50
... если на вопрос о сохранении мд пользователь нажал ОК, то следующим окошком будет "Реорганизация данных"...
IAm
71 - 23.11.2004 - 18:06
69 Версию интеллисенс скачай поновей
Oblomov
72 - 23.11.2004 - 18:14
2(71) Упс, не могу. Похоже проклуб в ауте. Ну ладно, тогда до завтра.
trdm
73 - 23.11.2004 - 20:06
(70) не факт...
АБЗ
74 - 24.11.2004 - 04:52
Вверх
ADirks
75 - 24.11.2004 - 06:17
(68) Ну тогда вот так
Dim SavingStarted, AutoProcess
SavingStarted = false
AutoProcess = false
Sub Configurator_OnMsgBox(Text, Style, DefAnswer, Answer)
  Text = Trim(LCase(Text))
  If InStr(Text, "&#226;&#251;&#239;&#238;&#235;&#237;&#232;&#242;&#252; &#241;&#238;&#245;&#240;&#224;&#237;&#229;&#237;&#232;&#229; &#236;&#229;&#242;&#224;&#228;&#224;&#237;&#237;&#251;&#245;?") Then
    Message Text, mExclamation '&#226;&#251;&#228;&#224;&#228;&#232;&#236; &#226; &#238;&#234;&#237;&#238; &#241;&#238;&#238;&#225;&#249;&#229;&#237;&#232;&#233; &#242;&#229;&#234;&#241;&#242; &#236;&#238;&#228;&#224;&#235;&#252;&#237;&#238;&#227;&#238; &#238;&#234;&#237;&#224;
    SavingStarted = true
    AutoProcess = false
  ElseIf Text = "&#240;&#229;&#238;&#240;&#227;&#224;&#237;&#232;&#231;&#224;&#246;&#232;&#255; &#232;&#237;&#244;&#238;&#240;&#236;&#224;&#246;&#232;&#232; &#231;&#224;&#234;&#238;&#237;&#247;&#229;&#237;&#224;!" Then
    Answer = DefAnswer
    Message Text, mExclamation '&#226;&#251;&#228;&#224;&#228;&#232;&#236; &#226; &#238;&#234;&#237;&#238; &#241;&#238;&#238;&#225;&#249;&#229;&#237;&#232;&#233; &#242;&#229;&#234;&#241;&#242; &#236;&#238;&#228;&#224;&#235;&#252;&#237;&#238;&#227;&#238; &#238;&#234;&#237;&#224;
    SavingStarted = false
    AutoProcess = false
  ElseIf Text = "&#240;&#229;&#238;&#240;&#227;&#224;&#237;&#232;&#231;&#224;&#246;&#232;&#255; &#228;&#224;&#237;&#237;&#251;&#245; &#237;&#229; &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#224;" Then
    Answer = DefAnswer
    Message Text, mExclamation '&#226;&#251;&#228;&#224;&#228;&#232;&#236; &#226; &#238;&#234;&#237;&#238; &#241;&#238;&#238;&#225;&#249;&#229;&#237;&#232;&#233; &#242;&#229;&#234;&#241;&#242; &#236;&#238;&#228;&#224;&#235;&#252;&#237;&#238;&#227;&#238; &#238;&#234;&#237;&#224;
    SavingStarted = false
    AutoProcess = false
  ElseIf AutoProcess Then
    Answer = DefAnswer
    Message Text, mExclamation '&#226;&#251;&#228;&#224;&#228;&#232;&#236; &#226; &#238;&#234;&#237;&#238; &#241;&#238;&#238;&#225;&#249;&#229;&#237;&#232;&#233; &#242;&#229;&#234;&#241;&#242; &#236;&#238;&#228;&#224;&#235;&#252;&#237;&#238;&#227;&#238; &#238;&#234;&#237;&#224;
    SavingStarted = false
  ElseIf SavingStarted Then
    SavingStarted = false
    AutoProcess = true
  End If
End Sub
Sub Configurator_OnDoModal(Hwnd, Caption, Answer)
  If SavingStarted Then
    SavingStarted = false
    AutoProcess = true
  End If
  If AutoProcess Then
    Message Caption, mInformation
    Answer = mbaOK
  End If
End Sub
ADirks
76 - 24.11.2004 - 06:19
Ой, а куда делись все эти русские буквочки? Попробую ещё разик
Sub Configurator_OnMsgBox(Text, Style, DefAnswer, Answer)
  Text = Trim(LCase(Text))
  If InStr(Text, "выполнить сохранение метаданных?") Then
    Message Text, mExclamation 'выдадим в окно сообщений текст модального окна
    SavingStarted = true
    AutoProcess = false
  ElseIf Text = "реорганизация информации закончена!" Then
    Answer = DefAnswer
    Message Text, mExclamation 'выдадим в окно сообщений текст модального окна
    SavingStarted = false
    AutoProcess = false
  ElseIf Text = "реорганизация данных не выполнена" Then
    Answer = DefAnswer
    Message Text, mExclamation 'выдадим в окно сообщений текст модального окна
    SavingStarted = false
    AutoProcess = false
  ElseIf AutoProcess Then
    Answer = DefAnswer
    Message Text, mExclamation 'выдадим в окно сообщений текст модального окна
    SavingStarted = false
  ElseIf SavingStarted Then
    SavingStarted = false
    AutoProcess = true
  End If
End Sub
orefkov
77 - 24.11.2004 - 09:16
(68)
Так ты определи по тексту, что собираемся сохранять, и
спроси сам через VB MsgBox.
Sub Configurator_OnMsgBox(Text, Style, DefAnswer, Answer)
  LText = Trim(LCase(Text))
  If InStr(LText, "выполнить сохранение метаданных?") Then
     UserChoise=MsgBox(Text,Style,"Конфигуратор")
slavka
78 - 24.11.2004 - 11:02
(67) спасибо. думал что это событие отработает при даблклике по реквизиту. ан нет :(
slavka
79 - 24.11.2004 - 11:11
При открытии формы настроек доков/справочников скрипт
Sub Configurator_OnActivateWindow(cfgWnd, bActive)
    message cfgWnd.Caption
End Sub
выдает сообщение Dxxx. чтобы это значило?
глюкер
80 - 24.11.2004 - 11:51
может уже поправили, но вот такая недоработка :
при вводе создатьОбъект(".... нет выбора из списка типов объектов СписокЗначений и ТаблицаЗначений (Справочник, Документ етц - есть )
Oblomov
81 - 24.11.2004 - 12:07
2(71) скачал новую версию Intellisence. Опять немного не то, что хотелось.
А хочеться самую малость. Отключить срабатывание скрипта по хоткею если курсор НЕ в Модуле, где редактируеться код.
Oblomov
82 - 24.11.2004 - 12:19
Версия Intellisence 1.1.0
Последовательность действий.
Вешаем скрипт на "точку" в русской раскладке.
Открываем окно "Текст" и переходим в строку поиска.
Жмём "." Уже баян. Курсор перескакивает в окно текста и открывает список подбора.
Жмем ещё раз "." и Ентер. Получаем ошибку скрипта.
Можно вводить "." в английской раскладке, но это костыли.
Phoenix
83 - 24.11.2004 - 17:16
up
БаГ
84 - 24.11.2004 - 17:39
Может я не в тему?
Не сможет ли кто-нибудь наваять скрипт для поиска с заменой Н раз. Поясняю: найти слово "Дебет" и заменить на "Кредит" 3 раза.
Очень хочется.
a13x
85 - 24.11.2004 - 17:40
вместо апа
последний раз... пост (62) все проигнорировали или как?
IAm
86 - 24.11.2004 - 18:30
81, 82 Не хватает сейчас ни времени ни знаний в этом разбираться, сам переключаю на латинскую.
ob36
87 - 24.11.2004 - 18:53
Версия Intellisence 1.1.0
Нажатие точки во внешней обработке после переменной ТемпТЗ в следующем скрипте безнадежно вешает конфигуратор:
Процедура Сформировать(А,Б,В)
  ВремТЗ = глПолучитьТЗ(А,Б,В);
  ТемпТЗ = СоздатьОбъект("ТаблицаЗначений");
  ВремТЗ.Выгрузить(ТемпТЗ,,,"Дог");
  ТемпТЗ.
КонецПроцедуры
IAm
88 - 24.11.2004 - 23:35
87 Знаю, исправлю в следующей версии. Сугубо vbs-шные глюки с переменной цикла. Если лень ждать до след. версии - то в функции GetVTColumns
в начале каждого цикла поставь SaveI = i
в конце каждого цикла i = SaveI
MetaEditor
89 - 25.11.2004 - 05:31
почему вылетает синтаксическая ошибка на
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
строка 1 символ 8...
я васик знаю плохо...
Номер 6
90 - 25.11.2004 - 07:47
(85)
Нет, не проигнорировали!
Мне интересно!
Только, вот, пока, руки не дошли твои исходники посмотреть.
a13x
91 - 25.11.2004 - 08:23
(89)
с чистым vb не помогу, а вот на vbScript'e многие функции из Win32API можно вызывать с помощью DynaWrap
http://ourworld.compuserve.com/homepages/Guenter_Born/WSHBazaar/WSHDynaCall.htm
там капельная dll c примерами на vb
.
а вот здесь пример на jScript
http://cwashington.netreach.net/depo/view.asp?Index=34&ScriptType=jscript
.
(90)
если что, с радостью помогу разобраться / icq#338758861 или kuntashov-собака!-ru/yandex
ob36
92 - 25.11.2004 - 09:01
(88) - Помогло, спасибо!
MetaEditor
93 - 25.11.2004 - 09:33
91) dynacall.dll и dynawrap.dll - это одно и тоже ?
a13x
94 - 25.11.2004 - 09:40
(93) dynacall - предыдущая версия dynawrap вроде, по крайней мере исходники у них одинаковые...
  у меня dynawrap for nt
artbear
95 - 25.11.2004 - 10:26
(94) Кульная вещь, пользовался, когда начинал изучение ВБСкрипт, понравилось, а затем забросил :(
MetaEditor
96 - 25.11.2004 - 10:35
95) можно ли как нибудь из скрипта найти нужное окно(или ForegroundWindow) и получить текст из его фокуса ввода...
вот мне вспринципе чего надо...
Беба
97 - 25.11.2004 - 11:32
А подскажите ссылочку пож. чтоб скачать опенконф.снм, а то на сайте не нашел
IAm
98 - 25.11.2004 - 13:23
После окончания отладки скрипта через MSE7.exe конфигуратор ни на что не реагирует, хотя окно эдитора закрыто. Как вывести его из состояния спячки?
slavka
99 - 25.11.2004 - 13:36
(97) ищи ocdoc.zip
(98) а из режима отладки не забыл выйти?
IAm
100 - 25.11.2004 - 13:38
99 Не знаю, допустим забыл, чего дальше делать?
slavka
101 - 25.11.2004 - 13:41
меню Debug->Stop Debugging
IAm
102 - 25.11.2004 - 13:54
Где меню, если Эдитор закрыт, к тому же вроде это делал перед закрытием.
slavka
103 - 25.11.2004 - 14:00
тады ой! не допер что в (98) MSE7.exe и окно эдитора одно и тож :)
a13x
104 - 25.11.2004 - 14:18
(98) мертвое это дело, только из таскманагера убивать обоих...
я давно бился, да толку... кажестя, в одной из первых веток говорил про это...
slavka
105 - 25.11.2004 - 14:26
странно у меня такого явления нет. чтобы это значило ...
a13x
106 - 25.11.2004 - 14:28
кста, а iedbg даже отлаживать вообще не дает - приаттачиться к процессу могу,
и на этом все заканчивается... а жаль :-(
trdm
107 - 25.11.2004 - 15:02
(98) Я тебе об этом писал, помнишь? На период отладки отключай вызов своего сервера для выбора значения, будет в порядке.
trdm
108 - 25.11.2004 - 15:24
Обновил dots.vbs
+ Немного оптимизировал.
- Отловил несколько ситуаций, ведущих к зацикливанию.
+ выбор реквизитов объекта внутри методов (дополнительно) ТЗ.Выгрузить(,,,<.>); ТЗ.ВидимостьКолонки(<.>,); ТЗ.Сортировать(<.>,<.>); Добавлил отсутствующие англоязычные синонимы.
trdm
109 - 25.11.2004 - 15:29
MSE при закрытии спрашивает "Stop типа дебаг?" если "Неа" тады не закрывается вообще.
(104) Нормально там дебагер работает, и атачится без проблем, у меня с ним за исключением случая из (98) проблем не было, единственное ОбжектВьювер не всегда при запуске обновляется.
fez
110 - 25.11.2004 - 15:43
Выложил предыдущую ветку на http://1c.alterplast.ru
a13x
111 - 25.11.2004 - 15:50
(109) значит, у меня руки кривые...
будем прямить
trdm
112 - 25.11.2004 - 19:44
(111) Уверен, что с твоими руками все в порядке.
Дело может быть в следующем тексте (и то с натяжкой, если засунули туда бог весть что):
Sub Configurator_OnIdle()
' операторы
End Sub
Но это только гипотеза.
a13x
113 - 25.11.2004 - 20:02
(112) точно нету, эт мои руки все-таки :-)
2(MetaEditor)
-----------------
на бейсике, вроде тоже смог (My VBScript is very poor :-)
-------------------------------------
Dim uw
Dim hWnd
Set uw = CreateObject("DynamicWrapper")
uw.Register "USER32.DLL", "FindWindowA", "I=ls", "f=s", "R=l"
uw.Register "USER32.DLL", "SetForegroundWindow", "I=h", "f=s", "R=l"
hWnd = uw.FindWindowA(0, "Безымянный - Блокнот")
uw.SetForegroundWindow(hWnd)
--------------------------------------------
если надо будет искать только по классу окна, то придется при регистрации FindWindowA входные параметры объявить как "I=sl", а если по имени класса и тайтлу одновременно, то как "I=ss"... Почему - хз... хотя приблизительно могу сказать - потому что вроде из бейсика null передать, если параметр объявлен как строка, вот... в jscript все ок, пример я тебе в аську кинул, если нет или кому-то надо, могу сюда продублировать...
2(ALL) кто в курсе, как это можно сделать? artbear, ты вроде использовал динавраппер, не сталкивался с этой проблемой?
a13x
114 - 25.11.2004 - 20:05
кто может знает японский :-))
вот здесь, кажется, именно эту проблему обсуждают
http://pc3.2ch.net/tech/kako/1010/10104/1010400289.html
GrayT
115 - 25.11.2004 - 23:23
Подскажите, плиз. Решил заюзать ТурбоМД, при выполнении скрипта сохранения текущего окна вылетает ошибка. Тут
Set fso = CreateObject("Scripting.FileSystemObject")
Видимо объет не может создаться - чего не хватает?
artbear
116 - 26.11.2004 - 07:37
(115) А какая ошибка вылетает?
Может быть, ты в "Scripting.FileSystemObject" набрал одну из букв по-русски.
KAO
117 - 26.11.2004 - 08:10
(115) Какая версия WSH стоит на компьютере?
artbear
118 - 26.11.2004 - 09:58
(115) Такой вопрос был уже в прошлых ветках.
Челу помогла переустановка Windows Script Host.
PS На всякий случай, нужна версия 5.6
GrayT
119 - 26.11.2004 - 10:42
116 - Про ошибку вообще ни чего не говорит. Строка 13, поз. 3. В этой позиции пробел. Ни чего не набирал руками - стандартный TurboMD.vbs из поставки.
117 - Сейчас на работе, проблема дома. Вообще у меня были проблемы с WSH (на хрюше!)Относительно недавно скачивал заново установку и ставил по новой. Вечером посмотрю версию.
Спасибо
IAm
120 - 26.11.2004 - 11:23
119 Смотри следующую строку, 14ю
artbear
121 - 26.11.2004 - 12:11
(orefkov) А почему BinDir выдается с соблюдением регистра (C:\Program Files\1CV77\Bin),
а IBDir выдается только в нижнем регистре ( "f:\kp new" - вместо "F:\KP new") ?
В итоге некоторые скрипты работают не так, как хотелось бы :((
artbear
122 - 26.11.2004 - 12:27
(121+) Выкрутился вот так:
  set fso = CreateObject("Scripting.FileSystemObject")
  set Folder = fso.GetFolder(IBDir)
  IBDirPath = Folder.Path + "\"
ЗЫ Добавил этот код в коммон.вбс как процедуру IBDir(IBDirPath)
artbear
123 - 26.11.2004 - 12:29
Кстати, теперь макрос "Запуск 1С в монопольном режиме" ( у меня на F10)
выглядит вот так (удобнее, когда запускаешь 1С не через стартер):
'-------------------------------------------------------------------
' запустить 1С не в монопольном режиме для текущего пользователя
' почти как F11
Sub RunInSharedMode()
  Dim wshShell
  Dim fso 'as FileSystemObject
  set wshShell = createObject("WScript.Shell")
 
  CmdLine = CommandLine + " "
  CmdLine = Replace(CmdLine, " config ", " enterprise ")
  CmdLine = Replace(CmdLine, " /m ", " ")
  CmdLine = Replace(CmdLine, " CONFIG ", " enterprise ")
  CmdLine = Replace(CmdLine, " /M ", " ")
  
  set fso = CreateObject("Scripting.FileSystemObject")
  set Folder = fso.GetFolder(IBDir)
  IBDirPath = Folder.Path + "\"
 
  if InStr(UCase(CmdLine), " /D") = 0 then
    CmdLine = CmdLine + " /D"+""""+IBDirPath+""""
  end if
  wshShell.Run CmdLine, 3, false
End Sub ' RunInSharedMode
artbear
124 - 26.11.2004 - 12:33
(123+) Упс, читать макрос "Запуск 1С в РАЗДЕЛЕННОМ режиме" :)
GrayT
125 - 26.11.2004 - 20:17
По поводу ТурбоМД - вылечилось переустановкой. Стояло 5.6.
(120)Ошибка была именно в этой строке - я ее MsgBox с двух сторон поджимал :)
Всем спасибо
slavka
126 - 29.11.2004 - 09:05
типа ап. какие новости? :)
IAm
127 - 29.11.2004 - 09:33
Уж не знаю новость ли - обновил интеллисенс фор опенконф
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=1002&lid=4229
slavka
128 - 29.11.2004 - 09:44
(127) имхо, почти после 3 дневного затишья и это новость. :))
slavka
129 - 29.11.2004 - 09:46
в 128 после "имхо" следует читать "думаю что"
slavka
130 - 29.11.2004 - 14:30
(ALL) подскажите плиз как в скрипте к строке добавить кавычку ("). пример:
zn=InputBox("Введите имя")
допустим введено "Справочник.Номенклатура"
затем "Справочник.Номенклатура" разделяю на две строки: "Справочник" и "Номенклатура",в рез-те 2 переменные:
zn1="Справочник" и zn2="Номенклатура".
 Мне нужно что было примерно так (это на 1с): симв(34)+zn1+симв(34). Как это в VBS сделать?
trdm
131 - 29.11.2004 - 14:49
Как в 1С: """" & (двойная кавычка).
"""" & zn1 & """"
& - вороде "+"
slavka
132 - 29.11.2004 - 15:03
это двойная кавычка. мне нады одинарную
trdm
133 - 29.11.2004 - 18:09
Это в отладчике кажется что двойная.
Это одинарная, просто vbs как и 1Z такую: """ конструкцию не воспримет, тилько """".
trdm
134 - 29.11.2004 - 18:12
Завянет тема скоро, перейдет из НоуХау в привычное средство.
Господа, где Ваши свежие идеи?!?!?!?!?!?!
a13x
135 - 29.11.2004 - 18:30
(134) а есть время, чтобы заняться реализацией? у меня есть идеи, но нету времени - сессия начинается со следующей недели :-(
могу рассказать, если кто-нибудь пообещает сделать :-)
Dolter
136 - 29.11.2004 - 18:53
айэму: классная штука, тока вот не хватает подхватываения методов и атрибутов собственных классов 1С++ :-)
IAm
137 - 29.11.2004 - 19:56
136 Я думаю добавить их элементарно. Я не знаю логики работы 1С++, методы хранятся в каких-то файлах?
trdm
138 - 29.11.2004 - 23:04
:( Нету.
У меня самого "Подсистемы" на dhtml-e + "Windows Common Controls" "отдыхают" пока, дожидаются. В dts.zip выложил, если какой умный малый подхватит, это будет неплохо. Там ADO-вый движек, не xml-ный, с примерами, может не у меня, так у другого получится.
artbear
139 - 30.11.2004 - 06:28
(137) Да, работа с классами 1С++ - была бы супер.
НО:
Определения классов 1С++ являются "динамическими" и хранятся в файлах (текстовые или ert), т.е. классов может быть много, и их набор и структура может меняться в различных конфигурациях.
ИМХО просто так их в ints-файл не занесешь. Вот если бы был конвертер :)
Вот пример файла определений:
//#define _LOAD_TIMER
//#inсludе "Классы\КаталогОбщий\ОЛЕ\РаботаСОле.prm"
//#inсludе "#КаталогОбщий\FuncTest\FuncTest_Classes\defcls.prm"
class Общие.СписокЗначений = Общие\СписокЗначений.ert : РасшСписокЗначений
{
  СписокЗначений ИзСтроки(Знач Строка Стр, Неопределенный Разделитель = ",", Число ОбрезатьПробелы = 0);
  Строка ВСтроку(СписокЗначений Сп, Строка Разделитель = ",", Число ВключатьПустыеЗначения = 1);
  void ЗагрузитьСПометками(Неопределенный Список, Число Пометка = 1);
}
MetaEditor
140 - 30.11.2004 - 07:50
можно ли в скрипте явно указать тип переменной, как например в простом бейсике Dim buff as string (Dim buff$)
для чего нужно...
с помощью DynamicWrapper'a вызываю
Wrapper.Register "USER32.DLL", "SendMessage", "I=llls", "f=s", "r=l"
Wrapper.SendMessage (ActWND, WM_GETTEXT ,255, Buff)
так вот, Buff должна быть типа String (или PChar)...
не помогает ни buff=Space(255) ни buff=CStr(buff)ни buff=CStr(Space(255))
artbear, ты говоришь что давно работал с враппером, может я чего неправильно делаю...
artbear
141 - 30.11.2004 - 08:09
(140) Попробуй вот так:
Dim Buff
Buff = String(128, "*")
Buff2 = Cstr(Buff)
    count = Wrapper.SendMessage (ActWND, WM_GETTEXT ,255, Buff2)
   
    If characters > 1 Then
        Buff2 = Left(cstr(Buff2), count)
    End If
artbear
142 - 30.11.2004 - 08:11
(140+) Опечатка :)
Нужно вот так:
Dim Buff
Buff = String(128, "*")
Buff2 = Cstr(Buff)
    count = Wrapper.SendMessage (ActWND, WM_GETTEXT ,255, Buff2)
   
    If count > 1 Then
        Buff2 = Left(cstr(Buff2), count)
    End If
a13x
143 - 30.11.2004 - 08:19
(140)
боюсь, что не прокатит - значения по ссылкам не передает :-(
а я думал, что только в jscript...
a13x
144 - 30.11.2004 - 08:28
(140) если ничего не помогает, то прочитай инструкцию (с) народное
или посмотри примеры (с) это уже я :-)
посмотри внимательнее пример ccupd.vbs из дистриба дины, конкретно - регистрацию функции GetPrivateProfileString - там четвертый параметр объявлен как "r" - кажется, это и означает, что его нам вернут по ссылке :-)
судя по дальнейшему коду это так и есть
MetaEditor
145 - 30.11.2004 - 08:30
таже история...
длина текста - то возвращается правильная, значит сообщение отрабатывает а вот сам текст возвращается как ************** (то есть то чем заполнили buff)
а у тебя, чего, это работает?
для сравнения, в вордовском бейсике работает
Private Declare Function SendMessage Lib "user32" Alias _
        "SendMessageA" (ByVal hwnd As Long, ByVal wMsg _
        As Long, ByVal wParam As Long, ByVal lParam As _
        String) As Long
----------------------------------------------------
Dim Buffer$
Buffer = Space(255)
Call SendMessage(Handle, WM_GETTEXT, 20, Buffer)
Text1.Text = Buffer
End Sub
artbear
146 - 30.11.2004 - 08:30
(140,143) Не знаю, как у вас, а у меня код наподобие (142) работает.
ЗЫ посмотрел поставку dynawrap: там есть пример ccupd.vbs, в котором также ф.GetPrivateProfileString возвращается значение в переменную KeyValue.
Приведенный мной код, похоже, я когда-то взял оттуда :)
artbear
147 - 30.11.2004 - 08:32
(144) Точно, нужно "r" вставить место "s"
>>William Epp added anr 'r' for VT_BYREF (pass by reference)but is for
strings only. This made the GETPROFILESTRING function to work. But it
didn't work for the GETPROFILESECTION. If anyone gets it to work please
let me know.
MetaEditor
148 - 30.11.2004 - 08:34
144) ну йопт.. шожты раньше то молчал... :) !!заработало!!
a13x
149 - 30.11.2004 - 08:40
зато теперь надолго запомним :-)
a13x
150 - 30.11.2004 - 08:45
(145)
нужно передать ссылку на переменную Buff
я не уверен, но в VB это можно сделать с помощью передачи PtrVar(Buff) или нечто подобного... вобщем, ссылка нужна
я не то в этой, не то в предыдущей ветке кидал ссылку на какой-то японский форум, там была куча примеров на тему передачи параметров по ссылке... правда, кроме примеров ничего там не разберешь - у меня даже шрифтов японских не установлено :-)
MetaEditor
151 - 30.11.2004 - 08:52
150) ага, был я там...и сразу ушел... ну не понимаю я по ихнему... :)))
artbear
152 - 30.11.2004 - 08:52
(150) У меня в Опере эту страницу показывает с иероглифами, но понятны только примеры скриптов и "пляшушие человечки" :)
artbear
153 - 30.11.2004 - 09:00
(150+) А что, вроде там привели остроумное решение:
    Function VBS_VarPtr(arg)
        UserWrap.Register "shlwapi.dll", "StrCatW", "i=wl", "r=l"
        VBS_VarPtr = UserWrap.StrCatW(CStr(arg), 0)
    End Function
      
    Set UserWrap = CreateObject("DynamicWrapper")
    UserWrap.Register "user32.dll", "MessageBoxW", "i=hllu", "r=l"
    s1 = "MessageBox (UNICODE)" & vbNullChar
    s2 = "From DynaWrap Object" & vbNullChar
    ret = UserWrap.MessageBoxW(Null, VBS_VarPtr(s1), VBS_VarPtr(s2), 3)
    WScript.Echo ret
IAm
154 - 30.11.2004 - 09:00
139 Зачем заносить? Читать при инициализации скрипта, ну или конвертер.
artbear
155 - 30.11.2004 - 09:06
(154) А как ты это планируешь сделать?
я про "читать при инициализации скрипта"
IAm
156 - 30.11.2004 - 09:11
155 Стукнись в аську.
Dolter
157 - 30.11.2004 - 10:29
2(156)
ну, хотя бы, читать в КаталогИБ первый файл defcls.prm со всеми инклудами и из этих файлов вычитывать наименования классов и их методов (с атрибутами посложнее будет), которые описаны явно:
---------------------------------
класс _Меню=unpack\Classes\class_Меню.ert : СписокЗначений
{
  Число Выбрать(Знач Строка стрПункты);
}
class РаботаСОле = unpack\Classes\class_РаботаСОле.ert
{ Число Инит(Строка СтрПараметры, ...);
  void Отключиться();
  Число Подключиться(Строка ВариантПодключения=");
  Неопределенный СоздатьОбъектОле(Строка НаименованиеОбъекта)
  Число Выполнить(Строка СтрокаКоманды);
}
IAm
158 - 30.11.2004 - 10:37
То есть все наименования классов и методов в defcls.prm описаны?
Dolter
159 - 30.11.2004 - 11:03
совершенно верно!
и все подключаемые файлы определений:
//#inсludе ...prm
имеют ту же структуру...
описаны и классы и их методы
IAm
160 - 30.11.2004 - 11:05
Dolter,
Самое простое - создай файл <ИмяКласса>.ints и пропиши там методы,
формат простейший "0000 <ИмяАтрибутаИлиМетода>"(посмотри в других файлах ints), потому что вряд ли я буду с этим разбираться. Единственное что наверное сделаю, это поддержку BaseClass,
То есть если есть класс СписокЗначенийРасширенный, наследующий методы Списка значений, то возможно сделаю поддержку строки в файле Ints формата
Parent: <ИмяРодителя> и к методам данного файла будут добавлены методы родительского класса.
IAm
161 - 30.11.2004 - 11:10
То есть в принципе можно конвертилку сделать, которая из файлов prm создаст файлы Ints, Но это задача элементарная, я думаю ты сам сможешь её сделать.
artbear
162 - 30.11.2004 - 11:39
(161) Да уж, простенькая такая задачка :)
Dolter
163 - 30.11.2004 - 11:40
пробую
Dolter
164 - 30.11.2004 - 11:57
еще не доделал... но (еще не) возникла проблема:
для разных конфиг могут быть описаны одни и те же классы с разными методами...
т.е. по идее должны быть как глобальные Inst файлы, так и локальные, которые бы лежали, скажем, в КаталогИБ() + "\Intell" и подгружался совместно с глобальным...
причем(!) если есть в локальном классы с теми же именами, что и в глобальном, то они должны заменять последние...
artbear
165 - 30.11.2004 - 11:58
Обновил свой скрипт "Замена кода"
[-] баг кода для облегчения работы с Телепатом, на который все жаловались и который самого заколебал.
Теперь работает верно и очень удобно :)
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=1001&lid=4200
IAm
166 - 30.11.2004 - 12:00
164
17706785 стукнись
Dolter
167 - 30.11.2004 - 12:02
2(166) в номере уверен?
artbear
168 - 30.11.2004 - 12:03
(164) А нафига ты используешь классы с одним названием, но разными методами?
ИМХО Если специально так не делать, это может быть, только если пользуешься классами других разработчиков и используешь одни названия классов.
Лучше не заморачиваться с этим, а пользовать один набор классов - и получить первый работоспособный вариант работы с классами 1С++
ЗЫ Я лично всегда на всякий случай для своих классов ставлю свой префикс.
IAm
169 - 30.11.2004 - 12:03
177067865
artbear
170 - 30.11.2004 - 12:10
(165+) Забыл дописать:
Также в скрипте "Замена кода" есть удобные макросы для комментирования/раскомментирования строк.
Например, можно быстро закомментировать текущую строку, не выделяя ее, как у 1С - ИМХО так намного удобнее.
Эти макросы у меня лично сидят вместо 1С на <Ctrl+ Num /> и <Ctrl+ Shift + Num />
artbear
171 - 30.11.2004 - 12:18
(165+, 170+) Исправил маленький баг с положением курсора.
Кто успел закачать, закачайте еще раз.
a13x
172 - 30.11.2004 - 12:46
(170)
Я еще использую мекрос для обрамления уже написанного блока маркерами начала и конца (типа "Это я так круто написал" :-))
Хотелось бы иметь все в одном файле.
artbear
173 - 30.11.2004 - 12:49
Засылай код мне, я добавлю к своим и выложу для всех.
ЗЫ А где твоя ася?
И как со скриптом "СохранениеНастроек" ?
a13x
174 - 30.11.2004 - 13:00
(173) по поводу сохранения настроек - ничего не трогал еще, да и вообще, до нового года врядли чего смогу сделать :-(
по поводу "выслать код" - он на js
Dolter
175 - 30.11.2004 - 13:30
потестите плз конвертилку файлов описаний классов:
---
http://dolter.hotbox.ru/IntsConvert.zip
Dolter
176 - 30.11.2004 - 13:34
блин... кажись с инклудами недоработал...
artbear
177 - 30.11.2004 - 14:21
(176) И еще не работает с алиасами типа #КаталогОбщий
Dolter
178 - 30.11.2004 - 14:52
2(177) а зачем работа с алиасами путей? там же только реализация класса, а отнюдь не требуемое описание методов...
artbear
179 - 30.11.2004 - 14:56
(178) С чего вдруг?
Как думаешь, что означает конструкция в КаталогИБ\defcls.prm
//#inсludе "#КаталогОбщий\ExValueList\ExValueList.prm"
//#inсludе "#КаталогОбщий\ОЛЕ\РаботаСОле.prm"
?
Как раз указание использовать новые определения классов с описаниями методов.
Dolter
180 - 30.11.2004 - 15:19
2(179) спасибо, вроде исправил:
попробуем еще раз:
http://dolter.hotbox.ru/IntsConvert.zip
artbear
181 - 30.11.2004 - 15:58
(180) Опечатка у тебя: файл <o><x><i>.ini должен называться <o><x><y>.ini
artbear
182 - 30.11.2004 - 16:04
(180) На моем наборе классов выдает ошибку
текТ.ДобавитьСтроку("0000 " + Сред(тСтр, т2 + 1, т1 - т2 - 1) + "(" + ?(т3 - т1 > 1, "f", "") + ")");
{G:\1C\INTSCONVERT.ERT(122)}: Значение не представляет агрегатный объект (ДобавитьСтроку)
По какой-то причине текТ не установился :(
artbear
183 - 30.11.2004 - 16:07
(182+) Ага, уже понял. У тебя не учитывается регистр.
Например, может быть Класс
ПОправишь?
artbear
184 - 30.11.2004 - 17:27
(183) Поправил твой код и у меня все нормально отработало.
Только чтобы можно было использовать классы 1С++ типа "Общие.СписокЗначений" (т.е. у которых в названии есть точка), нужно немного поправить Интеллисенс.вбс от ИАм-а.
Конкретно, в районе строки 1226, там где
  Case "QUERYATTRS":
    Methods = GetQueryAttrs(lCase(ExprParts(0)), "")
нужно добавить
' -- Артур --
  Case "_":
    ObjParts = Split(ObjType, vbCRLF)
' -- завершение
artbear
185 - 30.11.2004 - 17:53
(Dolter) Если сам не поправил, дай адрес, я зашлю свой рабочий вариант.
MetaEditor
186 - 01.12.2004 - 03:56
гляньте вот тут скриптик, может кому понравится...
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=5&lid=4401
вин
187 - 01.12.2004 - 06:30
простите за тупой вопрос
поставил опенконф 6 версии скачал телепат в конфигураторе говорю загрузить плагин 1с выдает такую хрень:
Телепат: При загрузке типов 1С произошла ошибка.
XML parser. Код 0x800C0005
Не удается найти указанный ресурс.
Телепат будет работать не в полном объеме.
пайзер переставил тоже самое
artbear
188 - 01.12.2004 - 07:25
(MetaEditor) Мне скрипт понравился. Поздравляю с принятием в Клуб.
Пожелание для развития я тебе написал.
(187) Телепат скачай версии 2, ты закачал и используешь первую :(
artbear
189 - 01.12.2004 - 07:34
(187) А еще специально для таких, как ты, новичков, написан (0)
Почитай, там много полезного :)
Номер 6
190 - 01.12.2004 - 07:56
(186)
Доступно только для участников клуба :-(
MetaEditor
191 - 01.12.2004 - 08:04
190) галку "только для участников" не ставил, лицензия - бесплатная... не знаю... может попозже ...
artbear
192 - 01.12.2004 - 08:24
(190) Еще раз попробуй. После принятия в Клуб разработка должна быть доступна для всех.
Вежливый
193 - 01.12.2004 - 08:24
М.б. немного ОФФ, но ...
Вчера раздраженный очередным вылетом из конфигуратора (был потерян час работы) вырубил и опенконф и телепата. Сегодня утром обнаружил, что без Телепата уже больше не могу :-( Пришлось качать и ставить новую версию :-)
Когда же будет рабочий коммерческий релиз!!!?
artbear
194 - 01.12.2004 - 08:35
(193) Что за "очередной вылет" из Конфигуратора? Работаю уже с Опенконфом не первый год, c новым Телепатом уже полгода (был тестером), практически никаких проблем не возникало. А вылеты очень и очень редки (раз в месяц/два месяца)?
Номер 6
195 - 01.12.2004 - 08:58
(192)
не, нифига
MetaEditor
196 - 01.12.2004 - 09:01
195)попробуй пойти не по ссылке из 186 а через главную страницу проклуба ... там внизу список новых разработок...
Вежливый
197 - 01.12.2004 - 09:01
(194) У меня стабильно раз в неделю. Сейчас скачал все новое посмотрим. Но невзирая на усе вещица просто шоколадная.
artbear
198 - 01.12.2004 - 09:02
(195) Или через (0) - раздел "Опенконф"
a13x
199 - 01.12.2004 - 09:02
+(195) я вообще имени файла не вижу и при скачивании он мне отдает визит.пхп :-(
artbear
200 - 01.12.2004 - 09:09
(ALL) Скрипт для OpenConf'a для быстрого перехода к формуле элемента управления
Автор: MetaEditor
----------------------------------------------------------------
Скрипт позволяет осуществить быстрый переход к процедуре/функции заданной в поле "Формула"
элемента управления.
Для этого необходимо в окне свойств элемента установить курсор в поле "Формула" и нажать
назначенную макросу комбинацию горячих клавиш.
При наличии такой функции/процедуры в модуле происходит переход к ней,
в противном случае - она создаётся.
----------------------------------------------------------------
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=1001&lid=4401
a13x
201 - 01.12.2004 - 09:20
2(MetaEditor)
спасиб, работает :-)
только после создания процедуры/функции желательно позиционировать курсор в ее тело (между Процедура бла_бла () и КонецПроцедуры)
эх... и как бы хотелось отловить двойной клик на элементе диалога, чтобы не лазить в совойства контрола и перемещаться к обработчику автоматом!
кстати, имя обработчика можно брать в исходном коде диалог-стирима контрола, а двойной, клик так и быть, котов променять на хоткей ;-)
artbear
202 - 01.12.2004 - 09:26
(201) Я счас подобным и занимаюсь :)
Номер 6
203 - 01.12.2004 - 09:33
(202)
"формула" может ссылаться и на глобальный модуль
Dolter
204 - 01.12.2004 - 09:52
(artbear) dolter<...>snq<...>ru
заранее спасибо :-)
MetaEditor
205 - 01.12.2004 - 09:58
кстати, как получить глобальный модуль через ОпенКонф, или с АПИ заморачиваться?
IAm
206 - 01.12.2004 - 10:57
Documents.Item("Глобальный модуль")
artbear
207 - 01.12.2004 - 10:57
(205)
Sub OpenGlobalModule()
  Documents("ГлобальныйМодуль").Open
End Sub ' OpenGlobalModule
trdm
208 - 01.12.2004 - 12:52
Каким макаром вы добираетесь до проклуба?
У меня пишет:
Connection to server 1c.proclub.ru failed (Connection actively refused by the server.)
Уже второй день, такое впечатление как будто меня вырубили :(
Тертый
209 - 01.12.2004 - 13:01
Это он упал, часа 2 назад все работало, я скачал.
trdm
210 - 01.12.2004 - 13:24
Перекиньте скрипт из 200 на trdm!rambler.ru, плз.
Тертый
211 - 01.12.2004 - 13:27
ушло
MetaEditor
212 - 01.12.2004 - 13:34
завтра положу хотфикс, а то проклуб не отвечает
1) добавлен переход к глобальным процедурам
2) исправлена ошибка при переходе к процедуре с параметрами
3) добавлено позиционирование в созданную процедуру
Тертый
213 - 01.12.2004 - 13:38
212) Хорошая штука!
trdm
214 - 01.12.2004 - 14:08
(211) Спасибо, ушло.
Кстати, ИМХО возможно использование скриптов и в таблицах,
только там не в dor.Range() надо пихать а СендКейсом.
Пробовал кто нибудь?
trdm
215 - 01.12.2004 - 14:12
-(214) Вернее поймал.
slavka
216 - 01.12.2004 - 14:55
(214) вроде у orefkov'a в скрипте agent.vbs что-то было.
ondul
217 - 01.12.2004 - 15:43
(213) - Пропустил эпоху телепата, пробую, выдает следующее:
===
Скрипт C:\PROGRAM FILES\1CV77\BIN\config\scripts\1cv7srct.st
Не удалось получить имя скриптового движка.
Скрипт C:\PROGRAM FILES\1CV77\BIN\config\scripts\1cv7srct.st
Не удалось получить имя скриптового движка.
Скрипт C:\PROGRAM FILES\1CV77\BIN\config\scripts\history.txt
Не удалось получить имя скриптового движка.
Скрипт C:\PROGRAM FILES\1CV77\BIN\config\scripts\history.txt
Не удалось получить имя скриптового движка.
Скрипт C:\PROGRAM FILES\1CV77\BIN\config\scripts\telepat.chm
Не удалось получить имя скриптового движка.
Скрипт C:\PROGRAM FILES\1CV77\BIN\config\scripts\telepat.chm
Не удалось получить имя скриптового движка.
===
Пожалуйста, ткните носом, куда - до концентрированного выражения мысли, как лечит трабл, чего не хватает?
!!!
Номер 6
218 - 01.12.2004 - 15:54
(217)
В \scripts должны лежать только скрипты.
ondul
219 - 01.12.2004 - 16:34
(218) - благодарю!, :-)
Bot
220 - 01.12.2004 - 16:44
Пора придти Орефкову и объявить о выходе telepat v2.0.0.0p. А то ветка уже подыхает...
Тертый
221 - 01.12.2004 - 16:56
Орефков! Орефков! Орефков! Орефков! Орефков! Орефков! Орефков! Орефков!
Тертый
222 - 01.12.2004 - 16:58
+220) лучше о "работе после точки"...
Michael
223 - 01.12.2004 - 17:03
(220) обманул
Хотя вот все равно мен не понятно...
И trdm и IAm кропают классные вещи...
И через несколько точек работает...
А Орефков бросил тему дополнения Методов,Реквизитов...?
У него все равно лучше выглядит т.к. есть пиктограммки
orefkov
224 - 01.12.2004 - 17:10
(223)
Да не бросил я :)
Делаю потихоньку.
Просто последние две недели была другая работа.
Ее вроде закончил, опять засяду за телепата.
Есть вообще безумная мысль, совсем подменить редактор
1Совский на ченить свое, чтобы там сворачивание процедур
сделать, и тп. Но это отдаленные планы.
Тертый
225 - 01.12.2004 - 17:32
224)(шепотом...) и когда планируется бета версия "после точки"?
IAm
226 - 01.12.2004 - 17:34
(криком...)Какая разница когда планируется? Важно когда будет.
slavka
227 - 01.12.2004 - 17:34
(224)так мож и дебагер в конфигуратор тож всунуть?
Тертый
228 - 01.12.2004 - 17:35
226) Поддерживаю!
224) Када будет?!!!
trdm
229 - 01.12.2004 - 18:02
(224) Ждем.... Отличная продвинутая вещь получается....
(186) Отличная штучка получилась, поругалась правда на Comon, но это легко порпавимо. Попробовал эмулировать ESC в скрипте, чтобы убрать окошко свойств, но походу надо использовать не SendKeys а типа PostMessage, т.к. видимо фокус ввода переключается на окно редактора и ESC уходит туда, а редактору "ESC" до лампочки, но пока не добрался. Есть наметки продвинуться в этом направлении?
orefkov
230 - 01.12.2004 - 23:10
(227)
А ты положи trace.dll в bin\config :)
Правда, вылетает при попытке точку останова поставить.
trdm
231 - 02.12.2004 - 03:33
Новая вариация "Подсистем" - "Подсистемы3"
http://www.trdm.mail333.com/SubS3.zip
на базе: http://openconf.itland.ru/beta/htmlview.zip
Установка (Копируем):
"SubS3.htm" в каталог "bin"
"SubS3.js" в каталог "Scripts"
Запускаем: SubS3->ShowSubS3
Работа:
Выводится WEB-страница с двумя деревьяим, в левом усеченные метаданные, в
правом окошко с подсистемами. Кнопка "Новая" Добавляет подсистему.
2 режима работы формы:
1. Режим пометки объектов. Строится "полное" дерево метаданных.
  В левом окошке выделяем объект, Справочик, документ и т.п.
  в правом отмечаем те подсистемы, которые относятся к объекту
2. Режим фильтрации объектов: отмечая в списке галочками подсистемы дерево
  метаданных фильтруется, оставляя только те объекты, которые относятся
  к выделенным подсистемам.
Флажок "Сорт" позволяет включить/отключить опцию сортировки объектов в дереве.
формы объектов открываются в TreeView1_DblClick() двойным щелчком или Enter.
Хранение данных:
SUBC.DBF - список подсистем (каталог БД)
SUBOBJ.DBF - объекты в связке с подсистемами (каталог БД)
artbear
232 - 02.12.2004 - 08:21
(trdm) В аську выйди, я там тебе отписал кое-что :)
orefkov
233 - 02.12.2004 - 08:49
(231)
Посмотри плагин IExplorer на openconf'e, там как раз
позволяет организовать удобный веб-интерфейс, и самое главное
позволяет из скриптов на хтмл-странице без проблем обращатся
к опенконфу.
slavka
234 - 02.12.2004 - 10:07
(227) так не надо чтоб вылетал :)
(ALL) кто как думает нужен ли скрипт который будет с реестром работать?
MetaEditor
235 - 02.12.2004 - 10:11
234) так есть же "WScript.Shell" ...
artbear
236 - 02.12.2004 - 10:12
(234) Ты говоришь о настройках в реестре?
slavka
237 - 02.12.2004 - 10:19
(234) вот я и хочу это завернуть в скрипт. сделать что-то наподобие common.vbs но только для работы с реестром.
(235) чтение, запись и т.д.
slavka
238 - 02.12.2004 - 10:24
упс... в 237 вместо 234 - 235, а вместо 235 - 236.
a13x
239 - 02.12.2004 - 10:43
2(238)
236 актуальнее вроде - выгрузка настроек телепата и настроек скриптов, которые хранят свои установки в реестре во внешний файл
есть наброски - может подхватишь, раз собрался с реестром возиться? как раз попутно и библиотеку напишешь для работы с реестром?
вот это
http://kuntashov.narod.ru/files/settings.js
то что было набросано на эту тему (JScript), может быть, поможет
если что, вопросы на akuntashov - собака! - ru/yandex
slavka
240 - 02.12.2004 - 11:00
(239) до библиотеки мне еще знаний не хватает, а вот скрипт осилю. http://kuntashov.narod.ru/files/settings.js посмотрю мож и пригодиться.
slavka
241 - 02.12.2004 - 12:05
на http://1c.proclub.ru/modules/mydownloads/personal.php?cid=1001&lid=4404
выложил скрипт "Поиск ссылок". Отличие от стандартного поиска в том что поиск идет не только в реквизитах, но и в модулях.
Тертый
242 - 02.12.2004 - 12:10
Большое спасибо!
Извините, но Вы не имеете достаточных прав для скачивания данной разработки.
Данная разработка предназначена только для участников КЛУБА.
MetaEditor
243 - 02.12.2004 - 12:10
!Проклуб завёлся...!
обновил скрипт GoToFormula
1) добавлен переход к глобальным процедурам (те что начинаются на "гл")
2) исправлена ошибка при переходе к процедурам с параметрами
3) добавлено позиционирование в созданную процедуру
http://1c.proclub.ru/modules/mydownloads/personal.php?lid=4401&cid=1001
slavka
244 - 02.12.2004 - 12:11
нужно чтоб кто-нибудь ее принял.
The_JOhn
245 - 02.12.2004 - 12:22
подскажите , плз, на каком языке пишут скрипты для OpenConf
сорри за такой вопрос, но когда-то ведь надо начинать???
я так понял это VB?
trdm
246 - 02.12.2004 - 12:24
(233) Я его только сегодня увидел.
(243) А на 229.2 не заглядывался? На счет убрать окно свойств, когда оно пришпилено?
a13x
247 - 02.12.2004 - 12:27
любой язык, для которого реализован Active Scripting Engine,
по дефолту в видах установлены VBScript и JScript
подробнее http://www.mindspring.com/~mark_baker/langgen.htm#LEG1 (на англ)
вот здеть http://www.mvps.org/scripting/languages/ более полный список, тоже на английском
MetaEditor
248 - 02.12.2004 - 12:28
246) щас подумаю...
The_JOhn
249 - 02.12.2004 - 12:29
(247) Спасибо
SlaBoy
250 - 02.12.2004 - 12:38
При загрузке Конфигуратора в скриптах ругается на строку "Set CommonScripts = Scripts("common")" ругается на "Недопустимый индекс common":(
Как это можно победить?..
Win2K4SP, 1C 23SQL, WSH 5.6
a13x
251 - 02.12.2004 - 12:40
(250) это библиотечный скрипт, там собраны все общие функции и многие скрипты зависят от него
так что тебе нужен этот самый common.vbs, скачай, например, с проклаба скрипт "Замена кода" artbear'a - там, если не ошибаюсь, последняя версия этого скрипта

Rambler's Top100 1C:TOP-100

© 1998-2004 Fedor Ezeev.

Last updated: 2005-09-05