Текущее время: Ср, июн 25 2025, 18:29

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Копирование документов DMS
СообщениеДобавлено: Пт, фев 26 2016, 07:14 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 10 2007, 20:37
Сообщения: 72
Всем привет!

Задача: скопировать документ ДМС со всеми его приложениями и привязать его к другому SAP объекту. ДМС документ после сохранения переходит в статус, в котором его нельзя редактировать. Статус документа единственный и его указание обязательно. Пакетник на CV01N - тоже не рассматриваем.

Вопрос: как это сделать без копирования прикрепленных файлов куда-либо и обратно?

Подробности:

Вроде бы всё просто: берем используем BAPI_DOCUMENT_CREATEFROMSRC2 и устанавливаем связь с помощью BAPI_DOCUMENT_SAVEOBJECTLINKS. Так ведь нет: если сохраняю документ(делаю COMMIT), то BAPI_DOCUMENT_SAVEOBJECTLINKS ругается на статус документа, если не сохраняю, то ругается что документа нет.
Если создавать документ через BAPI_DOCUMENT_CREATE2, то в передаваемой таблице DOCUMENTFILES должны быть указаны актуальные пути к существующим на фронтэнде файлам. Есть уже готовое решение их выгружать в временную директорию и загружать обратно - но это ведь нагрузки на сеть и ожидание пока он сохраниться, пока его можно будет читать, потом ещё чистить за собой... Ещё решение - сохранять их на сап сервере во временную папку - тоже не айс, хотя от трафика немного избавимся, но остальной геморрой остается. Неужели у SAP-а нет стандартного нормального способа создания документа с указанием ссылок на уже хранящиеся в ДМС файлы других документов?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Копирование документов DMS
СообщениеДобавлено: Пт, фев 26 2016, 08:12 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Rednada написал(а):
Если создавать документ через BAPI_DOCUMENT_CREATE2, то в передаваемой таблице DOCUMENTFILES должны быть указаны актуальные пути к существующим на фронтэнде файлам.

Я могу ошибаться, но файлам не обязательно быть на фронтенде. Насколько я понимаю, в таблице файлов можно указать существующий репозитарий контент-сервера, в поле BAPI_DOC_FILES2-STORAGECATEGORY. Ну и DOCPATH и DOCFILE корректные, от оригинального файла. По идее, все должно работать.
А по другой идее все должно было работать и с BAPI_DOCUMENT_CREATEFROMSRC2, он как раз на копирование заточен. Я бы посоветовал поискать примеры вызовов на SCN.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Копирование документов DMS
СообщениеДобавлено: Пт, фев 26 2016, 10:03 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 10 2007, 20:37
Сообщения: 72
В итоге решилось использованием ФМ-а CV120_KPRO_LOIO_COPY.

Code:
    CALL FUNCTION 'CV120_KPRO_LOIO_COPY'
      EXPORTING
        pf_dokar             = ls_newdoc-doctype
        pf_doknr             = Номер документа в который нужно добавить файл
        pf_doktl             = ls_newdoc-docpart
        pf_dokvr             = ls_newdoc-docversion
        pf_source_loio       = Логический ID файла, который нужно добавить в документ. Его можно получить, например, BAPI_DOCUMENT_GETDETAIL2
      EXCEPTIONS
        error                = 1
        phio_not_found       = 2
        loio_not_found       = 3
        doc_not_found        = 4
        OTHERS               = 5.
    COMMIT WORK.


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB