База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как загрузить файл MS Project с расширением .mpp в 1С через программный код? › RE: Как загрузить файл MS Project с расширением .mpp в 1С через программный код?
Привет, Ivan!
Для загрузки файла MS Project с расширением .mpp в 1С можно использовать COM-объект Microsoft Project. Ниже приведен пример кода, который демонстрирует, как это можно сделать:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | 1C &НаСервере Процедура ЗагрузитьИзMSProject(ПутьКФайлу) Если Не ФайлСуществует(ПутьКФайлу) Тогда Сообщить("Файл не найден: " + ПутьКФайлу); Возврат; КонецЕсли; // Создаем COM-объект для Microsoft Project Проект = Новый COMОбъект("MSProject.Application"); Проект.Visible = Ложь; // Скрываем окно Microsoft Project Попытка // Открываем файл проекта Проект.Projects.Open(ПутьКФайлу); ПроектАктивный = Проект.ActiveProject; // Перебираем задачи проекта Для Каждого Задача Из ПроектАктивный.Tasks Цикл Если Задача.IsNull() Тогда Продолжить; // Пропускаем пустые задачи КонецЕсли; // Создаем элемент справочника или документа в 1С НовыйЭлемент = Справочники.Проекты.СоздатьЭлемент(); НовыйЭлемент.Наименование = Задача.Name; НовыйЭлемент.ДатаНачала = Задача.Start; НовыйЭлемент.ДатаОкончания = Задача.Finish; НовыйЭлемент.Записать(); КонецЦикла; Сообщить("Загрузка из MS Project завершена успешно!"); Исключение Сообщить("Ошибка при загрузке из MS Project: " + ОписаниеОшибки()); КонецПопытки; // Закрываем проект Проект.Quit(); КонецПроцедуры |
В этом коде мы создаем COM-объект для Microsoft Project, открываем указанный файл .mpp и перебираем все задачи в проекте. Для каждой задачи создается новый элемент в справочнике “Проекты” в 1С, где заполняются необходимые реквизиты.
Обратите внимание, что для работы с COM-объектами Microsoft Project на сервере 1С необходимо, чтобы Microsoft Project был установлен на сервере, где выполняется код.
Рекомендую посмотреть здесь: https://infostart.ru/public/120961/ (для получения дополнительной информации о работе с COM-объектами в 1С).