Крючков Владимир | Начальник сектора разработки | ООО "Группа Полипластик"

«Как мы разрабатываем в EDT»

1. Ответим на вопрос как мы переходили на разработку в EDT. Где было больно и что стало лучше? Где светлое будущее? 2. Расскажем про использование процессов разработки для коммерческих продуктов и open source. Что такое «Git Flow», «Git Lab Flow» и «Git Hub Flow» в чем их отличие и в чем сила? 3. Командная разработка в новых реалиях: Где и как нам помогает SCRUM? Как и где используем KANBAN? Нужно ли следовать за белым кроликом? 4. Про системы баг трекинга: Интеграция с системами баг трекинга для коммерческих решений на примере JIRA. Достаточно ли возможностей «Git Hub Issue» для open source? 5. Про репозитарии: Какой репозитарий выбрать? Что такое «bitbucket», «github» и что они умеют? Как все это увязать с EDT и баг трекингом? Когда использовать приватные, а когда публичные хранилища? 6. Используем новые волшебные возможности: автосборка релиза, code review, pull request, ветвление (bruches) и др. Как именовать ветки и что писать в коммитах чтобы получить профит. 7. Немного про качество продукта: Как мы запускаем тесты при разработке в EDT? Как используем open source Фреймворк «Тестирование 3.0»?

Отчет с присоединением областей.

1. Twirus 27.12.16 16:58 Сейчас в теме
Добрый день. Подскажите пож-та, как можно реализовать присоединенную область со стрелками.Есть отчет, с иерархией. Хочется сделать красиво, добавить стрелки что откуда и куда см 1 скрин. Незнаю как сделать помогите советом. Скрин 2 как сейчас все выглядит в сформированном состоянии. Скрин 3 макет рабочего отчета. Пример рабочего кода.
 Процедура ВыводБлокаВТабличныйДокумент(Значение,ВариантУсловия="",Присоединение=Ложь)   
   Если не Присоединение Тогда
       НомерКолонки=0;
       Для А=1 По Вложенность Цикл       
           НомерКолонки=НомерКолонки+1;
           Если НомерКолонки=1 Тогда
               Результат.Вывести(омПустойБлок);
           Иначе
               Результат.Присоединить(омПустойБлок);
           КонецЕсли;       
       КонецЦикла;   
   КонецЕсли;
   омБлокУсловия.Параметры.Значение=Значение;   
   омБлокУсловия.Параметры.ВариантУсловия=ВариантУсловия;
   Если Присоединение ИЛИ НомерКолонки<>1  Тогда
       //
       Результат.Присоединить(омБлокСтрела);
       //
       Результат.Присоединить(омБлокУсловия);       
   Иначе
       Результат.Вывести(омБлокУсловия);   
   КонецЕсли;   
   ВариантУсловия="";
   Присоединение=Ложь;   
КонецПроцедуры

Процедура  ВыводРезультатаУсловияВТабличныйДокумент(Значение,ВариантУсловия="",Присоединение=Ложь)
   Вложенность    =Вложенность+1;
   ТипЗначения= ТипЗнч(Значение);
   Если ЗначениеЗаполнено(Значение)Тогда
       Если  ТипЗначения = Тип("СправочникСсылка.РабочиеМеста") Тогда
           ВыводБлокаВТабличныйДокумент(Значение,ВариантУсловия,Присоединение);           
       ИначеЕсли ТипЗначения = Тип("СправочникСсылка.ИСполнители")Тогда                                   
           ВыводБлокаВТабличныйДокумент(Значение,ВариантУсловия,Присоединение);
           Результат.НачатьГруппуСтрок();           
           ОбработатьИсполнителя(Значение);
           Результат.ЗакончитьГруппуСтрок();
       ИначеЕсли ТипЗначения=Тип("СписокЗначений")  Тогда
           Для Каждого СтрокаСпискаЗначений из Результат Цикл
               ВыводРезультатаУсловияВТабличныйДокумент(СтрокаСпискаЗначений.Значение,ВариантУсловия,Присоединение);
           КонецЦикла;
       КонецЕсли;
   КонецЕсли;
   Вложенность    =Вложенность-1;
КонецПроцедуры

Процедура  ОбработатьИсполнителя(Исполнитель)
   Вложенность = Вложенность+1;
   Для Каждого СтрокаУсловие из Исполнитель.ТаблицаУсловий Цикл       
       Если СтрокаУсловие.ВидУсловия=Перечисления.sВидыУсловий.БезУсловий Тогда
           ВыводРезультатаУсловияВТабличныйДокумент(СтрокаУсловие.РезультатИстина.Получить());
       ИначеЕсли СтрокаУсловие.ВидУсловия=Перечисления.ВидыУсловий.КодУсловия Тогда           
           УсловиеКод=Строка(СтрокаУсловие.УсловиеХранилище.Получить());   
           ВыводБлокаВТабличныйДокумент(УсловиеКод);
           ВыводРезультатаУсловияВТабличныйДокумент(СтрокаУсловие.РезультатИстина.Получить(),"Да",Истина);
           ВыводРезультатаУсловияВТабличныйДокумент(СтрокаУсловие.РезультатЛожь.Получить(),"НЕТ");   
       ИначеЕсли СтрокаУсловие.ВидУсловия=Перечисления.ВидыУсловий.Условие Тогда           
           УсловияЗапроса                            = СтрокаУсловие.УсловиеПредставление;
           ВыводБлокаВТабличныйДокумент(УсловияЗапроса);            
           ВыводРезультатаУсловияВТабличныйДокумент(СтрокаУсловие.РезультатИстина.Получить(),"ДА",Истина);           
           ВыводРезультатаУсловияВТабличныйДокумент(СтрокаУсловие.РезультатЛожь.Получить(),"НЕТ");                   
       КонецЕсли;
   КонецЦикла;
   Вложенность = Вложенность-1;
КонецПроцедуры
Показать
Прикрепленные файлы:
Ответы
Сортировка: Древо
2. Захаров_Николай 9 27.12.16 17:23 Сейчас в теме
На самом деле не сложно.
Есть два варианта.
Первый с использованием Табличного документа.
Второй с использованием Графической схемы.
В случае с первым рекомендую разобрать отчет по связанным документам в типовой конфигурации. Работать не с ячейками а с текстом (блоки) и картинкой (стрелки).
Во втором случае формировать блок схему. Статически или динамически под нужды. (Этот вариант будет презентабельней того что на скринах).
3. Twirus 27.12.16 17:38 Сейчас в теме
(2) Спасибо, первый скрин делал в спешке. А нет ли у вас какого нибудь похожего отчета, с таким исполнением, Взял бы за образец.
4. Захаров_Николай 9 27.12.16 17:54 Сейчас в теме
Первый вариант легко расковырять в типовой конфе.
Второй очень легко сделать если разобраться как программно формировать блоки и устанавливать между ними связи.
Примера к сожалению нет.
Оставьте свое сообщение
Все разделы

Вакансии

Удаленный ИТ-журналист
Санкт-Петербург
По совместительству

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

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

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

Удаленный бизнес-аналитик 1С
Санкт-Петербург
Временный (на проект)