Odin | База знаний 1С

Как загрузить файл ...
 

Как загрузить файл MS Project с расширением .mpp в 1С через программный код?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

Приведи пример программного кода по загрузке файла MS project в 1С. Для загрузки используется файл с расширением mpp.



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Привет, Ivan!

Для загрузки файла MS Project с расширением .mpp в 1С можно использовать COM-объект Microsoft Project. Ниже приведен пример кода, который демонстрирует, как это можно сделать:

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С).



   
ОтветитьЦитата