Построение дерева вызовов процедур и функций

Публикация № 203843

Разработка - Инструментарий разработчика

построение дерева вызовов процедур и функций

70
Количество уровней вложенности вызовов процедур и функций в типовых конфигурациях на управляемых формах сильно возросло и анализ работы отдельных программных механизмов порой превращается в головоломку. Чтобы облегчить этот процесс, мной была разработана подсистема построения дерева вызовов процедур и функций. Порядок ее использования довольно прост: после несложных подготовительных действий по встраиванию служебных механизмов в исследуемую конфигурацию, открываем обработку построения дерева, нажимаем "Начать", затем выполняем действия, алгоритм которых необходимо изучить и, вернувшись в окно обработки, нажимаем кнопку завершения. Дерево вызовов появится на форме - см. видео.

Построение дерева вызовов проведения реализации в демо-базе "Бухгалтерия предприятия, редакция 3.0 (3.0.70.39)"



 

Порядок подготовки конфигурации к исследованиям

1. Выгрузите файлы исследуемой конфигурации;

2. Вставьте в программные модули исследуемой конфигурации служебные механизмы построения дерева вызовов, для этого запустите базу Построение дерева вызовов в пользовательском режиме, меню Построение дерева вызовов - Вставить процедуры построения дерева вызовов, укажите каталог с выгруженными файлами конфигурации и нажмите Вставить процедуры дерева вызовов;

3. Загрузите обработанные файлы в исследуемую конфигурацию;

4. Вставьте объекты подсистемы "Построение дерева вызовов" в исследуемую конфигурацию;

5. В начало процедуры УстановкаПараметровСеанса модуля сеанса исследуемой конфигурации добавьте содержимое одноименной процедуры конфигурации Построение дерева вызовов.

Решение может быть полезным для

  • Изучения новых механизмов конфигураций
  • Выявления "узких" мест, которые можно найти при анализе продолжительности вызовов - продолжительность вызова в микросекундах выводится в колонке "Время" дерева (при этом следует учитывать, что это время включает и затраченное на само построение дерева)
  • В образовательных целях - для изучения порядка следования стандартных процедур
  • Общего повышения производительности труда программиста благодаря эффекту визуализации сложных алгоритмов


Как это работает

Принцип построения дерева предельно прост. В каждую процедуру и функцию, в начало и конец, а так же в точки возможных возвратов из них вставляются строки с вызовами процедур подсистемы построения дерева, используя возможности выгрузки / загрузки файлов конфигурации. Результаты между вызовами хранятся в параметрах сеанса.

Дополнительные возможности и особенности

Если необходимо построить дерево вызовов процесса начала работы с базой, установите константу "Строить дерево вызовов", перезайдите в базу, запустите обработку построения дерева вызовов и нажмите "Закончить".

Дерево вызовов можно сохранить в файл, для этого нужно в меню "Все действия" обработки нажать "Печать" - будет сформирован табличный документ.

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

Для того, чтобы избежать выполнения исследуемых алгоритмов типовых конфигураций в фоновых заданиях, запускайте базу в режиме отладки (запуск с параметром \РежимОтладки).

В связи с недопустимостью серверных вызовов при завершении работы системы, построение дерева вызовов процесса завершения работы не предусмотрено.

Отдельная обработка циклов и условий пока не поддерживается.


О возможных ошибках

Решение не претендует на охват всех возможных вариантов синтаксиса, которые могут встретиться в исследуемых алгоритмах. Критерием для меня являлось отсутствие ошибок при формировании деревьев исследованных операций. То есть, основная масса используемых конструкций корректно отрабатывается подсистемой. Но наверняка ошибки встретятся  и тогда их исправление как правило не составляет большого труда - исправления вносятся непосредственно в код исследуемой конфигурации и далее учитываются в алгоритме обработки текстов модулей. 

Все значимые синтаксические конструкции помещены в подсистему "Тест" конфигурации Построение дерева вызовов. Если вам встретится конструкция, не отрабатываемая подсистемой и заслуживающая отдельного описания в алгоритме вставки служебных вызовов построения дерева, присылайте ее мне и я постараюсь включить ее обработку в подсистему.

Тестирование проводилось на версии платформы 8.3.14.1565.

70

Скачать файлы

Наименование Файл Версия Размер
Построение дерева вызовов
.cf 39,78Kb
08.05.19
65
.cf 2.0.3 39,78Kb 65 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Дерево
1. ssa 16.10.13 10:32 Сейчас в теме
Судя по описанию, полезная штука. Надо будет попробовать. Спасибо.
2. pumbaE 630 16.10.13 11:41 Сейчас в теме
В чем отличие от http://infostart.ru/public/164960/ ?
3. TSSV 16.10.13 12:18 Сейчас в теме
(2) pumbaE, вещь похожая, но есть различия в деталях. В предлагаемом мной варианте есть время вызовов, разработана для УФ, обозначенная в вашей ссылке проблема ; решена изначально, так же есть возможность анализа циклов и условий (об этом в описании не написано, но скачав можно увидеть и такую возможность) и т.д. А вообще о существовании этой разработки я честно говоря не знал... Вобщем предлагаю свой вариант решения данной задачи.
4. Alever 3 16.10.13 13:13 Сейчас в теме
5. MarSeN 973 17.10.13 10:07 Сейчас в теме
Штука клевая, однозначно +
как мысль по развитию.... (я правда не качал, но думаю что на первой итерации такое не делается :) )
Надо бы обрабатывать команды Выполнить и Вычислить. Оснобенно это важно для новой УТ11...
6. TSSV 17.10.13 19:41 Сейчас в теме
(5) MarSeN,спасибо! Наличие конструкуции Выполнить не является проблемой, так как строится дерево реально отработавших процедур/функций. Если в Выполнить будет вызов процедуры или функции, то он отобразится в дереве как потомок вызова, в котором находится сама конструкция Выполнить. При этом делать сами конструкции Выполнить потомками процедуры/функции, в которой они находятся с текстом кода инструкции не составит никаких проблем и это хорошая мысль, так что спасибо еще раз!
7. MarSeN 973 18.10.13 09:07 Сейчас в теме
(6)
Да, об этом я не подумал... Действительно, текст модулей не парсится на предмет вызова процедур-функций. И это здорово! Данный метод действительно покрывает 100% всех вызовов, в отличии способа при котором частично выгружаются модули и обрабатываются (вариант, который реализован в статье комментария №2).
Сергей, на видео видно что все вызовы выстраиваются в дерево.
А как обрабатываются (отображаются в дереве) рекурсивные вызовы (рекурсивные процедуры/функции)? Не происходит зацикливания при построении дерева?
8. TSSV 18.10.13 10:24 Сейчас в теме
(7) MarSeN, Рекурсивные вызовы отрабатываются корректно (ведь количество этих вызовов конечно). В формируемом дереве рекурсивный вызов будет иметь множество одинаковых подчиненных веток - по числу вызовов рекурсивной функции и при просмотре Вы будете видеть сначала первый вызов, потом, раскрыв его - второй и так далее. И Вы правы, задав этот вопрос - спасибо! Я тоже думал о том, чтобы анализировать код функции на предмет ее рекурсивности и ограничиваться выводом одной "внешней" ветки, а пока, встретив слишком "длинную" рекурсию, можно убрать из нее служебные строчки подсистемы.
9. MarSeN 973 18.10.13 11:00 Сейчас в теме
(8)
Спасибо!
Класная штука. Однозначно время потрачено не зря!
10. identificator 18 18.10.13 14:17 Сейчас в теме
В УТ 11.1 не показывается дерево.
11. TSSV 18.10.13 14:22 Сейчас в теме
(10) identificator, можно более подробно - что происходит при этом и что Вы проделали?
12. TSSV 18.10.13 14:42 Сейчас в теме
(10) identificator, сделаю предположение - я тоже в УТ 11.1 проводил тестирование. Возможно дело в том, что процесс построения зашел в рекурсию и там он может находиться довольно долго. Чтобы понять, где находится процесс в отладчике Отладка - Остановить, потом в стеке вызовов посмотреть где находится процесс. Если он действительно в рекурсивной функции, то просто уберите из нее вызовы процедур подсистемы.
15. identificator 18 18.10.13 23:57 Сейчас в теме
(12) я 5-ый пункт забыл выполнить! Невнимателен был! По три раза считывал модули в каталоге, и теперь конфигурация умерла..
17. identificator 18 21.10.13 10:19 Сейчас в теме
(12) сделайте защиту "от дурака". Чтобы при повторном считывании выгруженных модулей возникало сообщение, что уже модули были считаны. Или возможность удалить строки из уже прочитанных модулей. Особенно полезно для больших конфигураций.
18. TSSV 21.10.13 11:34 Сейчас в теме
(17) identificator, спасибо, тоже думл об этом - возможность удалить вставки и не обрабатывать файлы где уже есть вставки. Сделаю.
20. identificator 18 21.10.13 16:43 Сейчас в теме
(18) Сергей, не подскажите, как возвратить конфигурацию к первоначальному виду с возможностью корректного запуска? Исходную конфигурацию (в которой добавились строки ";ПостроениеДереваВызовов.") объединил с родительской конфигурацией и закомментировал все строки вида ";ПостроениеДереваВызовов.**". В том числе и в модуле сеанса. Но конфигурация не запускается все равно в режиме предприятия.
21. TSSV 21.10.13 17:52 Сейчас в теме
(20) identificator, В конфигураторе, меню Конфигурация - Загрузить конфигурацию из файла - указать исходный файл конфигурации. Произойдет полная замена конфигурации. Не забудьте сделать бэкап перед этим, чтобы не потерять данные если что то пойдет не так.
22. identificator 18 22.10.13 09:22 Сейчас в теме
(21) такой способ не подходит, так как в моей конфигурации было сделано много правок относительно функционала. А бэкапа не осталось.
23. TSSV 22.10.13 10:11 Сейчас в теме
(22) identificator,случай тяжелый. Лучше конечно обратиться к специалисту за помощью. Нужно сделать следующее - найдите конфигурацию, которую дорабатывали (изначальный релиз УТ), объедините ее с той что у Вас получилась в части свойств конфигурации (имя, синоним, модуль управляемого приложения и пр.) и если у Вас там были доработки, то их придется восстанавливать по памяти - писать заново. Далее, через меню Правка - Глобальная замена - замените во всех модулях строку ";ПостроениеДереваВызовов." на "//;ПостроениеДереваВызовов." (без кавычек естественно). Получите результат максимально близкий к оригиналу из возможных в такой ситуации. Но все таки лучше Вам обратиться к специалисту.
24. identificator 18 22.10.13 14:39 Сейчас в теме
(23) Сергей, я и есть специалист.
25. MarSeN 973 22.10.13 15:47 Сейчас в теме
(24) identificator,
Если Вам нужно избавиться от вставок текста, которые сделаны подсистемой автора, попробуйте выгрузить все файлы модулей и воспользоваться какой-нить утилитой для поиска и замены текста в файлах.
26. MarSeN 973 22.10.13 15:51 Сейчас в теме
(25) MarSeN, (24) identificator,
сори, ступил ) есть же глобальная замена. Об этом автор уже написал.
27. MarSeN 973 22.10.13 15:57 Сейчас в теме
(22) identificator,
Если у Вас конфа не обновилась, то Вы можете вернуться к конфигурации БД. (Хотя если Вы пишите, что являетесь специалистом, значит проблема в чем-то другом)
в посте 16 Вы пишете
6) После загрузки обновляю конфигурацию и захожу в ИБ. Начинается процесс обновления ИБ, который никак не доходит до конца и постоянно вылетает с какой-нибудь ошибкой.

т.е. ИБ у Вас не обновлена, следовательно содержит предыдущий cf.
PS: и не забываем про бекапы
28. TSSV 22.10.13 16:58 Сейчас в теме
(27) MarSeN,
6) После загрузки обновляю конфигурацию и захожу в ИБ. Начинается процесс обновления ИБ, который никак не доходит до конца и постоянно вылетает с какой-нибудь ошибкой.

речь скорей всего идет об обновлении ИБ в связи со сменой версии, так как были затерты свойства исходной конфигурации при добавлении подсистемы, то есть, при сравнении - объединении не был установлен отбор по подсистеме файла "Построение дерева вызовов".
29. MarSeN 973 22.10.13 17:07 Сейчас в теме
(28)
ааа) ну да, надо же внимательнее читать, что написано )
сори за получившийся флуд.
PS: больше надо отдыхать )
13. 1cspbru 192 18.10.13 15:42 Сейчас в теме
Автор болшой молодец. Спасибо! То, что нужно для глубокого погружения в код. И ведь работает (ну почти:))))) на всех объектах. Идеей замерять через начало и окончание - очарован. Если бы не этот флажок, то была бы дикая куча хлама при замерах.

Молодец, однозначно +
14. TSSV 18.10.13 17:34 Сейчас в теме
(13) 1cspbru, спасибо за такую "обратную связь", это очень ценно для меня!
16. zlakizla 59 21.10.13 05:39 Сейчас в теме
Пытаюсь воткнуть дерево вызовов в БП 3.0, но во время обновления ИБ в самом конце постоянно лезут ошибки (последняя, которая была "ожидается имя формального параметра"). Может я что-то не так делаю?
1) Выгрузил модули конф-ии. Конфигурация->Выгрузить файлы конфигурации, выбираю все объекты и ниже ставлю галочку только на модули. Все выгружается в каталог.
2) Включаю возможность редактирования конф-ции и сравниваю/объединяю с конфой из файла. После объединения обновляю конфу.
3) В начало процедуры УстановкаПараметровСеанса модуля сеанса добавить строку:
ПостроениеДереваВызовов.УстановитьПараметрыСеанса(Константы.ПостроениеДереваВызовов.Получить()); Она у меня уже там есть... Причем кроме вызова этой процедуры там ничего нет. Пробовал и вставлять еще одну строку и без вставки :)
4) Захожу в пользовательском режиме, запускаю обработку "Вставить процедуры построения дерева вызовов", выбираю каталог с модулями и жму "Вставить процедуры дерева вызовов". Обработка благополучно вставляет в каждый модуль свои процедурки.
5) В конфигураторе загружаю обработанные модули. Конфигурация->Загрузить файлы конфигурации. Выбираю каталог и ставлю галочку на модули и для всех объектов.
6) После загрузки обновляю конфигурацию и захожу в ИБ. Начинается процесс обновления ИБ, который никак не доходит до конца и постоянно вылетает с какой-нибудь ошибкой.
19. TSSV 21.10.13 12:01 Сейчас в теме
(16) zlakizla, думаю ошибка в следующем. Вам нужно добавить в БП 3.0 только то, что относится к подсистеме ПостроениеДереваВыозовов. Тот факт, что

ПостроениеДереваВызовов.УстановитьПараметрыСеанса(Константы.ПостроениеДереваВызовов.Получить()); Она у меня уже там есть...

говорит о том, что процедура установки параметров сеанса из скачанной конфигуарции затерла то что было в БП 3.0 и думаю не только это (скорей всего изменилась и версия, так как стартует обработка обновления ИБ как после смены релиза). Далее все описываемые эффекты подтверждают это предположение.

То есть, при сравнении - объединении нужно:
1. Конфигурация - Сравнить, объединить с кофнигурацией из файла, указать скачанный файл с подсистемой.
2. В открывшемся окне сравнения, снять галочку с корневого элемента, при этом все остальные галочки снимутся автоматически.
3. В этом же окне. Действия - отметить по подсистемам файла. Отметить только подсистему "Построение дерева вызовов" (в результате корневой элемент конфигурации будет отмечен полутоновой галочкой на сером фоне - на всякий случаай это отмечаю).
Далее как обычно.
30. help1Ckr 23.10.13 10:59 Сейчас в теме
За идею плюс, но вписывать в каждою процедуру код не вариант для типовых на поддержке
31. sml 35 24.10.13 09:23 Сейчас в теме
И зачем столько трудов, когда есть стандартный механизм 1С в конфигураторе:
Останавливать по ошибке -> стэк вызовов
identificator; +1 2 Ответить
32. Maxisussr 20.01.14 17:05 Сейчас в теме
Т.е. для того, чтобы она работала, придется в конец каждого из тысячи методов конфы (половина из них на поддержке с замком) вставлять вызов некоей процедуры - счетчика? А в чем смысл разработки?
33. RockLeeSan 20 19.10.14 19:20 Сейчас в теме
Здравствуйте! Обнаружил ошибку, которая возникает при огромном количестве вызовов процедур или функций (более тысячи). Привожу текст кода до исправления и после:
1) Функция ВернутьСтрокуОбращенияПоИндексам(СтрокаДерева)
...
...
...
Для Каждого ЭлМассива Из МассивИндексов Цикл
СтрокаОбращенияПоИндексам = ".Строки[" + ЭлМассива+ "]" + СтрокаОбращенияПоИндексам;
КонецЦикла;

2) Функция ВернутьСтрокуОбращенияПоИндексам(СтрокаДерева)
...
...
...
Для Каждого ЭлМассива Из МассивИндексов Цикл
СтрокаОбращенияПоИндексам = ".Строки[" + СтрЗаменить(СокрЛП(ЭлМассива),Символы.НПП,"") + "]" + СтрокаОбращенияПоИндексам;
КонецЦикла;


Как видно из текста, переменная "ЭлМассива" в первом варианте, имея числовой вид 1000 и более, конвертируется в строковый вид "1 000" (после первого знака вставляется неразрывный пробел, что приводит к ошибке обращения по индексу). Это старый прикол 1С, который необходимо учитывать при использовании конвертируемых из чисел в строку переменных.
34. RockLeeSan 20 11.11.14 13:39 Сейчас в теме
И еще раз здравствуйте! И снова обнаружена проблема, но скорей всего это уже косяк платформы. (в данном случае - 8.2.19.83):
при использовании методов "ПоместитьВоВременноеХранилище" и "ПолучитьИзВременногоХранилища", расположенных в разных процедурах, в начале и конце которых используется конструкция
//{Построение дерева вызовов
; ;ПостроениеДереваВызовов.НачалоБлока("........................");
//}

, ПОМЕЩЕННОЕ ВО ВРЕМЕННОЕ ХРАНИЛИЩЕ ЗНАЧЕНИЕ ОЧИЩАЕТСЯ !!!
(и становится в значение
Неопределено
)

Теперь не знаю, как отловить среди всех процедур те, в которых используется механизм хранилища, и подчистить там вышеприведенные конструкции...
35. gortol 183 16.02.18 09:52 Сейчас в теме
интересно, на расширении конфигурации (8.3.10+) такое возможно сбацать?
36. TSSV 998 16.02.18 14:29 Сейчас в теме
37. Scorpion4eg 280 06.05.19 14:12 Сейчас в теме
Интересная вещь. Пытаюсь сейчас что-то подобное реализовать, но как стек исключений. А есть возможность добавить бамп переменных?
38. TSSV 998 06.05.19 15:58 Сейчас в теме
Хороший вопрос, думаю можно.
39. nicxxx 236 08.05.19 07:47 Сейчас в теме
Многострочные условия в циклах обрабатываются некорректно.
Пока ЕстьДанные
//{Построение дерева вызовов
;ПостроениеДереваВызовов.НачалоБлока("ОбщиеМодули.ОбновлениеИнформационнойБазыБП.ОчиститьСуммыПРприПродажеВалюты() Экспорт, цикл: Пока ЕстьДанные");
//}
И Выборка.Регистратор = ТекущийРегистратор Цикл
40. TSSV 998 08.05.19 10:24 Сейчас в теме
(39) Упор делался на обработку вызовов процедур и функций. Циклам и условиям внимание практически не уделялось, изначально эти возможности были добавлены скорее "на перспективу" и я просто забыл убрать их с формы. Дорабатывать их не планирую, но уберу эти настройки с формы. Можете сами исправить по аналогии с обработкой возвратов из функций (здесь следует учесть, что в условии может вызываться функция). Если ответ не устроил, пришлите реквизиты для возврата денег - верну по курсу sm.
41. TSSV 998 08.05.19 11:01 Сейчас в теме
Коллеги, дополнил описание:
Отдельная обработка циклов и условий пока не поддерживается - то есть циклы и условия не образуют отдельных, собственных веток при построении дерева, а соответствующие вызовы функций (речь о выражениях условий в Если или прекращения цикла в Пока) обрабатываются в общем порядке. В выражениях условий могут вызываться функции, при этом логические выражения не всегда вычисляются полностью, например, при вычислении логического И, когда встречается ложное выражение. Аналогичная проблема существует и при вычислении логических выражений в операторах Возврат функций, но ее влияние намного менее существенно.
42. TSSV 998 08.05.19 11:48 Сейчас в теме
Добавлена возможность скачать демо-базу Бухгалтерии 3.0.70.39 со встроенными механизмами построения дерева вызовов.
43. TSSV 998 09.05.19 11:54 Сейчас в теме
(42) Эта возможность отклонена модератором - нарушение авторских прав.
Оставьте свое сообщение

См. также

Инструменты оптимизации для 1С на MS SQL Server 116

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) Прочие инструменты разработчика

Набор базовых инструментов для поиска узких мест в работе 1С на MS SQL Server.

1 стартмани

15.12.2019    9438    155    berezdetsky    21       

INFOSTART MEETUP Krasnodar. 14 февраля 2020 г. Промо

Краснодар станет первым в 2020 году местом, где пройдет региональная встреча IT-специалистов сообщества Инфостарт. Тема мероприятия - управление и технологии автоматизации учета на платформе "1С: Предприятие". Стоимость участия - 5000 рублей. Цена действительна до 26.12.2019.

CF & SQL : конструктор прямых запросов к БД 1С 161

Инструменты и обработки Системный администратор Программист Архив с данными v8 1cv8.cf Россия MS SQL Абонемент ($m) Инструментарий разработчика Администрирование СУБД

Программа для чтения и анализа внутренней структуры данных 1С V8.х, Содержит конструктор прямых SQL запросов, позволяет обрабатывать и редактировать тексты SQL-запросов, выполнять прямые запросы к базе данных 1С и обрабатывать полученные результаты.

1 стартмани

02.10.2019    7916    129    dmitrydemenew    34       

Конвейер проверки качества кода 135

Инструменты и обработки Программист Архив с данными v8 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика Практика программирования Математика и алгоритмы Разработка

Jenkinsfile для выполнения проверки качества кода. Собирает информацию с АПК, EDT и BSL-LS. Сопоставляет ошибки с гит-репозиторием, выгруженным ГитКонвертором. Отправляет в Сонар.

3 стартмани

04.09.2019    9033    16    Stepa86    37       

1C:Предприятие для программистов: Запросы и отчеты. Второй поток. Онлайн-интенсив с 17 марта по 16 апреля 2020 г. Промо

Данный онлайн-курс предусматривает углубленное изучение языка запросов и возможностей системы компоновки данных, которые понадобятся при разработке отчетов, работающих на платформе “1С:Предприятие” в рамках различных прикладных решений. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей различных прикладных решений, которые используют в своей работе отчеты разного назначения.

6500 рублей

Просмотр и анализ структуры базы данных (отчет на СКД) 123

Отчеты и формы Системный администратор Программист Внешний отчет (ert,erf) v8 v8::СКД 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика

Отчет для просмотра и анализа структуры базы данных с поддержкой файловых баз (ограниченный режим), а также баз на SQL Server и PostgreSQL.

5 стартмани

24.07.2019    10534    109    YPermitin    26       

Модель объекта 10

Инструменты и обработки Программист Конфигурация (md, cf) v8 Абонемент ($m) Инструментарий разработчика

Подсистема позволяет описать модель данных объекта, где описана зависимость между реквизитами, и затем использовать эту модель в разных сценариях работы с объектом. Версия платформы: 8.3.6 и выше. С небольшими доработками будет работать на 8.2.

1 стартмани

30.06.2019    5237    1    vadim1980    3       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Переводим рутину ручного тестирования 1C на рельсы Jenkins-а и ADD 144

Инструменты и обработки Системный администратор Программист Архив с данными v8 Windows Абонемент ($m) Инструментарий разработчика Jenkins

Вы все еще тестируете свои конфигурации 1С вручную? Да вы просто тратите жизнь впустую! В данном туториале попробуем скрестить ADD и jenkins для автоматического запуска тестов.

1 стартмани

03.06.2019    13105    1    ripreal1    86       

Универсальный HTTP-сервис на платформе 1С, аля HTTP-сервер с примером 206

Инструменты и обработки Программист Подсистема v8 1cv8.cf Абонемент ($m) Инструментарий разработчика

Практический кейс построения HTTP-сервиса, который работает по принципу HTTP-сервера, с разбором всех методов построения и разработки класса задач построения личных кабинетов и сопряжения их с центральной базой.

1 стартмани

13.05.2019    19734    100    Diversus    42       

Базовый курс для начинающих 1С-программистов. Пятый поток. Онлайн-курс с 12 февраля по 15 апреля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500/9500 рублей

Групповая проверка доработок 109

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Инструментарий разработчика

Обработка для массовой проверки доработок конфигурации: Открытие форм, Печать, Формирование отчетов, Проведение документов, Запись справочников, ПВХ, ПВР. Выдает список обнаруженных ошибок. Рекомендуется применять для тестирования обновленной конфигурации, перед установкой пользователям. В коде используются универсальные методы поэтому подходит для большинства конфигураций, построенных на базе библиотеки стандартных подсистем. Проверялась на Зарплата и управление персоналом КОРП 3.1.8.216, Управление торговлей 11, 1С:ERP Управление предприятием 2.4.7.141, Бухгалтерия предприятия КОРП 3.0.68.66.

2 стартмани

05.05.2019    8952    72    sapervodichka    23       

Расширение "Быстрая проверка кода" для конфигурации 1С:Автоматизированная проверка конфигураций 95

Инструменты и обработки Программист Расширение (cfe) v8 v8::УФ 1cv8.cf Абонемент ($m) Инструментарий разработчика

Расширение для конфигурации "1С:Автоматизированная проверка конфигураций", позволяющее проверять произвольный код.

1 стартмани

26.03.2019    11763    44    Bazil    25       

Перенос данных КА 1.1 => ERP 2 (ЕРП) (обработка переноса документов, остатков и справочной информации из "1С:Комплексная автоматизация, ред. 1.1" в "1С:ERP Управление предприятием, ред 2"). Обновлен до КА 1.1.115.х и ERP 2.4.11.х Промо

Обработка позволяет переносить из КА 1.1 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления в случае выхода новых релизов конфигураций 1С.

29700 руб.

Настройка отладки на сервере 1С 95

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика

Обработка для настройки отладки на сервере, включение отладки COM-соединений и отладки Web-сервисов.

1 стартмани

26.03.2019    14307    64    frkbvfnjh    32       

Методика оптимизации программного кода 1С: проведение документов 85

Инструменты и обработки Программист Архив с данными v8 v8::УФ Абонемент ($m) Обработка документов Производительность и оптимизация (HighLoad) Инструментарий разработчика

Описание простого метода анализа производительности программного кода 1С, способов его оптимизации и оценки результатов в виде числовых показателей прироста производительности. Не требует сторонних программных продуктов, используются только типовые возможности платформ 1С. Методика проверена на линейке платформ начиная с 1С:Предприятие 8.2 (обычные формы, управляемые формы). Позволяет ускорить проведение проблемных документов в 3 и более раз, провести проверку корректности формирования проводок оптимизированным кодом и подтвердить результаты оптимизации реальными замерами производительности в режиме предприятия. К публикации приложены демонстрационные базы для режимов обычного и управляемого приложения на платформе 1С:Предприятие 8.3 (8.3.9.2033).

1 стартмани

19.03.2019    16495    14    dmitrydemenew    83       

Базовый курс по разработке мобильных 1C-приложений для Android-устройств. Третий поток. Онлайн-интенсив с 11 февраля по 05 марта 2020 г. Промо

Данный онлайн-курс предусматривает изучение базовых принципов создания приложений для операционной системы Android, работающих на мобильной платформе “1С:Предприятие”. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие” при разработке прикладных решений для “обычных” компьютеров, но пока ещё не занимался разработкой 1С-приложений, предназначенных для работы на мобильных устройствах.

7500 рублей

Отчет по подпискам на события 84

Отчеты и формы Программист Внешний отчет (ert,erf) v8 1cv8.cf Абонемент ($m) Инструментарий разработчика

Внешний отчет для разработчика на платформе 1С:Предприятие 8.3. С его помощью вы значительно упростите себе доработку конфигураций! Быстро найдете все подписки, в которые включен объект метаданных, сможете построить отчет в любом разрезе - по объектам, событиям, подпискам, общим модулям, процедурам и т.д.

1 стартмани

18.02.2019    6139    45    tomvlad    8       

Инструктор. Прототип инструмента создания быстрых пользовательских инструкций 71

Инструменты и обработки Программист Пользователь Архив с данными v8 v8::УФ Россия Windows Абонемент ($m) Пользователю системы Инструментарий разработчика

Прототип дружелюбного и эффективного инструмента для написания пользовательских экспресс-инструкций. Задействована штатная утилита Windows, о существовании которой многие не знают и которая умеет делать огромную работу по логированию действий и снятию скриншотов на всех ПК с Windows (начиная с версии Win7). "Инструктор" не требует никакой установки и дополнительных библиотек! Это означает, что инструмент будет работать и на домашнем ПК и на "чужом ноутбуке" и на терминальном win-сервере у заказчика, где ваши права сильно ограничены. Вы просто подключаете легкую файловую базу 1С и получаете инструмент по снятию скриншотов с интересной функциональностью...

1 стартмани

15.02.2019    8325    37    ROM_NN    8       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Редактор объектов информационной базы 8.3 47

Инструменты и обработки Программист Пользователь Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Россия Windows Абонемент ($m) Инструментарий разработчика Универсальные обработки

Универсальная внешняя обработка для редактирования реквизитов и табличных частей объектов информационной базы, редактирование движений документов. Доступ ко всем реквизитам объектов, есть возможность выгрузки и загрузки данных (объекты и движения документов) через XML. Платформа 8.3, управляемые формы. Версия 1.1.0.37 от 14.12.2019

2 стартмани

23.01.2019    13226    169    ROL32    28       

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019) 185

Инструменты и обработки Программист Архив с данными v8 v8::Mobile БУ УУ Android Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Абонемент ($m) Инструментарий разработчика Сканер штрих-кода Терминал сбора данных Мобильная разработка

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    27428    231    informa1555    198       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Управление задачами в 1С - готовая подсистема с открытым кодом и широким базовым функционалом. Версия 1.0.6 98

Инструменты и обработки no Архив с данными v8 Абонемент ($m) Инструментарий разработчика Управление бизнес-процессами (BPM) Управление проектом

Конфигурация-подсистема для управления задачами с базовым функционалом, который, однако, может удовлетворить довольно широкий спектр запросов. Есть статусы и приоритеты, учёт трудозатрат по исполнителям и даже базовые разграничения по правам. А открытый исходный код позволит на базе данной конфигурации развить систему до любого уровня сложности.

2 стартмани

17.12.2018    12295    84    for_sale    38       

Навигатор по конфигурации базы 1С 8.3 110

Инструменты и обработки Программист Пользователь Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Россия Windows Абонемент ($m) Инструментарий разработчика Универсальные обработки

Универсальная внешняя обработка (СДРНавигаторУпр) для просмотра метаданных конфигураций баз 1С 8.3. Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д. Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы. Отображает структуру хранения объектов базы данных, для регистров доступен сервис "Управление итогами". Небольшой набор сервисных функций для повседневной работы. Для программистов и пользователей. Платформа 8.3, управляемые формы. Версия 1.1.0.51 от 08.01.2020

3 стартмани

28.10.2018    19528    207    ROL32    60       

Перенос документов, остатков и справочников КА 1.1 => КА 2 / УТ 11. Обновлено до КА 2.4.12.х и УТ 11.4.11.х! Промо

Более 130 компаний выполнили переход на КА 2 или УТ 11 с помощью нашей разработки! Позволяет перенести не только остатки и справочники (как типовая обработка), но и документы за нужный период времени. Предоставляем техподдержку, оперативно исправляем замечания, выпускаем обновления при выходе новых релизов программ 1С. Вы можете проверить разработку до покупки: сделаем бесплатный тестовый перенос из вашей базы КА 1.1 и предоставим доступ к базе-результату через веб-клиент!

29700 руб.

Go. Разбор лога технологического журнала. Достойная альтернатива perl'у 85

Статья Системный администратор Программист Архив с данными v8 1cv8.cf Абонемент ($m) Сервисные утилиты Инструментарий разработчика

Началось все с того, что я познакомился с перловыми скриптами для парса ТЖ которые размещены на kb.1c.ru (например в этой статье https://kb.1c.ru/articleView.jsp?id=113). По началу мне дико понравилось то, что перл разбирал гигабайты логов за считанные минуты, но позитив мой угасал обратно пропорционально с тем, насколько глубже я погружался в "кроличью нору" ....

1 стартмани

24.10.2018    12787    4    lazarenko    39       

HTTP Сервисы: Путь к своему сервису. Часть 4 108

Статья Системный администратор Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Инструментарий разработчика Практика программирования

Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 3». В предыдущих частях мы уже о многом поговорили. В этой части поговорим про размер сообщений, о файлах, о порциях и немножко, о регламентах.

1 стартмани

28.09.2018    15559    20    dsdred    13       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Консоль Внедренца v.3.5 132

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Инструментарий разработчика

Идея данной обработки заключается в создании простого, функционального и универсального инструментария для внедренцев и программистов 1С, который будет работать как в толстом клиенте на обычных и на управляемых формах, так и в тонком клиенте. Интерфейс и логика работы максимально идентичны у обычных форм и управляемых. Инструментарий включает в себя: Консоль кода, Консоль запросов, Консоль отчетов (СКД), Универсальную обработку объектов, Средства для работы с таблицами базы данных 1С, Редактирование регистров сведений базы.

1 стартмани

27.08.2018    13704    302    evvakra    36       

HTTP Сервисы: Путь к своему сервису. Часть 3 139

Инструменты и обработки Системный администратор Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Инструментарий разработчика Практика программирования

Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 2». В предыдущих частях мы использовали только Get, в этой части поговорим о других методах и длительных операциях.

1 стартмани

27.08.2018    19990    32    dsdred    13       

Перенос данных УПП 1.3 => ERP 2 (ЕРП) / УТ 11 / КА 2.х (обработка переноса документов, остатков и справочников из "1С:Управление производственным предприятием, ред. 1.3" в ERP / УТ 11 / КА 2). Обновлен до УПП 1.3.130.х, КА 2.4.11.х и ERP 2.4.11.х! Промо

Обработка позволяет переносить из УПП 1.3 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления при выходе новых релизов конфигураций 1С.

29700 руб.

HTTP Сервисы: Путь к своему сервису. Часть 2 124

Статья Системный администратор Программист Расширение (cfe) v8 1cv8.cf ERP2 УТ11 КА2 Абонемент ($m) Инструментарий разработчика Практика программирования

Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 1». В этой части будет "Микс" из OData+HTTP-Сервис(Get)+СКД. Наш пример будет работать как в браузере, так и в написанной нами обработке. Работать будем с разными версиями платформ.

1 стартмани

13.08.2018    20675    23    dsdred    0       

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции 66

Инструменты и обработки Программист Бизнес-аналитик Приложение (apk) v8 Windows Абонемент ($m) Инструментарий разработчика Практика программирования

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    18285    23    informa1555    26       

С 2020 года сервис «Продление поддержки конфигурации 1С:УПП» подорожает вдвое Промо

Успейте продлить поддержку УПП до повышения цен! Фирма «1С» предупредила об изменении цен на сервис «Продление поддержки конфигурации "1С:Управление производственным предприятием"». С 1 января 2020 года сервис подорожает в два раза.

Консоль HTTP-запросов с генерацией кода 165

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Консоль запросов

Консоль HTTP-запросов, которая не только выполняет запросы и получает результат их выполнения, но и генерирует необходимый код. Использую на 8.3.11.2899.

1 стартмани

25.05.2018    16826    229    leongl    16       

Униформальная консоль запросов 107

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8::УФ v8::Запросы 1cv8.cf Абонемент ($m) Консоль запросов

Минималистичная и функциональная консоль запросов, которая выглядит и работает одинаково, как в обычных формах, так и в управляемых.

1 стартмани

23.05.2018    18330    290    Synoecium    50