Персональная страница Федора Езеева
Главная
Download
Ссылки
MS SQL
Обмен данными
Новости
Статьи
О себе
Крупные разделы...
Коллективная разработка
1С++, OOP, XP
FuncTest
FAQ
Структура 1cv7.md
Телепат 2 (пререлиз) и Опенконф (продолжим 7 ?)
artbear
21.10.2004 - 16:41
Итак, начнем 8 ветку о Телепате и Опенконфе - программирование для Конфигуратора, облегчение работы разработчиков 1С!
Теперь уже точно свыше 2000 постов :)
Для тех, кто только что присоединился.
Автор всего этого набора чудес - Александр Орефков
---------------------------------------------------------
Сабж + скрипты для Опенконф
http://openconf.itland.ru/beta
FAQ
http://1c.alterplast.ru/faq/telepat.html
Другие скрипты для Опенконфа можно взять здесь
http://itland.ru/forum/index.php?showtopic=4456
Ранние ветки о Телепате можно взять на
http://1c.alterplast.ru/openconf
Если у кого есть что-то интересное для Опенконфа - плагины, скрипты, присылайте мне, я размещу на http://openconf.itland.ru
-----------------------------------
Качать и пользовать всем, кто хочет реально облегчить и обустроить свою работу в Конфигураторе :)
Phoenix
1 - 21.10.2004 - 17:27
up
mes
2 - 21.10.2004 - 17:40
мда рекордная ветка однако надо бы 7 прошлых почитать.
Ато поставил вчера...ну ищет он че то там по первым символам. И чо?
poi
3 - 21.10.2004 - 17:53
а)
Выбираю "Если КонецЕсли" вставляет кончтрукцию
Если Тогда
КонецЕсли
-
Выбираю "Если", вставляет
Если
-
А можно добавить конструкцию
Если КонецЕсли
?
б) почему нет подбора стандартных объектов? Например в
таб = СоздатьОбъект("таблица");
он вместо "таблица" предлагает все, кроме "таблица".
fez
4 - 22.10.2004 - 04:29
(0) Выложил предыдущую ветку на http://1c.alterplast.ru/faq/telepat.html
SlonSpb
5 - 22.10.2004 - 04:58
Согласен с (3). конечно, есть такая штука - шаблоны, но всё же, при угадывании слова "СоздатьОбъект" можно далее после ввода Спис... предложить
СписокЗначений...
Номер 6
6 - 22.10.2004 - 07:11
Сори, мейл застрял. Попробую еще что-нить придумать.
slavka
7 - 22.10.2004 - 09:20
качайте vba50@mail.ru
pwd: vba
ShootNICK
8 - 22.10.2004 - 09:25
таки что с apc6 ? кто то вроде давал ссылку на дистриб да в мыле том пусто было :(
ShootNICK
9 - 22.10.2004 - 09:30
ага.. угу.. долго нажимал отправить :)
slavka
10 - 22.10.2004 - 09:38
(8,9) в 7 посте ящик. там есть
GrayT
11 - 22.10.2004 - 10:42
Вопросик по VB. Как из скрипта открыть для редактирования сам объект МД. Т.е. не какую-нибудь форму или модуль, а то что по кнопке Редактирование?
Phoenix
12 - 22.10.2004 - 10:43
(11) а никак, сам жду этого :(
GrayT
13 - 22.10.2004 - 11:05
(12)Жаль. Написал обработку и скриптик, которые разбивают данные по подсистемам (для быстрого доступа). Хотелось бы редактировать не только формы/модули, но и сами объекты
orefkov
14 - 22.10.2004 - 11:13
(12) Честно говоря, пока не нашел методов в 1С дллках
для этого. Как вариант хочу сделать так:
Находим хендл тривьюва на закладке "Метаданные",
а дальше просто посылаем ему сообщения, установить
селекшен, и тд. Можешь попробовать?
GrayT
15 - 22.10.2004 - 11:18
(14)Нет, не посилам :( Я вчера с трудом понял как синтакс-помощник закрывается.
Смотрел что происходит при открытии справочника/документов, но так ни чего на ум не пришло
Phoenix
16 - 22.10.2004 - 11:28
(13) именно это я щас и пишу на Дельфях, застрял из-за невозможности открытия объектов, все остальное сделано.
(14) как раз об этом думал. сегодня попробую.
artbear
17 - 22.10.2004 - 11:35
Обновление моего скрипта "Переходы по модулю.вбс"
Обновление состоит из 2 частей:
1) в скрипте common.vbs нужно заменить функцию GetDocumentPosition на следующий код
Function GetDocumentPosition(Doc)
  Set GetDocumentPosition = new TDocumentPosition
  GetDocumentPosition.Save(Doc)
End Function ' GetDocumentPosition
2) В скрипт "Переходы по модулю.vbs" нужно вставить следующий код (ВНИМАНИЕ: кодировка ДОЛЖНА БЫТЬ ВИН, а не дос)
' Автор - Артур Аюханов aka artbear, artbear@bashnet.ru
' быстро перейти к началу/завершению текущей процедуры/функции
'
Dim CommonScripts
Dim PositionInModule
Sub GotoBeginOfMethod()
  set doc = CommonScripts.GetTextDocIfOpened(0)
  if doc is Nothing then Exit Sub
    
  set PositionInModule = CommonScripts.GetDocumentPosition(doc)
  
  ModuleText = split(doc.Text, vbCrLf)
  for i = doc.SelStartLine to 0 step -1
    sText = UCase(ModuleText(i))
    if Instr(sText,"ПРОЦЕДУРА") = 1 or Instr(sText,"ФУНКЦИЯ") = 1 then
      doc.MoveCaret i, 0
      Exit For
    end if
  next
End Sub ' GotoBeginOfMethod
Sub GotoEndOfMethod()
  set doc = CommonScripts.GetTextDocIfOpened(0)
  if doc is Nothing then Exit Sub
    
  set PositionInModule = CommonScripts.GetDocumentPosition(doc)
  ModuleText = split(doc.Text, vbCrLf)
  for i = doc.SelStartLine to UBound(ModuleText)
    sText = UCase(ModuleText(i))
    if Instr(sText,"КОНЕЦПРОЦЕДУРЫ") = 1 or Instr(sText,"КОНЕЦФУНКЦИИ") = 1 then
      doc.MoveCaret i, 0
      Exit For
    end if
  next
End Sub ' GotoEndOfMethod
Sub ReturnToSavedPosition()
  set doc = CommonScripts.GetTextDocIfOpened(0)
  if doc is Nothing then Exit Sub
    
  PositionInModule.Restore
End Sub ' ReturnToSavedPosition
Sub Init(param)
  Set CommonScripts = Scripts("common")
End Sub
Init 0
GrayT
18 - 22.10.2004 - 11:36
(16)Т.е. в виде плагина? Интересно будет глянуть.
Кстати, если кому интересно буде из 13 www.grayt.front.ru/subsystm.zip
artbear
19 - 22.10.2004 - 11:37
(17+) В результате после перехода на начало/конец функции/процедуры, просмотра/редактирования там кода можно легко вернуться на то место, в котором находились до перехода.
Phoenix
20 - 22.10.2004 - 11:42
(18) да, в виде плагина.
(14,19) проверьте снова мыло, не ту ДЛЛ выслал :(
Phoenix
21 - 22.10.2004 - 11:53
(18)
при открытии ерт:
ФайлДанных.Загрузить(ФайлЭксп);
{C:\PROGRAM FILES\1CV77NET15\BIN\CONFIG\DESCRIPTSUBSYSTEM.ERT(222)}: : The system cannot locate the resource specified.
ДЛЛ зарегил
ShootNICK
22 - 22.10.2004 - 11:58
17 как то скопированный текст на комменты в конце процедур эротично отреагировал :)
artbear
23 - 22.10.2004 - 11:59
(22) Пример кода + действие скрипта
GrayT
24 - 22.10.2004 - 12:00
(21)Во, млин. Эксперементировал на базе где файл всегда существовал :(
ПриОткрытии подмени
Если ФС.СуществуетФайл(ФайлЭксп)=1 Тогда
  Если Вопрос("Файл с данными уже существует!
   |Загрузить существующие подсистемы?",1,120)<>1 Тогда
    Возврат;
  КонецЕсли;
Иначе
  Возврат;
КонецЕсли;
Сейчас архив подправлю
ShootNICK
25 - 22.10.2004 - 12:16
да ладно расслабься :) код скопирован из 17 при выполнении скрипта ошибку выдал на комменты В СКРИПТЕ, а не в 1с модуле как может кто то подумал :)
SAS
26 - 22.10.2004 - 12:23
(18) У меня работает.
Только сразу бросилось в глаза, в списке макросов "Выбор подсистемы - ShoiceSubSystem". Но это мелочи.
Бертыш
27 - 22.10.2004 - 12:39
Разобрался как добавить константу скриптом, а как добавить реквизит справочника, общий реквизит документа и наконец как сделать что бы добавленная константа отображалась в дереве?
orefkov
28 - 22.10.2004 - 12:39
Всем. ВАЖНО!!!
В "Клубе профессионалов" открылся раздел для ОпенКонфа.
глянуть можно здесь:
http://1c.proclub.ru/modules/mydownloads/viewcat.php?cid=1002
Как добавлять разработки - добавлять через ссылку http://1c.proclub.ru/modules/mydownloads/submit.php
там в разделе "Внешняя компонента" добавлен пункт OpenConf, т.е. разработка сначала добавляется на рассмотрение в Каталог разработок,
а я уже через администрирование раздела буду принимать разработку.
Гарфилд
29 - 22.10.2004 - 12:41
Есть уже VBA SDK 6.4 можно куда-нибудь выложить для Орефкова только куда?
orefkov
30 - 22.10.2004 - 12:42
(27) Пока програмно можно только работать с
константами и перечислениями. Работы по расширению ведутся.
Обновить окно конфигурации: MetaData.RefreshMDWnd
Бертыш
31 - 22.10.2004 - 12:47
(30) А как правильно определять тип константы?
orefkov
32 - 22.10.2004 - 12:57
2artbear
Артур, посмотрел у тебя поиск начала/конца метода.
У тебя там всегда берется полный текст модуля,
что на ГМ может тормозить. В телепате я для этих
целей считываю текст модуля блоками по 100 строк,
начиная от текущей, используй Range.
(29)
Попробуй, заработает ли oc2vba63.dll с VBA 6.4
Если нет, вышли мне apcXX.dll из нее на orefkov $ ezmail.ru
orefkov
33 - 22.10.2004 - 13:19
(31) Небольшой пример.
Перечисляет все константы, добавляет одну,
устанавливает ей тип первого справочника.
Sub TestConst()
    Set con = MetaData.Constants
    cnt = con.Count
    Message "Констант - " & CStr(cnt), mNone
    For i = 0 To cnt - 1
        Message con.Name(i), mNone
    Next
    Message con(0).Periodic, mNone
    Set nConst = con.Add("Cnst", "Добавлено автоматом")
    Message "new id=" & CStr(nConst.ID), mNone
    Set t = nConst.Type
    t.Type = ttReference
    t.ID = MetaData.TaskDef.Childs("Справочник")(0).ID
    nConst.Type = t
    nConst.Periodic = True
    MetaData.RefreshMDWnd
End Sub
artbear
34 - 22.10.2004 - 13:24
(orefkov) Спасибо за совет, но я специально проверял на различных конфах, в т.ч. на комплексной - вообще не тормозит, потому и не стал заморачиваться особо.
У тебя же задачи нескольки иные в телепате, посложнее :)
моя рабочая машина - пень4, 512 ОЗУ.
Phoenix
35 - 22.10.2004 - 14:59
up
artbear
36 - 22.10.2004 - 14:59
(orefkov) Закинул свой набор скриптов в Клуб Профессиналов, прими плиз.
ЗЫ Обновил по сравнению с тем, что на опенконф.итланд.ру
artbear
37 - 22.10.2004 - 15:15
На http://openconf.itland.ru/beta поместил примерное описание используемых мной скриптов из выложенного мной же набора.
Огромное спасибо за представленное описание Вячеславу Тимошину aka slavka
SAS
38 - 22.10.2004 - 15:31
(37) У меня по ссылке "описание" ругается.
А у остальных работает?
artbear
39 - 22.10.2004 - 15:38
(38) Упс, ошибочный линк поставил.
Поправил, качайте :)
SAS
40 - 22.10.2004 - 15:41
(38) Спасибо. Все отлично!!!
Sergo77
41 - 22.10.2004 - 15:45
(Может не в тему) Когда открываю конфигурацию, с Опенконф-ом, то foobar2000 v0.8.3 затыкается :(
Sergo77
42 - 22.10.2004 - 15:55
Эээээээээээээ. Да это система. На любое дуновение ветра клинит.
Сорьте.
Без тапок
43 - 22.10.2004 - 16:01
Поясните, пожалуйста, чайнику.
Написал на VB простенькую DLL-ку, котрая вызывается из скрипта и что-то там делает. Это работает.
А вот как из скрипта вызвать её форму так, чтобы она открывалась внутри конфигуратора, а не как отдельное окно? Или форму можно создавать только в проекте *.ocp? Извините, пока у меня некоторый бардак в голове.
artbear
44 - 22.10.2004 - 16:19
(GrayT) В принципе, мне понравился твой "Выбор подсистем".
Уже начал пользоваться:)
Сразу подправил для немедленного открытия формы/модуля, если у объекта больше других форм нет (например, обработки, отчеты)
orefkov
45 - 22.10.2004 - 16:25
(43)
Создай в VB проект ActiveDocument dll, (только не ложи ее в bin\config),
и открывай из скрипта OpenOLEForm ProgIDТвоейДлл
orefkov
46 - 22.10.2004 - 16:37
(36)
У тебя разработки, как у члена клуба, сразу попадают.
Я только подправил, при добавлении там в самом конце списка надо
ставить галки OpenConf, Скрипты
GrayT
47 - 22.10.2004 - 16:56
(22)В принципе сам хотел это сделать, да подзабыл. Думал сделать когда научусь объекты открывать...
Поспешишь людей насмешишь... Закинул в клуб, да Choice подправил.... с руской буквой "С" :) Умора.
Без тапок
48 - 22.10.2004 - 16:56
orefkov, а можно чуть-чуть подробнее, а то все выходные маяться буду :)
Создаю в VB проект ActiveDocument dll пусть будет Proba.dll
вопрос №1 - ему надо добавить форму или UserDocument1?
Регистрирую DLL
вопрос №2 - OpenOLEForm - это название какого-то скрипта или что-это?
orefkov
49 - 22.10.2004 - 17:07
(48) По шагам.
Добавляешь UserDocument. Задаешь имя проекта, например, Proba,
и имя твоего UserDocument, например TestDoc
Тогда прогид твоего объекта Proba.TestDoc
Для пробы кидаешь на форму ченить.
Компилишь.
Потом в ОпенКонф пишешь скрипт, в котором пишешь
Sub OpenMyForm()
    OpenOLEForm "Proba.TestDoc"," Это моя форма"
End Sub
Запускаешь макрос, и все.
Позже продолжим урок.
Можешь для примера запустить в ОпенКонф такой макрос
OpenOLEForm "Word.Document"," Это Ворд"
и посмотреть результат.
Без тапок
50 - 22.10.2004 - 17:11
Спасибо! Заработало! Я второй параметр опускал, вот она и ругалась.
ShootNICK
51 - 22.10.2004 - 19:17
Хорошо бы макрос по мотивам темы :
http://bbs.flymachine.ru/viewtopic.php?t=4
гибкие блокировки - последний пост.
trdm
52 - 22.10.2004 - 21:41
(28) У меня с клубом профессионалов нелюбовь :(
ни один рарегистрированный высланный ими пароль не пашет :(
Стопятый раз регисться не хочется.
trdm
53 - 22.10.2004 - 23:00
(49) Svcsvc.Service ->SelectValue(Method_Doc,"Выберите, плиз",False)
В выборе списком клевым элементом была бы полоса прокрутки, некоторые элементы списка оказываются спрятанными.
А сделать сортировку списка просто напрашивается -> поискал в VBS сортировку списков, увы не нашел.
Хочу сказать спасибо за гениальный выбор процедур, :) Экономит много времни.
trdm
54 - 22.10.2004 - 23:02
ALL скрипт открытия форм по строке "спр.видс|пр.." кто нибудь использует?
обновления выкладывать?
slavka
55 - 22.10.2004 - 23:16
(54) конечно выкладывай!
(orefkov) Александр! имхо, было бы неплохо иметь возможность открытия макроса с закладки опенконфа в vb по клику по макросу.
trdm
56 - 23.10.2004 - 01:02
У кого есть формат диалог-стрима?
Намыльте, плз.
Бертыш
57 - 23.10.2004 - 12:49
(33) Спасибо за пример. С нетерпением ждем возможности добавлять всё остальное.
Бертыш
58 - 23.10.2004 - 13:08
Есть такая мысль расширить возможности синтаксиса шаблонов.
Например добавить туда возможность выбора реквизита справочника и обхода реквизита справочника.
В синтаксисе шаблонов есть ряд предопределённых конструкций типа <?"",Константа> и есть ряд произвольных конструкций которые запрашивают ввод пользователей например <?"ИмяПроцедуры()">. Можно расширить набор предопределённых конструкций таким образом что при наличие некоего плагина для конфигуратора конструкция будет позволять выбрать реквизит справочника, документа и пр. обойти их в цикле заменяя на некоторую конструкцию введённую пользователем добавляемую к каждому реквизиту,а при отсутствие плагина на уровне самой 1С это будет рассматриваться как конструкция которая требует ввода пользователя. То есть как при наличие так и при отсутствие плагина файл шаблонов будет коректен с точки зрения 1С. К сожалению моя кфалификация не позволяет написать соответсвующий плагин может кто-нибудь это реализует?
artbear
59 - 23.10.2004 - 13:36
(Бертыш)
>> будет позволять выбрать реквизит справочника, документа и пр.
>>обойти их в цикле заменяя на некоторую конструкцию,
>>введённую пользователем добавляемую к каждому реквизиту
Я лично ничего не понял
Расшифруй подробнее, приведи пример.
bsi
60 - 23.10.2004 - 14:26
Fez, Orefkov, Artbear!!!
В скрипте gcomp.vbs есть строки:
//----------------------
Dim cvs
' Запуск GComp с заданной строкой
Sub RunGComp(cmd)
  Message cmd,mInformation
    On Error Resume Next
    ret = Plugins("1CVS").GComp.Run(cmd)

//---------------------------
Sub Init(param)
  set cvs=Plugins("1cvs")
  if Not cvs Is Nothing Then
    cvs.cvs.CVSPath = "C:\Program Files\cvsnt\cvs.exe"
    cvs.cvs.CVSRoot = ":local:T:\Repository"
    cvs.cvs.GUIPath = "C:\Program Files\WinCvs 1.3\wincvs.exe"

//--------------------
где используется плагин 1cvs. Перерыл все релизы openconf’a, gcomp’a –нет ни где.
Дайте народу помацать это сокровище. Это недостающий элемент в связке 1c – gcomp – cvs
artbear
61 - 23.10.2004 - 14:40
(60) Плагин 1cvs - это творение orefkov-а и fez-а
Если они дадут добро на опубликование (в чем я лично не сомневаюсь!!), сразу выложу плагин.
(Orefkov) Может быть, сам положишь к себе на сайт и в Клуб Профессионалов
bsi
62 - 23.10.2004 - 14:43
Ждем-с :)
artbear
63 - 23.10.2004 - 14:44
(Orefkov) Предложение по телепату (TODO):
хотелось бы, чтобы в форме документа при нажатии Ctrl+Enter на процедуре Провести(...) телепат переключался на модуль документа и вставал на процедуру ОбработкаПроведения.
имхо было бы удобно
trdm
64 - 23.10.2004 - 16:04
при использовании "Svcsvc.Service " конфигуратор вылетает спустя какое - то время, по моему когда отменяется выбор из списка.
a13x
65 - 23.10.2004 - 16:41
(56) ушло
(63) а на другую комбинацию клавиш не сойдет ;-)
Бертыш
66 - 23.10.2004 - 18:55
Пример есть в синтаксисе шаблонов конструкции
<?"",Константа> возвращает выбранную пользователем константу и подставляет её в текст
<?"",Справочник> возвращает выбранный пользователем справочник и подставляет её в текст
и т.д. и т.п.
Обогощаем синтаксис шаблонов конструкцией
<?"",СправочникРеквизит> возвращает выбранный пользователем реквизит справочника и подставляет его в текст
Обогощаем синтаксис шаблонов конструкциями привожу пример
<?"",СправочникРеквизитЦикл>
Сообщить(""<?"",СправочникРеквизитИдентификатор>"")
<?"",СправочникРеквизитКонеЦикла>
Пусть у справочника есть реквизиты
Первый и Второй
В результате в код вставляеться
Сообщить("Первый")
Сообщить("Второй")
и т.д. и т.п.
orefkov
67 - 23.10.2004 - 21:49
(61) Таможня дает добро.
Правда сам я пока расцениваю этот плагин как очень
раннюю бету. А в последнее время смог весь функционал,
который там есть, сделать на скрипте.
fez
68 - 23.10.2004 - 22:27
(61) Интересно, почему мне много чего приписывают из того, что я не делал?
:))
fez
69 - 23.10.2004 - 22:29
(61) Что-то в последнее время мне все чаще приписывают чего-то из того, что я никогда не делал. К чему бы это?
:))
fez
70 - 23.10.2004 - 22:31
(68, 69) диалап - прикольная штука. Когда он рвется - никогда не знаешь, что уже успело проскочить, а что - еще нет :)
fez
71 - 23.10.2004 - 22:41
(61, 67) http://1c.alterplast.ru/files/1cvs.zip
trdm
72 - 24.10.2004 - 10:22
Вывод информации из простого плагина в Строку состояния.
// Ищем статус бар у главного окна
HWND m_myFrameWnd, m_hwndStatusBar_m;
m_hwndStatusBar_m = NULL;
m_myFrameWnd = AfxGetApp()->GetMainWnd()->m_hWnd;
LPSTR p_StatBarClassName = "msctls_statusbar32";
LPSTR p_StatBarName = "";
m_hwndStatusBar_m = ::FindWindowEx(m_myFrameWnd, NULL, p_StatBarClassName, p_StatBarName);
if (m_hwndStatusBar_m != NULL) {
  ::SendMessage(m_hwndStatusBar_m, WM_SETTEXT, 0, (LPARAM) "Для получения подсказки нажмите F1");
}
trdm
73 - 24.10.2004 - 10:26
Предупреждение: если запомнить m_hwndStatusBar_m в переменной класса возникают глюки при попытке выбрать пункт любого меню.
trdm
74 - 24.10.2004 - 10:34
А SelectMetaObj где задокументирован? В openconfе я его не нашел.
bsi
75 - 24.10.2004 - 10:58
(67,71) Спасибо большое. Будем посмотреть :)
(67) А скриптик посмотреть мона? Очень нуна !:)
trdm
76 - 24.10.2004 - 14:21
(+53)
Пузырьковая сортировка для списка в vbs скриптах :)
Dim ListForSort
ListForSort = Split(StrReverse("ааа,баа,аaaб,агааа,адаа"),",")
SortContinue = True
do while(SortContinue)
  SortContinue=False
   for i=0 To UBound(ListForSort)-1
   if ( ListForSort(i) > ListForSort(i+1)) Then
   ItemOfListForSort = ListForSort(i)
   ListForSort(i) = ListForSort(i+1)
   ListForSort(i+1) = ItemOfListForSort
   SortContinue = True
       end if
   Next
Loop
MsgBox Join(ListForSort,",")
'Вобшем что смог придумать
trdm
77 - 24.10.2004 - 23:26
// Рабочий вариант. (copy-paste)
Function SortStringForList(SortStr, Spliter)
  ListForSort = Split(SortStr,Spliter)
  SortContinue = True
  do while(SortContinue)
    SortContinue=False
    for i=0 To UBound(ListForSort)-1
      if ( ListForSort(i) > ListForSort(i+1)) Then
        ItemOfListForSort = ListForSort(i)
        ListForSort(i) = ListForSort(i+1)
        ListForSort(i+1) = ItemOfListForSort
        SortContinue = True
      end if
    Next
  Loop
  SortStr = Join(ListForSort, Spliter)
  SortStringForList = SortStr
End Function
MetaEditor
78 - 25.10.2004 - 05:02
2 Orefkov:
Александр, можно сделать так, чтобы, например при загрузке конфигуратора, если нажат левый ЦТРЛ или другая кнопка, то плагины со скриптами не загружались... ну или для начала как в Configurator_AllPluginsInit() отследить нажато ли чтонибудь...
ADirks
79 - 25.10.2004 - 07:06
Положил скрипт на 1c.proclub.ru, но он почему-то не попал в раздел OpenConf. Птицы ставил "Внешняя компонента" и "OpenConf".
Скрипт является ещё одной вариацией на тему navigator.js, но несколько более сообразительный.
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=139&lid=4178
Для пущей пущести приведу описание:
Скрипт, который открывает объект (справочник, документ, отчет, обработку), имя которого находится под курсором.Имя может быть полным (Справочник.Контрагенты) или без типа (Контрагенты). Если в конфигурации объект не нашёлся, то скрипт пытается открыть внешний отчёт (или файл). Внешний отчёт ищется в каталоге ИБ, в каталоге ExtForms, в каталогах из конфигурационного файла от плагина ExtFormsTree от Сергея Ушакова и затем рекурсивно во всех подкаталогах каталога ИБ. Если и это не удалось, то запускается скрипт "Открыть файл из директивы ЗагрузитьИзФайла" от AlexQC(если он конечно есть).
artbear
80 - 25.10.2004 - 08:38
Я вроде бы понял, почему скрипты и плагины не попадают в раздел Опенконфа в Клубе Профессионалов.
Не нужно было ставить галочку Внешняя компонента или приложения, нужно только Опенконф.
orefkov
81 - 25.10.2004 - 09:05
(72)
CMDIFrameWnd* pFrame=(CMDIFrameWnd*)AfxGetMainWnd();
CStatusBar* pBar=(CStatusBar*)pFrame->GetMessageBar();
pBar->SetPaneText(0,"Hello!!!",TRUE);
(хинт)
При загрузке плагина главное окно еще не создано,
AfxGetMainWnd вернет окно сплеш-заставки. Поэтому
лучше используя 1С-хедеры делать
GetBKEndUI()->DoStatusLine("Hello");
В этом случае выведется в строку на сплеш-заставке.
(74)
Это функция в самом telepat.vbs, посмотри ниже.
(75)
Да там пока ничего особенного, как и в самом плагине.
Просто запуск cvs, gcomp в окне консоли и пересылка их вывода
в окно 1С. Ну еще сделана первоначальная инициализация
конфигурации (разборка мд, папок exforms и тп, импорт в репозитарий).
Со временем выложу.
(78)
Постараюсь сделать.
(79)
Там в конце списка есть еще OpenConf-плагины и скрипты, отредактируй
разработку.
fez
82 - 25.10.2004 - 09:16
(75, 81) А то, что я на итланде положил - это оно?
bsi
83 - 25.10.2004 - 09:35
(81,82)Спасибо
trdm
84 - 25.10.2004 - 09:47
Есть у кого скрипт по разделке диалог-стрима?
Я структуру понял, разобрать можно, не хочется велосипед изобретать.
Интересует ID и тип/вид контрола.
trdm
85 - 25.10.2004 - 09:50
Еще пару вопросов:
Непонятка с параметрами в скриптах, вроде отсылаешь одно, получаешь другое.
У кого-нить есть дока по скриптовым регэкспам (русская)?
Артур, в твоей коллекции есть скрипт с ними, но я не въехал.
cathode
86 - 25.10.2004 - 10:07
(85) А регэкспы стандартные. Любая документация на русском по Perl в данном случае подойдет. Единственное, выражения, встроенные в VBScript имеют несколько усеченный набор возможностей, но для работы и этого хватает обычно.
ADirks
87 - 25.10.2004 - 10:07
(84) В исходниках gcomp есть довольно полное описание диалогов - DlgForms.txt. Если лень качать исходники, могу файло заслать куда-нить.
(85) С этими регэкспами какой-то бардак. У меня дома например они не работают. Видимо версия не та. Т.е. пишешь Matches(0) - говорит, иди нафиг. Пишешь Matches.Item(0) - работает. А вот дальше - т.е. SubMatches - мне не удалось получить никак.
IAm
88 - 25.10.2004 - 10:08
87 5.6 Поставь
Phoenix
89 - 25.10.2004 - 13:39
(87) выложил свой плагин в "Клуб профессионалов".
bsi
90 - 25.10.2004 - 13:56
(89) куда ты его закопал? Там последний ADirksа "Скрипт для перехода к объекту под курсором"
Phoenix
91 - 25.10.2004 - 14:27
он среди новых, почему не попал туда где Леша положил не знаю.
Димы в асе нет...
Phoenix
92 - 25.10.2004 - 14:36
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=5&lid=4183
Саша, Артур, Леша, у вам этот релиз уже высылал.
Phoenix
93 - 25.10.2004 - 17:33
up
orefkov
94 - 26.10.2004 - 08:41
(93) Вроде уже лежит, где надо.
Господа, кто собирается заливать свои разработки в клуб.
При добавлении разработки там раздел OpenConf есть 2 раза.
Один раз Внешняя компонента - OpenConf,
и OpenConf-Плагины, Скрипты. БУдьте внимательнее при добавлении.
Бертыш
95 - 26.10.2004 - 09:32
Давеча столкнулся с тем что телепат не знает методы ЗначениеВстроку, ЗначениеВстрокуВнутр,ЗначениеИзСтроки,ЗначениеИзСтрокиВнутр
artbear
96 - 26.10.2004 - 09:53
(orefkov) Напомни, по какому принципу задана очередность инициализации скриптов: по алфавиту, расширению или что-то другое?
Для меня важно, чтобы, например, скрипт общих процедур всегда инициализировался одним из первых.
orefkov
97 - 26.10.2004 - 11:07
(95) Да знает он их.
Только эти методы отнесены к функциям, допустимым только в выражениях.
те набираешь просто
зна
их не будет, а если набираешь
нечто=зна
их будет.
(96)
В порядке их выдачи методом FindNextFile, говорят, на Win9X
она их выдает по алфавиту, а на NT-системах непонятно как.
Посмотрю подробнее. Если что, сделаю по алфавиту.
Хотя можешь ведь сделать свою собственную загрузку.
В Scripts ложишь один скрипт, который при загрузке загрузит
остальные скрипты как тебе надо.
trdm
98 - 26.10.2004 - 11:09
Нужна помощь.
Написал скрипт с использованием Svcsvc.Service (выбор), скрипт интентенсивно работает с тесктом модуля (считывание-вставка).
Конфигуратор при использовании данного скрипта достаточно часто вылетает.
Есть подозрение на то, что я не правильно втавляю текст (возможно забываю про Chr(13)) или еще что.
Есть какие-то правила вставки текста?
Есть какие-то правила работы с Svcsvc.Service? Например: объект можно создавать только локально в процедуре/функци, только глобально в модуле скрипта? Поделитесь плз, я в отчаянии, сидел над скриптом 3 дня, работает отлично, но вылет конфига без сохранения это полный .....
Причем вылет осуществляется в разные моменты, при переходе на закладку Формы, при перемещении по тексту, при переходе в окно метаданных.
Все плагины кроме телепата отключены.
Все последнее.
Хелп!
orefkov
99 - 26.10.2004 - 11:15
(98)
Кинь скрипт мне на orefkov __ ezmail.ru
посмотрю.
GrayT
100 - 26.10.2004 - 11:20
100 Однако.
+98, 99 Но я тоже заметил обилие вылетов с этим АктивомХ. Александр, если что найдешь напиши тут, плиз
Бертыш
101 - 26.10.2004 - 11:51
(97) А как же быть с передачей в качестве параметра
допустим есть функция
Функция Имя(Стр)
КонецФункции
И вызываеться она
Имя (ЗначениеВстроку(СписокЗначений));
artbear
102 - 26.10.2004 - 11:57
(trdm) и мне кинь посмотреть, подумать.
Мой адрес лежит в (0)
orefkov
103 - 26.10.2004 - 11:58
(101)
В этом случаем они тоже появятся.
Синтаксически вызов функции есть
ВызовФункции: ИмяФункции ЛеваяСкобка Параметры ПраваяСкобка
Параметры: Выражение или Параметры запятая Выражение или Пусто
В выражениях эти методы появляются.
orefkov
104 - 26.10.2004 - 12:55
Кто с 1С через ОЛЕ работал? Вопрос.
Пишу простую конфу. В ГМ
Функция OLECall(ОпенКонф) Экспорт
  ОпенКонф.Message("Вызов через OLE",0);
  Результат="";
  ОткрытьФормуМодально("Отчет.НоваяКолонка",Результат);
  Возврат Результат;
КонецФункции // OLECall
Далее в конфигураторе пишу макрос
Sub TestOLE()
    Set v7=CreateObject("V77.Application")
    v7.Initialize v7.RMTrade,"/dc:\bases\testbase","NO_SPLASH_SHOW"
    v7.OLECall Configurator
End Sub
так вот, на работе W2K3 и все отрабатывает на ура,
сообщение появляется, модальное окошко обработки появляется.
Пробую дома на ХР, и нифига, ругается при вызове v7.OLECall,
говорит объект не поддерживает программирование.
Если передаю не Configurator, а простой тип, например, строку,
то тоже нормально отрабатывает.
В чем может быть проблема?
trdm
105 - 26.10.2004 - 13:12
(102) Не могу, потом поймешь почему.
trdm
106 - 26.10.2004 - 13:22
(99) Выслал.
trdm
107 - 26.10.2004 - 13:25
?????????????????????????????????
Функция OLECall(ОпенКонф) Экспорт
  ОпенКонф.Message("Вызов через OLE",0); <- Это откровение :) Посмотрим.
или что-то другое, не то о чем я думаю?
orefkov
108 - 26.10.2004 - 15:01
(107)
Просто запускаю 1С-базу через OLE, открываемые в ней модально формы
видны, всякие там СписокЗначений.ВыбратьЗначение, ВвестиПериод и тп.
Получается примерно, как в oc2vba, только VBA не нужен.
Хочется в нее передать объектную модель ОпенКонфа,
что бы из 1С можно было работать с конфигуратором.
Трабла, что на одной машине 1С-Предприятие нормально
подхватывает передаваемый по OLE объект Configurator,
а на другой машине (с тем же релизом) нет.
Скрипт получил, буду смотреть.
Без тапок
109 - 26.10.2004 - 19:17
2(orefkov)
у меня вопрос по документу ActiveX у которого
имеется текстовое поле.
Можно ли как-то сделать, чтобы при открытии такого
документа в Конфигураторе текстовое поле воспринималось
конфигуратором как текст. Например, было активным меню
"Конструктор"-"Запрос" и запросы "падали" в мой документ.
a13x
110 - 26.10.2004 - 19:50
2All (кто пишет на jscript)
Как назначить обработчики событий для объектов, "обернутых" с помощью враппера ActiveXObject()?
конструкция obj.handler = myHandler; не работает :-(
возможно ли это вообще?
с SelfScript.AddNamedItem тоже извращался и тоже безуспешно :-((((
IAm
111 - 26.10.2004 - 19:51
trdm
В аську стукнись по поводу dialog stream
orefkov
112 - 26.10.2004 - 23:46
(109)
Это вряд ли.
Phoenix
113 - 27.10.2004 - 09:42
up
artbear
114 - 27.10.2004 - 10:21
(orefkov) Фигня какая-то с добавлением скриптов и плагинов для Опенконф :(
Выбираю раздел Опенконф (никаких плагинов/скриптов там нету, только Опенконф), описание, файл, нажимаю добавить разработку. и скрипт принимается только на рассмотрение, хотя я член Клуба Профессионалов далеко не первый год.
ДD
115 - 27.10.2004 - 10:41
2(114) так открой его на рассмотрении и сам прими :-)
artbear
116 - 27.10.2004 - 11:10
(ALL) Опубликовал еще один свой скрипт http://1c.proclub.ru/modules/mydownloads/personal.php?cid=1001&lid=4200
Но почему он на рассмотрении, так для меня загадка
Тертый
117 - 27.10.2004 - 11:43
А кто пишет в окне сообщений "Create Config Wnd" и как сделать, чтобы не писало?
trdm
118 - 27.10.2004 - 11:51
(117) Поищи "Message" по скриптам.
GrayT
119 - 27.10.2004 - 11:52
(117) Это ты oc2vbф подцепил к конфигуратору. А там демонстрационный пример. Он реагирует на событие создания окна конфигуратора.
Pride
120 - 27.10.2004 - 11:55
http://www.kuban.ru/forum_new/forum9/files/203292.html
21 пост - проблема не решена !?
--------------------------------------------------------------
http://www.ruforum.net/?topic=18781
Попутный вопрос. помогайте.
GrayT
121 - 27.10.2004 - 11:55
+118 Закладка ОпенКонф, Плагины, oc2vba, ОпенИДЕ, СобытияКонфигуратора
Тертый
122 - 27.10.2004 - 12:00
121) Понял, закомментировал, спасибо.
Тертый
123 - 27.10.2004 - 12:02
А кто подскажет, как пользоваться скриптом "Сравнить модуль"? На чем ни щелкну, вываливается ошибка...
Тертый
124 - 27.10.2004 - 12:06
artbear, вот хочу сравнить модуль типовой с текстовым файлом той же типовой, но измененным. Что сделать, чтоб заработало?
artbear
125 - 27.10.2004 - 12:06
(123) А описание читать пробовал?
Есть на http://openconf.itland.ru/beta
Там я вроде бы все подробно расписал
Тертый
126 - 27.10.2004 - 12:15
125) в аську глянь?
artbear
127 - 27.10.2004 - 12:52
(Тертый) Это ты глянь! Три раза тебе уже ответил :(
Бертыш
128 - 27.10.2004 - 13:33
(orefkov) В продолжение поста (66) скачал нового телепата со скриптом, то что доктор прописал. Ну очень приятные шаблоны :))
orefkov
129 - 27.10.2004 - 14:05
(128)
Я тоже вначале хотел сделать типа расширенного языка
описания шаблонов, но потом понял, на всех не угодишь,
универсальной гибкости не получиться, потому сделал
возможность обрабатывать все в скриптах.
(114)
Похоже поместить разработку из Внешняя Компонента-OpenConf
в OpenConf Плагины, Скрипты могу только я.
Что и проделал. На всякий случай при размещении разработок
уведомляйте меня на orefkov [] ezmail.ru
(trdm)
Проверил ли ты падения с новой scvsvc.dll ?
artbear
130 - 27.10.2004 - 15:12
(All) Кто-нибудь делал скрипт поиска ссылки на функцию в элементах диалога?
Например, чтобы увидеть, какой/какие элементы ссылаются на выделенную функцию
Бертыш
131 - 27.10.2004 - 16:02
(orefkov) Не посоветуешь ли какой редактор скриптов
Болван
132 - 27.10.2004 - 16:13
Болван
27.10.2004 - 14:56 v77 при поппытке выгрузить или ТиИ , вылетает с такой фигней , начались глюки не понятные со спаравочниками документами , база своя(писаная) на SQL ,релиз движка 21 SQL, ось w2k , да на XP тоже вылетает, что самое интерсное бекап не помогает, мд проверял Soaron-ом , ошибок нет , блин уже не знаю в какую сторону копать, короч не местные мы поможите люди добрые...
Болван
1 - 27.10.2004 - 15:08 Никто не сталкивался? (с)
Авокадо
2 - 27.10.2004 - 15:10 Говорят, что Soaron память портит :)))
ob36
3 - 27.10.2004 - 15:31 openconf юзаете? Если "Да", то попробуйте без оного...
Болван
4 - 27.10.2004 - 15:43 Опана ,можно вносить в FAQ , все заработало ,надобы поднять эту тему , или что то обновить надо?
Что нить можете прокомментировать?
Phoenix
133 - 27.10.2004 - 16:14
(131) Саша уже писал: MSE.exe входит в поставку MS Office
для удобства добавь туда интерфейс работы с ОпенКонф и Телепатом.
Болван
134 - 27.10.2004 - 16:15
+
Ну все приплыл , память не может быть ""Read"
http://www.kuban.ru/cgi-bin/forum/forum9.cgi?page=1&ask=205695&bit=1000#F
artbear
135 - 27.10.2004 - 16:19
(134) Работаю с Опенконфом, кажется, не первый год (второй точно).
Абсолютно никаких проблем не было!
Подумай, что у тебя стояло помимо Опенконфа. Да и вообще, какой Опенконф, Телепат у тебя стоит/стоял ?
a13x
136 - 27.10.2004 - 16:22
(131) я предпочитаю для быстрой правки far + colorer take3
для "long-run" - vim (если кому-то интересно)
а мне вот больше интересно, использует кто какие отладчики использует
(особо интересно jscript) - кроме mse/interdev/iedbg
может, есть что-нибудь фриварное для jscript, а я пропустил :-) ?
artbear
137 - 27.10.2004 - 16:25
(136) А я редактирую far + colorer + ActiveHelp + ScrHost (1 или 2)
или иногда в ВБ
a13x
138 - 27.10.2004 - 16:39
(136) суперскрипт забыл :-)
я от shpce отказался по причине тормозов при запуске/выходе из фара...
Болван
139 - 27.10.2004 - 16:54
Сорри, Нет проблема не решена , это не опенкоф!!!
a13x
140 - 27.10.2004 - 17:01
кстати!
все собираюсь-собираюсь, но по причине эффекта супермаркета
забываю сказать...
рано или поздно скрипто- и плагино- писатели решатся (если не уже - я не проверял) записывать какие-нибудь параметры/настройки в реестр... так вот...
может быть, договоримся в какую ветку и как будем это делать?
Предлагаю, по аналогии с Фаром, например, сохранять параметры для скриптов в ветки <OpenConfRegRoot>\Scripts\ScriptName, для плагинов соответственно
s <OpenConfRegRoot>\Plugins\PlugName
здесь OpenConfRegRoot == HKCU\Software\1C\1Cv7\7.7\OpenConf
а Александр, может быть, добавит к сервису опенконфа свойства PluginRootKey и ScriptRootKey...
artbear
141 - 27.10.2004 - 17:27
(140) Обеими руками ЗА, потому что
Я уже туда пишу :))
a13x
142 - 27.10.2004 - 17:35
воо-от...
но пока все равно только драфт...
ждем-с официального одобрения Орефкова
artbear
143 - 27.10.2004 - 17:37
имхо - ОН против уж точно не будет :)
trdm
144 - 27.10.2004 - 20:07
(orefkov) (129) Вылетов стало на порядок меньше. Это бодрит, даже после безсонной ночи :)
Вчера была парочка "Unhandled exception in 1cv.exe (VBSCRIPT.DLL): 0xC0000005 Access Violidation". Скриншот:
http://trdm.mail333.com/miss.rar (83 КБ).
GrayT
145 - 27.10.2004 - 23:37
129 - а где можно заюзать новый scvsvc.dll?
Кому не жалко дайте, плиз, попробовать tswsoft DOG tamb.ru
Номер 6
146 - 28.10.2004 - 06:29
(131)
PrimalScript - есть автосенс для описанных переменных (рулез!).
(140)
А я - против! M$, например, уже осознала свою ошибку (использовать реестр для хранения данных прикладных программ) и переходит на ини, только на новый лад - в формате xml. Улавливаете тенденцию?
Pride
147 - 28.10.2004 - 07:28
(ALL) Ну помогите решить проблему (120-1), немогу поменять привычки поиска!
artbear
148 - 28.10.2004 - 07:58
(146) И как в таком случае будут делиться данные для разных пользователей, если файл один ?
orefkov
149 - 28.10.2004 - 08:30
(140)
Да, согласен. Сделаю.
Только тогда уж надо делать PluginRootKeyСommon, PluginRootKeyBase, ScriptRootKeyCommon, ScriptRootKeyBase, чтобы отдельно хранить
настройки общие, и отдельные для каждой базы.
Вежливый
150 - 28.10.2004 - 08:50
(136) М.б. я что-то упустил, но для скриптовых дел (написание+отладка и ваще) рекомендую PrimalScript. Это супер весчь!
a13x
151 - 28.10.2004 - 09:11
(146) хех... обещали в лонгхорне? или еще позже?
дело в том, что в настоящий момент у нас грубо говоря, 3 варианта:
1. хранить всем все в реестре в одном месте "под крылышком" ОпенКонфа
2. делать каждому на свое усмотрение
3. Александр напишет прозрачные для скриптов и плагинов сервисы для хранения настроек, которые в скриптах будут использоваеться, а куда он будет их сохранять - не наше дело....
мое предложение в 140 - копромиссный вариант, к которому склоняются большинтсво программистов совершенно разных приложений...
Чего мы этим добъемся? а хотя бы того, что можно будет совершенно легко сподручными средствами организовать бэкап/перенос настроек на другие компьютеры (хотя бы такие, как [Save|Restore]Settings.bat у фара) и избавить пользователя от геморроя по выискиванию и собиранию большого количества *.ini (или *.xml, или еще чего - фантазия-то у нас, думаю, работает) файликов, разбросанных скриптами и плагинами опенконфа повсюду... Сами подумайте, вы предпочитаете хранить все в хмл, а я буду хранить настройки в реестре; а конечный пользователь (и я, и вы в том числе) использует и мой и ваш скрипт...
И вообще, я настаиваю не на том, где хранить на стройки, а на том, что нам, как программистам, надо договориться делать это однообразно и централизованно, а реестр - лишь одно из очень распространенных и достаточно эффективных решений в настоящий момент...
Бертыш
152 - 28.10.2004 - 09:16
(146)(150) А где взять без гемороев PrimalScript
Бертыш
153 - 28.10.2004 - 09:42
(146)(150) Да вот ещё кусочек 9FE9B03C
Бертыш
154 - 28.10.2004 - 10:05
(orefkov) Есть две темы
1. Работа с двумя конфигурациями одновременно скажем когда необходимо завязать их через V77.Aplication
2.Есть в файле 1crcrus.dll такой фрагмент
Dialog Editor
DialogEditor
*.dtf (Dialog Template File)
.DTF
DialogEditor
Dialog Editor Document
Вероятно в версии конфигуратора которым пользуеться сама 1С этот фрагмент работает. То есть диалоги создаються из шаблонов с заполнением привязки к конкретным реквизитам конкретных типов данных. Можно ли добавить нечто подобное в OpenConfig типа что бы диалоги или даже отдельные слои можно было сохранять как шаблоны которые потом можно было бы заливать в формы.
artbear
155 - 28.10.2004 - 10:07
(149) Дельное предложение.
Я ЗА !
(151) ИМХО пока именно в реестре наиболее удобно хранить данные, которые могут быть различными для разных пользователей Виндовс и разных баз!
Номер 6
156 - 28.10.2004 - 10:25
(148)
В ProtectedStorage. Почитать можно в MSDN.
И вообще, задай себе вопрос, как виндовс хранит индивидуальные настройки пользователей? А как это делает 1С:Предприятие?
(151)
Это уже работает и под вин98.
А как насчет переносимости настроек?
Ну а вообще, согласен, это второстепенный на данный момент вопрос.
(152)
Намылить? (3,3Мб)
bsi
157 - 28.10.2004 - 10:28
(152)
http://66.197.211.249/al/download/dafd2c375dd47ff3ace6066e82f3a5f5/PrimalScript-v3.1.442-BSoft.ru.rar?
Бертыш
158 - 28.10.2004 - 10:48
(157) Увы :(
Бертыш
159 - 28.10.2004 - 10:53
(156) А намыль пожалуйста
bsi
160 - 28.10.2004 - 11:14
(158)
Ну тогда сюда
__h**p://66.197.211.249/al/leech?cat=appz&file=PrimalScript-v3.1.442-BSoft.ru.rar
slavka
161 - 28.10.2004 - 11:45
(156) намыль на vba50@mail.ru
Archon
162 - 28.10.2004 - 11:54
Народ, что-то я не понял, как использовать телепат:
Установил OpenConf. Дальше что?
slavka
163 - 28.10.2004 - 12:05
FAQ
http://1c.alterplast.ru/faq/telepat.html
artbear
164 - 28.10.2004 - 12:33
(162) Как раз для таких я в заглавии (0) специально разместил полезные ссылки.
ЗЫ как всегда RTFM
Бертыш
165 - 28.10.2004 - 14:51
(160) Спасибо. Мне неясно только одно можно ли данную программу использовать как отладчик скриптов в OpenConfig, наверное вряд ли.
trdm
166 - 28.10.2004 - 16:48
MSE - тоже не последнея вещица (+ идет в комплекте с офисом.):
- Точки останова
- Списки процедур/функций модуля
- ОбъектБраузер для зарегистрированных объектов.
- Автосохранение последных файлов.
..много чего еще. Начал разбираться, все больше нравится.
trdm
167 - 28.10.2004 - 16:54
Тут мысля проскочила: OpenConf + FormEx визуальная настройка поведения реквизитов формы с сохранением в файлик данных настроек + работа FormEx с этим файликом :)
ЗЫ Я вам тут наговорю :)
a13x
168 - 28.10.2004 - 16:59
(166) хотелось бы "чиста" отладчик, без редактора и бла-бла-бла...
вроде iedbg, но такой, чтобы не падал вместе с конфигуратором :-(
вот
Archon
169 - 28.10.2004 - 17:26
(164)Нет, я неверно сформулировал вопрос. Я не нешел Telepat.dll
Я взял обновление Телепата, но там куча файлов и все. А когда запускаешь VBA, то он пишет, что все установил, а ничего не происходит.
Я чего-то не прочитал?
a13x
170 - 28.10.2004 - 17:53
(169) а какой Вы файл скачали, если не секрет?
Тонни
171 - 28.10.2004 - 18:32
Извините за вопрос, но, тяжело ли при формировании списка (локальных и глобальных переменных и типа того) добавить тупо (без анализа пренадлежности) в этот список ВСЕ методы 1с?
Archon
172 - 28.10.2004 - 18:35
Не секрет:
http://1c.alterplast.ru/openconf
Q. Где взять последнюю версию Телепата?
A1. Последний релиз живет тут: http://openconf.itland.ru/plugins
Ой, не обратил внимания:
A2. Последнюю (по состоянию на 31.08.2004) бета-версию Телепата можно взять тут.
Спасибо, ответ пришел когда не ждали.
Тонни
173 - 28.10.2004 - 18:36
или скажем при загрузке телепата, подгружать текстовый файл напр. metods.txt который будет содержать методы которые захочет программист 1С
Тонни
174 - 28.10.2004 - 18:40
+ (171) + (173)
я в вашем деле профан но мне кажется, что при нажатии какогото символа и перед выпадением этого списка есть точка при которой выпадает этот список, ну почему в этой точке нельзя добавить в список еще какието строки из metods.txt
Тонни
175 - 28.10.2004 - 18:43
ну не нужно нам всем когда
задаешь ранее:
Спр = СоздатьОбъект("Справочник.Контрагенты");
то позже в модуле когда пишеш
Спр. вываливались методы только Справочников, пусть вываливается ВСЕ ВСЕ
а вот в платной версии пусть идет этот анализ
Народ ну правильно я думаю, или нет?
Тонни
176 - 28.10.2004 - 18:47
считаю что проэкт этих людей очень удачный, но не телепат, уже запарили этими большыми ветками, а нового практически ничего, а точ то так хочет народ, и ждет, нет и нет, если есть инструмент то почему нет хотя бы как в моих разсуждениях
fez
177 - 28.10.2004 - 19:11
(167) А копирайты где?
trdm
178 - 28.10.2004 - 21:23
(177) Номер патента, плз.. :)
fez
179 - 28.10.2004 - 22:53
(178) Авторские права в России возникают с момента создания произведения, и не нуждаются в дополнительном подтверждении.
:)
Начинающий линуксоид
180 - 28.10.2004 - 23:08
(176) сделай свой телепат. Если не ошибаюсь, то изначально телепат был как демонстрация возможностей openconf
trdm
181 - 28.10.2004 - 23:35
(176) Шо тебе мешает сделать скрипт повесить на ГК и пусть себе вываливает хоть все содержимое ВСЭ или ЖКК?
trdm
182 - 29.10.2004 - 01:31
Артур, проверь почту.
artbear
183 - 29.10.2004 - 06:39
(trdm) Прошло уже более 5 часов, а скрипт так и не дошел :(
ADirks
184 - 29.10.2004 - 09:11
Навалял тут скриптик, но не знаю выкладывать или нет. Скрипт довольно специфичный:
Предназначен для автоматизации процесса объединения своих изменений конфигурации с основным МДшником. Предполагается следующая технология объединения:
 1) Взять последнюю версию МДшника (например из VSS)
 2) Загрузить этот МДшник в пустую базу, служащую только для слияния МДшников.
 3) Запустить процесс объединения с МДшником, в котором сделаны изменени
 4) Поставить нужные галки, и объединить МДшники
 5) Записать обновлённую версию МДшника в систему контроля версий. Или скопировать куда-нибудь.
Данный скрипт позволяет автоматизировать шаги 1, 2, 3 и 5.
Все пути к файлам и всякие параметры прописываются в файле MD_Tasks.ini, который должен лежать в каталоге ИБ.
------
PS: Да, чёрт возьми! Я не пользуюсь gcomp и CVS! :~(
bsi
185 - 29.10.2004 - 09:51
(184)! Это то, нужно. Ты еще сомневаешся?
Выкладывай скорее на http://itland.ru/forum/index.php?showtopic=5124 или на http://1c.proclub.ru/modules/mydownloads/viewcat.php?cid=1002 - будем посмотреть :)
 >>>>
PS: Да, чёрт возьми! Я не пользуюсь gcomp и CVS! :~(
<<<<
"Зря, зря. Чертовски приятная штука" (с) В.И. Ленин
orefkov
186 - 29.10.2004 - 09:55
(176)
Это уже есть в телепате. Поставь галочку "Шаблоны-Добавлять в список",
сделай файл шаблонов с нужными методами, и наслаждайся.
Если не ошибаюсь, artbear делал такой файлик шаблонов?
ADirks
187 - 29.10.2004 - 10:05
(185) Ну, раз хоть кому-то надо, то вот: http://1c.proclub.ru/modules/mydownloads/personal.php?cid=1001&lid=4217
artbear
188 - 29.10.2004 - 10:16
(ALL) Да, мне прислали доделанную обработку, которая позволяет формировать из алс-файлов нужные шаблоны. И я для себя сделал нужные шаблоны именно для телепата, очень удобно как промежуточный вариант, пока нет работы с точкой.
Нужно кому-нибудь? могу выложить как обработку, так и типовой шаблон для 1С
bsi
189 - 29.10.2004 - 10:34
(187) спасибо. Полез смотреть.
(188)Выкладывай. Пригодится.
dmitry
190 - 29.10.2004 - 10:35
(188) выкладывай обязательно
Тертый
191 - 29.10.2004 - 10:39
188) солидарен с 189). Никто еще не придумал, как не запутаться в таком количестве скриптов? их уже около ...дцати, а залезать каждый раз в описание...
DarkShadow
192 - 29.10.2004 - 10:53
(ADirks: PS: Да, чёрт возьми! Я не пользуюсь gcomp и CVS! :~())
Как это понимать? Может еще и fez этим не пользуеться?
cathode
193 - 29.10.2004 - 11:17
(orefkov) А нельзя было бы что-то поправить в плагине oc2vba63.dll, чтобы в случае отсутствия apc63.dll 1С не вылетала? Сейчас все происходит в следующем порядке: при загрузке Конфигуратора выскакивает сообщение о том, что класс не зарегистрирован, потом Конфигуратор падает замертво. Если oc2vba63 отключить переименованием, но оставить oc2vba60, Конфигуратор при загрузке не падает, даже в случае отсутствия в системе APC. Он просто выдает сообщение о том, что APC невозможно инициализировать.
artbear
194 - 29.10.2004 - 11:24
(191) Я придумал :)
В наборе "Мой набор скриптов" есть скрипт "Меню макросов из файла". А в этом скрипте есть макрос "ShowStructuredMenuOfMacros", который и показывает меню макросов, разбитое по группам "Работа с текстом", "Работа с формой" и т.д. Я лично посадил этот макрос на хоткей и по хоткею запускаю это меню.
ИМХО довольно удобно.
PS это же меню (в качестве подменю "Удобные макросы") выходит по нажатия Цтрл-2, когда находимся в окне модуля (не формы, не таблица, а именно текста модуля)
PPS В самом скрипте есть описание + в описании "моего набора скриптов"
cathode
195 - 29.10.2004 - 11:25
(+193) Попутный вопрос о механизме загрузки скриптов. Насколько я понял, их компиляция производится в порядке возрастания имен файлов. Тогда возникает неприятная ситуация со скриптами, вызывающими функции других скриптов. Получается что скрипт, имя файла которого начинается, например на A латинское не может вызвать функции из файла common.vbs. Может быть делать компиляцию скриптов два раза подряд: сначала все, а потом те, что первый раз не скомпилировались? Причем ошибки выводить только на втором проходе.
artbear
196 - 29.10.2004 - 11:33
(195) Я выше по течению уже задавал этот вопрос, Александр обещал подумать.
А если будет тройная схема зависимости (А зависит от В, В зависит от С), тогда предложенная схема не сработает, к сожалению!
Тут нужно продумать механизм загрузки. Может быть, ввести в Опенконф какой-то метод, в котором указывать, что данный скрипт должен ициализироваться только после инициализации другого скрипта/плагина (причем учесть рекурсию, которую я указал). Т.е. тогда при загрузке А пытаемся загрузить В, в процессе загрузки В загружаем С.
Тертый
197 - 29.10.2004 - 11:54
ADirks) Извини за темноту, но что такое "VSS"???
cathode
198 - 29.10.2004 - 12:00
(196) Тогда можно еще проще: гонять в цикле компиляцию неоткомпилировавшихся скриптов, пока не получится ситуации, что все из них, которые не откомпилировались, сделали это по два раза. Соответственно, после этого выводим сообщения об ошибках инициализации скриптов и продолжаем загрузку. Решение достаточно прямолинейное и неэффективное, но простое в реализации. Я думаю, что на данном этапе развития этого вполне хватит, а Александр будет заниматься более интересными для него (в первую очередь) и для всех остальных вещами. Например, Телепатом :)
Dolter
199 - 29.10.2004 - 12:03
2(197) Visual SourceSafe
З.Ы. я тоже именно им пользуюсь для контролем за версиями
Номер 6
200 - 29.10.2004 - 12:23
(195, 196)
Предлагаю простое решение: оставьте в каталоге ...\scripts один скрипт-загрузчик и грузите из него в нужном порядке остальные скрипты.
artbear
201 - 29.10.2004 - 12:30
(200) Александр уже предлагал данное решение.
Главный вопрос: кто будет решать, каков порядок ??
Наверняка у каждого пользователя (особенно у тех, кто сам делает скрипты для себя и других) есть свои общие скрипты, которые должны грузиться первыми.
Например, в моем наборе это коммон.вбс
cathode
202 - 29.10.2004 - 12:30
(200) Так, конечно, проще. Да вот хочется, чтобы dependencies сами отслеживались.
ShootNICK
203 - 29.10.2004 - 12:48
201 дык думается что народ пользуется мега набором...можно вообще разделить на Scripts и AutoRunScripts :) такая вот операционка получится :)
a13x
204 - 29.10.2004 - 12:50
(201) я к сожалению не видел с чего разговор начался - червертая страница не хочет грузиться полностью - вижу только хвост :-(, поэтому, может быть, мимо темы ляпну...
но что мешает делать нечто
if (!isScriptLoaded(scriptName)
       Scripts.Load(path_to_script);
перед инициализаций скрипта
т.е. пусть каждый скрипт проверяет все свои зависимости и разрешает их самостоятельно...
----------------------------------
з.ы. это пока только теория :-) я не проверял
проверку на "загруженность" скрипта по имени можно и самостоятельно сделать, а можно попросить Александра - тогда не будет лишнего кода
artbear
205 - 29.10.2004 - 13:05
(204) все гениальное просто :)
ИМХО Наверное, Александру не сложно будет добавить подобный метод к объекту Scripts
DarkShadow
206 - 29.10.2004 - 13:18
(204, 205)А если А зависит от В, В от С, а С от А, как тогда?
Данила хМастер
207 - 29.10.2004 - 13:20
ArtBear, IAm, Orefkov и другие скриптописатели!
Есть идея, пока нет работы после точки, для выбора реквизита такой скриптик написать. Дело в том, что в тексте запроса
|пер=Документ. (1)
после точки идет подсказ вида дока, а потом его реквизита. (Если конечно разрешен автосенс строк)
1.Скрипт при запуске выдает меню:
+ Док
+ Спр
2. Юзер выбирает, в текст вставляется строка (1), тогда он выбирает дальше вид и реквизит.
3. Готовая конструкция:
"|пер=Документ.Выписка.Приход;"
преобразуется скриптом в
"Приход"
.
Т.е. я набиваю:
док.<Тут вызываю скрипт><Выбираю тип этого дока, вид, реквизит1[, реквизит, ..., реквизит>]>
и получаю
док.Приход
.
!!! Про методы после точки:
Если кому интересно, есть генератор шаблонов для методов.
h**p://www.danilaexch01.nm.ru/
artbear
208 - 29.10.2004 - 13:23
(ALL) именно про обработку из (207) я и говорил. Очень удобно использовать вместе с телепатом, пока нет работы с точкой.
ДанилаМастер, еще раз большое спасибо за нее.
Данила хМастер
209 - 29.10.2004 - 13:27
А как тебе идея?
(В начале поста).
a13x
210 - 29.10.2004 - 13:27
(206) теоретически нормально - вот посмотрите пошагово
опенконф загружает скрипт A
тот проверяет, загружет ли B, B не загружен, A "просит" опенконф загрузить скрипт B (Scripts.Load(path_to_B)).
при загрузке B просит загрузить скрипт C...
последним загружается С, ему нужен скрипт А, он проверяет, загружен ли он - а он ужа загружен
то есть все нормально...
--------------------
я сейчас пообедать схожу, а потом проверю все на практике, можно? :-)
если кто сделает раньше, дайте знать, особо о неуспехе
Данила хМастер
211 - 29.10.2004 - 13:32
Кто-нибудь читал 207 пост, начало (там про скриптик)?
artbear
212 - 29.10.2004 - 13:38
(211) Я тут не совсем понял:
>> док.<Тут вызываю скрипт><Выбираю тип этого дока, вид, реквизит1[, реквизит, ..., реквизит>]>
Подробнее, пожалуйста, расшифруй для тупых :)
trdm
213 - 29.10.2004 - 13:48
Артур, Все равно ведь напишут? :) Соображаешь?
a13x
214 - 29.10.2004 - 13:51
(213) а кто-то в этом сомневался ;-)
artbear
215 - 29.10.2004 - 13:55
(trdm) Тут уж как Александр скажет :)
Данила хМастер
216 - 29.10.2004 - 14:10
(212)Описываю по шагам работу скрипта:
I Для пользователя (пишу, чего пользователь делает):
1. док=СоздатьОбъект("Документ.РКО");
док.
2. <Вызываю скрипт> (например, ctrl-m, далее выбираю его из списка)
3. Появляется меню:
       Справочник
       Документ
4. Выбираю "Документ"
5. Появляется меню с видами всех документов в системе
       Выписка
       ПКО
       РКО
       ...
6. Выбираю "РКО"
7. Появляется список всех реквизитов:
      ДатаДок
      НомерДок
      Сумма
      ...
8. Выбираю "Сумма"
9. Меню исчезает, в код после "док." добавляется "Сумма":
док=СоздатьОбъект("Документ.РКО");
док.Сумма
II Для программиста.
Совет: убери галку "отключить шаблоны в строках" и набери "|пер=Документ." - увидишь автосенс по видам и реквизитам.
При работе скрипт делает следующее:
1. Выдает меню (, например с пом. ком-объекта) для выбора типа ("Док / спр")
2. Вставляет в код строку "|пер="+тип+"."
3. Инициирует окошко с сенсом.
4. После выбора всех реквизитов заменяет в строку
"|пер=тип.вид.рекв" на строку "рекв".
PS Правда есть проблема с тем, что автосенс по строке запроса работает только, если предыдущая строка завершилась корректно, например символом ";".
Данила хМастер
217 - 29.10.2004 - 14:17
(215) Это по поводу меня, в смысле "не испортить бы бизнес Орефкову и не сделать "после точки" без него"?
Или как?
(Orefkov)
Кстати, а OpenConf и Ко защищены бесплатной GNU лицензией (типа как Linux)?
Если нет, то я бы советовал поторопиться, а то если 1Ска сообразит, что 77+ОС дает больше спроса, чем V8, то ее могут просто присвоить, на себя запатентовать и продавать тыщ за 10$, чтоб не повадно было семерку развивать.
:(
fez
218 - 29.10.2004 - 14:23
(217) Авторство-то они не присвоят. А на имущественные права - договор с начальным правообладателем нужно иметь. Так что не боись.
Тертый
219 - 29.10.2004 - 14:24
Данила хМастер, а как твой скрипт называется?
Данила хМастер
220 - 29.10.2004 - 14:29
(219) Он еще не написан, это лишь идея!
Желающие - могут написать (или подсказать мне как).
Тертый
221 - 29.10.2004 - 14:32
220):( а я губу раскатал....
Данила хМастер
222 - 29.10.2004 - 14:35
+220 В режиме Предприятия можно еще пользоваться "Метабраузером"
Лежит здесь
http://www.danilaexch01.nm.ru/
файл "Запускатель.ехе"
В нем, когда щелкаешь на реквизит типа док, или спр, можно в него зайти и посмотреть его реквизиты. И все это на живых данных. + Умеет запускать код.
orefkov
223 - 29.10.2004 - 14:38
1. По поводу загрузки скриптов. Каких-то специальных мер по очередности загрузки я не планирую. Все в ваших руках, господа. Метод для проверку того, загружен ли скрипт с указанным именем, добавлю.
2. На http://openconf.itland.ru/beta выложен маленький пример организации
вэб-интерфейса в конфигураторе с помощью скрипта и хтмл-странички.
3. В данный момент подчищаю исходники опенконфа с тем чтобы выложить
в общий доступ.
4. Работу после точки - господа, не бойтесь испортить мне бизнес :)
Я дал вам надеюсь гибкий инструмент, используйте его.
Бертыш
224 - 29.10.2004 - 14:51
(217) Неужто ты думаешь что в 1С пользуються таким же куцым конфигуратором как и все? Их версия конфигуратора явно будет побогаче возможностями.
ADirks
225 - 29.10.2004 - 14:56
Предложение по Телепату:
А вот неплохо бы, чтобы из скриптов можно было писать в стек прыжков телепата. И чтобы перемещаться по этому стеку. А то что-то часто стало возникать желание сохранить позицию. Можно конечно и свой стек наворотить, но нафига?.
И ещё, чтобы все действия, которые могут интерактивно вызываться, можно было и программно вызывать.
Если конечно это не сложно (а думается, что не должно :) ).
a13x
226 - 29.10.2004 - 15:02
я проверил последний из предложенных выше вариантов загрузки скриптов с отслеживанием зависимостей. так вот.
все работает, за исключением одного - насколько я понял, опенконф при стартапе начинает загружать скрипты подряд, не выполняя для каждого проверки, загружен ли он или нет программно предыдущим скриптом, и посему, после того, как ПРОГРАММНО все скрипты загружены, он их пытается загрузить вновь и начинает ругаться "Файл бла-бла уже загружен!".
Я прав или ошибаюсь?
-----------------------------------------------
скрипты, написанные мною для тестирования, можно взять по прямой ссылке
http://kuntashov.narod.ru/TestDependensies.zip
a13x
227 - 29.10.2004 - 15:05
(225) включая программный вызов списка подстановки с возможностью добавления в него своих элементов :-))
IAm
228 - 29.10.2004 - 15:16
Уже год как лежит плагин интеллисенс с работой после точки, аналог программы IntellisenceV77, но не решены две проблемы:
1) Окно при разворачивании не вмещается почему-то в рамки конфигуратора.
2) Не получается сделать Undo на RichTextBox-е в VB.
Да и при всем имеющемся отдельным окном, пусть и внутри конфигуратора, пользоваться неохота.
=============================================
220
Данила
Стукнись 177067865, буду часов в 5 в аське, посоветую, там всё просто.
artbear
229 - 29.10.2004 - 15:17
(225,227) Александр давно данную возможность запланировал - программный интерфейс Телепата.
(orefkov) Мне особенно понравился пункт "Онлайн Справка" :))
artbear
230 - 29.10.2004 - 15:21
(trdm) Александр дал добро!
Опубликуешь скрипт?
a13x
231 - 29.10.2004 - 15:22
(223)
> 2. На http://openconf.itland.ru/beta выложен маленький пример организации
> вэб-интерфейса в конфигураторе с помощью скрипта и хтмл-странички.
воот... я пытался сделать такое через InternetExplorer.Application (кто помнит, все спрашивал как приаттачиться к событиям объекта, созданного с помощью new ActiveXObject()).
В ходе изысканий было выяснено, что никак, но я наткнулся на нечто, называемое ScriptX (http://www.meadroid.com/scriptx/index.asp). С помощью этой штуки можно создавать даже модальные хтмл-окна. В части функционла, не касающегося печати, компонента распространяется бесплатно.
-------------------------------------------------------
Имхо, возможность выбора - самое сложное и вредное явление...
появятся сотни скриптов, каждый диалоги реализует по-своему и падет Вавилон... простите, конечный пользователь пред выбором.
Надо что-то делать...
Dolter
232 - 29.10.2004 - 16:09
2(231) онлайн справка просто шикарная!
Данила хМастер
233 - 29.10.2004 - 16:14
(228, IAm)
В Аську меня админ не пускает, тем более, что сегодня мы работаем до 5 (а я как раз в Рязань к родне собирался).
Так что, если не лень, кинь на мыло, как прочитать х символов из под курсора, и обратно туда записать (с заменой и/или вставкой) средствами скрипта.
Мыл: jdan1 -Собакин- яндыкс.ру
Заранее Спасибо.
artbear
234 - 29.10.2004 - 16:23
(233) Можешь скачать мой скрипт "Замена кода" из Клуба Профессионалов или посмотреть скрипты из "Моего набора скриптов".
Ключевое слово - range
Dolter
235 - 29.10.2004 - 17:06
2(231) и нафиг тогда окно самого конфигуратора, если можно структуру MD закинуть в XML (ТАК КАК ТЕБЕ УГОДНО! со всеми группировками объектов, их "вложенностью" и т.д.) и работать с этой страницей, как с проводником по конфигурации... хм... КРАСССОТА! :-)
a13x
236 - 29.10.2004 - 17:14
(235) не... ну, если хочется, делай, посмотрим... но нафига тогда 1С вообще?
а? берем 1L или 2С - как правильно-то? - и вперед :-)... к светлому будущему опенсурс, под предводительством св. ИГНУтия ака Ричарда Столлмена...
но не будем флуд здесь разводить, хоть и пятница :-)
ShootNICK
237 - 29.10.2004 - 17:26
скажите быстренько - чей скрипт при загрузке базы ругается
Config Open Wnd
a13x
238 - 29.10.2004 - 17:29
(237) смотри в файле проекта к oc2vba или посты выше :-)
ShootNICK
239 - 29.10.2004 - 18:04
238 - бедняга, сколько раз тебе отвечать пришлось :)
ну да...написали бы зоть другой Msg, к примеру "Я тут!!! в тестовом проекте, закомментируйте меня !!"
slavka
240 - 29.10.2004 - 18:09
(239) а это специально сделано. чтобы все искали (развивались так сказать:))))
trdm
241 - 29.10.2004 - 18:12
У меня с регистрацией в проклубе проблемы.
Работает пока только в формах, принадлежащих документам и справочникам.
Буду доделывать остальные места потом. Сыроват еще конечно, но работает.
Скрипт можно взять по адресу:
http://trdm.mail333.com/dots2004_10_29_17-49.rar
trdm
242 - 29.10.2004 - 18:15
(+) Господа нескриптописатели, почему бы вам стать господами скриптописателями, мною этот путь пройден за 1 неделю.
ShootNICK
243 - 29.10.2004 - 18:19
240 :) чем это поиск по скриптам помошает развитию ?
a13x
244 - 29.10.2004 - 18:27
(242) вы к чему призываете? :-)
ShootNICK
245 - 29.10.2004 - 19:24
244 это они к коллективной разработке призывают...совратить хотят с пути ИСТИННОГО программирования под 1с.. нехорошие!
a13x
246 - 29.10.2004 - 19:41
(245) хмм... а кто-то против?
ShootNICK
247 - 29.10.2004 - 20:06
246 ну Mike наверное против. просто чтобы было...
Phoenix
248 - 29.10.2004 - 20:11
а ему то что?
ОпенКонфом никто законы не нарушал. так что все нормально.
любое высказывание или наезд 1С будут необоснованны.
т.к. не происходило модификации файлов 1С.
ShootNICK
249 - 29.10.2004 - 20:11
2 orefkov and господа :
Есть возможность отловить окошко в предприятии с сообщением "Прервать обработку" и поймать что нажали ?
Oblomov
250 - 29.10.2004 - 20:12
2(orefkov) Если не секрет, чего тянешь с релизом? Основные баги пофиксил, ну и чудненько. А новые функции можно и в новый релиз добавлять.
Данила хМастер
251 - 01.11.2004 - 12:03
(241, trdm) А что делает твой скрипт?

Rambler's Top100 1C:TOP-100

© 1998-2004 Fedor Ezeev.

Last updated: 2005-09-05