|   |   | 
| 
 | Программные клики в 1с. | ☑ | ||
|---|---|---|---|---|
| 0
    
        Креатив 23.09.21✎ 11:14 | 
        В продолжении ветки ЗУП 3.1. Перерасчёт всех сотрудников оптом в увольнении списком.
 Как в 1С эмулировать нажатие кнопок/ссылок (запускать выполнение команд). Пользователям лень заходить в расшифровку каждой строчки, нажимать на пересчитать и ок. | |||
| 1
    
        Смотрящий 23.09.21✎ 11:16 | 
        (0) Спроси их про деньги. Им их не лень получать ?     | |||
| 2
    
        ДенисЧ 23.09.21✎ 11:19 | 
        (0) Нарисуй им кнопку "пересчитать расшифровку всех строк"     | |||
| 3
    
        GANR 23.09.21✎ 11:23 | 
        (0) Совершенно ненужная вещь. Нужно просто сделать кнопку, которая массово пересчитает все, что они поштучно кликают как говорит (2).     | |||
| 4
    
        Креатив 23.09.21✎ 11:26 | 
        (2)(3)Если вы про программное дублирование кода пересчёта, то такая мысль была. Но как только 1С поменяет алгоритм расчёта(законодательство изменится), придётся снова всё переделывать.     | |||
| 5
    
        Жан Пердежон 23.09.21✎ 11:27 | 
        (4) а дублировать то зачем?     | |||
| 6
    
        Мимохожий Однако 23.09.21✎ 11:29 | 
        (4) Они не про это     | |||
| 7
    
        Kassern 23.09.21✎ 11:32 | 
        (0) как то так тебе надо?))
 Процедура ЭмуляцияДляПрокрастинации() ТвояКнопка(неопределено) //вот так можешь юзать кнопку) КонецПроцедуры | |||
| 8
    
        Креатив 23.09.21✎ 11:33 | 
        (5)(6)Я посмотрю, где расположены процедуры и функции по расчёту. Если окажется, что в форме строки документа, то я пока не представляю, как их запустить.     | |||
| 9
    
        Креатив 23.09.21✎ 11:34 | 
        (8)+ из основной формы документа.     | |||
| 10
    
        Kassern 23.09.21✎ 11:34 | 
        (0) а если уж совсем хочешь по хардкору, то....))
 Shell= Новый COMОбъект("Wscript.Shell"); Shell.SendKeys(... | |||
| 11
    
        Мимохожий Однако 23.09.21✎ 11:36 | 
        (9) Включи отладчик, сделай точку останова на команды пользователей по кнопкам и все эти команды запихни в одну кнопку с перебором строк     | |||
| 12
    
        Bigbro 23.09.21✎ 11:46 | 
        я делал как в (10) когда надо было кнопки посылать.     | |||
| 13
    
        mikecool 23.09.21✎ 11:48 | 
        в конфигураторе: сервис - запустить для записи журнала действий пользователя + (10) 
 ))) | |||
| 14
    
        mikecool 23.09.21✎ 11:48 | 
        сейчас придет Гений и выдаст мегарешение с использованием стиральной машины     | |||
| 15
    
        Креатив 23.09.21✎ 12:05 | 
        (11)Загвоздка в том, что формы две.  Основная и форма строки, которая расшифровывает каждую строчку в отдельности. И в ней происходит расчёт.     | |||
| 16
    
        Kassern 23.09.21✎ 12:10 | 
        (15) вы думаете, что там с принципами ООП все плохо? Полюбому расчет из какого то общего модуля происходит и к нему можно программно постучаться     | |||
| 17
    
        Креатив 23.09.21✎ 12:12 | 
        (16)Проверю.     | |||
| 18
    
        Креатив 23.09.21✎ 12:37 | 
        (16)Ситуация ещё хуже, чем я думал. Большинство действий производится в модуле формы строки. Есть отсылки к общим модулям при расчёте среднего и чего-то ещё. Плюс ещё создаётся документ уволнение(без последующей записи) и там какие-то манипуляции происходят.
 Получается то же дублирование. Тупиковый путь. | |||
| 19
    
        Креатив 23.09.21✎ 12:40 | 
        Попробую осуществить следующий план.
 1. В основной форме вызвать команду расшифровки, открывающую форму строки с добавлением своего параметра. 2. В форме строки при открытии проверять наличие параметра. И выполнять команды расчёта и нажатия кнопки ок. | |||
| 20
    
        GANR 23.09.21✎ 16:17 | 
        (4) Для меня выработался закон трёх "не":
 - не копипастить (дублировать) - не использовать первый попавшийся - не вставлять бизнес-логику в код | |||
| 21
    
        МнеТолько Спросить 23.09.21✎ 16:29 | 
        (18)Могу я уточнить где проблема? В открытии\создании формы? Или в запуске процедур этой формы?     | |||
| 22
    
        fisher 23.09.21✎ 16:37 | 
        (20) > не вставлять бизнес-логику в код
 А куда, если не спрашивать гусар? | |||
| 23
    
        Жан Пердежон 23.09.21✎ 16:55 | 
        (22) очевидно, что в данные!
 ВЫПОЛНИТЬ(СправочникБизнесЛогики.Код); | |||
| 24
    
        Жан Пердежон 23.09.21✎ 17:01 | 
        (18) только хотел написать, что ты еще ЗУП не видел, но это, судя по всему, он и есть. Там вся бизнес-логика в экранных формах зашита. Любая автоматизация - привет копи-паста.
 В моём личном топе это была Худшая типовая конфа №1. Была, пока не вышла 1С УХ. | |||
| 25
    
        Кирпич 23.09.21✎ 19:08 | ||||
| 26
    
        Креатив 24.09.21✎ 09:51 | 
        (21)Случись, что нужная процедура/функция не является экспортной и финиш.
 (25)Кликеры - это последний вариант. Нужен уж очень навороченный, который может распознавать элементы форм. | |||
| 27
    
        Kassern 24.09.21✎ 09:55 | 
        (26) напиши свой на питоне, чтобы все распознавал. Помню как то мини бота писал, который кликал там где мне надо и когда надо) Там ничего сложного нет, По клавише запускаешь код, программма может сделать скрин выбранного участка, далее без проблем сравнить с нужной картинкой, если совпадение до определенного уровня, тогда тыкнуть как тебе надо)     | |||
| 28
    
        Kassern 24.09.21✎ 09:57 | 
        (26) "то нужная процедура/функция не является экспортной" ну так сделай ее таковой, или перенеси всю эту бизнес логику в какую нить обработку внешнюю. А далее можешь ее прикрутить в 1с в виде кнопки. По нажатию, получаешь данные документа и заполняешь как тебе надо.     | |||
| 29
    
        Мультук гуру 24.09.21✎ 09:58 | 
        (24) 
 Полностью согласен. Есть впечатление, что ЗУП писала команда вообще "оторванная" от других команд (БП, УТ). | |||
| 30
    
        Креатив 24.09.21✎ 10:10 | 
        (27)На питоне не катит. Если и писать, то ВК для 1С, чтобы понимала элементы форм 1С. Только вот я сижу на сдельно-почасовой оплате. И если буду заниматься такими делами, то очень быстро закончится еда.
 (28)Тот же копипаст. 1С следовало пойти этим путём. Тогда использовать было бы одно удовольствие. | |||
| 31
    
        maximkasuper 24.09.21✎ 11:13 | 
        (25) Сделайте через расширение формы. С поддержки снимать не надо, но при этом есть доступ ко всем методам формы.     | |||
| 32
    
        Креатив 06.10.21✎ 11:44 | 
        (31)Прямого доступа не вижу. В расширение методы добавлять нужно?     | |||
| 33
    
        ADirks 06.10.21✎ 11:57 | 
        (29) на ЗУПе у них традиционно самая лучшая и привилегированная команда
 привилегированная - потому что траву им подтаскивают без перерыва, и самую годную самая лучшая - потому что поддерживать и развивать это чудо могут только наиболее крутые перцы | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |