|
September 25th, 2021
10:55 pm - Кудысь мы, кот и мся. К вопросу о развитии программного обеспечения.
Работаю я с одной системой управления документацией. Сразу скажу, что не наша, существует она уже лет тридцать, используется по всему миру не самыми последними компаниями, так что в целом не самый плохой софт. Есть в этой системе в числе туевой хучи всего прочего модуль разработки эксплуатационной документации. Когда она разработана, её надо свести из кучи составных элементов в один результирующий документ. Поскольку в этой самой документации зачастую бывает 100500 страниц, да ещё с картинками, разработчики достаточно разумно решили не нагружать этим процессом пользовательский клиент, а выполнять отдельным заданием на сервере.
Уж не знаю по каким соображениям, но разбили они его на два этапа. Сначала в диспетчере создаётся задание для первого модуля, который выгружает в рабочий каталог все заданные элементы и создаёт задание для второго модуля. Тот в свою очередь превращает набор из кучи xml и jpg в один большой, жирный pdf. Пока достаточно разумно, и как показывает практика, даже работает. Но тут приходит жалоба: дескать, отправляю я свой разработанный документ на публикацию, а в ответ -- МПХ. В консоли диспетчера зданий видно, что первое задание как ему и положено создаётся, завершается успешно, и всё.
При расследовании этого глюка начинают раскрываться глубины глубин и ширины ширин. В принципе, диспетчер, который тут используется вещь достаточно гибкая. Изначально он был заточен для того, чтобы автоматизировать конвертацию файлов из одного формата в другой, поэтому добавить что-то новое там проблем нет. Но если вы думаете, что первый модуль это программа или скрипт, которые выгружают данные, то глубоко ошибаетесь. Первый модуль это штатный сервис обращения к API системы, и ему передаётся для вызова ровна одна функция: подготовитьДанныеПубликации, если в примерном переводе. Естественно, они нигде не описана, а так как ядро системы написано на плюсах, то и декомпилировать в читаемый код не получится.
Но теперь у нас хотя бы появилось направление поиска. Уходим из журнала выполнения задания (за исключением технических подробностей там всё то же, что и в консоли: запустились, поработали, успешно завершились) и идём в хранилище логов сессий. Среди нескольких сотен файлов находим таки тот, что оставил после своей работы модуль диспетчера. И о чудо, в логе действительно есть ошибка: "Не могу найти язык ru для раздела такого-то". Не то, чтобы это помогло, так как раздел вполне себе написан на русском, и во всех настройках опять же русский указан. Наконец, после длительный раздумий и сравнения с другими разделами выясняется, что язык раздела определяется по последним символам в имени файла с текстом. На всякий случай, ещё раз напомню: это документарная система, тут на каждом объекте минимум с десяток атрибутов висит, и нет никаких ограничений на добавление новых.
По-моему, в этой картине прекрасно всё.
|
Comments:
From: | (Anonymous) |
Date: | September 26th, 2021 - 12:02 am |
---|
| | | (Link) |
|
нормально время проводишь а я вот битый час срал и ссал пукису в ебало, а ему в кайф вот что за моральный урод?
From: | (Anonymous) |
Date: | September 26th, 2021 - 12:49 am |
---|
| | | (Link) |
|
Пролетают дни, И не рада я судьбе. Пролетают дни, Только всё равно тебе, что я ищу тебя. Проще солнце снять с небес, чем обрести тебя.
Как хватает сил Быть всё время там, где ты? Как хватает сил? Среди вечной суеты, в толпе ищу тебя, Где знакомые черты, всегда ищу тебя.
From: | (Anonymous) |
Date: | September 26th, 2021 - 08:53 am |
---|
| | | (Link) |
|
уже миллион книг написали как правильно жить, а самосранец еще пишет, оставляя углеродный след.
From: | (Anonymous) |
Date: | September 26th, 2021 - 09:55 am |
---|
| | | (Link) |
|
вообрази ебала покупателей его книг
From: | (Anonymous) |
Date: | September 26th, 2021 - 11:43 am |
---|
| | | (Link) |
|
минихуйлашки
From: | (Anonymous) |
Date: | September 26th, 2021 - 10:58 am |
---|
| | | (Link) |
|
то есть у всех всегда были файлы посконный.текст и только у получившего мпх rockstar.txt? или наоборот?
Там немного по-другому получилось. Так как проект ЭД это нехилая конструкция из нескольких объектов с кучей атрибутов, то народ для упрощения своей жизни новые проекты создавал методом SaveAss.
А тут потребовалось родить новый тип документации, проект создали с нуля и получили сюрприз. Причём ни в хелпе, ни в тренингах этот вопрос как-то не рассматривается, поэтому никто этот момент уже и не помнил, и разгадку получили только обратившись в техподдержку. |
|