от

Как самостоятельно написать ТЗ на интеграцию ПланФикса и 1С

Интеграция ПланФикса и 1С

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

Итак, здесь мы опишем довольно понятный пошаговый алгоритм, как сделать очень детальное техническое задание на интеграцию ПланФикса и 1С. Делать это будем на примере одного нашего реального проекта, где нам пришлось описать логику создания 34 (тридцати четрыёх!!! )документов в 1С в разные моменты времени

Если в какой-то момент времени вы понимаете, что начинаете “плыть”, то лучше потом перечитайте статью. Если не помогло – то вам поможет только внешняя помощь и это будет отличным для вас решением, т.к. если будете описывать внешнему подрядчику ваше пожелание общими словами, вы получите результат, как в присказке:

Без внятного тз результат хз

Ну да погнали.

 

Шаг №1 – определить набор объектов в 1С
Первое, с чем нужно разобраться – это с пониманием того, что любая система оперирует внутри себя стандартными объектами, количество коих всегда ограничено. У вас может быть 100 документов в 1С, но по сути это всё заказы на производство. Или 100 задач в ПланФиксе, но по сути это один шаблон.

Поэтому сначала мы делаем самую простую вещь – выписываем список объектов 1С, которые будут участвовать в нашей интеграции. Неважно КАК, неважно КОГДА. Главное, что они есть в этой истории.

Начать лучше с 1С, там всё понятнее и набор объектов, полагаю, не меняется уже годами.

В нашем случае все 34 создаваемых документа, это всего лишь 6 стандартных документов в 1С:

  1. Заказ покупателя
  2. Заказ на производство
  3. Производство
  4. Сдельный наряд
  5. Расходная накладная
  6. Приходная накладная

Очевидное действие, очень простое. Но ценность его понимаешь уже в самом конце, поэтому не расслабляйтесь. Это разминочка. К ПланФиксу пока не переключаемся, отточим навык на понятных вещах в 1С.

 

Шаг № 2 – расположить набор описанных объектов 1С в иерархическом порядке
В случае нашего проекта так точно нужно было сделать, т.к. среди 34 создаваемых документов нужно понимать, что к чему относится. В итоге картинка получилась такая (увеличение при клике):

иерархия объектов в 1С

Красиво, да? :)
Просто звучит, да?
Ну так знайте – даже для описания всех вариаций вот этих (всего-то лишь!!!) 6 стандартных документов в 1С пришлось делать несколько созвонов, т.к. как всегда в последний момент появляется “ой, а у нас же ещё вот это есть, тоже давайте будем делать”. И чем позднее это выяснится, тем “больнее” это новое встраивать в следующие этапы. Поэтому прямо совет – уделите этому этапу время и убедитесь, что вы реально описали все возможные документы, с которыми придется работать.

 
Шаг №3 – описать всю возможную структуру задач в ПланФиксе
Вот это для вас будет засада, мы вас уверяем. Никогда ещё не было, чт0бы сходу можно было обозначить, как это выглядит на уровне задач в ПланФиксе. Т.е. ну вот надо нам “прогнать” в системе производство одной печки. Какой набор задач это породит в системе? Причём нужно описывать ситуацию не конкретной топки, а вообще ВСЕ возможные варианты появления задач в системе.

Ниже будет скриншот, что получилось у нас. Так вот показанное там – это максимальный набор возможных задач при любой ситуации производства. По факту для конкретной топки появляется меньше задач. Просто своим набором. Для другой топки – другим набором. Но ещё раз говорим, вам надо показать МАКСИМАЛЬНУЮ картину возможных задач и их иерархическое расположение.

Пожалуй, это один из важнейших этапов работы. И это может сделать и интегратор, которому придётся покопаться в вашем аккаунте…или вы, заодно реально разобравшись, как у вас это работает.

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

Уже, кстати, на этом этапе вы можете понять, что вам не хватает каких-то задач в ПланФиксе, тогда нужно их сразу добавлять на схему, ведь вы описываете, как хотите это видеть.

У нас вышло так:

Набор задач в ПланФиксе

Выше описано 2 иерархических дерева задач. И одна из задач в какой-то момент меняла надзадачу и переходила в другое дерево. Это ещё та “жесть” и такие моменты в обязательном порядке нужно описывать.

— — — — —

УДЕЛИТЕ ЭТОМУ ЭТАПУ ДОСТАТОЧНО ВНИМАНИЯ. ОПИШИТЕ ВСЁ ДО САМЫХ МЕЛОЧЕЙ !!!

— — — — —

Если вы не можете описать одной картиной всё происходящее в вашем аккаунте, то как вы планируете сделать интеграцию с 1С? Возможно, уже на этом этапе вы поймёте, что у вас неподходящая структура и нужно сначала навести порядок в аккаунте, а потом уже обмениваться данными с 1С.

 

Шаг № 4 – Создайте тестовое окружение в ПланФиксе под все описанные задачи
Здесь человеческая лень может вас победить, ведь вы же это в голове всё помните, зачем это описывать? Понятно же итак всё…

Но надо. Особенно надо, если вы всё же планируете привлекать интегратора, который будет разбираться с вашими наработками. Мало просто видеть иерархию задач, нужно иметь возможность в любой момент времени перейти в нужную задачу и посмотреть её “состояние”:

  1. Поля
  2. Смену статусов
  3. Наличие аналитик
  4. И прочее происходящее, что доступно по логу задачи

Потому что даже если вы уделили много внимания на п.3, вы всё же могли что-то упустить. А когда вы прямо в живую в аккаунте в тестовом режиме делаете все операции, то шанс ошибки сводится к минимуму. Зато в любой момент можно перейти к нужной задаче и изучить её. Нам это нереально помогало.

Особенно это важно, когда в системе (а это почти всегда) изначально хранится НЕ вся необходимая информация, которая понадобится 1С и нужно понять, в какое место в ПланФиксе логично эту информацию вставить.

У нас ссылки на задачи были прямо в иерархии задач. Мы рисуем в сервисе “Draw.io” от Google, там это выглядело так:

Ссылка на задачи

Можно ли без этого обойтись? Можно…но не нужно :). У нас это обязательная вещь в описании интеграции, т.к. если клиент не может предоставить ссылки на тестовые задачи в системе, значит что-то там не так всё понятно и дальше двигаться просто “опасно” для всех сторон.

 

Шаг № 5 – определить набор объектов в ПланФиксе
После предыдущего пункта это будет прямо как щелчок пальцами, потому что все данные у вас уже есть. Нужно просто перечислить все шаблоны задач, которые представлены в иерархии задач на шаге № 4. У нас вышло так:

  1. Заказ серии
  2. Стандартный шаблон топки
  3. Уведомление
  4. Лазерная резка
  5. Дверь
  6. Сварка
  7. Сборка
  8. Малярка
  9. Футеровка и обвес

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

В итоге в совокупности у нас все предыдущие пункты вышли так (без клика на картинке мало что разглядите):

Полная схема сущностей для интеграции ПланФикса и 1С

Ммммм, мы любим делать вещи красиво, даже когда это сложная техническая вещь. Ведь чем “проще” её представить, тем понятнее она становится для всех.

Но самый смак будет дальше :)

 

Шаг № 6 – сделать временную хронологию событий между объектами ПланФикса
Звучит сложно, выглядит красиво :)

Выше вы уже видели, что когда мы делали список задач, то каждая задача имеет некий номер. Документы 1С тоже мы пронумеровали, просто это не попало на скриншот. Так вот ваша задача теперь – нарисовать хронологию событий внутри ПланФикса. БЕЗ привязки к 1С. Этот этап касается именно ПланФикса и всего происходящего внутри него.

Выглядеть это может так (лучше кликните для разглядывания):

Хронология - только задачи ПланФикса

И обязательно это должно сопровождаться отдельным документом, где в деталях дана расшифровка данной схемы:

Вордовская таблица по ПланФиксу

Правил к оформлению этой хронологии нет – лишь бы вам было понятно. И вообще в теории можно обойтись и без неё, но она отлично визуализирует взаимосвязи между объектами, чего нет в табличной форме. Поэтому мы всё таки за полный вариант описания. Чем больше у вас объектов участвует в интеграции – тем выше потребность в такой визуализации, т.к. можно глянуть на схему и сразу понять, с чем взаимодействует этот объект.

 

Шаг № 7 – сделать временную хронологию событий между объектами ПланФикса и 1С
Больше красоты, ещё больше!

В общем теперь нужно на эту хронологию нанести объекты из 1С. Они же тоже пронумерованы. Мы их расположили ниже временной линии (клик-клик-клик на картинку):

Временная лента объектов ПланФикса и 1С

Ну и, конечно же, описание для объектов 1С с привязкой к объектам ПланФикса:

Описание хронологии объектов 1С

Неважно, что у вас происходит в ПланФиксе – создается задача, завершается, меняется статус, добавляется аналитика, меняется исполнитель и т.д. Это ЧТО-ТО происходит:

  1. В какой-то задаче, которую мы уже определили
  2. В какой-то момент, который можно определить ПОСЛЕ какого-то другого момента

И этого уже достаточно, чтобы сделать такую хронологию событий.
В этот момент вот то непонятное мессиво происходящего вырисовывается в боле-менее понятную картину происходящего. Это как детская задачка для ребёнка, где нужно соединить карандашом схожие по смыслу объекты. Вот и нам приходится решать такие “детские” задачи, где нужно соединить линиями события между системами :).

 

Шаг № 8 – Описать соответствие полей для той или иной связи на хронологии объектов. 
Описывать нужно каждую линию, которая “приходит” на сторону 1С (нижняя часть картинки, где вся хронология представлена).

В нашем случае это выглядит так:

Взаимосвязи параметров ПланФикса и 1С

Это прямо много-много страниц, где по каждому документу детально описаны:

  1. Связи между объектами
  2. Откуда из ПФ мы будем брать данные
  3. Куда в 1С мы будем их класть
  4. Общие комментарии по логике обработки данных (детальные комментарии даются отдельно, покажем далее)

Кстати, вместе с этим шагом сразу делается и следующий…

 

Шаг № 9 – получить скриншоты ВСЕХ документов со ВСЕМИ вкладками данных
Фраза “Ну там у нас стандартный документ 1С” тут не работает. Документ стандартный, а вот данные можете заполнять нестандартно. Например, в нашем случае в одном документе (как оказалось) нужно специально делать очистку данных, что 1С подставит сама, чтобы добавить уже нужные данные. Мелочь, которая как вылезет на последнем этапе интеграции, ох весело всем будет.

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

скриншот 1С

В обезличенном документе нашего готового ТЗ (да-да, покажем вам его полностью) вы можете оценить все скриншоты, что мы делали.

 

Шаг № 10 – Сделать таблицу перечня параметров, что будут передаваться между системами.
Это некая выжимка из п. 8, где вы перечисляете лишь уникальные данные. Вообще если вы самостоятельно дошли до этого пункта, то самое сложное уже позади. Результат неизбежен!

Выглядеть это может так:

Таблица параметров

Уверяем, что разработчики будут считать вас лучшим клиентом, если вы подготовите им такую информацию :).

 

Шаг № 11 – Описать примеры запросов, которые могут приходить от ПланФикса в 1С
Ну это уже совсем будет просто после всего пройденного, но добавит ещё изрядную порцию ясности в наш “бульон” взаимодействия систем. Типа такого:

Примеры POST-запросов

 

Всё, господа, финиш! Теперь вам точно скажут “Господи, да это лучшее ТЗ, что я видел в своей жизни” :).

Вы можете отправлять разработчикам на оценку либо набор из всех описанных выше документов, если они будут делать не только работу по части 1С, но и по части ПланФикса тоже (а там тоже настраивать нехило обычно приходится).

Либо, если по части ПланФикса работы будете делать вы или кто другой, то 1С-никам понадобится лишь информация из пунктов 1, 2, 8, 9, 10, 11. Для наглядности вы можете скачать обезличенный документ нашего технического задания по проекту (касаемо сугубо части 1С).

 

— — — —

Скачать обезличенный вариант ТЗ на интеграцию ПланФикса и 1С

— — — —

 

Давайте в конце ещё раз перечислим все шаги, описанные выше:

  1. Определить набор объектов в 1С
  2. Расположить набор описанных объектов 1С в иерархическом порядке
  3. Описать всю возможную структуру задач в ПланФиксе
  4. Создайте тестовое окружение в ПланФиксе под все описанные задачи
  5. Определить набор объектов в ПланФиксе
  6. Сделать временную хронологию событий между объектами ПланФикса
  7. Сделать временную хронологию событий между объектами ПланФикса и 1С
  8. Описать соответствие полей для той или иной связи на хронологии объектов.
  9. Получить скриншоты ВСЕХ документов со ВСЕМИ вкладками данных
  10. Сделать таблицу перечня параметров, что будут передаваться между системами.
  11. Описать примеры запросов, которые могут приходить от ПланФикса в 1С

В конце получается очень интересный эффект. Смотришь на всё это и думаешь “Ну понятно же всё, тут так, тут эдак. Очевидные вообще вещи”. И этот эффект как раз и означает, что сложная вещь представлена предельно понятным языком, что аж кажется простой.

Это знаете, как смотреть на эту фотографию и думать, что это просто:

Девушка на шесте

А потом мозг понимает, что там мышцами можно и шест перегнуть, чтобы так держаться. Просто-ж :).

 

Зачем мы выкладываем нашу технологию создания ТЗ?
Потому что это не является нашей основной работой. Это скорее этап, где происходит ваше знакомство с нами и наших подходом. Но порой это занимает “неприлично” много времени для нас, что мы будем искренне рады, если вы сможете хотя бы часть этапов подготовить на своей стороне. Это в любом случае будет вам на пользу.

Мы то в основном специализируемся уже на внедрении таких решений, там всё намного интереснее :). Поэтому секретного тут ничего нет. Пробуйте сами или обращайтесь сами-знаете-куда.

 

P.S. Ну и в самом конце хочется выразить благодарность нашему клиенту, с которым было нереально приятно делать всю эту работу. Быстрая реакция, отличное понимание сути – это редкость.

Добавьте комментарий

Комментарии