|
Парсер действий пользователя в интерфейсе | ☑ | ||
---|---|---|---|---|
0
Garykom
гуру
11.03.16
✎
13:55
|
Для одной задачи требуется записать и распарсить действия пользователя в интерфейсе любой конфы 1С.
Нечто вроде "записи макроса" в офисе. К примеру пользователь открывает форму списка справочника, создает новый элемент и заполняет некоторые реквизиты в форме, нажимает записать. Нужно сделать преобразовать это в нечто вроде "скрипта заполнения" - кода на языке 1С. Как бы это попроще сделать? Менять конфу нельзя. |
|||
1
Ranger_83
11.03.16
✎
14:00
|
(0) В конфигураторе "сервис" -> "Запустить для записи журнала действий пользователя" ?
|
|||
2
Garykom
гуру
11.03.16
✎
14:02
|
(1) даже что конфигуратора нету представим и платформа может быть любая в т.ч. 1С 7.7
|
|||
3
Timon1405
11.03.16
✎
14:03
|
||||
4
Garykom
гуру
11.03.16
✎
14:03
|
(2)+ точнее в 7ке то понимаю как сделать через spy++
но вот 8ка? |
|||
5
Garykom
гуру
11.03.16
✎
14:05
|
(3) нет задача совсем не тестирование - эмуляция действий пользователя
это скорее по действиям пользователя построить функцию заполнения (на коде 1С без использования интерфейса) и выполнить ее нужное число раз с требуемыми параметрами т.е. по действиям пользователя понять в какие метаданные нужно будет писать |
|||
6
Лефмихалыч
11.03.16
✎
14:13
|
(0) результат того, что дает ключ командной строки /logui смотрел?
|
|||
7
Лефмихалыч
11.03.16
✎
14:15
|
||||
8
Карупян
11.03.16
✎
14:17
|
Выгрузи все объекты по ТЖ за период
|
|||
9
Карупян
11.03.16
✎
14:17
|
Опять же пользователь ввел номенклатуру, а рассчиталась вся строка.
А сама процедура в форме и все приплыли |
|||
10
patapum
11.03.16
✎
14:19
|
(0) мне кажется, дешевле опросить пользователя лично, чем писать такой парсер.
|
|||
11
Лефмихалыч
11.03.16
✎
14:22
|
(10) и получить список того, что пользователь смог описать словами, из того, что вспомнил.
Кому на что эта инфа потом?.. |
|||
12
Garykom
гуру
11.03.16
✎
14:24
|
(6) как вариант пойдет, есть минус что файл не сразу обновляется а только после закрытия 1С
|
|||
13
Garykom
гуру
11.03.16
✎
14:26
|
(9) мне нужно узнать куда сейчас пользователь тыкнул, в какой элемент какой формы какого объекта
|
|||
14
Garykom
гуру
11.03.16
✎
14:28
|
Кому интересно цель написать "тупой КД для полного пользователя", с очень ограниченным функционалом зато простейший
|
|||
15
Кирпич
11.03.16
✎
14:54
|
(14) что такое "тупой КД для полного пользователя"?
|
|||
16
Garykom
гуру
11.03.16
✎
15:00
|
(15)
1. открываешь одну конфу, открываешь справочник контрагентов, любого контрагента 2. открываешь другую конфу, открываешь контрагентов, создаешь нового контрагента 3. переносишь копированием значения (наименование, инн и т.д.) с выбором в том числе если перечисления или галочки 4. нажимаешь записать в другой конфе - создается "скрипт записи" 5. скрипт записи натравливается на нужный список Простая выборка отчетом или даже указанием нужен/не нужен и оно автоматом подстраивается кого надо переносить а кого нет К примеру если отметили ИП Иванов, сняли отметку ООО Сидоров - оно поняло что ИП нуна перенести а ООО нет. Но простым отчетом проще, хотя "интеллектуальный выбор по образцам/примерам" прикольнее |
|||
17
Кирпич
11.03.16
✎
15:01
|
(12) можно отлавливать запись в файл логов действий пользователя
|
|||
18
Кирпич
11.03.16
✎
15:02
|
который logui.txt
|
|||
19
Кирпич
11.03.16
✎
15:03
|
а вообще вопрос из серии "как мне попроще сделать невозможное"
|
|||
20
Garykom
гуру
11.03.16
✎
15:15
|
(19) ну да
(17)(18) там момент записи в этот файл непонятный, оно не сразу пишется после действий пользователя а после закрытия предприятия или может при некотором объеме проблематично сопоставить будет два лога |
|||
21
Кирпич
11.03.16
✎
15:20
|
(20) я так понял тебе это нужно что-бы юзеры тыкая мышкой за тебя кодили, а ты деньги получал. ты не оборзел? :)
|
|||
22
Кирпич
11.03.16
✎
15:24
|
(20) а я чота вообще этот logui.txt не вижу. где его искать то?
|
|||
23
Garykom
гуру
11.03.16
✎
15:31
|
(22) у меня тут c:\Users\Gary\AppData\Roaming\1C\1Cv82\7ce9d2b8-d410-4a3b-8563-d90879454e67\
с ключиком /logui если запустить |
|||
24
Garykom
гуру
11.03.16
✎
15:32
|
(21) ага! ;) лучше пару месяцев потратить чем потом тратить несколько лет по паре минут каждую неделю или даже день
|
|||
25
Кирпич
11.03.16
✎
15:44
|
чота в этом logui.txt какая то хрень записана. что с ней делать вообще можно то. там вроде и данных нету. только мышка клик да клавиша нажал.
|
|||
26
Garykom
гуру
11.03.16
✎
15:46
|
(25) "11.03.2016 14:22:57","Event LClick","Form Документ.Рассылка.Форма.ФормаДокумента","Type TextBox","Name ТекстСообщения","t=53961","beg"
вполне хватает для анализа |
|||
27
Garykom
гуру
11.03.16
✎
15:49
|
(26)+ меня для задачи не сами данные интересуют а их месторасположения
но пока полностью еще не представляю как все сделать, только пути ищу |
|||
28
Кирпич
11.03.16
✎
15:50
|
(26) и чего ты напишешь в своем скрипте, глядя на эту строку из logui.txt?
|
|||
29
Garykom
гуру
11.03.16
✎
15:56
|
(28) Документ.Рассылка.Форма.ФормаДокумента - TextBox - ТекстСообщения
далее из анализа конфы можно понять что "ТекстСообщения" это реквизит "Документ.Рассылка" |
|||
30
Garykom
гуру
11.03.16
✎
16:00
|
(29)+ еще давно в школе делал нечто подобное
в графическом редакторе (типа paint) человек рисует картинку а эта картинка преобразовывалась в набор графических операторов basic чтобы вставить ее в максимально сжатом виде в код программы тестирования учеников некий аналог векторизации главный плюс можно масштаб менять и крутить как хочешь так как картинка векторная (это обычно разные схемы были в т.ч. по физике, химии и т.д.) |
|||
31
Кирпич
11.03.16
✎
16:16
|
так тебе просто названия реквизитов надо и всё чтоли?
|
|||
32
Garykom
гуру
11.03.16
✎
16:18
|
(31) ага ))
|
|||
33
Лефмихалыч
11.03.16
✎
16:18
|
(16) ты затеял что-то неведомое. Проснись.
|
|||
34
Garykom
гуру
11.03.16
✎
16:20
|
(33) это ладно... хочу на основе этого сделать копирование через буфер обмена (CTRL+C -> CTRL+V) целиком объектов между разными конфами 1С ))
|
|||
35
Garykom
гуру
11.03.16
✎
16:22
|
(34)+ потом еще допом сделать
а что удобно же, нашли контрагента или документ в одной базе, скопировали из списка, в другой базе просто вставили и оно со всеми реквизитами заполнено )) |
|||
36
Карупян
11.03.16
✎
16:23
|
Но зачем через реквизиты, а не просто через xml весь объект?
|
|||
37
Карупян
11.03.16
✎
16:23
|
Выгрузить в хмл в 2 строчки кода делается
|
|||
38
Карупян
11.03.16
✎
16:24
|
Хотя если по гуидам нет соответствия, н тогда можно через КД, тоже не сложно
|
|||
39
Garykom
гуру
11.03.16
✎
16:24
|
(35)+ И еще более офигительная идея "Двухпанельного Объектного Менеджера" в стиле Total Commander или Far для конвертации (переноса) данных между различными базами данных (любыми)
|
|||
40
Alexor
11.03.16
✎
16:25
|
(35) Вот глюков то словишь.
Чем универсльный обмен XML и правила в КД не устраивают? |
|||
41
Garykom
гуру
11.03.16
✎
16:25
|
(36) чтобы правила сопоставления (конвертации/трансформации данных) юзер сам указал на примере переноса одного или нескольких объектов ручками
|
|||
42
Garykom
гуру
11.03.16
✎
16:26
|
(40) меня КД устраивает, пользователей/клиентов не устраивает и слишком часто дергают
|
|||
43
Карупян
11.03.16
✎
16:26
|
Если переносить по реквизитам, то может статься что некоторых ссылочных объектов нет, Как быть?
|
|||
44
Карупян
11.03.16
✎
16:26
|
(42) Напиши обертку
|
|||
45
Карупян
11.03.16
✎
16:27
|
(41) чтоб пользователь сам - изначально мертвая идея.
|
|||
46
Garykom
гуру
11.03.16
✎
16:28
|
(43) до этого еще не дошел
(44) не прокатит слишком много разных оберток писать, и если пользователь может ручками перебить между базами что угодно, то сказать какой реквизит какому сопоставить никак не может |
|||
47
Garykom
гуру
11.03.16
✎
16:29
|
(45) ммм, когда то операторы ЭВМ ходили в белых халатах и с ВО инженерами числилися...
а вспомните современные смартфоны? как много людей передавая фотку в инстаграмм догадываются "как это сложно" ? |
|||
48
Лефмихалыч
11.03.16
✎
16:30
|
(34) а какая половая религия мешает без гамака и не на болоте делать это при помощи ctrl+C и ctrl+v?
|
|||
49
Карупян
11.03.16
✎
16:32
|
(46) между любыми базами не всегда может быть соответствие 1 к 1.
зять ут: партнер + контрагент, а в БП только контрагент |
|||
50
Garykom
гуру
11.03.16
✎
16:34
|
(48) э? так я и хочу чтобы для любой пары конф пользователь сам делает один раз этот ctrl+C и ctrl+V для всех реквизитов
а затем оно можно целиком на объектах и даже на списках выделенных объектов! |
|||
51
Карупян
11.03.16
✎
16:34
|
(50) В итоге это выльется в новую кд.
Есть такие примеры на ис |
|||
52
Garykom
гуру
11.03.16
✎
16:35
|
(49) да поэтому сильно урезанное поначалу будет
затем можно некий ИИ накрутить который поймет что если из 1 в 2 места скопировали между конфами то так и далее надо или наоборот из 2 в 1 |
|||
53
Карупян
11.03.16
✎
16:36
|
Опять же на форме может быть поле а заполнение его из регистра.
Ты пользователю будешь предлагать понимать где какой регистр? |
|||
54
Карупян
11.03.16
✎
16:37
|
В любой конфе на БСП стопицот полей не видимых на форме. от которых зависит очень многое, всякие ключи связей и тп
|
|||
55
Fragster
гуру
11.03.16
✎
16:38
|
не взлетит
|
|||
56
Garykom
гуру
11.03.16
✎
16:51
|
(55) возможно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |