Desktop Office Integration and Email

Dear Colleagues:
I have developed a Desktop Office Integration application that retrieves WORD documents from a BDS Content Server, customizes the document with BP data, emails the document to the BP as an attachment, and associates the document with the BP (Document tab).  It works well.
I am now trying to figure out how to process the document and use the text as the body of an email message instead of an attachment - I cannot assume that all email recipients use MS Word.
I have tried several FMs that convert raw data to either strings or RTF format but, inspite of my efforts, I get conversion errors.
If anyone has tried something similar I would appreciate any advice.
Regards,
Steve

hi.
i dont know if this will be useful to you. because i did not not understand your exact requirement. are you using OAOR tr code?
You mean to say you want to  a word document which was uploaded through bds document navigator.
The code given below actually searches for a string and replaces all occurences of it with a new string..
IF old_search_string ne search.
       get number of document characters.
        GET PROPERTY OF document_cntl_handle-obj
                       'characters' = ocharacters.
        GET PROPERTY OF ocharacters 'count' = char_count.
        char_position = 0.
        old_search_string = search.
      ENDIF.
    set range now
     IF char_position >= char_count.
        char_position = 0.
      ENDIF.
            CALL METHOD OF document_cntl_handle-obj 'Range' = orange
      EXPORTING #1 = char_position #2 = char_count.
    search now
      GET PROPERTY OF orange 'Find' = ofind.
      IF not replace is initial.
       DATA: is_available type i.
       CALL METHOD proxy->has_wordprocessor_interface
           IMPORTING is_available = is_available
                     retcode      = retcode.
       IF is_available = 1 .
          CALL METHOD proxy->get_wordprocessor_interface
                       IMPORTING wp_interface = wp_ref
                                 retcode = retcode.
           IF RETCODE EQ C_OI_ERRORS=>RET_OK.
              CALL METHOD wp_ref->replace
                       EXPORTING replace_string = replace
                                 search_string  = search
                                 pos            = 'GLOBAL'
                                 flag           = 'ALL'.
            ENDIF.
        ENDIF.
              ELSE.
*search
        CALL METHOD OF ofind 'Execute'
          EXPORTING  #1 = search       "FindText
                     #2 = false        "MatchCase
                     #3 = false        "MatchWholeWord
                     #4 = false        "MatchWildCards
                     #5 = false        "MatchSoundsLike
                     #6 = true         "MatchAllWordForms
                     #7 = true         "Forward
                     #8 = '1'          "Wrap
                     #9 = true.
        GET PROPERTY OF ofind 'Found' = string_found.
        IF string_found > 0.
          GET PROPERTY OF orange 'Font' = ofont.
          GET PROPERTY OF ofont 'ColorIndex' = color_index.
          IF color_index ne 6.
            color_index = 6.
          ELSE.
            color_index = 11.
          ENDIF.
          SET PROPERTY OF ofont 'ColorIndex' = color_index.
        ENDIF.
        GET PROPERTY OF orange 'End' = char_position.
      ENDIF.

Similar Messages

  • Need help with Desktop Office Integration (DOI)

    Hi all,
    i need help to read an Excelsheet into an int. table.
    Its the first time, that i use the SAP DOI. I copy different coding into my Report to get connection to an existing Excelsheet.
    Here is my Coding:
    * first get the SAP DOI i_oi_container_control interface
      CALL METHOD c_oi_container_control_creator=>get_container_control
                        IMPORTING control = gr_control
                                  error   = gr_errors.
      APPEND gr_errors.
    * create a control container as defined in dynpro 100
      CREATE OBJECT gr_container
                EXPORTING container_name = 'CONTAINER'.
    * initialize the SAP DOI Container, tell it to run in the container
    * specified above and tell it to run Excel in-place
      CALL METHOD gr_control->init_control
        EXPORTING
          r3_application_name      =    'Data'
          inplace_enabled          = ' '
          inplace_scroll_documents = 'X'
          parent                   = gr_container
          register_on_close_event  = 'X'
          register_on_custom_event = 'X'
          no_flush                 = 'X'
        IMPORTING
          error                    = gr_errors.
    * save error object in collection
      APPEND gr_errors.
    * ask the SAP DOI container for a i_oi_document_proxy for Excel
      CALL METHOD gr_control->get_document_proxy
                           EXPORTING document_type = 'Excel.Sheet'
    *                       EXPORTING document_type = 'Word.Document'
                                    no_flush = 'X'
    *                                REGISTER_CONTAINER = 'X'
                          IMPORTING document_proxy = gr_document
                                    error          = gr_errors.
      APPEND gr_errors.
    Then i open the Document from lokal PC.
    CALL METHOD gr_document->open_document
          EXPORTING
    *      document_title   = ld_filenc
            document_url     = ld_verzc
    *      NO_FLUSH         = ' '
    *      OPEN_INPLACE     = ' '
    *      open_readonly    = ' '
    *      PROTECT_DOCUMENT = ' '
    *      STARTUP_MACRO    = ''
    *      USER_INFO        =
    *      ONSAVE_MACRO     =
          IMPORTING
            error            = gr_errors
    *      RETCODE          =
      APPEND gr_errors.
    Now i start the spreadsheet interface:
    *...check if our document proxy can serve a spreadsheet interface  data:
      DATA: pd_has TYPE i.
      CALL METHOD gr_document->has_spreadsheet_interface
                        EXPORTING no_flush = 'X'
                        IMPORTING is_available = pd_has
                                  error = gr_errors.
      APPEND gr_errors.
      CALL METHOD gr_document->get_spreadsheet_interface
                        EXPORTING no_flush = ' '
                        IMPORTING
                                  sheet_interface = gr_spreadsheet
                                  error = gr_errors.
      APPEND gr_errors.
    * now loop through error collection because
    * Get_spreadsheet_interface flushed and synchronized
    * the automation queue !
      LOOP AT gr_errors.
        CALL METHOD gr_errors->raise_message
                        EXPORTING  type     = 'I'
                        EXCEPTIONS message_raised = 1
                                   OTHERS         = 2.
        IF sy-subrc = 1.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          pd_kz_fehler = 'X'.
          EXIT.
        ENDIF.
      ENDLOOP.
      FREE gr_errors.
    Ok, now i can open a Excelsheet, and i can mark a range in the sheet
    rows is a constant.
    CALL METHOD gr_spreadsheet->set_selection
          EXPORTING
            left     = 1
            top      = 2
            rows     = rows
            columns  = 18
    *    NO_FLUSH = ' '
    *    UPDATING = -1
        IMPORTING
          error    = gr_errors
    *    RETCODE  =
    my first problem: Excel is really open, and the user can see the sheet. I dont want, that excel is visible...is there a way to start excel in no_visible mode?
    second problem: The sheet have makro aktiv...at start from excel, there is a popup, which ask 'makros activate' oder not activate...  i dont want this popup... is there a way, to say it from abap, that makros always active?
    third problem: i see, that the content Table have this components:
    TYPES: BEGIN OF SOI_GENERIC_ITEM,
             ROW(4) TYPE C,
             COLUMN(4) TYPE C,
             VALUE(256) TYPE C,
           END OF SOI_GENERIC_ITEM.
    But my excelsheet have more then 10000 lines....
    forth (and biggest) problem: i need the selected data into an int. tabelle. The table have the components:
    ROW
    COL
    VALUE
    i dont know, how can i do this...
    please help me
    Sorry for my bad english.
    Greetings
    Markus

    Hi,
    May be this link is useful
    /people/thomas.jung3/blog/2005/05/11/using-classic-activex-controls-in-the-abap-control-framework
    Also Check out report SAPRDEMOEXCELINTEGRATION2.
    check the links
    http://www.esnips.com/doc/741a848e-f49a-4436-bec4-e21950f6c94c/desktop-office-integration.pdf
    http://www.esnips.com/doc/2080a9ec-64f9-49c4-bd03-d9f56bc2437c/MSWord--Excel-with-ABAP.pdf
    Regards,
    Raj.

  • Desktop Office Integration - How to use Weblinks for Images in linkserver?

    Hello experts,
    I want to add an image from the internet (e.g. Link: www.images.de/image.jpeg) to the linkserver in order to paste it in my word document. As I know it should be possible to do so with the link server. I tried it before with business documents "BDS" and it works fine. But in my opinion this place is not the best place to store pictures. So I want to use the pictures, which are currently stored in our portal and are available via weblink.
    So, actually, I have to give the information about the link to the link server method "add_binary_item", but with something like that "http://www......" it doesnt work! Do I have to enter a prefix or something like this???
    I hope someone could help me with that issue.
    THanks and regards,
    marcus

    Hello,
    I did it and it works fine!
    But I had to use the BDS Business Document Service with Class cl_bds_document_set.
    So I used the method "get_with_url" to get the url from the document/picture.
    After that I cann add a binary item with the URL and it works fine if my pictures are stored in BDS.
    But that is not what I want to do. I want to store the pictures in my mime repository for example. Are there any other possibilities to do that? Or is Desktop Office Integrations supporting just documents/pictures which are stored in BDS???
    Regards, Marcus
    Edited...........................................................
    In best case I am able to user internet urls for the pictures. So "http://www.xcxy.de/picture.jpeg", but with this URL information it doesn´t work!
    So, my question is if I have to add a prefix or something like this in order to use weblinks.
    Edited by: Marcus Findeisen on Apr 19, 2011 9:16 AM

  • Desktop Office Integration in SAP GUI for HTML - dont works?

    Hello all,
    my program reads an Excel-File with multiple Worksheets into SAP by using class:
    CL_GUI_CUSTOM_CONTAINER
    and intefaces:
    I_OI_CONTAINER_CONTROL,
    I_OI_DOCUMENT_PROXY AND
    I_OI_SPREADSHEET.
    All works fine, but when I integrated the SAP Transaction into our Portal and using the Program through the WEBGUI it dont works.
    It looks like that he can't create a container Control, to open the File in Background in Excel.
    I worked with Desktop Office Integration to read all Worksheets into SAP, like here:
    http://abap-explorer.blogspot.com/2008/12/upload-data-from-multiple-worksheets-of.html
    Is there any solution to solve my problem?
    it returns me this message
    "Cannot initialize control"
    It seems that the error comes from this Method in Webgui:
    Data iref_document    type ref to i_oi_document_proxy.
      call method iref_document->open_document
        exporting
          document_title = 'Excel'
          document_url   = v_document_url
          open_inplace   = 'X'
        importing
          error          = iref_error.
      if iref_error->has_failed = 'X'.
        call method iref_error->raise_message
          exporting
            type = 'I'.
        leave list-processing.
        exit.
      endif.
    I hope someone can help me.
    Thanks.
    EDIT:
    Today I tested the ABAP Report SAPRDEMOOFFICEINTEGRATION in our webgui
    it returns me this error:
         In dem Programm "C_OI_CONTAINER_CONTROL_CREATORCP" wurde durch eine                           
          RAISE-Anweisung die Exception                                                                
         (Ausnahmebedingung) "JAVABEANNOTSUPPORTED" ausgelöst.                                         
         Da die Exception nicht durch ein in der Aufrufhierarchie
    Auslösestelle des Laufzeitfehlers                                                                  
         Programm                                 C_OI_CONTAINER_CONTROL_CREATORCP                      
         Include                                  OFFICEINTEGRATIONDCCIMP                               
         Zeile                                    70                                                    
         Modultyp                                 (METHOD)                                              
         Modulname                                I_OI_CONTAINER_CONTROL~INIT_CONTROL
    Edited by: Sascha Baumann on Jul 15, 2009 9:18 AM
    Edited by: Sascha Baumann on Jul 16, 2009 8:04 AM

    Hi Sascha,
    I have the same issue as yours.
    Did you find a way to open your excel file in the WebGui?
    Regards,

  • Desktop Office Integration in ITS

    I'm in a situation where I need to use "Desktop Office Integration" (DOI) in the ITS. But DOI is only supported in WinGUI. So I'm looking for a workaround.
    My case is that I'm using the LinkServer in DMS, so that some metadata is linked direct from the Word document and updated whenever the user opens the document.
    The LinkServer is available as a part of WinGUI and the ITS doesn't contain a workaround.
    Am I the only one banging ny head on the wall in this issue?

    Hello,
    The final solution was to create an RFC server application in .NET that receives the office document, saves it to disk, opens the document with the relevant Office application through automation. And also updates the fields in the document. Saved the document to disk again and sendt it back to SAP.
    Br,
    Thomas Mouritsen

  • SAP Desktop Office Integration - Want to place an image in word

    Hello experts!
    I´m faced with an issue using the desktop office integration. I´ve a program which generates a word document and fills out some tables with information from the SAP system. Now I have to place an image as well. The image depends on the users input parameters. So it is not possible to place the image in the template.
    After a short research I found the possibility to do it via using the link server. Or do you think there is a better alternative???
    My problem is that I don´t know how to use and implement it. I did it with the guide BCCIOFFI, but it doesnt work fine.
    Actually, I didnt understand the exact benefit of the link server possibility.
    I have a defined place in the word document and the requirement is to place the image there. The image comes from the SAP system.
    I hope that you can help me to solve the problem.
    Best Regards,
    Marcus

    Hello,
    I did it and it works fine!
    But I had to use the BDS Business Document Service with Class cl_bds_document_set.
    So I used the method "get_with_url" to get the url from the document/picture.
    After that I cann add a binary item with the URL and it works fine if my pictures are stored in BDS.
    But that is not what I want to do. I want to store the pictures in my mime repository for example. Are there any other possibilities to do that? Or is Desktop Office Integrations supporting just documents/pictures which are stored in BDS???
    Regards, Marcus
    Edited...........................................................
    In best case I am able to user internet urls for the pictures. So "http://www.xcxy.de/picture.jpeg", but with this URL information it doesn´t work!
    So, my question is if I have to add a prefix or something like this in order to use weblinks.
    Edited by: Marcus Findeisen on Apr 19, 2011 9:16 AM

  • Office Integration and non-MS browsers

    I have an 'issue' with Office Integration and non-MS browsers with our SharePoint 2013 on-prem enviroment (using SSO via ADFS).
    Background: our internal client wants to move to SharePoint sites for collaboration with external partners.  One of the selling points they're wanting to make to justify the move from their current
    external collaboration site is Office integration - specifically the ability to open/edit/save documents by clicking on the document in SharePoint, having it open in Office (PC/client) for editing.  Note they are wanting full integration with the client
    version of Office - not OWA.  The other requirement is that this work with both Firefox and Chrome.
    Issue: Office integration works fine using Internet Explorer.  When a user click on a document the document opens in Office and can be edited directly in the browser without any additional prompts. 
    But when clicking on a document via Firefox or Chrome the SSO login form pops-up when Office starts.  Once the user enters their credentials they can work with the documents as desired.  But our client does not want this second prompt.
    Question:
    Is there a way to configure SharePoint so that Firefox or Chrome open up documents for editing without a second logon prompt?  I'm assuming not based on my research on how these browsers handle
    cookies differently than IE.   Can someone confirm? 
    Is there a dev solution to this?  Note that because the users will be partners (non-employees) we are trying to avoid using a solution that would involve installing custom software on their pc's
    (such as browser extensions).

    Unfortunately you are looking at a plugin or having the users modify their browsers:
    http://yalla.itgroove.net/2011/12/firefox-friday-3-sharepoint-login-prompts-on-firefox/
    http://www.rhyous.com/2009/12/31/why-does-firefox-prompt-for-domain-ad-authentication-or-how-to-get-firefox-to-automatically-login-to-web-sites-with-domain-credentials-sharepoint-for-example/
    Brandon Atkinson
    Blog: http://sharepointbrandon.com

  • Desktop Office Integration Form Interface

    Hi,
    I am new to Office integration. I had a look at the standard demo program 'SAPRDEMO_FORM_INTERFACE' and started creating my own program. I designed a word template with just 2 fields in it as below, I am using Legacy Form toolbar from the Developer tab of Word document.
    Name:     [] 
    Town:     []    
    I am using set data and Get date methods for this. But my problem is, it is not recognising the field names. The value is not getting populated when i pass value for name and town as,
    FIELD table structure:
    Type : T
    Name : Name
    Number: 1
    Value : Mickey
    code : 0.
    But the data is not set in the word document. Could you please let me know what i am missing and also how to insert field name and fields in word document.
    Thanks in advance,
    Sri
    Edited by: Arunsri on Oct 11, 2011 2:11 PM

    Message I got from from SAP - "Have you checked the program "SAPRDEMO_PIVOTINTERFACE" you can execute the same with Transaction SE38. This uses the pivot interface.
    Also for your information we have many DEMO Programs under the Package SOFFICEINTEGRATION, you can have a look to these for better understanding with the SAP Office Integration."
    This has helped me solve my problem. Incidentally the brilliant routine DYN_ANALYSE_SINGLE has 1 bug. It has reused a variable "DATA : N_COMPS TYPE I." before checking a recursion and hence corrupted the same. Possibly the example does not traverse that part of the code and hence bug is undetected.
    I and my end users are delighted!
    -jnc

  • Desktop office integration : Creating and filling tables in a word document

    Hi all,
    I want to create a table in a word document and then fill it with data. The word processor interface has only 'insert_table' methods which can download the data in an ABAP internal table to an already
    existing table in a word document, but in my case I also want to create the word table,  titles etc. in the word document. Has someone experience with such kind of a requirement or have someone an example for it? 
    Kind Regards,
    Sükrü

    Hi,
    May this one will help you.
    CREATE OBJECT wordapp 'Word.Application'.
    CALL METHOD OF wordapp 'Documents' = documents.
    CALL METHOD OF documents 'Add' = thisdoc.
    CALL METHOD OF thisdoc 'Activate'.
    GET PROPERTY OF wordapp 'Selection' = selection.
    SET PROPERTY OF wordapp 'Visible' = 1.
    CALL METHOD OF selection 'TypeParagraph'.
    CALL METHOD OF selection 'TypeText'
      EXPORTING #1 = 'New Document'.
    GET PROPERTY OF wordapp 'Tables' = tables.
    CALL METHOD OF tables 'Add' = thistable.
    SET PROPERTY OF thistable 'NumRows' = 2.
    SET PROPERTY OF thistable 'NumColumns' = 2.
    or you can check
    CALL METHOD OF wordobj 'TABLEINSERTTABLE'
    EXPORTING
    #01 = 2
    #02 = 3.
    aRs

  • Office 2013 and Email sync with Hotel Sales Pro

    I recently upgraded to a Windows 8 and Office 2013.  I cannot find the right security settings to allow Hotel Sales to sync my e-mail in Outlook 2013.

    Hi,
    Which account type are you using? POP3, IMAP or Exchange? What does 'Hotel Sales' refer to?
    Please come back and provide more information about this problem so that we can resolve it more efficiently.
    Meanwhile, please try to create a new mail profile in Control Panel and set up your email account in the new profile to check if it helps. see:
    http://support.microsoft.com/kb/829918/en-us
    Best Regards,
    Steve Fan
    TechNet Community Support

  • Desktop office  integration using OLE

    Hi
    I am using a desktop application(word pad) in my abap program using ole. But the buttons of the wordpad are not working
    since the standard interface is not set. The error  message showing  STANDARD INTERFACE NOT AVAILABLE. Can you help me please.
    Useful answers will be awarded full points.
    Regards
    Nikhil
    Edited by: nikhil vinay on May 4, 2010 2:02 PM

    is 1.6 MB the smallest size you can generate, did you remove every optional tag?
    XLSX format is a compressed XML format valid since office 2007. Maybe you can try to generate it? (I don't exactly know which ZIP algorithm it requires, SAP can compress using the ZLIB Compression Library)
    You may also attach a Windows server to SAP via RFC. You should create an RFC server. You may have a look at this [sdn article - Communication to Presentation Server in Background Mode|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/9831750a-0801-0010-1d9e-f8c64efb2bd2] for some clues about running an RFC server. I guess you could use a VB script on the server.
    For sending emails, this is a separate question, you may have a look at wiki: sending mails - home page.

  • Desktop Manager 5 and Email Forwarding

    Ever since I installed Desktop Manager 5 I haven't been able to figure out how to stop emails from being forwarded to my BB while connected to my PC.  I no longer seem to be using Redirector as I was under 4.7.  What I am I missing?

    I was able to find a solution to this problem.  Follow the steps in modifying your installation with KB11162 and choose Work/Exchange/BES email settings.  This will install the BlackBerry Redirector application which you will find by clicking on Start > Programs > Blackberry > Blackberry Desktop Redirector.
    Hope this helps!

  • DESKTOP OFFICE INTEGRATION

    Hello !
    I have written a test program in ABAP that allows to search a MS WORD document in B.D.S., modify some fields (TOWN, for instance) and save the result on an office server using D.O.I..
    It works if I execute it in direct processing.
    But when I try to execute it in background, the first method called (c_oi_factory_creator=>get_document_factory) results in an error.
    The question is : is it impossible to run the D.O.I. mrthods in a backgroung way or is there a mean to do it that I obviously ignore ?
    thank you in advance.
    Best regards.
    Thierry.

    Hi,
    Try with save_document_to_url
    For more information on this , check this help <a href="http://help.sap.com/saphelp_erp2005vp/helpdata/en/e9/0be775408e11d1893b0000e8323c4f/frameset.htm">http://help.sap.com/saphelp_erp2005vp/helpdata/en/e9/0be775408e11d1893b0000e8323c4f/frameset.htm</a>
    <a href="http://www.erpgenie.com/abap/code/abap21.htm">Sample program</a>
    Regards,
    Raghav

  • Desktop Office Integration - Mail merge interface

    Dear Experts,
    I tried to search for mail merge interface in forums, could not find any.
    Anybody please help in implementing the interface. If you have any sample code, please provide me.
    Thank you in advance,
    Regards
    Jagadish

    Hello Nisha,
    I have found that solution two days ago, and I am now using it, however I still have some problems with the OLE 'Save' method, I am using 'SaveAs' as an alternative solution.
    My objective is:
    1. Open an existing Excel document to make some changes on the main sheet;
    2. Copy the main sheet to two new sheets;
    3. Work on the two new sheets;
    4. Insert a final sheet;
    5. Save the document.
    What I could do so far:
    1. Open an existing Excel document (Xls1), with DOI, and change the main sheet;
    1.1 Save the document with another name (Xls2), using DOI 'Save_As' method, followed by 'close_document' and 'release_document';
    2. Open this last  document again (Xls2) with OLE, and copy the main sheet to two new sheets;
    2.1 Save the document with another name (Xls3), using OLE 'SaveAs';    ('Save' does not save the document!)
    3. Open this last document (Xls3) with DOI, and work on the two new sheets;
    4. Insert a final sheet;
    5. Save the document (Xls3) with DOI method 'Save_document_to_url' and exit.
    In the end I have one more file than I needed, but it's the possible solution for now.
    Do you have any idea why the OLE 'Save' does not work after closing a document with DOI?
    Thanks in advance.

  • Export data to excel using DOI(desktop Office integration) technique

    Hi Experts,
    I have the requirement to export data to excel file, I have some idea using OLE but no idea of exporting to excel using DOI, Please help me by providing sample code for it.
    My requirement also include merging of cells and coloring of cells.
    Thanks
    Rohit

    For merging of cells you can refer following code!
    [Merging of cells.|https://www.sdn.sap.com/irj/scn/wiki?path=/display/community/oleconceptfordownloadingthereportoutputintoexcel]
    Regards,
    Lalit Mohan Gupta.

Maybe you are looking for

  • Has anyone else been mislead by Time Machine?

    Before I start, I'd like to make a little disclaimer that before the trolls set to work on berrating my naivity for the problem i've suffered, i'd just like to say "I KNOW THAT NOW" and hindsight is such a wonderful thing but unfortunately, the simpl

  • Trying to Link from CSH to Second (Custom) Window within same .CHM file

    We are using RH8 on Windows XP Pro 2002, SP3, outputting CHM. Background Our single help source has 2 custom window definitions--one for context sensitive topics (tall and narrow, opens on right, no TOC, always on top) and the second for the main hel

  • Reader 11.0.2 MUI?

    Hello, I was looking for the update 11.0.2 MUI for Reader but it doesn't seem to be coming out, any idea where it is?

  • Fusion APPS or R-12

    Hi All, I am working as oracle apps dba from last 5 yr. I have experience in apps install, configure, PCP, Cloning, Patching, Production support, Performance tuning, GRC, OTM, LSH etc etc- From last few months I am working on fusion 11g products like

  • Equals() in StringBuffer

    I tried the follow code: StringBuffer s1 = new StringBuffer("F10"); StringBuffer s2 = new StringBuffer("F10"); System.out.println(s1.equals(s2)); System.out.println(s1.hashCode()); System.out.println(s2.hashCode()); I found StringBuffer is different