Gant 1C 2.* — диаграмма Ганта с таблицей + Планировщик + Отчет (8.1, на управляемой форме/Такси 8.2, 8.3)




Принцип обмена данными из 1С с сайтом (на MySQL) и выдачи (публикации) этих данных по запросу.
PHP-Скрипт автоматической загрузки данных из файла данных в формате CSV в базу данных сайта работающего на WordPress.

В продолжение моей темы: 1С:Альфа-Авто Автосалон Автосервис: обмен с сайтом.
С помощью данного скрипта можно загружать в автоматическом режиме, по расписанию, данные сервисных книжек (ремонтов авто) из 1С:Альфа-Авто Автосалон Автосервис.
Также можно загружать данные в ручном режиме: для этого делается скрытая страница, где размещается специальная кнопка.
Комментарии размещенные внутри скрипта разъяснят логику и порядок действия.
Комментарии с "/////    echo" использовались для отладки.
Дополнительно создана таблица для журналирования результатов загрузки данных.
Скрипт включает в себя защиту от SQL инъекций (думаю безопасность соблюдена в полной мере).
В кратце:
1. Пишется скрипт, который запускает этот.
2. Создается регламентное задание в WordPress, по которому запускается скрипт из п.1. 
3. Этот скрипт осуществляет проверку на существование файла обмена в папке.
4. Если данные не новые, загрузка не производится.
5. Если данные новые, очищается таблица сервисных книжек.
6. Загружаются новые данные.

Собственно сам скрипт:

<?php // Полная загрузка сервисных книжек, создан 2024-01-05 12:44:55

global $wpdb2;
global $failure;
global $file_hist;

/////  echo '<H2><b>Старт загрузки</b></H2><br>';

$failure=FALSE;
//подключаемся к базе
$wpdb2 = include_once 'connection.php'; ; // подключаемся к MySQL
// если не удалось подключиться, и нужно оборвать PHP с сообщением об этой ошибке
if (!empty($wpdb2->error))
{
/////   echo '<H2><b>Ошибка подключения к БД, завершение.</b></H2><br>';
$failure=TRUE;
wp_die( $wpdb2->error );
}

$m_size_file=0;
$m_mtime_file=0;
$m_comment='';
/////проверка существования файлов выгрузки из 1С
////файл выгрузки сервисных книжек
$file_hist = ABSPATH.'/_1c_alfa_exchange/AA_hist.csv';
if (!file_exists($file_hist))
{
/////   echo '<H2><b>Файл обмена с сервисными книжками не существует.</b></H2><br>';
$m_comment='Файл обмена с сервисными книжками не существует';
$failure=TRUE;
}

/////инициируем таблицу лога
/////если не существует файла то возврат и ничего не делаем
if ($failure){
///включает защиту от SQL инъекций и данные можно передавать как есть, например: $_GET['foo']
/////   echo '<H2><b>Попытка вставить запись в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>$m_comment));
wp_die();
/////    echo '<H2><b>Возврат в начало.</b></H2><br>';
return $failure;
}
/////проверка лога загрузки, что бы не загружать тоже самое
$masiv_data_file=stat($file_hist);   ////передаем в массив свойство файла
$m_size_file=$masiv_data_file[7];    ////получаем размер файла
$m_mtime_file=$masiv_data_file[9];   ////получаем дату модификации файла
////создаем запрос на получение последней удачной загрузки
////выбираем по штампу времени создания (редактирования) файла загрузки AA_hist.csv, $m_mtime_file

/////   echo '<H2><b>Размер файла: '.$m_size_file.'</b></H2><br>';
/////   echo '<H2><b>Штамп времени файла: '.$m_mtime_file.'</b></H2><br>';
/////   echo '<H2><b>Формирование запроса на выборку из лога</b></H2><br>';
////препарируем запрос
$text_zaprosa=$wpdb2->prepare("SELECT * FROM `vin_logs` WHERE `last_mtime_upload` = %s", $m_mtime_file);
$results=$wpdb2->get_results($text_zaprosa);

if ($results)
{   foreach ( $results as $r)
{
////если штамп времени и размер файла совпадают, возврат
if (($r->last_mtime_upload==$m_mtime_file) && ($r->last_size_upload==$m_size_file))
{////echo '<H2><b>Возврат в начало, т.к. найдена запись в логе.</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>'Загрузка отменена, новых данных нет, т.к. найдена запись в логе.'));
wp_die();
return $failure;
}
}
}
////если данные новые, пишем в лог запись о начале загрузки
/////echo '<H2><b>Попытка вставить запись о начале загрузки в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>0, 'last_size_upload'=>$m_size_file, 'comment'=>'Начало загрузки'));

////очищаем таблицу
$clear_tbl_zap=$wpdb2->prepare("TRUNCATE TABLE %s", 'vin_history');
$clear_tbl_zap_repl=str_replace("'","`",$clear_tbl_zap);
$results=$wpdb2->query($clear_tbl_zap_repl);
/////   echo '<H2><b>Очистка таблицы сервисных книжек</b></H2><br>';
if (empty($results))
{
/////   echo '<H2><b>Ошибка очистки таблицы книжек, завершение.</b></H2><br>';
//// если очистка не удалась, возврат
$failure=TRUE;
wp_die();
return $failure;
}

////загружаем данные
$table='vin_history';         // Имя таблицы для импорта
//$file_hist Имя CSV файла, откуда берется информация     // (путь от корня web-сервера)
$delim=';';          // Разделитель полей в CSV файле
$enclosed='"';      // Кавычки для содержимого полей
$escaped='\

99 Comments

  1. rare-avis

    Внешняя обработка, аналог MS Project в 1Се для работы с задачами: параллельный ввод данных по задачам и график Ганта, дополнительный режим в виде календаря (планировщик), связывание задач и пересчет длительности и дат с учетом выходных, видов связей и запаздываний, расчет затрат, сохранение/открытие проектов в файл на диск или файл ИБ, импорт/экспорт документов Microsoft Project.

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

    Reply
  2. cool.vlad4

    взлетит, однозначно. спс!

    Reply
  3. prolancer

    отличная весч.

    Пароль на модуль, потому-что будет платная?

    Reply
  4. rare-avis
    prolancer пишет:

    Пароль на модуль, потому-что будет платная?

    Пользоваться можно без проблем, и дописывать в форме можно.

    Для простых смертных она будет бесплатна, разве что кто-то захочет внедрить эту обработку для последующей продажи и захочет со мной поделиться ;), то тогда код могу открыть. Хотя все грамотные здесь люди понимают, что это не супер защита.

    Возможно вскоре открою, посмотрим…

    Reply
  5. support

    Нереально круто!

    Reply
  6. Magister

    Вот это маньяк!

    Я почитал и офигел — сколько ж времени надо было убить!

    Однозначно плюс!

    Reply
  7. rare-avis

    (4) support, (5) Magister, и другим

    Спасибо! Эта обработка делалась на чистом энтузиазме технарём для технарей еще в 2009 (с тех пор она была закинута), и только технические специалисты (программисты, сис. админы 1С, внедренцы и т.д.) могут понять на сколько трудозатратна и интересна та или иная разработка. Хотя с этой обработкой на много быстрее, проще и удобнее работать, чем с простыми задачами и диаграммой Ганта в 1Се, но обычные пользователи скажут: «Что тут такого особенного? В MS Project все равно лучше работать» (хотя многие и за него не платят).

    Чуть позже выложу еще несколько интересных вещей для внедренцев и не только.

    Reply
  8. ir-ish-ka

    Очень круто!

    Снимаю шляпу и падаю ниц.

    Обычно для создания подобных вещей «для себя» вечно нет времени.

    Вы молодец!

    Reply
  9. ramzess

    да уж сразу плюс.не пожалеть столько времени….

    Reply
  10. kapustinag

    Присоединяюсь ко всеобщим восторгам.

    Своими силами у нас прикручено к 1С УПП много вещей, автоматизирующих и облегчающих работу нашей ИТ-службы, но на ТАКОЕ даже не попытались замахнуться, хотя реальная необходимость была и есть.

    Обязательно попробую в работе, спасибо.

    Reply
  11. Rustig

    спасибо! 🙂

    Reply
  12. larisab

    При загрузке из документа Microsoft Project в формате *.csv:

    {Форма.Форма.Форма(3759)}: Преобразование значения к типу Число не может быть выполнено
    Если ТекущийНомерСтроки%10 = 0 Тогда 

    Точно такая же ошибка, как и при загрузке из *.mmp

    Reply
  13. rare-avis

    (11) larisab,

    На стороне MS Project:

    Для того, чтобы в MS Project (версии старше 2003) можно было сохранить в csv формат, нужно сделать следующее «Параметры — Цент управления безопасностью — параметры управления безопасностью — Старые форматы — Разрешить загрузку файлов в устаревших форматов…»

    Для сохранения нужно сделать следующее: Файл — Сохранить как… — Выбрать формат сохранения «*.csv», нажать «Сохранить» — «Далее >» — «Использовать существующую схему», «Далее >» — «Схема таблицы экспорта задач» — отметить «Задачи», «Включить заголовки при экспорте», Разделитель «;», «Далее >» — «Далее >» — «Готово».

    Эта схема описана с картинками в справке обработки. Тестировалось на 2010 версии.

    На стороне 1С:

    Для загрузки проекта в 1С следует открыть «График задач» и нажать кнопку «Загрузить из MS Project» и указать сохраненный файл.

    Reply
  14. 1C_Wolf

    Круто!

    Давно такую искал. Автору респект, идея была уже давно, но руки не доходили. А тут готовое решение, правда нужны еще некоторые доработки (но это лишь для моих потребностией). А вот по сравнению с Гантом, скорость работы на много высше.

    Автору + однозначно, за его труды.

    Reply
  15. larisab

    (12)

    Ммда…

    Для того, чтобы в MS Project (версии старше 2003) можно было сохранить в csv формат, нужно сделать следующее «Параметры — Цент управления безопасностью — параметры управления безопасностью — Старые форматы — Разрешить загрузку файлов в устаревших форматов…»

    все это я проделала по инструкции, выданной MS Project,

    Для загрузки проекта в 1С следует открыть «График задач» и нажать кнопку «Загрузить из MS Project» и указать сохраненный файл.

    а она у вас по умолчанию открывается на графике задач, как загружать в Вашу разработку csv, тоже увидела 🙂

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

    P.S. Платформа 8.2.14.540

    Reply
  16. rare-avis
    larisab пишет:

    все это я проделала по инструкции, выданной MS Project

    Посмотрите справку самой обработки Gant1C, там описано особенности сохранения из MS Project в csv-файл.

    larisab пишет:

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

    P.S. Платформа 8.2.14.540

    Изначально тестировал на 8.1.15.14, на 8.2.14.540 только что тоже протестировал — все нормально загружает, также проверял связывание, сдвиги влево/вправо, отчеты, добавление, изменение режима отображения.

    Reply
  17. larisab

    Сохранила из MS Project в другую схему, теперь пишет при загрузке:

    {Форма.Форма.Форма(3798)}: Итератор для значения не определен
    Для Каждого СтрокаПредшественника из СтрокаТабличнойЧасти.Предшественники Цикл

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

    Отладчик показывает что в строке, полученной из файла стоят разделители «;». При создании схемы в старом формате в MS, есть выбор разделителей один из трех:

    аПробел, табуляция и «;». Попробовала со всеми, результат тот же.

    По отладчику посмотреть дальше — как разбирается строка процедурой РазобратьСтрокуProject() не могу, т.к. она в закрытом модуле.

    Может быть мне выслать файл автору на почту?

    Reply
  18. larisab

    ВСЁ получилось!

    Проблема была именно в

    5. Во второй строчке вместо «Уникальный идентификатор» указывается «Название_Ресурсов»:

    Сколько раз себе говорила — «читай инструкции, потом делай»

    Отличная разработка, буду использовать! Спасибо.

    Reply
  19. rare-avis

    (17) larisab,

    Ну, слава Богу! А то у меня начал развиваться комплекс вины :).

    И Вам спасибо за «+».

    Reply
  20. larisab

    (18) Не все так лучезарно, конечно, даты пришлость оживить с помощью ентера, ну это мелочи.

    Пожелание — колонка предшественников в макете задач.

    Ну и боюсь даже просить WBS, понимаю, что это было бы слишком шикарно ))))

    Reply
  21. Angeros

    А В какой конфе это должно работать?

    Reply
  22. Raminus

    Автор молодец, плюс однозначно.

    Reply
  23. rare-avis

    (20) Angeros,

    В любой, но если нужно загружать и выгружать задачи из базы, то нужно выполнить следующее:

    1. Найти в модуле формы подстроку

    Найти(ПолучитьЗаголовокСистемы(), «Gant»)

    и заменить ее, например, на

    Найти(ПолучитьЗаголовокСистемы(), «Управление производственным предприятием»)

    , или поставить Истина. Тогда появится на форме скрытая панелька с доп. полями и кнопками.

    2. Изменить тип реквизитов обработки на свои: «Проект», «ИсполнительПоУмолчанию», «ПапкаСЗадачами».

    3. Найти раздел «// Взаимодействие с задачами произвольной конфигурации» и изменить в нем процедуры и функции под свои объекты.

    Reply
  24. sva0

    Впечатление приятное.

    А можешь прикрутить шаблоны проектов для полноты счастья?

    Reply
  25. egorious

    Круто, очень круто

    Reply
  26. lstep

    Полезная информация.

    Reply
  27. F1_1

    Однозначно плюс.

    Reply
  28. ASoft

    Большой плюс. Полезная информация.

    Reply
  29. Nikolas_first

    Круто и автору респект!

    Вопрос по сути только один — отображение факта (IMHO) сделано не очень удобно. Не хватает функционала ввода факта исполнителем по дням (или я не нашел:()

    Reply
  30. rare-avis
    Nikolas_first пишет:

    Вопрос по сути только один — отображение факта (IMHO) сделано не очень удобно. Не хватает функционала ввода факта исполнителем по дням (или я не нашел:()

    Да, факт вводить можно только устанавливая Начало (факт) и Окончание (факт). Чтобы можно было вводить фактические даты по дням (отрезками) нужно было бы создавать объекты конфигурации (регистры сведений). В любом бы случае это бы значительно снизило скорость работы, особенно при пересчете дат при связывании. По этим же причинам я отказался от календаря рабочих дней.

    Reply
  31. Nikolas_first

    (31) Понятно, спасибо за ответ. В любом случае ОЧЕНЬ достойная работа и аналогов я пока еще не видел.

    Reply
  32. BelkinAlex

    Очень интересная обработка! Спасибо! Проделана огромная работа.

    Reply
  33. Sunhare

    Однозначно плюс.

    Reply
  34. barsa-05

    спасибо+

    Reply
  35. husky

    Спасибо, очень хорошая разработка.

    Reply
  36. silver-fox87

    Спасибо, актуальная разработка.

    Reply
  37. artur_antipin

    Я надеюсь данная обработка отвечает идеологии PMI:

    инициация, планирование, реализация, завершение. Сегодня тема планирования очень актуальна для нас. Здорово, что реализовали идею Project в своей разработке. Интересно еще диаграмму Ганта связать с бизнес-процессом, а именно, каждую задачу можно рассматривать как маленький бизнес-процесс.

    Reply
  38. artur_antipin

    Идея связи Ганта с бизнес-процессами была мною опробована на примере связи MS Project с документооборотом DocsVision. Мы чуть было не пошли дальше, чтобы увязать данную тему еще и с Project Server 2007

    Reply
  39. rare-avis
    artur.antipin пишет:

    Я надеюсь данная обработка отвечает идеологии PMI:

    инициация, планирование, реализация, завершение. Сегодня тема планирования очень актуальна для нас.

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

    Это одна обработка, которая предназначена для удобного календарного планирования, отслеживание фактов и планов, планирование и отслеживание ресурсов и затрат по ресурсам, а также возможно связать это с объектами 1С.

    artur.antipin пишет:Интересно еще диаграмму Ганта связать с бизнес-процессом, а именно, каждую задачу можно рассматривать как маленький бизнес-процесс.

    Честно говоря, не вижу особого смысла, проект должен быть декомпозирован так, чтобы он был понятен каждому исполнителю. Это совмещение проектного и функционального управления. http://www.betec.ru/index.php?id=6&sid=05. Также возникает много вопросов: как быть если есть несколько точек завершения и/или точек старта, как быть если маршрут выходит на другую внешнюю задачу проекта.

    В любом случае, я понимаю, что бывают разные ситуации и если сильно захотеть — можно в космос полететь. Как связывать задачи в обработке с другими объектами описано выше.

    Спасибо за комментарий!

    Reply
  40. AlexO

    что вообще обработка делает по сути?

    а то какие-то восхищения, а вижу только — грузят из Microsoft Project 2003 данные, и смотрят их не в MS, а в 1С..

    Откуда данные берет, что делает с ними, что показывает в итоге?

    пока вижу только загрузку из Microsoft Project 2003.

    Reply
  41. AlexO

    (0) «для работы с задачами»

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

    или тут закрытый кружок внутри 1с собрались какой-то? ))

    Reply
  42. rare-avis

    (42) AlexO, (43) AlexO,

    О, а я ждал — когда ж появится какой-нибудь пинатель! Спасибо, что уделил время и что-то написал.

    На самом деле это обработка календарного планирования и она не зависит от MS Project, там просто есть дополнительный функционал импорта/экспорт. Что она еще делает: почитай выше.

    AlexO пишет:

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

    .

    Это все равно, что сравнивать Microsoft Dynamics, Microsoft Project, и SharePoint.

    Reply
  43. nikolaygorbunov

    Давно хотел сделать подобное, сложность и лень не дали довести до конца. Очень полезная обработка, парольчик бы еще, хочется реванша с ленью…

    Reply
  44. Smaylukk

    Спасибо, это огромный труд.

    Reply
  45. AlexO

    (44)

    так обработка работает с задачами 1С и обрабатывает их в разрезе Проектов (т.е. только на тех типовых конфах, где есть учет по проектам)?

    мне, как программисту, не понятно без кода, на чем основана работа Вашей обработки…

    что взято за основу, за первичные данные?

    Reply
  46. rare-avis

    (47) AlexO,

    Обработка не привязана к объектам конфигурации, то есть она не работает ни с объектами типа «Справочник», «Документы», «Регистры сведений», «Регистры накоплений», «Задачи», «Бизнес-процессы» и т.д.

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

    Но эти данные можно:

    — Сохранять в файл и открывать из файла.

    — Импортировать и экспортировать в/из MS Project

    — В удобочитаемом виде (таблица + диаграмма Ганта) выводить на печать.

    — Прописать сохранение в объекты базы данных (Справочники, Задачи, Регистры сведений и т.д.) и загрузку из объектов базы данных (23).

    Таким образом обработка Gant1C не привязана к конкретной конфигурации, её можно использовать как проектный калькулятор, для расчета: сколько нужно потратить времени на проект, сколько пойдет затрат в общем, по каждому ресурсу, за неделю, месяц и контролировать успеваемость (если заказчик попросит: «Подготовьте мне план, сроки и стоимость по проекту внедрения»). Также эту обработку можно привязать к более профессиональным конфигурациям по системам управления проектами и любой другой, где используется проектный менеджмент.

    Reply
  47. anna_irk

    хочу себе такую в помощь

    Reply
  48. spannick

    Замечательная вещь. Меня всегда удивляло, почему в 1С все делают наполовину. Сделали, казалось бы, элемент управления «Диаграмма Ганта», а не предусмотрели возможность добавления колонокв в нее. Ведь основное применени данного вида диаграмм это как раз создание систем по управлению проектами, задачами, а тут просто необходимо добавлять дополнительную информацию как даты начала и конца, продолжительность, трудозатраты и т.п. и вот приходится заниматься подобными «извращениями по борьбе с платформой». Автору большой респект.

    Reply
  49. vovche

    Спасибо, за труды, правда при импорте наших прожект-файликов вылетает, а запароленный код трудно отлаживать :). Не хочется взламывать защиту, вышлите пожалуйста пароль в ЛС.

    Reply
  50. musatov1c.ru

    Очень интересно. С товарищем осваивали бесплатные аналоги Мс-Проджекта, но в итоге товарищ «сломался и сломал». Возможно этот проект будет решением ряда проблем возникших в его попытке скрестить ежа с ужом 🙂 Применение проектных технологий в работе небольшой мастерской по созданию мебели — это тот еще головняк. 🙂 Для меня однозначно интересно. Планирую скрещивать личную работу комп-облако-ДеллСрик5 с 1с. ГТД хочу освоить по Кислому. На ВМ уже опробовал, но старый коммуникатор сдох. Решил попробовать освоить андроид. И из РТМ хотелось бы в 1С. Видел проект в этом направлении. Графики Ганта к этому делу очень подойдут.

    Reply
  51. sevipa

    Практически перекрывает потребности небольших проектов. Еще бы такую вещь для онлайн формирования бизнес-процессов и нет предела счастью…

    Reply
  52. rare-avis
    sevipa пишет:

    Еще бы такую вещь для онлайн формирования бизнес-процессов и нет предела счастью…

    Как раз подобное сейчас готовлю.

    Reply
  53. Ted1982

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

    Reply
  54. pulpik

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

    Reply
  55. alex_asoft

    Если нужно — попробуем прикрутить к системе Итилиум (используется для автоматизации ИТ службы)

    Reply
  56. (A)

    Классная работа! но максимальный эффект от нее думаю будет только в составе какой-либо близкой по тематике конфигурации.

    Reply
  57. Kamikadze

    согласен с последним сообщением — в конфигурации, которая будет предназначена, скажем, для описания проектной части разработки бизнес-процессов

    Reply
  58. alex_asoft

    Для специализированных конфигураций, направленных на расчет себестоимости оказания ИТ услуг будет весьма полезно. Как инструмент визуализации термина «вот куда вы потратили эти жалкие 10 Мбаксов».

    Reply
  59. rainstars

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

    Reply
  60. rare-avis
    rainstars пишет:

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

    читай комментарий (23) rare-avis

    Reply
  61. accnt

    вроде хорошая штука,надо будет поиграться

    Reply
  62. Arrtem

    Спасибо, очень нужная обработка!

    Reply
  63. Arrtem

    Пожалуйста пошлите обработку на мыло flash_gnom@mail.ru очень хочется испробовать в действии.

    Reply
  64. Steelvan

    Хороший труд. Надо будет более внимательно протестировать 🙂

    Reply
  65. barnik

    Автор БОЛЬШОЙ молодец!!!

    Reply
  66. e-aleks

    Обработка весьма интересна, спасибо.

    Вопрос автору. Не совсем понятно по отслеживанию факта, т.е. ввожу факт, а посмотреть диаграмму с учетом факта нет никакой возможности.

    Reply
  67. slavich

    Плюс однозначно, столько времени убил на составление этой задачи, а тут все есть, СПАСИБО.

    Reply
  68. slavich

    После загрузки проекта в 1С не активны кнопки (Свернуть-Развернуть).

    Reply
  69. rare-avis

    (71) slavich,

    в 8.2 такая проблема действительно есть, в 8.1 — нормально. Чтобы это исправить в форме обработке строку №2814:

    «Если Элемент.ТекущаяОбласть.Картинка = КартинкаМинус Тогда»

    заменить на

    «Если СледующаяОбласть.Видимость Тогда»

    Reply
  70. Tsr1c

    Неплохая работа, но на мой взгляд не хватает заголовков в отчетах.

    Еще очень не помешает печатная форма первого листа «диаграмма Ганта» с выводом поля «описание и комментарии» — получится удобный печатный отчет по проекту с исчерпывающей инфой.

    В отчете по ресурсам также не помешает вввод структуры работ.

    И как отмечали выше кнопки «свернуть…» не активны, а исправить код не дает, нужен пароль, огромная просьба или исправьте сами или дайте пароль.

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

    Но в целом, имхо, в обработке есть очень здоровое зерно полезности, автору спсб )

    Reply
  71. SunShinne

    зверская вещь! ))) Респект автору!

    Reply
  72. son_v

    Классная идея, огромная работа ).

    Reply
  73. rare-avis

    (73) Tsr1c,

    Выложил обработку под 8.2 с исправленной ошибкой со сверткой задач. Обработку можно сохранять и без ввода пароля. Если требует пароль, то нажми «отмена», сам пробовал.

    Заголовок в отчетах можешь добавить (код в форме открыт).

    На счет печати диаграммы ганта, то его можно напечатать «как есть» (статья на любую ячейку в списке задач и нажать кнопку «печать» или «Предварительный просмотр»), но без описания и комментария. Дело в том, что больше всего времени было потрачено на сопоставление строк в табличном поле и в поле диаграммы Ганта. Поэтому высота строк табличном документе не может быть различной, а в описании, в основном, будет многострочный текст. Кроме того, как я ни старался, все-равно выскакивают мелкие неточности несовпадения строк дерева задач и диаграммы Ганта.

    Правда можно сделать вывод дерева задач без диаграммы Ганта, но это как-нибудь в другой раз…

    На счет перетаскивания задач, то это предусмотрено, но немножко по-другому:

    1. Необходимо выделить нужные строки как в Экселе (выделив мышкой номер нужных строк).

    2. Подвести мышкой к границе выделенного блока (курсор примет соответствующий вид) и перенести блок выше или ниже.

    И спасибо всем, кто оценил обработку!

    Reply
  74. Sairys

    Всегда считал что учёт затрат только дестабилизирует коллектив. Программисты начинают нервничать от того что время подходит, а работа не готова. И ведь в большинстве случаев проблема не в опытности программиста, а в «подводных камнях» и тех касяках которые уже имеются в базе. На мой взгляд программист человек искусства, а как правило люди искусства сроков не любят.

    Reply
  75. vandalsvq

    (78) Sairys, зато сроки очень любят заказчики. А без них программисты никому не нужны 🙂

    Reply
  76. son_v

    (78) Sairys, Да, так и есть. Подобное и слышу от программистов. Что «вдохновение пропадает», когда надо делать быстро. И «пытаешься делать так, чтобы «лишь бы бЫло»». Поэтому сроки ставят на проектах или задачах, где уже есть четкая постановка. А где нет, и есть только содержание, но нет четкого понимания как это сделать, то сроки ставятся с запасом и ставятся человеком, который имеет соответствующий опыт, например ведения проектов.

    Reply
  77. musatov1c.ru

    Очень интересная разработка. Беру себе на заметку. Недавно с товарищем перебирали бесплатные аналоги МсПроджекта, а тут на родной 1с есть.

    Reply
  78. surpriz

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

    Reply
  79. lvadim

    Как человек, который около полугода пытается реализовать посменно-суточное производственное планирование УПП через совсем не бесплатный Spider Project (импорт-экспорт из 1С) скажу что впечатления двоякие:

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

    С другой стороны:

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

    2. Нет календарей ресурсов, вернее он один

    3. Нет материалов, не говоря уже об ограничений по материалам

    4. Понятно что нет центров взаимозаменяемости

    5. Нет производительности в операциях, приоритетов и др.

    В этом плане для наших задач эта разработка не подойдет, но посмотреть было интересно. Из критичного, мне кажется п.1

    В остальном, автору сил и времени !

    Reply
  80. rare-avis

    (83) lvadim,

    На счет календарей. Неоднократно думал об этом, но решил не делать по двум причинам:

    1. Для этого нужно было заводить регистры сведений и доп. справочники. А я хотел, чтобы эта внешняя обработка была более-менее универсальная и не шла как cf-ка.

    2. Скорость расчетов дат по связям значительно бы уменьшилась.

    Материалы можно заводить на вкладке «ресурсы». Только выбрать соответственный вид ресурсов.

    А так, все перечисленное верно.

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

    Reply
  81. testik_vzv

    Плюс!

    Вылезла ошибка при сохранении проекта:

    {Форма.Форма.Форма(1313)}: Ошибка при вызове конструктора (ХранилищеЗначения)

    ХранилищеЗначений = Новый ХранилищеЗначения(СтруктураПараметров);

    по причине:

    Переданное значение не может быть помещено в ХранилищеЗначения, поскольку не сериализуется или содержит вложенный несериализуемый элемент

    Reply
  82. Slon1c

    Зачетно…вещь нужная и полезная.

    Reply
  83. tiniji

    +256 =).

    Видна огромная работа. В мелкие проекты однозначно пригодится.

    Reply
  84. ~gekK@~

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

    Reply
  85. Йожкин Кот

    Очень круто! Автору респект! Планируется ли данная разработка под управляемые формы?

    Reply
  86. rare-avis

    (90) Йожкин Кот,

    Под управляемые формы нет — слишком много мелких приколов и слишком много переписывать. Под управляемые формы не все можно перенести, да и скорость упадёт.

    Reply
  87. Gandalf Белый

    Большое спасибо! Очень интересная обработка!

    Reply
  88. mtv:)

    (0)Замечательная разработка! Спасибо большое. Очень полезная вещь.

    Reply
  89. mulla1979

    Автору респект! Обработка отличная!

    Reply
  90. gavrikprog

    (0)

    Пробовал аналогично диаграмму ганта в Поле табличного документа закинуть…

    В режим ввода/изменения диаграммы войти не смог как у тебя.

    Правда и времени рабзираться не было.

    Мудрил как то?

    Reply
  91. rare-avis

    (95) gavrikprog,

    Нужно табличный документ переводить в «Только просмотр»

    Reply
  92. script

    Обраружил ошибку.

    Если в конфе присутствует общий модуль «Связи», тогда программа при открытии

    ругается на строку 1480 модуля формы «Форма».

    {Форма.Форма.Форма(1479)}: Поле объекта недоступно для записи (Связи)

    Reply
  93. rare-avis

    (97) script,

    Спасибо, не предвидел такую ошибку. Нужно будет переназвать переменные…

    Reply
  94. unknownDaemon

    (3) исчерпывающе… представь, что я простой смертный…

    Просьба: на дворе Office 2013 (у некоторых по корпоративным канонам), при импорте проект из прожекта соответствующей версии, трабла, какая не знаю — модуль закрыт — поправь плиз…

    ЗЫ Не надо ничего делать 🙂 Мне быстрее свою обработку написать… Я просто так.. к слову… а это объяснение почему пожалел, что скачал 😉

    Удачи!

    Reply
  95. rare-avis

    (99) unknownDaemon,

    В справке обработки описано как нужно выгружать из MS Project файл формата .csv и загружать в обработку Gant1C. У меня нет Office 2013. Если что — кидай файл, я посмотрю.

    Reply
  96. evfrat

    (48) Привет!

    Обработка летает, но разве она может жить отдельно от справочников? Ведь там уже забиты ресурсы, имеются задачи. Не станешь же ты каждый раз их переносить в Гант.

    Reply
  97. rare-avis

    (109) evfrat,

    Ранее она была привязана к справочникам и регистрам сведений. Но я отвязал, чтобы она была универсальная. Её без проблем можно подвязать под свои данные. В модуле формы есть методы. Запись и вычитка из справочников происходит по кнопкам:

    Заполнить проект по задачам ИБ (кнопка). Данное действие формирует проект по задачам информационной базы указанной папки задач в поле «Папка с задачами».

    Записать проект в ИБ (кнопка). Данное действие записывает проект по задачам в информационную базу указанной папки задач в поле «Папка с задачами».

    Запись в справочники идёт не в момент планирования (добавления задач, связей, пересчета связей и т.д.) — это долго, а по кнопке — после того, как всё распланировал.

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

    То есть обработка была настроена так:

    — если она отрывается в спец. конфигурации со спец. объетками (это тоже открыто для доработок), то появляются доп. кнопки и поля для связи со справочниками;

    — если она открывается в любой другой конфигурации, то эти кнопки и поля скрываются и можно работать с файлами *.pmp

    Reply
  98. South

    (54) добрый день!

    Что-либо получилось с бизнес-процессами?

    Reply
  99. rare-avis

    (133) South, бизнес-процессы тогда забросил (много подвязок было с конфигурацией + обычные формы). Думаю, скоро заняться и делать сразу на упр. формах. Это тема очень интересная, но нужно не мало времени.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *