0. pm74 162 17.01.18 07:39 Сейчас в теме

Алгоритмы и регламентные задания (расширение)

Универсальный механизм для создания алгоритмов и регламентных задач.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. dsdred 1292 28.05.18 09:48 Сейчас в теме
Петр, я правильно понимаю что:
Основа это "Конфигурация Алгоритмы" cf или "Алгоритмы расширение (8.3.11)." cfe, а Обработка обновления РЗ. это просто Доп обработка с описанием команд для "Алгоритмы расширение (8.3.11)."?


Пример файл шаблонов xml какие примеры содержит?
2. pm74 162 28.05.18 09:52 Сейчас в теме
(1) да все верно
файл шаблонов - это просто сериализованая в xml ТЗ с колонками Ключ(Строка10) Значение(Строка1024)
можно редактировать и в 1С , но в файле удобнее
3. dsdred 1292 28.05.18 09:54 Сейчас в теме
(2)Хорошо, сегодня скачаю поэксперементирую.
4. pm74 162 28.05.18 09:57 Сейчас в теме
5. pm74 162 28.05.18 11:06 Сейчас в теме
(3)
поэксперементирую


эта версия несколько отличается от видео , в части написания кода , примеры есть во встроенной справке
напр:
Пример:

алгоритм1 :   $Ё=1;  Сообщить($Ё); @Процедура(@алгоритм2, Новый Структура("this,Й",this,66)); Сообщить($Ё); // выведет  1 1  66  2 99

алгоритм2 : Сообщить($Ё); Сообщить(@Й);  $Ё=2; @$Ё=99;  Сообщить($Ё);  
6. dsdred 1292 28.05.18 11:11 Сейчас в теме
7. zeegin 45 01.06.18 18:54 Сейчас в теме
Зачем нужно расширение, позволяющее сохранять и исполнять произвольный код, если можно этот произвольный код сразу расположить в расширении и подключить/исполнять штатными средствами, при этом сохраняя безопасный режим не подвергая сервер угрозам.

Выглядит как ужасный костыль.
8. pm74 162 01.06.18 19:17 Сейчас в теме
(7)
Выглядит как ужасный костыль

улыбнуло , на самом деле этот костыль одна из самых полезных штук которые я для себя сделал
все дело в параметрах
9. VVi3ard 48 29.11.18 15:35 Сейчас в теме
Спасибо.
Как раз возникла задача добавить в свою разработку произвольные алгоритмы с поддержкой цепочек алгоритмов.

Хотел уже сам делать но идея была другая (ваша с использованием @Процедура оказалась на порядок удобнее чем моя первоначальная идея).

Спасибо за то что поделились подсистемой.
12. pm74 162 29.11.18 17:45 Сейчас в теме
(9)пожалуйста, если пригодилась пользуйтесь на здоровье,
Писалось кусками на разных версияхтплатформ для себя в основном , поэтому код не совсем причесан, сейчас понемногу дорабатываю
10. VVi3ard 48 29.11.18 16:17 Сейчас в теме
&НаСервере
Процедура ПрочитатьНаСервере(АдресХранилища)
	ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресХранилища);	
	Поток = ДвоичныеДанные.ОткрытьПотокДляЧтения();	
	ЧтениеXML = новый ЧтениеXML;
	ЧтениеXML.ОткрытьПоток(Поток);
	ТаблицаШаблонов = СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
	ДобавитьНовыйПараметрНаСервере(Новый Структура("НаименованиеПараметра,ЗначениеПараметра","Шаблоны",ТаблицаШаблонов));
КонецПроцедуры // ПрочитатьНаСервере()
Показать


В 1С:Предприятие 8.3 (8.3.9.2170) у ЧтениеXML нет метода ОткрытьПоток он появился только в 8.3.10.2168.
В описании у вас написано что для работы нужен 8.3.8.
Думаю стоит поправить в описании что минимальный релиз платформы 8.3.10
11. pm74 162 29.11.18 17:41 Сейчас в теме
(10)это просто бантик для удобства , не считается, на одной фирме работает на 8.2 хотя где то могут быть небольшие нестыковки , см следующий коммент.
13. VVi3ard 48 07.12.18 12:09 Сейчас в теме
Появилось еще несколько вопросов по подсистеме, думаю они будут интересны не только мне.

1. В форме редактирования алгоритмов есть кнопки работы с текстом: "ФормаСохранитьТекст,ФормаВосстановитьТекст" для чего предполагается их использовать?
2. Совсем не понял идею шаблонов, таблиц шаблонов, в видео есть пара слов об этом но не понятно в чем смысл, плюс в видео вероятно достаточно старая версия подсистемы и там шаблоны немного по другому устроены.
3. Для чего используются тэги.
4. Что дает флаг настройки алгоритма "На клиенте", мы ведь сами выбираем откуда выполнить алгоритм (алг_АлгоритмыКлиент.Выполнить..., алг_АлгоритмыСервер.Выполнить....)? Я пока нашел только одно место где это используется для определения того как передавать параметр с типом ТЗ в алгоритм.

Отдельный вопрос, точнее даже пожелание, не нашел способа выгрузки (Рекурсивной с учетом зависимостей) алгоритмов в файл для переноса их между базами.
Понятно что можно самому реализовать выгрузку, однако возможно уже есть выгрузка просто в виде отдельного функционала?
14. pm74 162 07.12.18 12:39 Сейчас в теме
(13)
"ФормаСохранитьТекст,ФормаВосстановитьТекст"

текущую версию алгоритма сохранить в хранилище , для восстановления версии - переименовать параметр в ТекстАлгоритма

(13)
Совсем не понял идею шаблонов, таблиц шаблонов, в видео есть пара слов об этом но не понятно в чем смысл, плюс в видео вероятно достаточно старая версия подсистемы и там шаблоны немного по другому устроены

назначение такое же как в КФ , только хранятся в справочниках
сейчас полностью переделаны , идея с таблицей значений была дебильной изначально ,
сейчас при наборе ==шаблон просматриваются текущие шаблоны и выскакивает предупреждение если совпадение найдено (приложил гиф. ) , к сожалению при записи гиф не видно выскакивающего предупреждения ( есть на скрине в топе статьи)


(13) тэги для быстрого поиска в списке

(13)
Что дает флаг настройки алгоритма "На клиенте", мы ведь сами выбираем откуда выполнить алгоритм (алг_АлгоритмыКлиент.Выполнить...,

это в основном для дальнейшего функционала - построения пользовательских интерфейсов + в режиме редактирования алгоритма позволяет его протестировать

способа выгрузки (Рекурсивной с учетом зависимостей) алгоритмов в файл для переноса их между базами.
да тоже думал об этом , первоначально было сделано для тз шаблонов просто как элемент справочника , нужно будет добавить
Прикрепленные файлы:
16. VVi3ard 48 07.12.18 18:00 Сейчас в теме
(14) Что делают кнопки я понял, не понял именно прикладной смысл использования, зачем это нужно?
т.е. это типа черновика? что бы потом можно было посмотреть предыдущие версии алгоритма?

А шаблон это получается обычный алгоритм. Т.е. любой алгоритм шаблон, все сводится к тому что можно просто вставить текст из другого алгоритма?


(14)
это в основном для дальнейшего функционала - построения пользовательских интерфейсов + в режиме редактирования алгоритма позволяет его протестировать

Понятно, да у меня как раз возникли сложности с использованием алгоритмов с пользовательским интерфейсом, и если часть сложностей (асинхронные модальные вызовы) не вызвали проблем (просто нет потребности так делать), то с другой частью пришлось разбираться (пример долго описывать, если коротко то проблемы с передачей формы на сервер из клиентского контекста).



(14)
да тоже думал об этом , первоначально было сделано для тз шаблонов просто как элемент справочника , нужно будет добавить

Да это было бы полезно странно как вы без этого живете, вероятно у вас одна база? Но даже просто из тестовой базы в продакшен перенести уже проблема.
Мне в общем то все равно пришлось писать отдельную выгрузку т.к. алгоритмы используюся совместно с другими сущностями и выгружать их нужно вместе.
18. pm74 162 07.12.18 19:57 Сейчас в теме
(16)
А шаблон это получается обычный алгоритм
.. не понял именно прикладной смысл использования, зачем это нужно?
т.е. это типа черновика?

ну да

(16)
странно как вы без этого живете, вероятно у вас одна база

не понял именно прикладной смысл использования

баз несколько ,
я же говорил , что это не цельная подсистема написанная за один вечер , она развивается и в разное время были разные задачи , в разных базах существуют разные версии
в то же время она достаточно универсальная и как говорится "вещь сама в себе"
ту же самую выгрузку , можно написать прямо внутри алгоритмов

по поводу интерфейсов , тут разные варианты
например написать небольшие алгоритмы- адаптеры
Запрос = Новый Запрос; 
Запрос.Текст = @ТекстЗапроса; 
Для Каждого Параметр Из Параметры Цикл 
	Если Не Параметр.Ключ = "ТекстЗапроса" Тогда 
		Запрос.УстановитьПараметр(Параметр.Ключ,Параметр.Значение); 
	КонецЕсли; 
КонецЦикла; 
тз = Запрос.Выполнить().Выгрузить(); 
ТабДок = Новый ТабличныйДокумент;
ТабДок.Защита = Истина; 
Для i = 0 По тз.Количество()-1 Цикл 
	Для j = 0 По тз.Колонки.Количество()-1 Цикл 
		Область = ТабДок.Область("R"+(i+1)+"C"+(j+1)); 
		Область.Текст = Формат(тз[i][j], "ЧЦ=10; ДФ=dd.MM.yyyy; БЛ=Ложь; БИ=Истина"); 
		Область.Расшифровка = тз[i][j]; 
	КонецЦикла; 
КонецЦикла; 
возврат ТабДок;;

//----------------
или  например  обработка  ДЗ  на форме  с рекурсией


Если @дз.Строки.Количество() > 0  Тогда 
	Для Каждого Строка Из @дз.Строки Цикл
     	@Процедура(@алгоритм,Новый Структура("дз",Строка));
	КонецЦикла;
Иначе
	@дз.Пометка = Не @дз.Пометка;
КонецЕсли;

или просто взять любой   понравившийся код  на   ИС
Показать

или просто взять любой понравившийся код на ИС
и вывести в любое месте , в любом порядке и количестве , т.е в течение 15 мин. настраивать всякие рабочие места , рабочие столы и т.п . это минимум

задача на ближайшую перспективу , сделать универсальный механизм для декларативного (почти) описания систем со сложным поведением
15. pm74 162 07.12.18 12:56 Сейчас в теме
(13)
думаю они будут интересны не только мне

думаю тут вы ошибаетесь )) см 7 ,
впрочем меня это устраивает, я даже плюсанул
это все очень далеко до завершения , использую пока больше для повседневки, регламентов и всяких экспериментов
зы еще примерчик шаблонов
Прикрепленные файлы:
17. VVi3ard 48 07.12.18 18:06 Сейчас в теме
(15) Ну разные люди бывают с разным мнением. Я рад за (7) и что ему не приходится с этим связываться.
В моем случае алгоритмы это часть другой подсистемы которая используется в большом количестве ИБ по РБД при этом обновить их достаточно тяжело и только в определенные моменты времени. А вот спустить несколько элементов справочника через встроенный НСИ сервер можно в любой момент. Так же есть теоретическая необходимость дать возможность определенным пользователям править алгоритмы не давая доступа к толстому клиенту и конфигуратору. Не всегда есть необходимость и время рисовать интерфейсы.
19. leosoft 143 23.09.19 10:53 Сейчас в теме
1. Попробовал подключить Ваше расширение к Бухгалтерии 30. Однако
подсистема не появилась. Подскажите, пожалуйста, надо как-то
настраивать роли?

2. В обсуждении упоминается какое-то видео? Где его можно скачать?
Может есть какая-то инструкция по заложенным возможностям?
20. pm74 162 23.09.19 10:59 Сейчас в теме
(19) У вас должен быть пользователь с правами Администрирование
25. leosoft 143 23.09.19 11:28 Сейчас в теме
(20) Я запускаю под типовым пользователем "Администратор" и тишина...
В ЗУП тоже не запускается. Само расширение "зеленое". Может что-то еще надо
подстроить?
26. pm74 162 23.09.19 11:31 Сейчас в теме
(25) из типовых там заимствована роль Администрирование с правами просмотра подсистемы
и 2 доп роли на редактирование и выполнение
27. pm74 162 23.09.19 11:37 Сейчас в теме
(25) м.б типовая роль Администрирование не определилась в расширении , т.к сохранял его из унф
28. leosoft 143 23.09.19 12:39 Сейчас в теме
(27) Я с расширениями не работал. Поставил последнюю демку УНФ 1.6, запустил от Администратора, подключил расширение.
перезагрузил, но раздел с алгоритмами не появился.
29. pm74 162 23.09.19 12:50 Сейчас в теме
(28) Сейчас проверю как все работает на пустой БП
30. pm74 162 23.09.19 13:24 Сейчас в теме
(28) сделал пустую базу, добавил пользователя , назначил роль Администратор системы, Администрирование, Полные права , запустил в режиме предприятие и добавил расширение , после перезапуска система почему то сбросила роль Администрирование ( кторая нужна для просмотра подсистемы), поставил у пользователя нужную галку в КФ , перезапустился , все заработало
Прикрепленные файлы:
31. leosoft 143 23.09.19 13:40 Сейчас в теме
(30) Большое спасибо! Заработало после установки галочки в КФ.
32. pm74 162 23.09.19 13:43 Сейчас в теме
(31) роль Администрирование ещё не даёт прав на редактирование.дальше нужно настроить доступ на редактирование и выполнение, во втором случае сама подсистема не доступна
33. leosoft 143 23.09.19 13:48 Сейчас в теме
(32) Спасибо, буду пробовать.
34. pm74 162 23.09.19 14:03 Сейчас в теме
(33) для примера на гитхабе что то есть в папке xml , можно загрузить обрботкой импорт /экспорт
35. leosoft 143 23.09.19 14:13 Сейчас в теме
(34) Там по одному отчетику грузим или все сразу можно
36. pm74 162 23.09.19 14:15 Сейчас в теме
(35) можно кучей , файлики папок тоже желательно
21. pm74 162 23.09.19 11:06 Сейчас в теме
(19)
В обсуждении упоминается какое-то видео? Где его можно скачать?
Может есть какая-то инструкция по заложенным возможностям?


инструкций особо нет т.к делал для себя , там есть какие то готовые алгоритмы которые
можно загрузить через обработку импорт / экспорт

вкратце работает через

_37583_АлгоритмыСервер.ВыполнитьПроцедуру(ПредставлениеАлгоритма,ДополнительныеПараметры)
_37583_АлгоритмыСервер.ВыполнитьФункцию(ПредставлениеАлгоритма,ДополнительныеПараметры
_37583_АлгоритмыКэш.ВыполнитьФункцию(Алгоритм,ДополнительныеПараметры

_37583_АлгоритмыКлиент.ВыполнитьПроцедуру(ПредставлениеАлгоритма,ВходящиеПараметры

_37583_АлгоритмыКлиент..ВыполнитьФункцию
22. pm74 162 23.09.19 11:08 Сейчас в теме
(19) здесь есть ссылки на видео , правда старые
23. leosoft 143 23.09.19 11:09 Сейчас в теме
24. pm74 162 23.09.19 11:09 Сейчас в теме
37. cprit 26.12.19 12:52 Сейчас в теме
Добрый день!
Для обычных форм есть замечательный набор инструментов "Инструменты разработчика 1С", но его невозможно использовать в линуксе и в тонком и веб клиенте.

Поэтому мы решили собрать подобный пакет, но который будет работать только на платформенных механизмах или с использованием кроссплатформенных компонент.

Использование этого пакета инструментов хотим сделать общедоступным(OpenSource), разработку вести через гитхаб с использованием EDT.

Можем ли мы включить в этот набор обработки(или часть идей и функционала) из этого репозитория https://github.com/pm74/_37583.git?

На текущий момент нашли основные инструменты (консоль запросов, консоль кода, редактор реквизитов, консоль компоновки и др.) для включения в инструментарий. Сейчас занимаемся получением одобрения авторов. Часть включаем свои- редактор предопределенных, редактор констант, Групповая обработка

Ссылка на репозиторий с новыми инструментами https://github.com/cpr1c/tools_ui
38. pm74 162 04.01.20 23:36 Сейчас в теме
(37)
Можем ли мы включить в этот набор обработки(или часть идей и функционала) из этого репозитория

включайте
39. cprit 05.01.20 09:27 Сейчас в теме
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Краснодар
зарплата от 70 000 руб.
Полный день

Старший консультант-аналитик 1С БИТ.Финанс
Москва
зарплата от 150 000 руб. до 180 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 110 000 руб. до 150 000 руб.
Полный день

Ведущий программист 1С
Москва
зарплата от 170 000 руб. до 200 000 руб.
Полный день

Программист 1С
Москва
зарплата до 160 000 руб.
Полный день