cancel
Showing results for 
Search instead for 
Did you mean: 

Smart Form implementation

Former Member
0 Kudos

Hello,

I would like to set up the smart form in SRM.

Since there is in our R/3 backend a Smart form for PO, I would ask if I can import this Smart form from R/3 to SRM.

Could you please describe the detailed step to integrate the R/3 PO smart form in SRM.

SRM 4.0 Extended classic scenario

Regards,

Shaiek

Accepted Solutions (1)

Accepted Solutions (1)

former_member195032
Active Contributor
0 Kudos

You can create your own SRM system smartform and whatever new code you want you can put inside Smartform itself.You can even put some RFC enabled Function Modules inside created SRM smartform and fetch data from ERP backend system.

regards,nishant

Please reward if this address your issues.

Answers (3)

Answers (3)

0 Kudos

Hi,

Create a Remote enabled FM in ECC and import parameters of smartform in FM.

Now put this code inside the FM

  DATA lv_smartform       TYPE rs38l_fnam.

  DATA ls_ssfctrlop       TYPE ssfctrlop. 

  DATA ls_output_options  TYPE ssfcompop. 

  DATA ls_job_output_info TYPE ssfcrescl. 

  DATA lt_lines           TYPE STANDARD TABLE OF tline. 

  DATA lv_bin_filesize    TYPE i. 

  DATA lv_pdf_xstring     TYPE xstring. 

* -- Get the name of the smartform function module 

  CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME' 

    EXPORTING 

      formname = 'ZMY_SMARTFORM' 

    IMPORTING 

      fm_name  = lv_smartform. 

* -- Call the smartform 

  ls_ssfctrlop-no_dialog = abap_true. 

  ls_ssfctrlop-getotf    = abap_true. 

  ls_output_options-tdprinter = 'PDF1'. 

  CALL FUNCTION lv_smartform 

    EXPORTING 

      control_parameters = ls_ssfctrlop 

      output_options     = ls_output_options 

      custom_input       = ls_your_custom_smartform_input 

    IMPORTING 

      job_output_info    = ls_job_output_info 

    EXCEPTIONS 

      OTHERS             = 0. 

* -- Convert the OTF data to xstring 

  CALL FUNCTION 'CONVERT_OTF' 

    EXPORTING 

      format       = 'PDF' 

    IMPORTING 

      bin_filesize = lv_bin_filesize 

      bin_file     = lv_pdf_xstring

    TABLES 

      otf          = ls_job_output_info-otfdata[] 

      lines        = lt_lines 

    EXCEPTIONS 

      OTHERS       = 0. 

Now, export the  lv_pdf_xstring  to the SRM system.

In srm print the pdf by using

cl_wd_runtime_services=>attach_file_to_response( 

    i_filename       = 'mypdf.pdf' 

    i_content        = lv_pdf_xstring 

    i_mime_type      = 'application/pdf' 

  ).

Thanks & regds

Pksurya

yann_bouillut
Active Contributor
0 Kudos

Hi,

SRM tables and structures are different from ECC.

Thus, you can import the ECC smartform but you wil have to code it the SRM way...

Only the design can be keeped.

Kind regards,

Yann

Former Member
0 Kudos

Hello Yann,

Could you give me more details on how can we code it the in SRM way.

Regards,

Lina

former_member195032
Active Contributor
0 Kudos

Hi Lina,

You just have to copy the smartform from backend or create a new smart form as your requirement.

and attach that smart form in Customizing.

You have to go to SPRO->SRM->SRM SERVER->Cross Application Basic Setting->Set output Action and Output format->Define Action for document output.

Select BBP_PD_PO and click on processing type ..

Change Smart Forms Fax to Form Name as your created smart form.

Change Smart Forms Mail to form Name as you created smart form.

Change Smart Forms Print to form name as your created smart form.

You can download smartform by using smartforms transaction in backend system

Smartforms->utilities->Download form.

Please give reward point,if it helps.

Regards,Nishant