cancel
Showing results for 
Search instead for 
Did you mean: 

Documents massive upload Solution manager

Former Member
0 Kudos

Hi,

I am trying to make a massive upload of documentation to Sap Solution Manager, i can upload the documentation into the KW but when i try to save the documentation in SOLAR02 estructure with the function solar_appl_save_items does not work.

Here is my code:

Data l_context TYPE REF TO  cl_sctm_context.
DATA objekey type SWO_TYPEID.


DATA RC1 TYPE I.
data: L_FILETABLE TYPE FILETABLE,
      L_FILETABLE_S type FILE_TABLE.
DATA ls_bo TYPE sadocbo.
DATA: lo_new_document type ref to IF_SA_DOC,
ls_document2  type ref to IF_SA_DOC.
DATA project_filter type HIER_GUID.

DATA lv_loio TYPE sdokobject.
DATA handle_id like ISTATIFACE-ID.
data ti type SPRO_NOTES_TAB.
DATA items type SAITEMS.

DATA ls_l1 type HIER_IFACE.
*tablas internas
DATA: l1 type STANDARD TABLE OF  HIER_IFACE,
      l2 type standard table of  HIER_REF,
      l3 type STANDARD TABLE OF  HIER_TEXTS.

START-OF-SELECTION.

*******************************************************

  CALL FUNCTION 'SPROJECT_GET_REAL_OF_PROJ'
    EXPORTING
      PROJECT_ID         = 'ZXXX'
    IMPORTING
      REALIZATION_FILTER = project_filter.

*****************************************************
* obtener jerarquia de proyecto

  CALL FUNCTION 'SASAP_HIERARCHY_READ'
    EXPORTING
      FILTER_ID             = project_filter
      READ_TEXTS            = 'X'
      READ_REFERENCES       = 'X'
      LANGUAGE              = SY-LANGU
      INCLUDE_SUBSTRUCTURES = 'X'
      TEXT_OF_REFERENCES    = 'X'
      START_LEVEL           = '01'
      DISPLAY_MODE          = 'D'
      READ_TREE_ASSIGNMENTS = ' '
      LEVELS                = 0
    TABLES
      LIST_OF_NODES         = l1
      LIST_OF_REFERENCES    = l2
      LIST_OF_TEXTS         = l3.

************************************************************
  CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
    CHANGING
      FILE_TABLE              = L_FILETABLE
      RC                      = rc1
    EXCEPTIONS
      FILE_OPEN_DIALOG_FAILED = 1
      CNTL_ERROR              = 2
      ERROR_NO_GUI            = 3
      NOT_SUPPORTED_BY_GUI    = 4
      others                  = 5.

  IF SY-SUBRC <> 0.

  ENDIF.



  REad TABLE L_FILETABLE INTO l_filetable_s index 1.



  CALL METHOD CL_SA_DOC_FACTORY=>UPLOAD_DOC
    EXPORTING
      I_DOC_TITLE              = 'prueba viernes jon'
      I_DOC_TECH_NAME          = 'ZXXX'
      I_DOC_TYPE               = 'BPP'
      I_DOC_STATUS             = 'Open'
      I_FOLDER_TITLE           = 'Folder Name'
      I_FOLDER_TECH_NAME       = 'ZXXX'
      I_FOLDER_RESPONSIBLE     = SY-UNAME
      I_FOLDER_GROUP           = 'ZXXX'
      IP_FILEPATH              = l_filetable_s
    RECEIVING
      E_IOBJECT                = lo_new_document
    EXCEPTIONS
      CANCELLED                = 1
      FOLDER_ERROR             = 2
      ERROR                    = 3
      others                   = 4.

***************************************************************
  CALL METHOD LO_NEW_DOCUMENT->SAVE
    RECEIVING
      E_LOIO    = lv_loio
    EXCEPTIONS
      CANCELLED = 1
      ERROR     = 2
      others    = 3.
  IF SY-SUBRC <> 0.

  ENDIF.
***************************************************************



  CONCATENATE lv_loio-class  lv_loio-objid into objekey RESPECTING BLANKS.
  CALL FUNCTION 'NOTE_OBJECT_SAVE'
    EXPORTING
      ID            = 'E100340107203DF19AFD000C29BB263E'
      APPLICATION   = 'S0'
      FILTERTREE    = project_filter
      NOTE_ID       = lv_loio-OBJID
      NOTE_TYPE     = 'ACC'
      SAVE_LOCATION = ' '
      OBJECTKEY     = objekey
      SEQUENCE      = '0000000001'.



  READ TABLE l1 into ls_l1 with key  node_id = 'E1003401072037F19AFD000C29BB263E'.
  CALL FUNCTION 'SOLAR_APPL_SAVE_ITEMS'
    EXPORTING
      ACTUAL_NODE         = ls_l1
      TAB_TYPE            = 'CUSTDOCU'
      LANGUAGE            = SY-LANGU
      PROJECT_ID          = 'ZGD_IBER'
*     SYSTEM_ROLE         = ' '
*     SCOPE_FILTER        = ' '
      NO_TRANSPORT_CHECK  = 'X'
*     IS_LIBRARY          = ' '
      USER_CONTEXT        = l_context
*     CREATION_CONTEXT    =
*     DOCU_HANDLING       = ' '
*     STATUS_HANDLING     = ' '
*     KEYWORD_HANDLING    = ' '
*     REFOBJATTR_HANDLING = '1'
*     SAVE_OPTIONS        =
*     HISTORY_HANDLING    = 'X'
      PF_ASSIGN_2_TOPNODE = 'E1003401072037F19AFD000C29BB263E'
*     _DELETE_REFTREES    = ' '
*     APPL_INFO           =
    CHANGING
      ITEMS               = items
*     DEVCLASS            =
*     TRANSPORT_ORDER     =
*     OLD_ITEMS           =
*     MESSAGES            =
    EXCEPTIONS
      ERROR_OCCURRED      = 1
      OTHERS              = 2.
  IF SY-SUBRC <> 0.
* Implement suitable error handling here
  ENDIF.

Kind Regards

Jon

Edited by: Jon Azkorra on Nov 24, 2011 4:34 PM

Edited by: Jon Azkorra on Nov 28, 2011 10:08 AM

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

hi,

SAP itself has a program/ transaction is SA_Migration is used to mass upload f valueSAP doc to solar01,

you just check the logic used behind this and customize it.

Thanks,

Jansi

Answers (0)