How to go about Digital Signature/Encryption for Purchase Orders

Hi
We would like to send the Purchase Orders through E-Mail to suppliers in SAP. As per our legal department recommendations, we must implement the digital signature/Encryption mechanism in SAP prior to send the PO's through email.
I have no knowledge about available features, configuration requirements in SAP and required decryption machanism from Supplier side.
Appreciate, if you could share your expertise on the above requirements.
System details:
SAP : 4.7 (MySAP ERP)
WAS: 6:20 (Netweaver 2003 Oct)
Regards
Kumar

Guess these documents will be very helpfull..
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/55ba9790-0201-0010-aa98-ce8f51ea93cd
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/7f52fd28-0b01-0010-afb0-cc70884fa369
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a09f3d8e-d478-2910-9eb8-caa6516dd7d9
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/1c51c590-0201-0010-ffbc-b2bef1c57385
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/1c51c590-0201-0010-ffbc-b2bef1c57385
Reward points if found helpfull.........

Similar Messages

  • To print Digital signature on the Purchase Order

    How to print Digital Signature, on the PO Print copy (PDF).
    It will be based on release strategy. Whoever is approving the PO, his signature should be printed automatically on the Purchase Order.
    How to achieve this ??
    Please let me know in detail
    thanks
    amit

    Hi Amit,
    I am not sure on how to get the the signature of the person who released the PO, because as per my understanding the Relase Strategy i.e the Relase code is attached to a Basis profile.
    What I would suggest is if you can get all the guys who can release a PO and define him as a Purchaser ie. a Purchasing group then it would be easier to print his signature in the PO.
    Here are the Highlevel steps
    1. Just have the Signature you want to print in a Tiff format.
    2. You can upload the signature as a standard Text using program RSTXLDMC to upload and give a text name.
    3. call the text name in your sap scripts.
    reward if useful.
    Thx,
    MJ

  • How to send PDF attachment through Email For Purchase Order

    Hi,
         Can you please tell me how to send the Purchase Order with PDF attachment. Thank you.
    Thanks & Regards,
    Rani.

    Find the below example
    *& Report  ZSPOOLTOPDF                                                 *
    *& Converts spool request into PDF document and emails it to           *
    *& recipicant.                                                         *
    *& Execution                                                           *
    *& This program must be run as a background job in-order for the write *
    *& commands to create a Spool request rather than be displayed on      *
    *& screen                                                              *
    REPORT  zspooltopdf.
    PARAMETER: p_email1 LIKE somlreci1-receiver
                                        DEFAULT '[email protected]',
               p_sender LIKE somlreci1-receiver
                                        DEFAULT '[email protected]',
               p_delspl  AS CHECKBOX.
    *DATA DECLARATION
    DATA: gd_recsize TYPE i.
    Spool IDs
    TYPES: BEGIN OF t_tbtcp.
            INCLUDE STRUCTURE tbtcp.
    TYPES: END OF t_tbtcp.
    DATA: it_tbtcp TYPE STANDARD TABLE OF t_tbtcp INITIAL SIZE 0,
          wa_tbtcp TYPE t_tbtcp.
    Job Runtime Parameters
    DATA: gd_eventid LIKE tbtcm-eventid,
          gd_eventparm LIKE tbtcm-eventparm,
          gd_external_program_active LIKE tbtcm-xpgactive,
          gd_jobcount LIKE tbtcm-jobcount,
          gd_jobname LIKE tbtcm-jobname,
          gd_stepcount LIKE tbtcm-stepcount,
          gd_error    TYPE sy-subrc,
          gd_reciever TYPE sy-subrc.
    DATA:  w_recsize TYPE i.
    DATA: gd_subject   LIKE sodocchgi1-obj_descr,
          it_mess_bod LIKE solisti1 OCCURS 0 WITH HEADER LINE,
          it_mess_att LIKE solisti1 OCCURS 0 WITH HEADER LINE,
          gd_sender_type     LIKE soextreci1-adr_typ,
          gd_attachment_desc TYPE so_obj_nam,
          gd_attachment_name TYPE so_obj_des.
    Spool to PDF conversions
    DATA: gd_spool_nr LIKE tsp01-rqident,
          gd_destination LIKE rlgrap-filename,
          gd_bytecount LIKE tst01-dsize,
          gd_buffer TYPE string.
    Binary store for PDF
    DATA: BEGIN OF it_pdf_output OCCURS 0.
            INCLUDE STRUCTURE tline.
    DATA: END OF it_pdf_output.
    CONSTANTS: c_dev LIKE  sy-sysid VALUE 'DEV',
               c_no(1)     TYPE c   VALUE ' ',
               c_device(4) TYPE c   VALUE 'LOCL'.
    *START-OF-SELECTION.
    START-OF-SELECTION.
    Write statement to represent report output. Spool request is created
    if write statement is executed in background. This could also be an
    ALV grid which would be converted to PDF without any extra effort
      WRITE 'Hello World'.
      new-page.
      commit work.
      new-page print off.
      IF sy-batch EQ 'X'.
        PERFORM get_job_details.
        PERFORM obtain_spool_id.
    Alternative way could be to submit another program and store spool
    id into memory, will be stored in sy-spono.
    *submit ZSPOOLTOPDF2
           to sap-spool
           spool parameters   %_print
           archive parameters %_print
           without spool dynpro
           and return.
    Get spool id from program called above
    IMPORT w_spool_nr FROM MEMORY ID 'SPOOLTOPDF'.
        PERFORM convert_spool_to_pdf.
        PERFORM process_email.
        if p_delspl EQ 'X'.
          PERFORM delete_spool.
        endif.
        IF sy-sysid = c_dev.
          wait up to 5 seconds.
          SUBMIT rsconn01 WITH mode   = 'INT'
                          WITH output = 'X'
                          AND RETURN.
        ENDIF.
      ELSE.
        SKIP.
        WRITE:/ 'Program must be executed in background in-order for spool',
                'request to be created.'.
      ENDIF.
          FORM obtain_spool_id                                          *
    FORM obtain_spool_id.
      CHECK NOT ( gd_jobname IS INITIAL ).
      CHECK NOT ( gd_jobcount IS INITIAL ).
      SELECT * FROM  tbtcp
                     INTO TABLE it_tbtcp
                     WHERE      jobname     = gd_jobname
                     AND        jobcount    = gd_jobcount
                     AND        stepcount   = gd_stepcount
                     AND        listident   <> '0000000000'
                     ORDER BY   jobname
                                jobcount
                                stepcount.
      READ TABLE it_tbtcp INTO wa_tbtcp INDEX 1.
      IF sy-subrc = 0.
        message s004(zdd) with gd_spool_nr.
        gd_spool_nr = wa_tbtcp-listident.
        MESSAGE s004(zdd) WITH gd_spool_nr.
      ELSE.
        MESSAGE s005(zdd).
      ENDIF.
    ENDFORM.
          FORM get_job_details                                          *
    FORM get_job_details.
    Get current job details
      CALL FUNCTION 'GET_JOB_RUNTIME_INFO'
           IMPORTING
                eventid                 = gd_eventid
                eventparm               = gd_eventparm
                external_program_active = gd_external_program_active
                jobcount                = gd_jobcount
                jobname                 = gd_jobname
                stepcount               = gd_stepcount
           EXCEPTIONS
                no_runtime_info         = 1
                OTHERS                  = 2.
    ENDFORM.
          FORM convert_spool_to_pdf                                     *
    FORM convert_spool_to_pdf.
      CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
           EXPORTING
                src_spoolid              = gd_spool_nr
                no_dialog                = c_no
                dst_device               = c_device
           IMPORTING
                pdf_bytecount            = gd_bytecount
           TABLES
                pdf                      = it_pdf_output
           EXCEPTIONS
                err_no_abap_spooljob     = 1
                err_no_spooljob          = 2
                err_no_permission        = 3
                err_conv_not_possible    = 4
                err_bad_destdevice       = 5
                user_cancelled           = 6
                err_spoolerror           = 7
                err_temseerror           = 8
                err_btcjob_open_failed   = 9
                err_btcjob_submit_failed = 10
                err_btcjob_close_failed  = 11
                OTHERS                   = 12.
      CHECK sy-subrc = 0.
    Transfer the 132-long strings to 255-long strings
      LOOP AT it_pdf_output.
        TRANSLATE it_pdf_output USING ' ~'.
        CONCATENATE gd_buffer it_pdf_output INTO gd_buffer.
      ENDLOOP.
      TRANSLATE gd_buffer USING '~ '.
      DO.
        it_mess_att = gd_buffer.
        APPEND it_mess_att.
        SHIFT gd_buffer LEFT BY 255 PLACES.
        IF gd_buffer IS INITIAL.
          EXIT.
        ENDIF.
      ENDDO.
    ENDFORM.
          FORM process_email                                            *
    FORM process_email.
      DESCRIBE TABLE it_mess_att LINES gd_recsize.
      CHECK gd_recsize > 0.
      PERFORM send_email USING p_email1.
    perform send_email using p_email2.
    ENDFORM.
          FORM send_email                                               *
    -->  p_email                                                       *
    FORM send_email USING p_email.
      CHECK NOT ( p_email IS INITIAL ).
      REFRESH it_mess_bod.
    Default subject matter
      gd_subject         = 'Subject'.
      gd_attachment_desc = 'Attachname'.
    CONCATENATE 'attach_name' ' ' INTO gd_attachment_name.
      it_mess_bod        = 'Message Body text, line 1'.
      APPEND it_mess_bod.
      it_mess_bod        = 'Message Body text, line 2...'.
      APPEND it_mess_bod.
    If no sender specified - default blank
      IF p_sender EQ space.
        gd_sender_type  = space.
      ELSE.
        gd_sender_type  = 'INT'.
      ENDIF.
    Send file by email as .xls speadsheet
      PERFORM send_file_as_email_attachment
                                   tables it_mess_bod
                                          it_mess_att
                                    using p_email
                                          'Example .xls documnet attachment'
                                          'PDF'
                                          gd_attachment_name
                                          gd_attachment_desc
                                          p_sender
                                          gd_sender_type
                                 changing gd_error
                                          gd_reciever.
    ENDFORM.
          FORM delete_spool                                             *
    FORM delete_spool.
      DATA: ld_spool_nr TYPE tsp01_sp0r-rqid_char.
      ld_spool_nr = gd_spool_nr.
      CHECK p_delspl <> c_no.
      CALL FUNCTION 'RSPO_R_RDELETE_SPOOLREQ'
           EXPORTING
                spoolid = ld_spool_nr.
    ENDFORM.
    *&      Form  SEND_FILE_AS_EMAIL_ATTACHMENT
          Send email
    FORM send_file_as_email_attachment tables it_message
                                              it_attach
                                        using p_email
                                              p_mtitle
                                              p_format
                                              p_filename
                                              p_attdescription
                                              p_sender_address
                                              p_sender_addres_type
                                     changing p_error
                                              p_reciever.
      DATA: ld_error    TYPE sy-subrc,
            ld_reciever TYPE sy-subrc,
            ld_mtitle LIKE sodocchgi1-obj_descr,
            ld_email LIKE  somlreci1-receiver,
            ld_format TYPE  so_obj_tp ,
            ld_attdescription TYPE  so_obj_nam ,
            ld_attfilename TYPE  so_obj_des ,
            ld_sender_address LIKE  soextreci1-receiver,
            ld_sender_address_type LIKE  soextreci1-adr_typ,
            ld_receiver LIKE  sy-subrc.
    data:   t_packing_list like sopcklsti1 occurs 0 with header line,
            t_contents like solisti1 occurs 0 with header line,
            t_receivers like somlreci1 occurs 0 with header line,
            t_attachment like solisti1 occurs 0 with header line,
            t_object_header like solisti1 occurs 0 with header line,
            w_cnt type i,
            w_sent_all(1) type c,
            w_doc_data like sodocchgi1.
      ld_email   = p_email.
      ld_mtitle = p_mtitle.
      ld_format              = p_format.
      ld_attdescription      = p_attdescription.
      ld_attfilename         = p_filename.
      ld_sender_address      = p_sender_address.
      ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
      w_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
      w_doc_data-obj_langu = sy-langu.
      w_doc_data-obj_name  = 'SAPRPT'.
      w_doc_data-obj_descr = ld_mtitle .
      w_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
      CLEAR w_doc_data.
      READ TABLE it_attach INDEX w_cnt.
      w_doc_data-doc_size =
         ( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
      w_doc_data-obj_langu  = sy-langu.
      w_doc_data-obj_name   = 'SAPRPT'.
      w_doc_data-obj_descr  = ld_mtitle.
      w_doc_data-sensitivty = 'F'.
      CLEAR t_attachment.
      REFRESH t_attachment.
      t_attachment[] = it_attach[].
    Describe the body of the message
      CLEAR t_packing_list.
      REFRESH t_packing_list.
      t_packing_list-transf_bin = space.
      t_packing_list-head_start = 1.
      t_packing_list-head_num = 0.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE it_message LINES t_packing_list-body_num.
      t_packing_list-doc_type = 'RAW'.
      APPEND t_packing_list.
    Create attachment notification
      t_packing_list-transf_bin = 'X'.
      t_packing_list-head_start = 1.
      t_packing_list-head_num   = 1.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
      t_packing_list-doc_type   =  ld_format.
      t_packing_list-obj_descr  =  ld_attdescription.
      t_packing_list-obj_name   =  ld_attfilename.
      t_packing_list-doc_size   =  t_packing_list-body_num * 255.
      APPEND t_packing_list.
    Add the recipients email address
      CLEAR t_receivers.
      REFRESH t_receivers.
      t_receivers-receiver = ld_email.
      t_receivers-rec_type = 'U'.
      t_receivers-com_type = 'INT'.
      t_receivers-notif_del = 'X'.
      t_receivers-notif_ndel = 'X'.
      APPEND t_receivers.
      CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
           EXPORTING
                document_data              = w_doc_data
                put_in_outbox              = 'X'
                sender_address             = ld_sender_address
                sender_address_type        = ld_sender_address_type
                commit_work                = 'X'
           IMPORTING
                sent_to_all                = w_sent_all
           TABLES
                packing_list               = t_packing_list
                contents_bin               = t_attachment
                contents_txt               = it_message
                receivers                  = t_receivers
           EXCEPTIONS
                too_many_receivers         = 1
                document_not_sent          = 2
                document_type_not_exist    = 3
                operation_no_authorization = 4
                parameter_error            = 5
                x_error                    = 6
                enqueue_error              = 7
                OTHERS                     = 8.
    Populate zerror return code
      ld_error = sy-subrc.
    Populate zreceiver return code
      LOOP AT t_receivers.
        ld_receiver = t_receivers-retrn_code.
      ENDLOOP.
    ENDFORM.
    Reward if helpful.
    Thanks,
    Kishore S N

  • Digital Signature & Encryption for PDF

    Irrelevant Links. Please provide answer specific to question asked.
    Edited by: Bhavesh Kantilal on Feb 27, 2009 3:56 AM

    Hi,
    If the pdf documents have already been taken care by ABAP then let abap only take care of digitally signing it. Because i once a had a requirement of having to generate pdf as an output of XI and that involved ADS configuration and installation of sap self extractor for MFC application.Big headache...
    Digital signing and encryption of files from ABAP
    http://help.sap.com/saphelp_erp2004/helpdata/en/53/251a355d0c4d78e10000009b38f83b/frameset.htm
    Rgds
    joel

  • Creating  workflow for purchase order release.

    Hi friends
    I want step by step detail about creation of workflow for purchase order release..
    After release purchase order it will goes to the two level of approval..
    after that the workflow should be completed...
    how can i develope the workflow for that scenario..
    Thanks
    Gowrishankar

    Hi Gowrishankar,
    You can get step by step workflow for PO using standard workflow
    <b>Release of Purchase Order :WS20000075</b>
    And for two levels of approvals you have to configure in SPRO the path is
    Purchase Order:
    SPRO> Material Management->Purchasing->/Purchase order-->Release procedure ---> Procedure with classification ---> set up procedure with classification ---> double click on Release strategies and Workflow.
    If you don't know about this configuration, you have to confirm with your MM consultant.
    Thanks and Regards,
    Prabhakar Dharmala

  • Release for purchase order for workflow

    explain me about the release procedure for purchase order i am comfortable with all steps but for the last step were we will be defining the settings  for workflow

    It's all fine and dandy that you want to be polite and reply to every reply with a "thanks for your reply", but it isn't very informative. In fact, I'm leaning towards calling it SPAM, but that is perhaps going a bit too far. Such replies do not add one bit of information, they just mark the thread as having contents added since I last visited, and wastes my time as I look at the thread to see what new information has come up.
    At the risk of sounding rude, could you please quit your habit and <u>instead</u> mark the question as answered if any of the answers solved your problem (handing out forum points where appropriate)? If none of the replies solved your problem, then please tell us how far they got you and what's stopping you now.
    Thank you.

  • How to create a digital signature formy Applet?

    who can tell me how to create a digital signature for my applet? i want details of the process, because i know nothing about it. Thank you very much!!!

    http://java.sun.com/docs/books/tutorial/security1.2/apisign/gensig.html

  • How to create a digital signature in adobe reader

    how to create a digital signature in adobe reader?

    Adobe Reader Touch (Windows Store app with "modern" UI) does not support any types of signatures yet.
    Digital Signatures with certificates
    Electronic Signatures (that are legally enforceable)
    Signature annotations (hand-writing annotations which may not be secure and legally enforceable)
    Adobe Reader XI (traditional desktop app with classic UI) supports #1 and #3.
    Adobe EchoSign supports #2.
    Adobe Reader for iOS/Android supports #3.

  • A problem about digital signature authentication

    Hi all:
    I just want to know how to implement the digital signature in the adobe form as well as its theroy, processing and the server condition. Please inform me any document available for reference.
    Thanks.

    The Digital Signature User Guide and Acrobat Security Administration Guide are of particular interest at the location Simon pointed to.

  • Question about digital signature

    How I can create digital signature for document by some OAS tool in Java servlet? If yes, then how?
    Thanks
    Excuse me my English.
    Maxim

    you add a signature field to your form --> then watch the properties
    you can define collections of fields to tell the document which fields should be regarded/disabled by signing the document
    ads can check signatures (digital signatures) serverside (methods for the pdf object)
    with signature pads its special, you need hardware (pads) and software (plugins for the reader) and so on...
    for signatures in general:
    http://help.sap.com/saphelp_nw2004s/helpdata/en/18/ecb69017ad4765855425b97f666470/frameset.htm

  • How to create a digital signature using mac

    C
    an someone tell me how to create a digital signature I can use to sign documents with?

    Launch the Preview application and search its built-in help for the term "signature."

  • How to config Check Digits function module for Student Number Validation

    Hi SLCM Experts,
    In the SAP-SLCM, How to use check digits function module for validate student number.  Just only config it or need to customizing program.
    *Any idea to student number validation in SLCM?*
    Best Regards,
    Suvatchai K.

    Hi ,
    Can you expalin it further ?
    You configure the St. no in piq_matr . And set it  as external or internal no. range which suits your business .
    What is the validation you are looking for ?
    Regards
    Gajalakshmi

  • Digital Signature Solution for UCM

    Looking at options to implement Digital Signatures solution for Oracle UCM
    specifically we plan to use it with UCM forms in WCI portal. What are the
    products/solutions available and any implementation experiences please let me know.
    Thanks!

    Hi
    Yes , all this will need is configuration on UCM to be able to know which ones of the signatures need to be attached with which set of contents and likewise .
    Sorry , not having too much details on this and ETA for the same not available either .
    I am waiting to hear further and get more details as well .
    Thanks
    Srinath

  • How to implement Change pointers for Purchase order - ME22N - Custom Fields

    Hi Experts,
    Can you please tell me how to implement - Change Pointer for Custom fields in IDOC.
    I am working on IDOC - For purchase order - acknowledgements - in custom screen/tab in ME22N.
    Everything is working fine according to my requirement.
    All i need to know is the process of - Creating/Change - Change pointers for Custom fields.
    1.How to implement change pointers for custom fields.
    2.Can we maintain - Change Document - for custom fields at data element level?
    P.S. - I have browsed many previous - forums before posting a new discussion.
    please share your inputs...
    explaining how to create/implement - change pointers for custom fields will help me .
    Regards,
    Karthik Rali.

    Hi,
    To maintain Change Document for custom field:
    1. Check if "Change document" checkbox is set in data element.
    2. Find Change Document Object for transaction.
       You can use SQL trace - ST05.
       Look there for line with table CDHDR and statement insert values
       (for example for transaction KA02 Change Document Object is KSTAR)
    3. Regenerate update program for this Change Document Object in transaction SCDO
    Change documents for z-fields schould be generated.
    I am not sure about change pointers but they are configured somehow in BD61 and BD50.

  • I downloaded 11.1 but now can't access the store, can only view my library. I've reinstalled but still get a blank, white screen when I try to go to the itunes store. How can I get to the store for purchases?

    I downloaded 11.1 but now can't access the store, can only view my library. I've reinstalled but still get a blank, white screen when I try to go to the itunes store. How can I get to the store for purchases?

    In iTunes prefs>Store - is the Store check box unchecked?
    Did you repair pemissions with Disk Utility?
    MJ

Maybe you are looking for

  • Two Viewers at the same time

    Is it possible to have two Viewers open at the same time, showing the same clip but one with its Video Tab activated and the other with its Control Tab (or another tab) activated? Often I am adjusting the controls of a video generator (eg. Shapes, Te

  • Q: How to retrieve the current URL with PL/SQL

    I've got a pair of dynamic page portlets on a page. The first is simply an input text box and a submit button, the second is an inventory 'report' based on what is entered in the text box. When a value is entered and the button pressed, there is java

  • Using less than or equal and greater or equal relational operators in BIP

    Hi, I have a query wherein I am using a relational operator '<=' and '>='. When I run my sql query in TOAD in works fine but when I put it in BIP using a Data Template, it says "Data Template XML is invalid". When I try to remove the '<' and the '>'

  • How do I take songs off IPOD?

    I share a library with my 13 year old daughter and I dont want Hannah Montana on my IPOD. How do I take those songs off? They went on when I synched the IPOD.

  • Clarfication of steps in Unicode Conversion

    Hello All, Currently we are upgrading from 4.6C non-unicode to ECC 6.0 with Enhancement Package 4 unicode. I have read the guide for Combined Upgrade and Unicode conversion and understand that as pre-requisite we need to execute the following steps: